diff --git a/dist/Cohort.d.ts b/dist/Cohort.d.ts index 006b99e..702a163 100644 --- a/dist/Cohort.d.ts +++ b/dist/Cohort.d.ts @@ -1,5 +1,4 @@ -import { IDType, IDTypeLike } from 'tdp_core'; -import { IAllFilters, IRow, IServerColumn } from 'tdp_core'; +import { IAllFilters, IDType, IDTypeLike, IRow, IServerColumn } from 'tdp_core'; import { ICohort, ICohortRep, IElement, IElementProvJSONCohort, IProvAttrAndValuesCohort } from './CohortInterfaces'; import { ICohortDepletionScoreFilterParams, ICohortEqualsFilterParams, ICohortGeneEqualsFilterParams, ICohortGeneNumFilterParams, ICohortNumFilterParams, ICohortPanelAnnotationFilterParams, ICohortRow, IEqualsList, INumRange } from './rest'; import { Task } from './Tasks'; @@ -70,6 +69,11 @@ export declare class Cohort implements ICohort { setLabels(labelOne: string, labelTwo: string): void; get labelOne(): string; get labelTwo(): string; + /** + * Creates the label as a string with HTML elements for the # and cht_number to be bold and smaller + * @returns HTML formatted cohort label + */ + getHTMLLabel(): string; set parents(parents: Array); get parents(): Array; /** diff --git a/dist/Cohort.js b/dist/Cohort.js index cd1fe0d..0d82e64 100644 --- a/dist/Cohort.js +++ b/dist/Cohort.js @@ -273,6 +273,20 @@ export class Cohort { get labelTwo() { return this._labelTwo; } + /** + * Creates the label as a string with HTML elements for the # and cht_number to be bold and smaller + * @returns HTML formatted cohort label + */ + getHTMLLabel() { + const currLabel = this.label; + let labelOneHTML = currLabel; + const [labelOneCounter] = currLabel.split(' ', 1); + if (labelOneCounter.startsWith('#')) { + const labelOneText = currLabel.substring(labelOneCounter.length + 1); + labelOneHTML = `#${labelOneCounter.substring(1)} ` + labelOneText; + } + return labelOneHTML; + } set parents(parents) { this._parents = parents; this.updateBloodline(); diff --git a/dist/Cohort.js.map b/dist/Cohort.js.map index 5945abb..3a4e5ad 100644 --- a/dist/Cohort.js.map +++ b/dist/Cohort.js.map @@ -1 +1 @@ -{"version":3,"file":"Cohort.js","sourceRoot":"","sources":["../src/Cohort.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,aAAa,EAAE,eAAe,EAAC,MAAM,UAAU,CAAC;AAE5E,OAAO,EAAC,eAAe,EAAkF,MAAM,oBAAoB,CAAC;AACpI,OAAO,EAAC,cAAc,EAAE,sCAAsC,EAAE,8BAA8B,EAAE,kCAAkC,EAAE,+BAA+B,EAAE,2BAA2B,EAAE,uCAAuC,EAAE,iCAAiC,EAAE,gCAAgC,EAAE,gCAAgC,EAAE,6BAA6B,EAAE,iCAAiC,EAAE,4BAA4B,EAAE,yBAAyB,EAAE,aAAa,EAAE,aAAa,EAAmhB,gCAAgC,EAAE,gCAAgC,EAAE,6BAA6B,EAAE,iCAAiC,EAAE,4BAA4B,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,MAAM,QAAQ,CAAC;AAC/uC,OAAO,EAAC,kBAAkB,EAAO,MAAM,SAAS,CAAC;AACjD,OAAO,EAAC,QAAQ,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,GAAG,EAAC,MAAM,QAAQ,CAAC;AAM/E,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,QAAgB,EAAE,QAAgB,EAAE,SAAkB,EAAE,gBAAwB,EAAE,QAAgB,EAAE,YAAoB,EAAE,MAAc,EAAE,KAAa,EAAE,IAAY,EAAE,MAAkB,EAAE,QAAuB,EAAE,OAAoB;IACzQ,MAAM,MAAM,GAAoB;QAC9B,IAAI,EAAE,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC5C,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5B,QAAQ,EAAE,gBAAgB;QAC1B,QAAQ;QACR,MAAM;QACN,KAAK;KACN,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IAEnE,uCAAuC;IACvC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,EAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAC,EAAE,CAAC,EAAC,MAAM,EAAE,EAAE,EAAC,CAAkB,EAAE,EAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IAC9L,GAAG,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IAC/B,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,qBAAqB,CAAC,aAA0B,EAAE,SAAiB,EAAE,eAAkC;IAC9G,MAAM,aAAa,GAAgB,EAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAC,CAAC;IAClF,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC;IAClD,OAAO,kBAAkB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,wCAAwC;AACnG,CAAC;AAED,SAAS,oBAAoB,CAAC,aAA0B,EAAE,SAAiB,EAAE,KAAgB;IAC3F,MAAM,UAAU,GAAgB,EAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAC,CAAC;IAC/E,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC;IAC1D,IAAI,KAAK,CAAC,WAAW,EAAE;QACrB,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC;KAC3D;IACD,OAAO,kBAAkB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC,wCAAwC;AAChG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,YAAoB,EAAE,QAAgB,EAAE,QAAgB,EAAE,SAAiB,EAAE,OAAyB,EAAE,MAAqC;IAC9L,MAAM,MAAM,GAAoC;QAC9C,QAAQ,EAAE,YAAY,CAAC,IAAI;QAC3B,IAAI,EAAE,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC5C,SAAS;QACT,OAAO;QACP,MAAM;KACP,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,gCAAgC,EAAE,MAAM,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,8BAA8B,EAAE,MAAM,CAAC,CAAC;IAEnF,MAAM,SAAS,GAAG,qBAAqB,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,MAAkB,CAAC,CAAC;IAE7F,uCAAuC;IACvC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,EAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAC,EAAE,CAAC,EAAC,MAAM,EAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAC,EAAE,SAAS,CAAC,CAAC;IAC3Q,GAAG,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,CAAC,CAAC;IAClD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,+BAA+B,CAAC,YAAoB,EAAE,QAAgB,EAAE,QAAgB,EAAE,SAAkB,EAAE,KAAoB,EAAE,OAAe;IACvK,MAAM,MAAM,GAAuC;QACjD,QAAQ,EAAE,YAAY,CAAC,IAAI;QAC3B,IAAI,EAAE,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC5C,SAAS;QACT,KAAK;QACL,OAAO;KACR,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,gCAAgC,EAAE,MAAM,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,iCAAiC,EAAE,MAAM,CAAC,CAAC;IAEtF,MAAM,SAAS,GAAG,qBAAqB,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,KAAiB,CAAC,CAAC;IAE1F,uCAAuC;IACvC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,EAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAC,EAAE,CAAC,EAAC,MAAM,EAAE,KAAK,EAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAC,EAAE,SAAS,CAAC,CAAC;IAClR,GAAG,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,CAAC,CAAC;IAClD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,YAAoB,EAAE,QAAgB,EAAE,QAAgB,EAAE,SAAiB,EAAE,MAAwB;IACnJ,MAAM,MAAM,GAAiC;QAC3C,QAAQ,EAAE,YAAY,CAAC,IAAI;QAC3B,IAAI,EAAE,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC5C,SAAS;QACT,MAAM;KACP,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,6BAA6B,EAAE,MAAM,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,2BAA2B,EAAE,MAAM,CAAC,CAAC;IAEhF,MAAM,SAAS,GAAG,oBAAoB,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnF,uCAAuC;IACvC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,EAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAC,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAC,EAAE,SAAS,CAAC,CAAC;IACzQ,GAAG,CAAC,KAAK,CAAC,8BAA8B,EAAE,GAAG,CAAC,CAAC;IAC/C,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,YAAoB,EAAE,QAAgB,EAAE,QAAgB,EAAE,KAAa,EAAE,SAAiB,EAAE,IAAY,EAAE,MAAwB;IACpL,MAAM,MAAM,GAAqC;QAC/C,QAAQ,EAAE,YAAY,CAAC,IAAI;QAC3B,IAAI,EAAE,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC5C,KAAK;QACL,SAAS;QACT,IAAI;QACJ,MAAM;KACP,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,kCAAkC,EAAE,MAAM,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,+BAA+B,EAAE,MAAM,CAAC,CAAC;IAEpF,sFAAsF;IACtF,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC;IAEvC,uCAAuC;IACvC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,EAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAC,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAC,EAAE,SAAS,CAAC,CAAC;IACzQ,GAAG,CAAC,KAAK,CAAC,mCAAmC,EAAE,GAAG,CAAC,CAAC;IACpD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gCAAgC,CAAC,YAAoB,EAAE,QAAgB,EAAE,QAAgB,EAAE,KAAa,EAAE,SAAiB,EAAE,IAAY,EAAE,OAAyB,EAAE,MAAqC;IAC/N,MAAM,MAAM,GAAwC;QAClD,QAAQ,EAAE,YAAY,CAAC,IAAI;QAC3B,IAAI,EAAE,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC5C,KAAK;QACL,SAAS;QACT,IAAI;QACJ,OAAO;QACP,MAAM;KACP,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,qCAAqC,EAAE,MAAM,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,kCAAkC,EAAE,MAAM,CAAC,CAAC;IAEvF,kGAAkG;IAClG,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC;IAEvC,uCAAuC;IACvC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,EAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAC,EAAE,CAAC,EAAC,MAAM,EAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAC,EAAE,SAAS,CAAC,CAAC;IAC3Q,GAAG,CAAC,KAAK,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAC;IACvD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oCAAoC,CAAC,YAAoB,EAAE,QAAgB,EAAE,QAAgB,EAAE,KAAa,EAAE,SAAiB,EAAE,IAAY,EAAE,eAAuB,EAAE,MAAwB;IACpN,MAAM,MAAM,GAA4C;QACtD,QAAQ,EAAE,YAAY,CAAC,IAAI;QAC3B,IAAI,EAAE,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC5C,KAAK;QACL,SAAS;QACT,IAAI;QACJ,MAAM;QACN,eAAe;KAChB,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,yCAAyC,EAAE,MAAM,CAAC,CAAC;IAC7D,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,sCAAsC,EAAE,MAAM,CAAC,CAAC;IAE3F,sFAAsF;IACtF,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC;IAEvC,uCAAuC;IACvC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,EAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAC,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAC,EAAE,SAAS,CAAC,CAAC;IACzQ,GAAG,CAAC,KAAK,CAAC,0CAA0C,EAAE,GAAG,CAAC,CAAC;IAC3D,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qCAAqC,CAAC,YAAoB,EAAE,QAAgB,EAAE,QAAgB,EAAE,KAAa,EAAE,MAAqB;IACxJ,MAAM,MAAM,GAA6C;QACvD,QAAQ,EAAE,YAAY,CAAC,IAAI;QAC3B,IAAI,EAAE,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC5C,KAAK;QACL,MAAM;KACP,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,0CAA0C,EAAE,MAAM,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,uCAAuC,EAAE,MAAM,CAAC,CAAC;IAE5F,8FAA8F;IAC9F,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC;IAEvC,uCAAuC;IACvC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,EAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAC,EAAE,CAAC,EAAC,MAAM,EAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAC,EAAE,SAAS,CAAC,CAAC;IAC3Q,GAAG,CAAC,KAAK,CAAC,2CAA2C,EAAE,GAAG,CAAC,CAAC;IAC5D,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAI,oBAAsC,EAAE,MAAqP;IACrU,IAAI,IAAY,CAAC;IACjB,IAAI;QACF,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,MAAM,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC5C,GAAG,CAAC,KAAK,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;QACxC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACjC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;SAC1B;KACF;IAAC,OAAO,CAAC,EAAE;QACV,mBAAmB,CAAC,CAAC,CAAC,CAAC;KACxB,CAAC,mBAAmB;IAErB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAgB,EAAE,QAAgB;IAC5D,OAAO,GAAG,QAAQ,GAAG,kBAAkB,GAAG,QAAQ,EAAE,CAAC;AACvD,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY;IACrC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC7C,+CAA+C;IAC/C,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;QAClB,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;KACnB,CAAC;AACJ,CAAC;AAID,MAAM,UAAU,kBAAkB,CAAC,IAAgB,EAAE,QAAkC;IACrF,uCAAuC;IACvC,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAEvD,MAAM,WAAW,GAA4B;QAC3C,EAAE,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE;QAChB,IAAI,EAAE,IAAI,CAAC,EAAE;QACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC;IACF,MAAM,cAAc,GAA+B;QACjD,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,MAAM,EAAE,IAAI,CAAC,aAAa;QAC1B,KAAK,EAAE,IAAI,CAAC,YAAY;QACxB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;KAC5B,CAAC;IAEF,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,EAAE,cAAc,EAAE,EAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IACtI,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;IACtB,oCAAoC;IACpC,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAN,IAAY,gBAQX;AARD,WAAY,gBAAgB;IAC1B,uDAAI,CAAA;IACJ,2DAAM,CAAA;IACN,yDAAK,CAAA;IACL,2EAAc,CAAA;IACd,6EAAe,CAAA;IACf,qFAAmB,CAAA;IACnB,6EAAe,CAAA;AACjB,CAAC,EARW,gBAAgB,KAAhB,gBAAgB,QAQ3B;AAkBD,MAAM,OAAO,MAAM;IAiCjB,YAAY,WAAoC,EAAE,MAAwC,EAAE,cAA0C,EAAE,UAAuB,EAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAC,EAAE,gBAAwB,IAAI,EAAE,YAAqB,KAAK;QAtBhQ,kBAAa,GAAW,IAAI,CAAC;QAe5B,cAAS,GAAY,KAAK,CAAC;QAC3B,uBAAkB,GAAY,KAAK,CAAC;QACpC,eAAU,GAAwB,EAAE,CAAC;QAM3C,IAAI,CAAC,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC;QACtC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAE3B,IAAI,CAAC,SAAS,GAAG,cAAc,CAAC,QAAQ,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC;QACrC,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC;QACxC,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,aAAa,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEnH,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,uBAAuB,EAAE,CAAC;IACjC,CAAC;IAEO,uBAAuB;QAC7B,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE;YACzB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;SAChC;aAAM;YACL,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;SACjC;QACD,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;IACzB,CAAC;IAEM,iBAAiB;QACtB,kCAAkC;QAClC,OAAO,KAAK,CAAC,CAAC,2EAA2E;IAC3F,CAAC;IAEO,cAAc,CAAC,iBAA0B,IAAI;QACnD,IAAI,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;QACpD,0FAA0F;QAC1F,IAAI,cAAc,EAAE;YAClB,gBAAgB,CAAC,EAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC,CAAC;SACjG;IACH,CAAC;IAEM,SAAS,CAAC,QAAgB,EAAE,QAAgB;QACjD,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE;YACrE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;SAC9D;IACH,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAW,OAAO,CAAC,OAAwB;QACzC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;OAEG;IACI,cAAc;QACnB,OAAO,IAAI,CAAC,QAAkB,CAAC;IACjC,CAAC;IAED;;OAEG;IACI,gBAAgB;QACrB,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE;YAC7B,UAAU,CAAC,IAAI,CAAC,GAAI,CAAC,CAAC,OAAoB,CAAC,CAAC;SAC7C;QAED,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YAC9C,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;SACzC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAEM,gBAAgB,CAAC,UAAyB;QAC/C,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC;IACnC,CAAC;IAED,IAAW,QAAQ,CAAC,QAAyB;QAC3C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC5B,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;OAEG;IACI,eAAe;QACpB,OAAO,IAAI,CAAC,SAAmB,CAAC;IAClC,CAAC;IAED;;OAEG;IACI,iBAAiB;QACtB,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE;YAC9B,WAAW,CAAC,IAAI,CAAC,GAAI,CAAC,CAAC,QAAqB,CAAC,CAAC;SAC/C;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAW,QAAQ,CAAC,QAAgB;QAClC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;IACzB,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAW,MAAM,CAAC,MAAc;QAC9B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;IACzB,CAAC;IAED,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAW,IAAI,CAAC,IAAY;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;IACzB,CAAC;IAED,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAW,KAAK,CAAC,KAAa;QAC5B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;IACzB,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,IAAW,OAAO,CAAC,OAAoB;QACrC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,uBAAuB,EAAE,CAAC;IACjC,CAAC;IAED,IAAW,aAAa;QACtB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IACD,IAAW,aAAa,CAAC,KAAa;QACpC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;IAC9B,CAAC;IAED,IAAW,IAAI;QACb,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;YAC5B,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;gBACrC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,sBAAsB;gBACzC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc;YACnC,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,4CAA4C;SACjF;IACH,CAAC;IAEM,gBAAgB;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;IAC3B,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAW,QAAQ,CAAC,QAAiB;QACnC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAClD;IACH,CAAC;IAEO,KAAK,CAAC,UAAU;QACtB,MAAM,MAAM,GAAwB;YAClC,QAAQ,EAAE,IAAI,CAAC,IAAI;SACpB,CAAC;QACF,IAAI;YACF,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,CAAC,IAAI,EAAE;oBAC7C,OAAO,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;iBAEpC;qBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,CAAC,MAAM,EAAE;oBACtD,OAAO,MAAM,4BAA4B,CAAC,IAAI,CAAC,gBAA6C,CAAC,CAAC;iBAE/F;qBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,CAAC,KAAK,EAAE;oBACrD,OAAO,MAAM,yBAAyB,CAAC,IAAI,CAAC,gBAA0C,CAAC,CAAC;iBAEzF;qBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,CAAC,cAAc,EAAE;oBAC9D,OAAO,MAAM,6BAA6B,CAAC,IAAI,CAAC,gBAA8C,CAAC,CAAC;iBAEjG;qBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,CAAC,eAAe,EAAE;oBAC/D,OAAO,MAAM,gCAAgC,CAAC,IAAI,CAAC,gBAAiD,CAAC,CAAC;iBAEvG;qBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,CAAC,mBAAmB,EAAE;oBACnE,OAAO,MAAM,gCAAgC,CAAC,IAAI,CAAC,gBAAqD,CAAC,CAAC;iBAE3G;qBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,CAAC,eAAe,EAAE;oBAC/D,OAAO,MAAM,iCAAiC,CAAC,IAAI,CAAC,gBAAsD,CAAC,CAAC;iBAC7G;aAEF;iBAAM;gBACL,OAAO,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;aACpC;SACF;QAAC,OAAO,CAAC,EAAE;YACV,mBAAmB,CAAC,CAAC,CAAC,CAAC;SACxB;IACH,CAAC;IAEO,KAAK,CAAC,UAAU;QACtB,MAAM,MAAM,GAAwB;YAClC,QAAQ,EAAE,IAAI,CAAC,IAAI;SACpB,CAAC;QACF,IAAI;YACF,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,CAAC,IAAI,EAAE;oBAC7C,OAAO,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;iBAEpC;qBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,CAAC,MAAM,EAAE;oBACtD,OAAO,MAAM,4BAA4B,CAAC,IAAI,CAAC,gBAA6C,CAAC,CAAC;iBAE/F;qBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,CAAC,KAAK,EAAE;oBACrD,OAAO,MAAM,yBAAyB,CAAC,IAAI,CAAC,gBAA0C,CAAC,CAAC;iBAEzF;qBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,CAAC,cAAc,EAAE;oBAC9D,OAAO,MAAM,6BAA6B,CAAC,IAAI,CAAC,gBAA8C,CAAC,CAAC;iBAEjG;qBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,CAAC,eAAe,EAAE;oBAC/D,OAAO,MAAM,gCAAgC,CAAC,IAAI,CAAC,gBAAiD,CAAC,CAAC;iBAEvG;qBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,CAAC,mBAAmB,EAAE;oBACnE,OAAO,MAAM,gCAAgC,CAAC,IAAI,CAAC,gBAAqD,CAAC,CAAC;iBAE3G;qBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,CAAC,eAAe,EAAE;oBAC/D,OAAO,MAAM,iCAAiC,CAAC,IAAI,CAAC,gBAAsD,CAAC,CAAC;iBAC7G;aACF;iBAAM;gBACL,GAAG,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAC/B,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;gBACzC,OAAO,IAAI,CAAC;aACb;SACF;QAAC,OAAO,CAAC,EAAE;YACV,mBAAmB,CAAC,CAAC,CAAC,CAAC;SACxB;IACH,CAAC;IAGD,4CAA4C;IAC5C,KAAK,CAAC,UAA4B,EAAE,YAAsM;QACxO,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAC,EAAE,IAAI,CAAC,MAAM,EAAE,EAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAC,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/V,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACrB,KAAK,CAAC,gBAAgB,GAAG,YAAY,CAAC;QACtC,KAAK,CAAC,UAAU,GAAG,UAAU,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,6DAA6D;IACrD,YAAY,CAAC,QAAoB,EAAE,QAAkB;QAC3D,sBAAsB;QACtB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrD,sCAAsC;QACtC,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,OAAO,EAAE;gBACnC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;aACpD;SACF;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,sBAAsB,CAAC,QAAkB;QAC/C,MAAM,GAAG,GAAG;YACV,GAAG,EAAE,QAAQ;YACb,QAAQ,EAAE,MAAM;YAChB,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,IAAI,EAAE,CAAC;SACR,CAAC;QAEF,IAAI,QAAQ,YAAY,MAAM,EAAE;YAC9B,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACxB,GAAG,CAAC,IAAI,GAAG,QAAQ,CAAC,gBAAgB,EAAE,CAAC;SACxC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAEM,YAAY;QACjB,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;YAChC,mBAAmB;YACnB,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAEM,eAAe;QACpB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAChD,CAAC;IAEM,gBAAgB;QACrB,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,eAAe,CAAC,MAAM;YAC5B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5C,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/C,aAAa,EAAE;gBACb,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,IAAI,CAAC,KAAK;gBAChB,QAAQ,EAAE,IAAI,CAAC,SAAS;gBACxB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,QAAQ,EAAE,IAAI,CAAC,SAAS;gBACxB,MAAM,EAAE,KAAK;aACd;SACF,CAAC;IACJ,CAAC;CACF;AAUD,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC;AAC3C,MAAM,UAAU,cAAc,CAAC,MAAc;IAC3C,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,EAAC,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAC,EAAE,IAAI,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;IAC5L,GAAG,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/B,OAAO,GAAG,CAAC;AACb,CAAC;AAGD,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAC9C,MAAM,UAAU,eAAe,CAAC,MAAc;IAC5C,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,EAAC,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAC,EAAE,IAAI,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;IAC/L,GAAG,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/B,OAAO,GAAG,CAAC;AACb,CAAC;AAGD,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,OAAO,GAAG,CAAC,KAAK,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAiB;IAC/C,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;AACnD,CAAC"} \ No newline at end of file +{"version":3,"file":"Cohort.js","sourceRoot":"","sources":["../src/Cohort.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/Taskview/SearchBar.js b/dist/Taskview/SearchBar.js index 44bba6a..bc8bfeb 100644 --- a/dist/Taskview/SearchBar.js +++ b/dist/Taskview/SearchBar.js @@ -208,32 +208,32 @@ export class SearchBar { } return text; }) - .on('click', (d, i, nodes) => { + .on('click', (event, d) => { if (d.optionType !== 'gene') { // TODO #427 remove click handler for special attribtue 'treatment', replace with special attribtue constant if (d.optionId !== 'treatment') { - this._clickHandler(d, d.optionType, event, nodes[i]); + this._clickHandler(d, d.optionType, event, event.currentTarget); // indicate an change in the options this._container.dispatchEvent(new CustomEvent('optionchange')); } } }) - .on('mouseover', (d, i, nodes) => { + .on('mouseover', (event, d) => { if (d.optionType === 'gene') { // set global optionId this._geneHoverOptionId = d.optionId; setTimeout(() => { // update detail after timeout time global and current optionId is equal if (d.optionId === this._geneHoverOptionId) { - this._mouseOverHandler(d, nodes[i]); + this._mouseOverHandler(d, event.currentTarget); } }, 200); } else { - this._mouseOverHandler(d, nodes[i]); + this._mouseOverHandler(d, event.currentTarget); } }) - .on('mouseout', (d, i, nodes) => { + .on('mouseout', (event, d) => { if (d.optionType === 'gene') { // clear global optionId this._geneHoverOptionId = null; @@ -797,11 +797,11 @@ export class SearchBar { .attr('data-optid', (d) => { return this._composeGeneDataTypeOptId(optionId, d.id); }) .classed('option-selected', (d) => { return badgeIds.indexOf(this._composeGeneDataTypeOptId(optionId, d.id)) !== -1; }) .html((d) => d.name) - .on('click', (d, i, nodes) => { + .on('click', (event, d) => { const badgeName = this._composeGeneDataTypeName(data.optionText, d.name); const badgeData = deepCopy(data); badgeData.optionData = { subType: d, type: d.dataTypeId }; - this._clickHandlerDetail(data, badgeData, badgeName, event, nodes[i]); + this._clickHandlerDetail(data, badgeData, badgeName, event, event.currentTarget); // indicate an change in the options this._container.dispatchEvent(new CustomEvent('optionchange')); }); @@ -852,11 +852,11 @@ export class SearchBar { .attr('data-optid', (d) => d.id) .classed('option-selected', (d) => { return badgeIds.indexOf(d.id) !== -1; }) .html((d) => d.name) - .on('click', (d, i, nodes) => { + .on('click', (event, d) => { const badgeName = `${option.optionText}:${d.name}`; const badgeData = deepCopy(option); badgeData.optionData = { sAttrId: option.optionId, attrOption: d.id, spAttribute: spAttr, serverColumn: option.optionData.serverColumn }; - this._clickHandlerDetail(option, badgeData, badgeName, event, nodes[i]); + this._clickHandlerDetail(option, badgeData, badgeName, event, event.currentTarget); // this._clickHandlerDetail(data as IScoreOption, (d as any).dataTypeId, d, badgeName, event as MouseEvent, nodes[i] as HTMLElement); // indicate an change in the options log.debug('click spAttribute option: ', { oprtionId: option.optionId, badgeData }); diff --git a/dist/Taskview/SearchBar.js.map b/dist/Taskview/SearchBar.js.map index 75897be..0fa5646 100644 --- a/dist/Taskview/SearchBar.js.map +++ b/dist/Taskview/SearchBar.js.map @@ -1 +1 @@ -{"version":3,"file":"SearchBar.js","sourceRoot":"","sources":["../../src/Taskview/SearchBar.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"SearchBar.js","sourceRoot":"","sources":["../../src/Taskview/SearchBar.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/Taskview/SearchColumn.js b/dist/Taskview/SearchColumn.js index 1b59a8d..1adf740 100644 --- a/dist/Taskview/SearchColumn.js +++ b/dist/Taskview/SearchColumn.js @@ -72,7 +72,7 @@ export default class SearchColumn { const enable = task.supports(attributes, cohorts); const taskBtn = select(this.$tasks).select(`.${task.id}`).classed('disabled', !enable).datum(task); if (enable) { - taskBtn.on('click', (t) => this.showTask(t)); + taskBtn.on('click', (event, t) => this.showTask(t)); } else { taskBtn.on('click', null); diff --git a/dist/Taskview/SearchColumn.js.map b/dist/Taskview/SearchColumn.js.map index ab545a7..3f01e16 100644 --- a/dist/Taskview/SearchColumn.js.map +++ b/dist/Taskview/SearchColumn.js.map @@ -1 +1 @@ -{"version":3,"file":"SearchColumn.js","sourceRoot":"","sources":["../../src/Taskview/SearchColumn.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"SearchColumn.js","sourceRoot":"","sources":["../../src/Taskview/SearchColumn.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/Taskview/tasks/Filter.js b/dist/Taskview/tasks/Filter.js index e1c0456..80cda66 100644 --- a/dist/Taskview/tasks/Filter.js +++ b/dist/Taskview/tasks/Filter.js @@ -129,7 +129,7 @@ export class Filter extends ATask { .append('li').classed('dropdown-item', true) .classed('selected', (vis) => vis.NAME === this.vis.constructor.NAME) .append('a').text((vis) => vis.NAME) // cast to any to access static property - .on('click', (visClass) => { + .on('click', (event, visClass) => { if (visClass.NAME !== this.vis.constructor.NAME) { //check if vis has changed this.header.selectAll('.vis-selector .vis-type li').classed('selected', (vis) => vis.NAME === visClass.NAME); this.showWithVis(new visClass()); @@ -176,7 +176,7 @@ export class Filter extends ATask { configHeader.filter('.dropdown-item') .attr('data-group', (d) => d.group.label) .classed('selected', (d) => d.selected) - .on('click', (d) => { + .on('click', (evemt, d) => { this.header .selectAll(`li.dropdown-item[data-group="${d.group.label}"]`) .classed('selected', (option) => d === option); diff --git a/dist/Taskview/tasks/Filter.js.map b/dist/Taskview/tasks/Filter.js.map index 3db7816..d30a905 100644 --- a/dist/Taskview/tasks/Filter.js.map +++ b/dist/Taskview/tasks/Filter.js.map @@ -1 +1 @@ -{"version":3,"file":"Filter.js","sourceRoot":"","sources":["../../../src/Taskview/tasks/Filter.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Filter.js","sourceRoot":"","sources":["../../../src/Taskview/tasks/Filter.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/Taskview/tasks/Prevalence.d.ts b/dist/Taskview/tasks/Prevalence.d.ts index 124e50d..d47f1a4 100644 --- a/dist/Taskview/tasks/Prevalence.d.ts +++ b/dist/Taskview/tasks/Prevalence.d.ts @@ -25,6 +25,7 @@ export declare class Prevalence extends ATask { private addPackElements; private createLegendItem; private createBarStructure; + private createNonClickableTasks; private createClickableTasks; private addMouseEventListernersToElements; handleOptionSelectionChange(chtIndex: number, clickedTask: HTMLDivElement): Promise; diff --git a/dist/Taskview/tasks/Prevalence.js b/dist/Taskview/tasks/Prevalence.js index bd4267d..3516128 100644 --- a/dist/Taskview/tasks/Prevalence.js +++ b/dist/Taskview/tasks/Prevalence.js @@ -1,7 +1,9 @@ import { format } from 'd3-format'; import { select } from 'd3-selection'; +import { transition } from 'd3-transition'; import tippy from 'tippy.js'; import { getRootCohort } from '../../cohortview'; +import { colors } from '../../colors'; import { multiFilter } from '../../data/Attribute'; import { createHTMLElementWithClasses, getSessionStorageItem, setSessionStorageItem } from '../../util'; import { easyLabelFromFilter } from '../../utilLabels'; @@ -88,12 +90,9 @@ export class Prevalence extends ATask { checkbox.appendChild(cbIndicator); divExclContainer.appendChild(checkbox); // add loading effect icon container - const cbCtrLoading = createHTMLElementWithClasses('div', ['icon-container', 'loading-effect']); + const cbCtrLoading = createHTMLElementWithClasses('div', ['icon-container']); cbCtrLoading.toggleAttribute('hidden'); checkbox.appendChild(cbCtrLoading); - // add loading effect icon - const cbLoading = createHTMLElementWithClasses('i', ['fas', 'fa-circle-notch', 'icon-extra']); - cbCtrLoading.appendChild(cbLoading); checkbox.addEventListener('click', async (event) => { this.excludeMissingValues = !this.excludeMissingValues; // toggle active state @@ -183,22 +182,71 @@ export class Prevalence extends ATask { } // add all the elements that are needed for an input cohort addPackElements(ctrPrevPack, chtIndex, chtConfig, tasks) { - // 1. row: label + clickable tasks + // split into 3 areas: 1. legend + clickable tasks, 2. bar, 3. scale with the values + // 1. Area _______________________________________________ + const divLegend = document.createElement('div'); + divLegend.classList.add('prev-legends-tasks'); + ctrPrevPack.appendChild(divLegend); + // ### 1. row: dataset / base cohort + // row container + const divAllCreation = document.createElement('div'); + divAllCreation.classList.add('prev-all-creation', 'prev-row', 'legend-task-row'); + // legend container + const divAllLabel = document.createElement('div'); + divAllLabel.classList.add('prev-all-label', 'prev-lable-cntr'); + divAllCreation.appendChild(divAllLabel); + // legend all (base cohort) + const divLegendAll = this.createLegendItem(['prev-legend-all'], this.baseCohort.label); + divLegendAll.title = `${this.baseCohort.label}`; + divAllLabel.appendChild(divLegendAll); + // enter mouse hover + divLegendAll.addEventListener('mouseenter', (event) => { + event.stopImmediatePropagation(); + this.baseCohort.representation.getRepresentation().dispatchEvent(new Event('mouseenter')); + }); + // leave mouse hover + divLegendAll.addEventListener('mouseleave', (event) => { + event.stopImmediatePropagation(); + this.baseCohort.representation.getRepresentation().dispatchEvent(new Event('mouseleave')); + }); + // add eye icon for the dataset bar + const iconEye = document.createElement('i'); + iconEye.classList.add('fas', 'fa-eye', 'prev-show-dataset-eye'); + iconEye.dataset.showDatasetBar = '1'; + iconEye.title = 'Show/Hide base cohort bar'; + iconEye.addEventListener('click', async (event) => { + const showDatasetBar = Boolean(Number(iconEye.dataset.showDatasetBar)); + const toggled = !showDatasetBar; + iconEye.dataset.showDatasetBar = toggled ? '1' : '0'; + const updatePromises = []; + // update data based on exclusion state + for (const currPack of this.prevalencePacks) { + if (currPack.parentTaskId !== null) { + // update prevalence calculations + updatePromises.push(this.updatePrevalencePack(currPack)); + } + } + // wait until all prevalence are updated + await Promise.all(updatePromises); + }); + divAllCreation.appendChild(iconEye); + // ### 2. row: reference cohort + // row container const divRefCreation = document.createElement('div'); - divRefCreation.classList.add('prev-ref-creation', 'prev-row'); - ctrPrevPack.appendChild(divRefCreation); - // label + divRefCreation.classList.add('prev-ref-creation', 'prev-row', 'legend-task-row'); + // legend container const divRefLabel = document.createElement('div'); - divRefLabel.classList.add('prev-ref-label'); + divRefLabel.classList.add('prev-ref-label', 'prev-lable-cntr'); + divRefCreation.appendChild(divRefLabel); // legend reference const divLegendRef = this.createLegendItem(['prev-legend-ref'], 'Reference, defined by'); divRefLabel.appendChild(divLegendRef); - divRefCreation.appendChild(divRefLabel); + // tasks container // clickable taks // task container (containes all tasks) - const divTaskContainer = document.createElement('div'); - divTaskContainer.classList.add('ref-task-container'); - divRefCreation.appendChild(divTaskContainer); + const divRefTaskContainer = document.createElement('div'); + divRefTaskContainer.classList.add('ref-task-container'); + divRefCreation.appendChild(divRefTaskContainer); //add different task options (tasks with their attributes) const taskAndAttribute = tasks.map((elem) => { const values = chtConfig.attributeValue.filter((conf) => conf.taskId === elem.id)[0].values; @@ -208,41 +256,31 @@ export class Prevalence extends ATask { }; }); // tasks - const dataCells = select(divTaskContainer).selectAll('div.ref-task-option').data(taskAndAttribute, (d) => d.task.id); + const dataCellsRef = select(divRefTaskContainer).selectAll('div.ref-task-option').data(taskAndAttribute, (d) => d.task.id); // create buttons for the tasks - const enterSelection = dataCells.enter(); - enterSelection + const enterSelectionRef = dataCellsRef.enter(); + enterSelectionRef .append('div') .classed('ref-task-option', true) + .classed('task-option', true) .each((d, index, nodes) => { this.createClickableTasks(d, chtIndex, index, nodes); }); - // ------- - // 2. row: label (legend) + bars + label space - const divResult = document.createElement('div'); - divResult.classList.add('prev-result', 'prev-row'); - ctrPrevPack.appendChild(divResult); - // label (legend) - const divResultLabel = document.createElement('div'); - divResultLabel.classList.add('prev-result-label', 'prev-label'); - divResult.appendChild(divResultLabel); - // legend all (base cohort) - const divLegendAll = this.createLegendItem(['prev-legend-all'], this.baseCohort.label); - divLegendAll.title = `${this.baseCohort.label}`; - // enter mouse hover - divLegendAll.addEventListener('mouseenter', (event) => { - event.stopImmediatePropagation(); - this.baseCohort.representation.getRepresentation().dispatchEvent(new Event('mouseenter')); - }); - // leave mouse hover - divLegendAll.addEventListener('mouseleave', (event) => { - event.stopImmediatePropagation(); - this.baseCohort.representation.getRepresentation().dispatchEvent(new Event('mouseleave')); - }); + // ### 3. row: cohort + // row container + const divChtCreation = document.createElement('div'); + divChtCreation.classList.add('prev-cht-creation', 'prev-row', 'legend-task-row'); + // legend container + const divChtlabel = document.createElement('div'); + divChtlabel.classList.add('prev-cht-label', 'prev-lable-cntr'); + divChtCreation.appendChild(divChtlabel); // legend cohort (input cohort) const currCht = chtConfig.cht; - const divLegendCht = this.createLegendItem(['prev-legend-cht'], currCht.label, currCht.colorTaskView); + // get the styled cohort label + const currLabel = currCht.getHTMLLabel(); + const divLegendCht = this.createLegendItem(['prev-legend-cht'], currLabel, currCht.colorTaskView); divLegendCht.title = `${currCht.label} (All filters are used to create this cohort.)`; + divChtlabel.appendChild(divLegendCht); // enter mouse hover divLegendCht.addEventListener('mouseenter', (event) => { event.stopImmediatePropagation(); @@ -253,16 +291,39 @@ export class Prevalence extends ATask { event.stopImmediatePropagation(); currCht.representation.getRepresentation().dispatchEvent(new Event('mouseleave')); }); - // add legend items - divResultLabel.appendChild(divLegendAll); - // divResultLabel.appendChild(divLegendRef); - divResultLabel.appendChild(divLegendCht); + // tasks container + // clickable taks + // task container (containes all tasks) + const divChtTaskContainer = document.createElement('div'); + divChtTaskContainer.classList.add('cht-task-container'); + divChtCreation.appendChild(divChtTaskContainer); + // tasks + const dataCellsCht = select(divChtTaskContainer).selectAll('div.cht-task-option').data(taskAndAttribute, (d) => d.task.id); + // create buttons for the tasks + const enterSelectionCht = dataCellsCht.enter(); + enterSelectionCht + .append('div') + .classed('cht-task-option', true) + .classed('task-option', true) + // .classed('active', true) + .each((d, index, nodes) => { + this.createNonClickableTasks(d, chtIndex, index, nodes); + }); + // add all row containers + divLegend.appendChild(divAllCreation); + divLegend.appendChild(divRefCreation); + divLegend.appendChild(divChtCreation); + // 2. Area _______________________________________________ + // bars container + const divResult = document.createElement('div'); + divResult.classList.add('prev-result', 'prev-row'); + ctrPrevPack.appendChild(divResult); // bars const divResultBar = document.createElement('div'); divResultBar.classList.add('prev-result-bar'); divResult.appendChild(divResultBar); this.createBarStructure(divResultBar, chtConfig.cht.colorTaskView); - // scale label space + // scale label space at the end const divBarSpace = document.createElement('div'); divBarSpace.classList.add('prev-label-space'); divResult.appendChild(divBarSpace); @@ -270,15 +331,11 @@ export class Prevalence extends ATask { const maxScaleLable = createHTMLElementWithClasses('div', ['prev-max-scale-label']); maxScaleLable.innerHTML = `${this.baseCohortSize}`; divBarSpace.appendChild(maxScaleLable); - // ------- - // 3. row: label (= space for size label) + scale (+ size indicators) + label space + // 3. Area _______________________________________________ + // label (= space for size label) + scale (+ size indicators) + label space const divScale = document.createElement('div'); divScale.classList.add('prev-result-scale', 'prev-row'); ctrPrevPack.appendChild(divScale); - // label - const divScaleLabel = document.createElement('div'); - divScaleLabel.classList.add('prev-scale-label', 'prev-label'); - divScale.appendChild(divScaleLabel); // scale const divScaleSizes = document.createElement('div'); divScaleSizes.classList.add('prev-scale-sizes'); @@ -300,6 +357,7 @@ export class Prevalence extends ATask { divScaleRef.classList.add('prev-scale-reference', 'prev-scale-elem', 'prev-value-reference'); // divScaleSizes.appendChild(divScaleRef); lowerScales.appendChild(divScaleRef); + // -> tick const divScaleRefTick = document.createElement('div'); divScaleRefTick.classList.add('scale-reference-tick'); divScaleRef.appendChild(divScaleRefTick); @@ -307,6 +365,11 @@ export class Prevalence extends ATask { const divScaleRefLabelContainer = document.createElement('div'); divScaleRefLabelContainer.classList.add('scale-reference-container'); divScaleRef.appendChild(divScaleRefLabelContainer); + // -> label prevalence (percentage) + const divScaleRefPercentage = document.createElement('div'); + divScaleRefPercentage.classList.add('scale-ref-percentage'); + divScaleRefPercentage.innerHTML = '100%'; + divScaleRefLabelContainer.appendChild(divScaleRefPercentage); // -> label size const ctrRefSize = createHTMLElementWithClasses('div', ['scale-ctr-ref-size']); divScaleRefLabelContainer.appendChild(ctrRefSize); @@ -323,30 +386,30 @@ export class Prevalence extends ATask { because samples with missing values are filtered out.` }); infoLable.appendChild(infoIcon); - // -> label prevalence (percentage) - const divScaleRefPercentage = document.createElement('div'); - divScaleRefPercentage.classList.add('scale-ref-percentage'); - divScaleRefPercentage.innerHTML = '100%'; - divScaleRefLabelContainer.appendChild(divScaleRefPercentage); // cohort scale const divScaleCohort = document.createElement('div'); divScaleCohort.classList.add('prev-scale-cohort', 'prev-scale-elem', 'prev-value-cohort'); // divScaleSizes.appendChild(divScaleCohort); lowerScales.appendChild(divScaleCohort); + // -> tick + const divScaleChtTick = document.createElement('div'); + divScaleChtTick.classList.add('scale-cohort-tick'); + divScaleCohort.appendChild(divScaleChtTick); // -> label size container const divScaleCohortContainer = document.createElement('div'); divScaleCohortContainer.classList.add('scale-cohort-container'); divScaleCohort.appendChild(divScaleCohortContainer); - // -> label size - const divScaleCohortSize = document.createElement('div'); - divScaleCohortSize.classList.add('scale-cohort-size'); - divScaleCohortContainer.appendChild(divScaleCohortSize); // -> label prevalence (percentage) const divScaleCohortPercentage = document.createElement('div'); divScaleCohortPercentage.classList.add('scale-cohort-percentage'); const cohortColor = chtConfig.cht.colorTaskView === null ? 'white' : chtConfig.cht.colorTaskView; - divScaleCohortPercentage.style.background = `linear-gradient(to right, white 0%, white 25%, ${cohortColor} 100%)`; + divScaleCohortPercentage.style.background = `linear-gradient(to right, ${cohortColor} 0%, white 100%)`; + // divScaleCohortPercentage.style.background = `linear-gradient(to right, ${cohortColor} 0%, white 25%, white 100%)`; divScaleCohortContainer.appendChild(divScaleCohortPercentage); + // -> label size + const divScaleCohortSize = document.createElement('div'); + divScaleCohortSize.classList.add('scale-cohort-size'); + divScaleCohortContainer.appendChild(divScaleCohortSize); // scale label space at the end const divScaleSpace = document.createElement('div'); divScaleSpace.classList.add('prev-label-space'); @@ -376,7 +439,7 @@ export class Prevalence extends ATask { const divDataset = document.createElement('div'); divDataset.classList.add('bar-dataset'); ctrBars.appendChild(divDataset); - // zero line bar + // zero line bar -> needed so that the scale is aligned correctly const divZero = createHTMLElementWithClasses('div', ['bar', 'prev-value-zero']); divDataset.appendChild(divZero); // reference bar @@ -401,6 +464,56 @@ export class Prevalence extends ATask { barError.appendChild(barErrorRight); } // create all task options for an input cohort + createNonClickableTasks(d, chtIndex, index, nodes) { + const currNode = nodes[index]; + const currTask = d.task; + const taskRep = currTask.representation.getRepresentation(); + // add the task id as class + currNode.classList.add(currTask.id); + // checkbox + const checkbox = document.createElement('div'); + // checkbox.classList.add('task-checkbox'); + checkbox.classList.add('prev-checkbox'); + // checkbox indicator + const cbIndicator = document.createElement('div'); + // cbIndicator.classList.add('task-checkbox-indicator'); + cbIndicator.classList.add('checkbox-indicator'); + checkbox.appendChild(cbIndicator); + // label + const label = document.createElement('div'); + label.classList.add('task-label'); + // add checkbox and label + currNode.appendChild(checkbox); + currNode.appendChild(label); + // get attribute label + const attrLabel = currTask.label; + // get all values for the task + const values = d.values; + // get all attribtues for the task + const attributes = d.task.attributes; + // get all value labels for all attributes + const valueLabel = attributes.map((attr, i) => { + let attributeRangeLabel; + if (Array.isArray(values[i])) { + // TODO labels + // attributeRangeLabel = (values[i] as INumRange[]).map((val) => labelFromFilter(val, attr)).join('/'); + attributeRangeLabel = values[i].map((val) => easyLabelFromFilter(val, attr.label)).join('/'); + } + else { + // TODO labels + // attributeRangeLabel = labelFromFilter((values[i] as IEqualsList), attr); + attributeRangeLabel = easyLabelFromFilter(values[i], attr.label); + } + return attributeRangeLabel; + }).join(', '); + // set text for the task html element + label.innerHTML = `${attrLabel}: ${valueLabel}`; + // set tootip + tippy(label, { + content: `${attrLabel}: ${valueLabel}` + }); + } + // create all task options for an referce cohort createClickableTasks(d, chtIndex, index, nodes) { const currNode = nodes[index]; const currTask = d.task; @@ -417,12 +530,9 @@ export class Prevalence extends ATask { cbIndicator.classList.add('checkbox-indicator'); checkbox.appendChild(cbIndicator); // add loading effect icon container - const cbCtrLoading = createHTMLElementWithClasses('div', ['icon-container', 'loading-effect']); + const cbCtrLoading = createHTMLElementWithClasses('div', ['icon-container']); cbCtrLoading.toggleAttribute('hidden', true); checkbox.appendChild(cbCtrLoading); - // add loading effect icon - const cbLoading = createHTMLElementWithClasses('i', ['fas', 'fa-circle-notch', 'icon-extra']); - cbCtrLoading.appendChild(cbLoading); // label const label = document.createElement('div'); label.classList.add('task-label'); @@ -557,15 +667,6 @@ export class Prevalence extends ATask { cc.refSize = cohortRefSize; // change reference bar size and the prevalence value this.updateBars(currPack, datasetSize, currPack.chtConfig.size, cohortRefSize); - // add info label for no filter active and excluding missing values - // and if reference size != dataset size - const infoLabel = currPack.container.querySelector('.prev-info-bar-label'); - if (exclState && activeTasks.length === 0 && datasetSize !== cohortRefSize) { - infoLabel.removeAttribute('hidden'); - } - else { - infoLabel.toggleAttribute('hidden', true); - } } startBarLoadingAnimation(prevPack) { // add loading animation for the reference bar @@ -629,11 +730,48 @@ export class Prevalence extends ATask { // log.debug('CI values: ', {sizeCht, sizeRef, prevValue, ciValue}); this.stopBarLoadingAnimation(prevPack); this.stopTaskLoadingAnimation(prevPack); + const animationTime = 1000; + const tBar = transition().duration(animationTime); + // check if the dataset bar should be shown + const iconEye = prevPack.container.querySelector('.prev-show-dataset-eye'); + const showDatasetBar = Boolean(Number(iconEye.dataset.showDatasetBar)); + const maxSizeRef = showDatasetBar ? sizeDataset : sizeRef; + const colorDatasetBar = showDatasetBar ? colors.lightBorder : 'transparent'; + const datasetBar = prevPack.container.querySelector('.bar-dataset'); + // datasetBar.classList.toggle('hide-dataset', !showDatasetBar); + select(datasetBar).transition(tBar).style('background-color', `${colorDatasetBar}`); + const colorDatasetMaxLabel = showDatasetBar ? colors.textColor : 'transparent'; + const datasetBarMaxLabel = prevPack.container.querySelector('.prev-max-scale-label'); + // datasetBarMaxLabel.classList.toggle('hide-label', !showDatasetBar); + select(datasetBarMaxLabel).transition(tBar).style('color', `${colorDatasetMaxLabel}`); + // reference size + const percentageRef = (sizeRef / maxSizeRef) * 100; + const refElems = prevPack.container.querySelectorAll('.prev-value-reference'); + refElems.forEach((elem) => { + select(elem).transition(tBar).style('width', `${percentageRef}%`); + // elem.style.width = `${percentageRef}%`; + }); + const scaleRefS = prevPack.container.querySelector('.scale-ref-size'); + scaleRefS.innerHTML = `${sizeRef}`; + setTimeout(() => { + // update ci interval after the animation for the dataset bar -> otherwise the bar size is not correct + // error bar for confidence intervall + // set error bar length + const refBar = prevPack.container.querySelector('.prev-value-reference.bar'); + const refBarWidth = refBar.getBoundingClientRect().width; + const errorBar = prevPack.container.querySelector('.prev-ci-bar-error'); + const ciHalfBarWidth = ciValue * refBarWidth; + const ciBarWidth = 2 * ciHalfBarWidth; + // select(errorBar).transition(tBar).style('width', `${ciBarWidth}px`).style('margin-right', `-${ciHalfBarWidth}px`); + errorBar.style.width = `${ciBarWidth}px`; + errorBar.style.marginRight = `-${ciHalfBarWidth}px`; + }, animationTime + 10); // cohort size - const percentageCht = (sizeCht / sizeDataset) * 100; + const percentageCht = (sizeCht / maxSizeRef) * 100; const chtElems = prevPack.container.querySelectorAll('.prev-value-cohort'); chtElems.forEach((elem) => { - elem.style.width = `${percentageCht}%`; + select(elem).transition(tBar).style('width', `${percentageCht}%`); + // elem.style.width = `${percentageCht}%`; }); const scaleChtS = prevPack.container.querySelector('.scale-cohort-size'); scaleChtS.innerHTML = `${sizeCht}`; @@ -642,7 +780,8 @@ export class Prevalence extends ATask { // add tooltip for the prevalence and its CI const prevTooltip = ` Prevalence: ${prevValueMore}%
- Confidence Interval: ± ${ciValueMore}%
`; + Confidence Interval (95% Confidence): ± ${ciValueMore}%
+ `; const prevInstance = scaleChtP._tippy; if (prevInstance) { prevInstance.setContent(prevTooltip); @@ -652,32 +791,31 @@ export class Prevalence extends ATask { content: prevTooltip }); } - // reference size - const percentageRef = (sizeRef / sizeDataset) * 100; - const refElems = prevPack.container.querySelectorAll('.prev-value-reference'); - refElems.forEach((elem) => { - elem.style.width = `${percentageRef}%`; - }); - const scaleRefS = prevPack.container.querySelector('.scale-ref-size'); - scaleRefS.innerHTML = `${sizeRef}`; - // error bar for confidence intervall - // set error bar length - const refBar = prevPack.container.querySelector('.prev-value-reference.bar'); - const refBarWidth = refBar.getBoundingClientRect().width; - const errorBar = prevPack.container.querySelector('.prev-ci-bar-error'); - const ciHalfBarWidth = ciValue * refBarWidth; - const ciBarWidth = 2 * ciHalfBarWidth; - errorBar.style.width = `${ciBarWidth}px`; - errorBar.style.marginRight = `-${ciHalfBarWidth}px`; + // add info label for no filter active and excluding missing values + // and if reference size != dataset size + const exclState = this.excludeMissingValues; + const activeTasks = select(prevPack.container).selectAll('.ref-task-option.active').data().map((elem) => elem.task); + const infoLabel = prevPack.container.querySelector('.prev-info-bar-label'); + if (showDatasetBar) { + if (exclState && activeTasks.length === 0 && sizeDataset !== sizeRef) { + infoLabel.removeAttribute('hidden'); + } + else { + infoLabel.toggleAttribute('hidden', true); + } + } + else { + infoLabel.toggleAttribute('hidden', true); + } // add tooltip to bar const barContainer = prevPack.container.querySelector('.prev-result-bar'); // update toottip text const tooltip = ` + ${this.baseCohort.label} (${sizeDataset} items)
Reference: defined with checkboxes (${sizeRef} items)
- Cohort: ${prevPack.chtConfig.cht.label} (${sizeCht} items)
- Dataset: ${this.baseCohort.label} (${sizeDataset} items)
+ ${prevPack.chtConfig.cht.getHTMLLabel()} (${sizeCht} items)
Prevalence: ${prevValueMore}%
- Confidence Interval: ± ${ciValueMore}%
`; + Confidence Interval (95% Confidence): ± ${ciValueMore}%
`; // get tippy instance, to overwrite existing tippy tooltip const instance = barContainer._tippy; if (instance) { diff --git a/dist/Taskview/tasks/Prevalence.js.map b/dist/Taskview/tasks/Prevalence.js.map index 3109f21..afbb2b8 100644 --- a/dist/Taskview/tasks/Prevalence.js.map +++ b/dist/Taskview/tasks/Prevalence.js.map @@ -1 +1 @@ -{"version":3,"file":"Prevalence.js","sourceRoot":"","sources":["../../../src/Taskview/tasks/Prevalence.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Prevalence.js","sourceRoot":"","sources":["../../../src/Taskview/tasks/Prevalence.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/app.js b/dist/app.js index 179d342..1c14b9e 100644 --- a/dist/app.js +++ b/dist/app.js @@ -137,7 +137,7 @@ export class CohortApp { .attr('data-db', (d) => d.source.dbConnectorName) .attr('data-dbview', (d) => d.source.viewName) .html((d) => { return d.source.idType.toUpperCase(); }) - .on('click', async (d) => { + .on('click', async (event, d) => { var _a, _b; const newDataset = ((_b = (_a = this.dataset) === null || _a === void 0 ? void 0 : _a.source) === null || _b === void 0 ? void 0 : _b.idType) === d.source.idType ? //same as current? { source: null, rootCohort: null, chtOverviewElements: null } : // deselect @@ -151,7 +151,7 @@ export class CohortApp { .append('span').classed('caret', true); const dropdown = datasetGroup.append('ul').classed('dropdown-menu', true); dropdown.append('li').classed('dropdown-item', true).append('a').text('All') - .on('click', async (d) => { + .on('click', async (event, d) => { const newDataset = { source: d.source, rootCohort: null, chtOverviewElements: null }; this.handleDatasetClick(newDataset); }); @@ -164,7 +164,7 @@ export class CohortApp { .enter() .append('li').classed('data-panel', true).classed('dropdown-item', true) .append('a').text((d) => d.id).attr('title', (d) => d.description) - .on('click', async function (d) { + .on('click', async function (event, d) { // don't toggle data by checkging what is selected in dropdown const dataSourcesAndPanels = select(this.parentNode.parentNode).datum(); // a -> parent = li -> parent = dropdown = ul const newDataset = { source: dataSourcesAndPanels.source, panel: d, rootCohort: null, chtOverviewElements: null }; diff --git a/dist/app.js.map b/dist/app.js.map index 3043c56..3eb4a69 100644 --- a/dist/app.js.map +++ b/dist/app.js.map @@ -1 +1 @@ -{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAY,MAAM,cAAc,CAAC;AAC/C,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAC,UAAU,EAAE,eAAe,EAA+E,mBAAmB,EAAE,cAAc,EAAmB,aAAa,EAAC,MAAM,UAAU,CAAC;AACvM,OAAO,EAAC,QAAQ,EAAE,MAAM,EAAC,MAAM,cAAc,CAAC;AAE9C,OAAO,EAAS,YAAY,EAAE,kBAAkB,EAAC,MAAM,UAAU,CAAC;AAElE,OAAO,EAAC,cAAc,EAAE,oBAAoB,EAAE,UAAU,EAAE,mBAAmB,EAAE,QAAQ,EAAC,MAAM,cAAc,CAAC;AAC7G,OAAO,EAAC,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAC,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAC,eAAe,EAAC,MAAM,QAAQ,CAAC;AAGvC,OAAO,WAAW,MAAM,8BAA8B,CAAC;AACvD,OAAO,WAAW,MAAM,0BAA0B,CAAC,CAAC,mCAAmC;AACvF,OAAO,EAAC,sBAAsB,EAAE,mBAAmB,EAAE,GAAG,EAAE,eAAe,EAAC,MAAM,QAAQ,CAAC;AACzF,OAAO,EAAC,oBAAoB,EAAE,2BAA2B,EAAoB,uBAAuB,EAAE,mBAAmB,EAAC,MAAM,oBAAoB,CAAC;AACrJ,OAAO,EAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAsB,MAAM,eAAe,CAAC;AAC9F,OAAO,EAAC,QAAQ,EAAC,MAAM,cAAc,CAAC;AAGtC;;GAEG;AACH,MAAM,OAAO,SAAS;IAwBpB,YACkB,KAAsB,EACtB,YAA8B,EAC9C,MAAmB,EACH,OAAoB;QAHpB,UAAK,GAAL,KAAK,CAAiB;QACtB,iBAAY,GAAZ,YAAY,CAAkB;QAE9B,YAAO,GAAP,OAAO,CAAa;QArB9B,YAAO,GAAiB,IAAI,CAAC;QAC7B,oBAAe,GAAmB,IAAI,CAAC;QACvC,cAAS,GAAa,IAAI,CAAC;QAC3B,eAAU,GAAW,IAAI,CAAC;QAE1B,mBAAc,GAAW,CAAC,CAAC;QAI5B,eAAU,GAAG,CAAC,CAAC;QAkCtB,gBAAW,GAAG,IAAI,CAAC;QApBjB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAEtE,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,wCAAwC;IAC7H,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI;QACR,GAAG,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAClD,iBAAiB,CAAC,IAAI,EAAE,CAAC;QACzB,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAsB,CAAC,CAAC,CAAC;QACpH,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAID,KAAK,CAAC,iBAAiB,CAAC,EAAoB;QAC1C,MAAM,UAAU,GAAkB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,mDAAmD;QACvG,MAAM,cAAc,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC;QAE5C,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE;YAC7B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE;gBACpC,GAAG,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;gBACrD,GAAc,CAAC,SAAS,CACvB,IAAI,IAAI,CAAC,UAAU,EAAE,GAAG,GAAI,GAAc,CAAC,QAAQ,EAClD,GAAc,CAAC,QAAQ,CACzB,CAAC;aACH;SACF;QAED,wDAAwD;QACxD,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,IAAI,mBAAmB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;QACrF,+DAA+D;QAC/D,MAAM,KAAK,GAAW,cAAc,CAAC,iBAAiB,EAAE,CAAC;QACzD,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,uBAAuB;QAE/C,yBAAyB;QACzB,IAAI,OAAO,GAAG,IAAI,CAAC;QACnB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAC/B,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,IAAI,oBAAoB,CAAC,GAAa,EAAE,OAAO,CAAC,CAAC,CAAC;gBAClF,OAAO,GAAG,KAAK,CAAC,CAAC,8DAA8D;gBAE/E,IAAI,IAAI,CAAC,WAAW,EAAE;oBACpB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;oBACzB,iBAAiB,CAAC,MAAM,CAAC,mBAAmB,EAAE,GAAG,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC,CAAC;iBACvF;aACF;SACF;IACH,CAAC;IAGD;;;OAGG;IACK,KAAK,CAAC,KAAK;QACjB,GAAG,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;QAEnC,yDAAyD;QACzD,8CAA8C;QAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,0BAA0B,CAAsB,CAAC;QACxF,OAAO,CAAC,KAAK,GAAG,oCAAoC,CAAC;QACrD,OAAO,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,cAAc;QAClC,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC;QAC1B,OAAO,CAAC,GAAG,GAAG,qBAAqB,CAAC;QACpC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,sEAAsE;QAE9F,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QACzE,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/E,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,2BAA2B,CAAC,CAAC;QAE3G,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC;QAEzG,oCAAoC;QACpC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,IAAI,EAAoB,CAAC;QAC7F,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAE5D,oCAAoC;QACpC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAE3D,IAAI;YACF,IAAI,CAAC,mCAAmC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,mDAAmD;YACzG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAoB,CAAC;YACjE,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,yBAAyB;YAEvD,mBAAmB;YACnB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YACrD,OAAO,CAAC,MAAM,EAAE,CAAC;YACjB,mCAAmC;YACnC,IAAI,CAAC,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;SAC5E;QAAC,MAAM;YACN,mBAAmB,CAAC,gBAAgB,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;YACzE,OAAO,CAAC,IAAI,CAAC;;kEAE+C,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK;OAC7I,CAAC,CAAC;SACJ;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,MAAM;QACnC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC5C,mEAAmE;QACnE,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAClD,kFAAkF;QAClF,MAAM,oBAAoB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3E,MAAM,EAAE,CAAC;YACT,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC,IAAI,QAAQ,CAAiB,CAAC,CAAC,CAAC,EAAE;YAChK,2FAA2F;YAC3F,gFAAgF;YAChF,+DAA+D;YAC/D,8EAA8E;SAC/E,CAAC,CAAC,CAAC,CAAC;QAEL,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,wCAAwC;aACvH,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,wBAAwB,EAAE,IAAI,CAAC,CAAC;QAEjE,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC;aAC1B,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC;aACtB,IAAI,CAAC,OAAO,EAAE,sBAAsB,CAAC;aACrC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC;aAChD,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;aAC7C,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,GAAE,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA,CAAC,CAAC;aACpD,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;;YAC9B,MAAM,UAAU,GAAG,CAAA,MAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,MAAM,0CAAE,MAAM,MAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB;gBACtF,EAAC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC,WAAW;gBACzE,EAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAC,CAAC,CAAC,SAAS;YAC5E,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEL,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC;aAC1B,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC;aACtB,IAAI,CAAC,OAAO,EAAE,sCAAsC,CAAC;aACrD,IAAI,CAAC,gBAAgB,EAAE,UAAU,CAAC;aAClC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAEzC,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;QAC1E,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;aACzE,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAC9B,MAAM,UAAU,GAAG,EAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAC,CAAC;YACnF,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEL,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;QAClF,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAE/E,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,QAAQ;aACL,SAAS,CAAC,eAAe,CAAC;aAC1B,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;aACrB,KAAK,EAAE;aACP,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC;aACvE,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;aACjE,EAAE,CAAC,OAAO,EAAE,KAAK,WAAW,KAAK,EAAE,CAAC;YACnC,8DAA8D;YAC9D,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,KAAK,EAA0D,CAAC,CAAC,6CAA6C;YAC9K,MAAM,UAAU,GAAG,EAAC,MAAM,EAAE,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAC,CAAC;YAChH,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEL,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;aAC1C,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC;aACtB,IAAI,CAAC,OAAO,EAAE,sBAAsB,CAAC;aACrC,IAAI,CAAC,4DAA4D,CAAC;aAClE,IAAI,CAAC,OAAO,EAAE,sBAAsB,CAAC;aACrC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC;aACpB,EAAE,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;YACtB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACP,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,UAAU;QACxC,oDAAoD;QACpD,UAAU,EAAE,CAAC,CAAC,0FAA0F;QAExG,IAAI,UAAU,CAAC,MAAM,EAAE,EAAE,wDAAwD;YAC/E,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,0BAA0B,CAAC,CAAC;SACzJ;aAAM;YACL,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;SACxB;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC1D,UAAU,CAAC,UAAU,GAAG,QAAQ,CAAC;QACjC,mCAAmC;QACnC,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,6BAA6B,EAAE,CAAC;SACzE;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACxE,CAAC;IAEM,KAAK,CAAC,YAAY;QACvB,IAAI,SAAqB,CAAC;QAC1B,oBAAoB;QACpB,IAAI;YACF,SAAS,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAClE,GAAG,CAAC,KAAK,CAAC,uBAAuB,EAAE,SAAS,CAAC,CAAC;SAC/C;QAAC,OAAO,CAAC,EAAE;YACV,mBAAmB,CAAC,CAAC,CAAC,CAAC;SACxB;QACD,OAAO,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IAEM,aAAa,CAAC,SAAqB;QACxC,MAAM,OAAO,GAA+B,EAAE,CAAC;QAE/C,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE;YAC1B,IAAI,EAAE,CAAC,IAAI,KAAK,UAAU,EAAE;gBAC1B,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAC1B;YACD,IAAI,EAAE,CAAC,IAAI,KAAK,WAAW,EAAE;gBAC3B,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACzB;YACD,IAAI,EAAE,CAAC,IAAI,KAAK,WAAW,EAAE;gBAC3B,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACzB;SACF;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAGO,6BAA6B;QACnC,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,EAAE;YACjC,OAAO,IAAI,CAAC;SACb;aAAM;YACL,OAAO,IAAI,CAAC,eAAe,CAAC,iBAAiB,EAAE,CAAC;SACjD;IACH,CAAC;IAEM,cAAc;QACnB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,OAAqB;QACnD,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,EAAE;YAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,OAAO,IAAI,CAAC;SACb;aAAM;YACL,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;YACpC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAE5B,MAAM,eAAe,GAAsB,MAAM,mBAAmB,CAAC,YAAY,CAAC,eAAe,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC1H,GAAG,CAAC,KAAK,CAAC,0BAA0B,EAAE,eAAe,CAAC,CAAC;YACvD,MAAM,QAAQ,GAAkB,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,EAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAC;YACzI,qBAAqB;YACrB,IAAI,IAAI,GAAW,MAAM,YAAY,CACnC,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAC9C,YAAY,CAAC,WAAW,EAAE,YAAY,CAAC,eAAe,EAAE,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,QAAQ,EAAE,YAAY,CAAC,MAAM,EAAE,QAAQ,EACzJ,EAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAC,CAC/C,CAAC;YACF,IAAI,KAAK,EAAE;gBACT,MAAM,SAAS,GAAG,IAAI,mBAAmB,CACvC,KAAK,CAAC,EAAE,EACR,YAAY,CAAC,QAAQ,EACrB,YAAY,CAAC,eAAe,EAC5B,aAAa,CACd,CAAC;gBAEF,IAAI,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,EAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAC,CAAC,CAAC;gBACxD,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;aAC/C;YACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,qBAAqB;YAC5C,wDAAwD;YACxD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3C,UAAU,CAAC,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC;YACvC,OAAO,UAAU,CAAC;SACnB;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,OAAqB;QACpC,MAAM,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,wCAAwC;QAC7G,MAAM,WAAW,GAAG,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,yDAAyD;QACpG,GAAG,CAAC,KAAK,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;QAC9C,uBAAuB,CAAC,KAAK,EAAE,CAAC;QAEhC,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE;YACtC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9B,IAAI,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,QAAQ,EAAE;gBAC7C,kDAAkD;gBAClD,IAAI,WAAW,KAAK,IAAI,CAAC,cAAc,EAAE;oBACvC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;oBAEvB,4DAA4D;oBAC5D,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;oBACjC,MAAM,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;oBAElD,wFAAwF;oBACxF,IAAI,UAAU,KAAK,IAAI,IAAI,UAAU,CAAC,EAAE,KAAK,mBAAmB,EAAE;wBAChE,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,EAAC,SAAS,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,EAAC,CAAC,CAAC;wBACvF,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;wBACnC,MAAM,QAAQ,GAAG;4BACf,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,QAAQ;4BACxC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,MAAM;4BACpC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,MAAM;4BACpC,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,IAAI;4BAChC,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,QAAQ;4BACxC,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,QAAQ;4BACxC,MAAM,EAAE,IAAI;yBACb,CAAC;wBACF,UAAU,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;wBAC3D,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;qBAC9B;oBAED,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;oBACpC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,+BAA+B;oBACzE,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,mBAAmB,MAAM,CAAC,eAAe,mBAAmB,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,sCAAsC;oBAC9K,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;oBAE9H,wBAAwB;oBACxB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;oBAC3E,IAAI,OAAO,EAAE;wBACX,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,2BAA2B;qBAC9C;oBACD,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,QAAQ,CAAC;oBACtC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC;oBAE7B,mBAAmB;oBACnB,IAAI,OAAO,CAAC,mBAAmB,KAAK,IAAI,EAAE;wBACxC,MAAM,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;qBAC9E;iBACF;aACF;SACF;aAAM,IAAI,WAAW,KAAK,IAAI,CAAC,cAAc,EAAE;YAC9C,UAAU,EAAE,CAAC;YACb,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACvB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;SACtC;IACH,CAAC;IAED,MAAM;IACN,4CAA4C;IAC5C,MAAM;IACN,oCAAoC;IACpC,yCAAyC;IACzC,yBAAyB;IACzB,UAAU;IACV,2FAA2F;IAC3F,qDAAqD;IAErD,uCAAuC;IACvC,kCAAkC;IAClC,sCAAsC;IACtC,sCAAsC;IACtC,2GAA2G;IAC3G,mCAAmC;IACnC,gEAAgE;IAChE,oDAAoD;IACpD,mGAAmG;IACnG,oEAAoE;IACpE,gEAAgE;IAChE,oDAAoD;IACpD,sCAAsC;IACtC,mBAAmB;IACnB,cAAc;IACd,YAAY;IACZ,UAAU;IACV,QAAQ;IACR,4EAA4E;IAC5E,kBAAkB;IAClB,8BAA8B;IAC9B,MAAM;IACN,yBAAyB;IACzB,IAAI;IAEI,wBAAwB,CAAC,IAAa;QAC5C,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAoB,CAAC;QAC7G,cAAc,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IAEO,mCAAmC,CAAC,SAA0D;QACpG,wCAAwC;QACxC,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC9D,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QACxE,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAChG,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAChG,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAEjG,oBAAoB;QACpB,SAAS,CACP;YACE,UAAU,EAAE,CAAC;oBACX,KAAK,EAAE,CAAC;oBACR,OAAO,EAAE,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC;iBAC5C,CAAC;YACF,UAAU,EAAE,EAAE;YACd,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,+BAA+B;SAC3F,CAAC,CAAC;QAEL,wBAAwB;QACxB,MAAM,cAAc,GAAG,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;QAC9G,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACxF,kCAAkC;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,uBAAuB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC9D,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACxC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,cAAc,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAEzC,2BAA2B;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,uBAAuB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QACpE,cAAc,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACzC,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACxC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,qCAAqC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QACjE,cAAc,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACzC,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACxC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,uBAAuB,CAAC,KAAa,EAAE,IAA6B;QAC1E,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAC/C,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAErB,OAAO;QACP,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,IAAI,KAAK,KAAK,EAAE;YAClB,OAAO,CAAC,KAAK,CAAC,iBAAiB,GAAG,KAAK,CAAC;SACzC;aAAM,IAAI,IAAI,KAAK,KAAK,EAAE;YACzB,OAAO,CAAC,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC;SACtC;aAAM;YACL,uCAAuC;YACvC,MAAM,gBAAgB,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACvD,gBAAgB,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;YACtC,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;SACvC;QAED,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAE5B,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,gBAAgB,CAAC,IAA6B;QACnD,MAAM,eAAe,GAAG,MAAM,CAAC;QAC/B,MAAM,aAAa,GAAG,KAAK,CAAC;QAC5B,IAAI,eAAe,GAAG,GAAG,eAAe,QAAQ,aAAa,MAAM,CAAC;QAEpE,IAAI,IAAI,KAAK,KAAK,EAAE;YAClB,eAAe,GAAG,GAAG,eAAe,QAAQ,aAAa,MAAM,CAAC;SACjE;aAAM,IAAI,IAAI,KAAK,KAAK,EAAE;YACzB,eAAe,GAAG,GAAG,eAAe,QAAQ,aAAa,MAAM,CAAC;SACjE;aAAM;YACL,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACnD,IAAI,qBAAqB,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAC/D,qBAAqB,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC,EAAE,qBAAqB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC7F,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,GAAG,CAAC;YACnE,eAAe,GAAG,GAAG,eAAe,QAAQ,aAAa,IAAI,QAAQ,IAAI,CAAC;SAC3E;QAED,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;IAC1D,CAAC;CAEF;AAGD;;GAEG;AACH,MAAM,OAAO,GAAI,SAAQ,eAA0B;IAEjD,YAAY,IAAY,EAAE,WAAmB,EAAE,uBAAgC,IAAI;;QACjF,KAAK,CAAC;YACJ,MAAM,EAAE,OAAO;YACf,IAAI;YACJ,SAAS,EAAE,WAAW;YACtB;;eAEG;YACH,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,EAAE;YACrE,oBAAoB;YACpB;;eAEG;YACH,aAAa,EAAE,KAAK;YACpB;;eAEG;YACH,iBAAiB,EAAE,KAAK;YACxB,YAAY,EAAE;gBACZ,OAAO,EAAE;oBACP,IAAI,EAAE,0CAA0C;oBAChD,KAAK,EAAE,iBAAiB;iBACzB;aACF;SACF,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,MAAA,IAAI,CAAC,OAAO,CAAC,YAAY,0CAAE,OAAO,CAAC,CAAC;IAC1E,CAAC;IAES,SAAS,CAAC,KAAsB,EAAE,OAAyB,EAAE,IAAiB;QACtF,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACxB,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,IAAI,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAClE,CAAC;IAEO,eAAe;QACrB,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,4BAA4B,CAAC,CAAC;QACtF,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,MAAM,EAAE,CAAC;QAC5C,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC;IACrG,CAAC;IAES,eAAe,CAAC,GAAc;QACtC,GAAG,CAAC,KAAK,CAAC,kCAAkC,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjE,IAAI,CAAC,uBAAuB,EAAE,CAAC;IACjC,CAAC;CAEF;AAGD,MAAM,OAAO,uBAAuB;IA0BlC,YAA4B,WAAiB,EAAU,GAAc;QAAzC,gBAAW,GAAX,WAAW,CAAM;QAAU,QAAG,GAAH,GAAG,CAAW;QAvBrE,cAAS,GAAa,EAAE,CAAC;QACzB,gBAAW,GAAG,IAAI,CAAC;QAuBjB,WAAW,CAAC,gBAAgB,CAAC,2BAA2B,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAA0B,CAAC,CAAC,CAAC,CAAC,uDAAuD;IACnL,CAAC;IAtBM,MAAM,CAAC,GAAG;QACf,OAAO,uBAAuB,CAAC,QAAQ,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,WAAiB,EAAE,GAAc;QAC3C,IAAI,uBAAuB,CAAC,QAAQ,EAAE;YACpC,uBAAuB,CAAC,QAAQ,CAAC,WAAW,CAAC,mBAAmB,CAAC,2BAA2B,EAAE,uBAAuB,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,kBAAkB;YACxK,uBAAuB,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,WAAW;YAC9F,OAAO,uBAAuB,CAAC,QAAQ,CAAC,CAAC,UAAU;SACpD;QACD,uBAAuB,CAAC,QAAQ,GAAG,IAAI,uBAAuB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IACnF,CAAC;IAED,MAAM,CAAC,KAAK;QACV,IAAI,uBAAuB,CAAC,QAAQ,EAAE;YACpC,uBAAuB,CAAC,QAAQ,CAAC,SAAS,GAAG,EAAE,CAAC;YAChD,uBAAuB,CAAC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;SACrD;IACH,CAAC;IAMM,oBAAoB,CAAC,EAAwB;QAClD,MAAM,UAAU,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;QACpC,MAAM,gBAAgB,GAAG,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC;QAEpD,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YAEhF,gDAAgD;YAChD,IAAI,gBAAgB,EAAE;gBACpB,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,qDAAqD;gBACzH,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,cAAc;aAClE;YAED,0BAA0B;YAC1B,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE;gBAC3C,6BAA6B;gBAC7B,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;gBAC5C,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;gBAChC,UAAU,CAAC,QAAQ,GAAG,KAAK,CAAC;gBAC5B,IAAK,UAA0B,CAAC,aAAa,KAAK,SAAS,EAAE;oBAC3D,OAAQ,UAA0B,CAAC,aAAa,CAAC;iBAClD;gBACD,GAAG,CAAC,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;aAEpD;iBAAM;gBACL,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,6CAA6C;oBACnE,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa;oBACjD,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;iBAC1B;gBAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAChC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;gBAChC,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;aACjD;YAED,6BAA6B;YAC7B,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAE9C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;YACrD,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,mDAAmD;SACjF;IACH,CAAC;CACF"} \ No newline at end of file diff --git a/dist/scss/components/task/_prevalence.scss b/dist/scss/components/task/_prevalence.scss index 5dcb2a0..1a11af9 100644 --- a/dist/scss/components/task/_prevalence.scss +++ b/dist/scss/components/task/_prevalence.scss @@ -1,17 +1,20 @@ .prev-checkbox { position: relative; flex-shrink: 0; - width: 16px; + width: 1.2em; + height: 1.2em; + margin: 0 0.2em; background: $color-background; - border: 1px solid $color-text; + border: 1px solid $color-border-light; + border-radius: 3px; cursor: pointer; .checkbox-indicator { position: absolute; left: 5px; - top: 2px; - width: 4px; - height: 8px; + top: 0px; + width: 5px; + height: 11px; border: solid $color-background; // border right+bot and roation creates checkmark border-width: 0 2px 2px 0; @@ -24,53 +27,98 @@ width: 100%; } - .icon-extra { - position: absolute; - top: calc(50% - 6px); - left: calc(50% - 7px); - font-weight: bold; - transform: scale(0.95); - } - .loading-effect { - animation-name: spin; - animation-duration: 2000ms; - animation-iteration-count: infinite; - animation-timing-function: linear; + .icon-container::after { + animation: spinAround infinite .75s linear; + position: absolute; + top: calc(50% - (0.45em)); + left: calc(50% - (0.45em)); + border: 2px black solid; + border-radius: 9999px; + border-color: transparent transparent $color-background $color-background; + content: ''; + display: block; + height: 0.9em; + width: 0.9em; + + @keyframes spinAround { + 0% { + transform: rotate(0deg); + } - @keyframes spin { - from { - transform:rotate(0deg); - } - to { - transform:rotate(360deg); - } + 100% { + transform: rotate(359deg); + } } + } } // container for the checkbox for the exclusion of missing values .exclude-container { display: flex; - height: 16px; + height: 1.5em; + align-items: center; // label for the checkbox .label-excl-container { align-self: center; - height: 16px; + height: 100%; margin-left: 3px; cursor: default; } // loading checkbox - .prev-checkbox.color-loading { + .prev-checkbox.color-loading, + .prev-checkbox.active.color-loading { background: $color-background !important; - color: $color-text !important; + + .icon-container::after { + background: $color-background !important; + border-color: transparent transparent $color-text $color-text !important; + } } // active checkbox .prev-checkbox.active { background: $color-bar; + border-color: $color-bar; + + .checkbox-indicator { + border-color: $color-background; + } + } +} + +// container for the checkbox for showing the dataset bar +.show-dataset-container { + display: flex; + height: 1.5em; + align-items: center; + + // label for the checkbox + .label-show-dataset-container { + align-self: center; + height: 100%; + margin-left: 3px; + cursor: default; + } + + // loading checkbox + .prev-checkbox.color-loading, + .prev-checkbox.active.color-loading { + background: $color-background !important; + + .icon-container::after { + background: $color-background !important; + border-color: transparent transparent $color-text $color-text !important; + } + } + + // active checkbox + .prev-checkbox.active { + background: $color-bar; + border-color: $color-bar; .checkbox-indicator { border-color: $color-background; @@ -89,7 +137,7 @@ $error-bar-line-width: 1px !default; .prev-element-highlight { border-color: $color-hover !important; - box-shadow: inset 0 0px 2px $color-hover-opacity-75 , 0 0 8px $color-hover-opacity-75 !important; + box-shadow: inset 0 0px 2px $color-hover-opacity-75, 0 0 8px $color-hover-opacity-75 !important; } // reach row @@ -98,72 +146,117 @@ $error-bar-line-width: 1px !default; flex-direction: row; } - // define the labels for each row (tasks, bars, result text) - .prev-label { - width: 148px; - flex-grow: 0; - flex-shrink: 0; + + .prev-show-dataset-eye { + cursor: pointer; + padding-top: 0.25em; + + &[data-show-dataset-bar='0'] { + color: $color-border-light; + } + + &[data-show-dataset-bar='1'] { + color: $color-text; + } + } + + .legend-task-row { + margin-bottom: 0.2em; + height: 1.6em; } - // set spaces between the bar row and the others - .prev-result { - margin: 3px 0 0 0; + // labels for each bar legend + .prev-lable-cntr { + width: 200px; } - // row with label and task options - .prev-ref-creation { - align-items: flex-start; + // **** task options ***** + + .task-option { + max-width: 350px; + height: 100%; + display: flex; + margin-right: 0.5em; + align-items: center; + border-radius: 3px; - // task options - .prev-ref-label { - line-height: 16px; - margin-right: 1em; - min-width: max-content; + .task-label { + padding: 0 0.25em; + text-overflow: ellipsis; + white-space: nowrap; // No line breaks + overflow: hidden; // require for text-overflow to work + text-align: center; + align-self: center; + height: 100%; } } - // **** task options ***** - // container that holds all task options - .ref-task-container { + .ref-task-container, + .cht-task-container { display: flex; flex-direction: row; align-items: center; flex-wrap: wrap; } + // ---- reference tasks // task options .ref-task-option { - max-width: 350px; - height: 16px; - display: flex; - margin-right: 15px; + border: 1px solid $color-border-light; cursor: pointer; + .task-label { - padding: 0 0.25em; - text-overflow: ellipsis; - white-space: nowrap; // No line breaks - overflow: hidden; // require for text-overflow to work - text-align: center; - align-self: center; - height: 16px; - line-height: 16px; background: $color-background; } + + .prev-checkbox { + border-color: $color-hover; + } + } // loading task options - .ref-task-option.color-loading { - .prev-checkbox{ + .ref-task-option.color-loading, + .ref-task-option.active.color-loading { + .prev-checkbox { + background: $color-background !important; + } + + .icon-container::after { background: $color-background !important; - color: $color-text !important; + border-color: transparent transparent $color-hover $color-hover !important; } + } // active task options .ref-task-option.active { .prev-checkbox { - background: $color-bar; + background: $color-hover; + border-color: $color-hover; + } + + .checkbox-indicator { + border-color: $color-background; + } + } + + // ---- input cohort tasks + // task options + .cht-task-option { + border: 1px solid $color-border-light; + cursor: default; + + .task-label { + background: $color-background; + color: $color-text-light; + } + + .prev-checkbox { + cursor: default !important; + background: $color-text-light; + border-color: $color-text-light; } .checkbox-indicator { @@ -175,8 +268,8 @@ $error-bar-line-width: 1px !default; .prev-legend-item { display: flex; flex-direction: row; - height: 16px; - line-height: 16px; + height: 100%; + align-items: center; cursor: default; } @@ -190,10 +283,11 @@ $error-bar-line-width: 1px !default; // mark for all legend items .prev-legend-mark { - height: 16px; - width: 8px; - min-width: 8px; + height: 30%; + width: 1em; + min-width: 1em; margin-right: 3px; + margin-bottom: 0.25em; } // text for all legend items @@ -201,26 +295,28 @@ $error-bar-line-width: 1px !default; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; + height: 100%; } // mark for the reference item .prev-legend-ref { - .prev-legend-mark{ + .prev-legend-mark { background: $color-bar; } } // mark for the filtered out item .prev-legend-all { - margin-bottom: 3px; - .prev-legend-mark{ + + // margin-bottom: 3px; + .prev-legend-mark { background: $color-background-darker; } } // space after bar and scale .prev-label-space { - width: 70px; + width: 150px; flex-grow: 0; flex-shrink: 0; display: flex; @@ -229,7 +325,7 @@ $error-bar-line-width: 1px !default; .prev-max-scale-label { height: 15px; font-size: 0.9em; - margin-bottom: -10px; + margin-bottom: -0.45em; margin-top: auto; width: 100%; flex-grow: 0; @@ -240,6 +336,10 @@ $error-bar-line-width: 1px !default; white-space: nowrap; overflow: hidden; cursor: default; + + &.hide-label { + display: none !important; + } } } @@ -247,7 +347,7 @@ $error-bar-line-width: 1px !default; // **** bars ***** // container with all the bars .prev-result-bar { - height: 35px; + height: 25px; width: 100%; margin-top: auto; @@ -262,6 +362,10 @@ $error-bar-line-width: 1px !default; height: 100%; width: 100%; background: $color-background-darker; + + &.hide-dataset { + background: transparent; + } } .prev-value-zero { @@ -274,7 +378,7 @@ $error-bar-line-width: 1px !default; .bar-reference { top: 10%; height: 80%; - width: 100%; // inital value + width: 0%; // inital value background: $color-bar; &.loading-effect { @@ -296,6 +400,7 @@ $error-bar-line-width: 1px !default; 0% { background-position: 0px 0; } + 100% { background-position: 40px 0; } @@ -323,7 +428,8 @@ $error-bar-line-width: 1px !default; .prev-ci-bar-offset { width: 0% // inital value } - .prev-ci-bar-error{ + + .prev-ci-bar-error { flex-grow: 0; flex-shrink: 0; height: 50%; @@ -338,14 +444,15 @@ $error-bar-line-width: 1px !default; width: 100%; - &.side{ + &.side { height: 100%; width: $error-bar-line-width; flex-grow: 0; flex-shrink: 0; background: $color-background; } - &.middle{ + + &.middle { height: $error-bar-line-width; flex-grow: 1; flex-shrink: 1; @@ -369,6 +476,7 @@ $error-bar-line-width: 1px !default; left: 0; top: 0; } + .prev-scale-sizes { width: 100%; @@ -376,116 +484,131 @@ $error-bar-line-width: 1px !default; position: relative; width: 100%; - .prev-scale-dataset { - width: 100%; - // height: 20px; - border-top: $scale-line-width solid $color-text; - - .prev-scale-first-tick { - height:4px; - border-top: none; - border-right: none; - border-left: $scale-line-width solid $color-text; - } - } - - // reference scale - .prev-scale-reference { - height: 100%; - width: 100%; // inital value - display: flex; - flex-direction: row; - - // remove the border on the right -> use tick - &.prev-scale-elem { - border-right: none; - } - - // add border to the right = tick - .scale-reference-tick { - height: 36px; + .prev-scale-dataset { width: 100%; - flex-grow: 0; - flex-shrink: 0; - border-right: $scale-line-width solid $color-text; + // height: 20px; + border-top: $scale-line-width solid $color-text; + + .prev-scale-first-tick { + height: 4px; + border-top: none; + border-right: none; + border-left: $scale-line-width solid $color-text; + } } - // container with the labels = centered by tick - .scale-reference-container { - height: 36px; - width: 70px; - padding-top: 5px; - flex-grow: 0; - flex-shrink: 0; - text-align: center; - cursor: default; - - .scale-ctr-ref-size { - display: flex; - flex-direction: row; + // reference scale + .prev-scale-reference { + height: 1.5em; + width: 0%; // inital value + display: flex; + flex-direction: row; + + // remove the border on the right -> use tick + &.prev-scale-elem { + border-right: none; } - .prev-info-bar-label { - margin-left: 5px; - color: $color-bar; + // add border to the right = tick + .scale-reference-tick { + height: 100%; + width: 100%; flex-grow: 0; flex-shrink: 0; - font-size: 0.9em; - height: 15px; + border-right: $scale-line-width solid $color-text; } - .scale-ref-size { - height: 15px; - font-size: 0.9em; - padding-left: 0.25em; - text-align: left; + // container with the labels = centered by tick + .scale-reference-container { + display: flex; + align-items: flex-end; + height: 100%; + width: 150px; flex-grow: 0; flex-shrink: 0; - } - - .scale-ref-percentage { - height: 16px; - padding-left: 0.25em; - text-align: left; + text-align: center; + cursor: default; + + .scale-ctr-ref-size { + display: flex; + flex-direction: row; + } + + .prev-info-bar-label { + margin-left: 5px; + color: $color-bar; + flex-grow: 0; + flex-shrink: 0; + font-size: 0.9em; + height: 15px; + } + + .scale-ref-size { + height: 15px; + font-size: 0.9em; + padding-left: 0.25em; + text-align: left; + flex-grow: 0; + flex-shrink: 0; + } + + .scale-ref-percentage { + height: 16px; + padding: 0 0.25em; + text-align: left; + } } } - } - // cohort scale - .prev-scale-cohort { - height: 36px; - width: 0%; // inital value - display: flex; - flex-direction: row-reverse; - - // container with the labels = right aligned by tick - .scale-cohort-container { - min-width: 100px; - padding-top: 5px; - cursor: default; - - .scale-cohort-size { - height: 15px; - font-size: 0.9em; - padding-right: 0.25em; - text-align: right; + + // cohort scale + .prev-scale-cohort { + height: 2.7em; + width: 0%; // inital value + display: flex; + + // remove the border on the right -> use tick + &.prev-scale-elem { + border-right: none; } - .scale-cohort-percentage { - height: 16px; - padding-right: 0.25em; - text-align: right; + // add border to the right = tick + .scale-cohort-tick { + height: 100%; + width: 100%; + flex-grow: 0; + flex-shrink: 0; + border-right: $scale-line-width solid $color-text; } - .scale-cohort-percentage { - font-weight: bold; + // container with the labels = right aligned by tick + .scale-cohort-container { + display: flex; + height: 100%; + align-items: flex-end; + min-width: 150px; + cursor: default; + + .scale-cohort-size { + height: 15px; + font-size: 0.9em; + padding-left: 0.25em; + } + + .scale-cohort-percentage { + height: 16px; + padding: 0 0.25em; + } + + .scale-cohort-percentage { + font-weight: bold; + } } } } } - } } -} +} \ No newline at end of file diff --git a/package.json b/package.json index bead5ea..3e46b88 100644 --- a/package.json +++ b/package.json @@ -86,9 +86,10 @@ "arquero": "^4.8.0", "canvas-confetti": "^1.4.0", "clone": "^2.1.2", - "d3-array": "^2.5.0", - "d3-format": "^1.4.3", - "d3-selection": "^1.4.0", + "d3-array": "^3.1.4", + "d3-format": "^3.1.0", + "d3-selection": "^3.0.0", + "d3-transition": "^3.0.1", "jquery": "^3.5.0", "lineupjs": "next", "lodash.merge": "^4.x", @@ -106,17 +107,17 @@ "vega-functions": "5.12.0", "vega-lite": "5.1.1", "vega-parser": "6.1.3" - }, "devDependencies": { - "@types/react": "^16.14.6", - "@types/react-dom": "^16.9.5", - "@types/react-router-dom": "^5.1.7", "@babel/core": "^7.14.0", "@babel/preset-env": "^7.14.1", - "@types/d3-selection": "^1.4.1", - "@types/jquery": "~3.5.5", + "@types/d3-selection": "^3.0.2", + "@types/d3-transition": "^3.0.1", "@types/jest": "~27.4.1", + "@types/jquery": "~3.5.5", + "@types/react": "^16.14.6", + "@types/react-dom": "^16.9.5", + "@types/react-router-dom": "^5.1.7", "babel-loader": "^8.2.2", "comlink": "^4.2.0", "identity-obj-proxy": "~3.0.0", @@ -139,4 +140,4 @@ "path": false, "os": false } -} +} \ No newline at end of file diff --git a/src/Cohort.ts b/src/Cohort.ts index 89fe463..d191cb2 100644 --- a/src/Cohort.ts +++ b/src/Cohort.ts @@ -1,6 +1,4 @@ -import {format} from 'd3-format'; -import {IDType, IDTypeLike, IDTypeManager, UniqueIdManager} from 'tdp_core'; -import {IAllFilters, IRow, IServerColumn} from 'tdp_core'; +import {IAllFilters, IDType, IDTypeLike, IDTypeManager, IRow, IServerColumn, UniqueIdManager} from 'tdp_core'; import {ElementProvType, ICohort, ICohortRep, IElement, IElementProvJSONCohort, IProvAttrAndValuesCohort} from './CohortInterfaces'; import {createDBCohort, createDBCohortWithDepletionScoreFilter, createDBCohortWithEqualsFilter, createDBCohortWithGeneEqualsFilter, createDBCohortWithGeneNumFilter, createDBCohortWithNumFilter, createDBCohortWithPanelAnnotationFilter, createDBCohortWithTreatmentFilter, dataDBCohortDepletionScoreFilter, dataDBCohortGeneWithEqualsFilter, dataDBCohortGeneWithNumFilter, dataDBCohortPanelAnnotationFilter, dataDBCohortWithEqualsFilter, dataDBCohortWithNumFilter, getCohortData, getCohortSize, ICohortDBDataParams, ICohortDBParams, ICohortDBSizeParams, ICohortDBWithDepletionScoreFilterParams, ICohortDBWithEqualsFilterParams, ICohortDBWithGeneEqualsFilterParams, ICohortDBWithGeneNumFilterParams, ICohortDBWithNumFilterParams, ICohortDBWithPanelAnnotationFilterParams, ICohortDBWithTreatmentFilterParams, ICohortDepletionScoreFilterParams, ICohortEqualsFilterParams, ICohortGeneEqualsFilterParams, ICohortGeneNumFilterParams, ICohortNumFilterParams, ICohortPanelAnnotationFilterParams, ICohortRow, IEqualsList, INumRange, sizeDBCohortDepletionScoreFilter, sizeDBCohortGeneWithEqualsFilter, sizeDBCohortGeneWithNumFilter, sizeDBCohortPanelAnnotationFilter, sizeDBCohortWithEqualsFilter, sizeDBCohortWithNumFilter, updateCohortName, valueListDelimiter} from './rest'; import {mergeTwoAllFilters, Task} from './Tasks'; @@ -365,6 +363,22 @@ export class Cohort implements ICohort { return this._labelTwo; } + /** + * Creates the label as a string with HTML elements for the # and cht_number to be bold and smaller + * @returns HTML formatted cohort label + */ + public getHTMLLabel(): string { + const currLabel = this.label; + let labelOneHTML = currLabel; + const [labelOneCounter] = currLabel.split(' ', 1); + if (labelOneCounter.startsWith('#')) { + const labelOneText = currLabel.substring(labelOneCounter.length + 1); + labelOneHTML = `#${labelOneCounter.substring(1)} ` + labelOneText; + } + + return labelOneHTML; + } + public set parents(parents: Array) { this._parents = parents; this.updateBloodline(); diff --git a/src/Taskview/SearchBar.ts b/src/Taskview/SearchBar.ts index 0e80af0..fdb118a 100644 --- a/src/Taskview/SearchBar.ts +++ b/src/Taskview/SearchBar.ts @@ -258,31 +258,31 @@ export class SearchBar { } return text; }) - .on('click', (d, i, nodes) => { + .on('click', (event, d) => { if (d.optionType !== 'gene') { // TODO #427 remove click handler for special attribtue 'treatment', replace with special attribtue constant if (d.optionId !== 'treatment') { - this._clickHandler(d, d.optionType, event as MouseEvent, nodes[i] as HTMLElement); + this._clickHandler(d, d.optionType, event as MouseEvent, event.currentTarget as HTMLElement); // indicate an change in the options this._container.dispatchEvent(new CustomEvent('optionchange')); } } }) - .on('mouseover', (d, i, nodes) => { + .on('mouseover', (event, d) => { if (d.optionType === 'gene') { // set global optionId this._geneHoverOptionId = d.optionId; setTimeout(() => { // update detail after timeout time global and current optionId is equal if (d.optionId === this._geneHoverOptionId) { - this._mouseOverHandler(d, nodes[i]); + this._mouseOverHandler(d, event.currentTarget); } }, 200); } else { - this._mouseOverHandler(d, nodes[i]); + this._mouseOverHandler(d, event.currentTarget); } }) - .on('mouseout', (d, i, nodes) => { + .on('mouseout', (event, d) => { if (d.optionType === 'gene') { // clear global optionId this._geneHoverOptionId = null; @@ -897,11 +897,11 @@ export class SearchBar { .attr('data-optid', (d: IDataSubtypeConfig) => {return this._composeGeneDataTypeOptId(optionId, d.id);}) .classed('option-selected', (d: IDataSubtypeConfig) => {return badgeIds.indexOf(this._composeGeneDataTypeOptId(optionId, d.id)) !== -1;}) .html((d: IDataSubtypeConfig) => d.name) - .on('click', (d: IDataSubtypeConfig, i, nodes) => { + .on('click', (event, d: IDataSubtypeConfig) => { const badgeName = this._composeGeneDataTypeName(data.optionText, d.name); const badgeData = deepCopy(data); badgeData.optionData = {subType: d, type: (d as any).dataTypeId}; - this._clickHandlerDetail(data, badgeData, badgeName, event as MouseEvent, nodes[i] as HTMLElement); + this._clickHandlerDetail(data, badgeData, badgeName, event as MouseEvent, event.currentTarget as HTMLElement); // indicate an change in the options this._container.dispatchEvent(new CustomEvent('optionchange')); }); @@ -958,11 +958,11 @@ export class SearchBar { .attr('data-optid', (d) => d.id) .classed('option-selected', (d) => {return badgeIds.indexOf(d.id) !== -1;}) .html((d) => d.name) - .on('click', (d, i, nodes) => { + .on('click', (event, d) => { const badgeName = `${option.optionText}:${d.name}`; const badgeData = deepCopy(option); badgeData.optionData = {sAttrId: option.optionId, attrOption: d.id, spAttribute: spAttr, serverColumn: option.optionData.serverColumn}; - this._clickHandlerDetail(option, badgeData, badgeName, event as MouseEvent, nodes[i] as HTMLElement); + this._clickHandlerDetail(option, badgeData, badgeName, event as MouseEvent, event.currentTarget as HTMLElement); // this._clickHandlerDetail(data as IScoreOption, (d as any).dataTypeId, d, badgeName, event as MouseEvent, nodes[i] as HTMLElement); // indicate an change in the options log.debug('click spAttribute option: ', {oprtionId: option.optionId, badgeData}); diff --git a/src/Taskview/SearchColumn.ts b/src/Taskview/SearchColumn.ts index 00c34f8..3dfb098 100644 --- a/src/Taskview/SearchColumn.ts +++ b/src/Taskview/SearchColumn.ts @@ -90,7 +90,7 @@ export default class SearchColumn { const enable = task.supports(attributes, cohorts); const taskBtn = select(this.$tasks).select(`.${task.id}`).classed('disabled', !enable).datum(task); if (enable) { - taskBtn.on('click', (t) => this.showTask(t)); + taskBtn.on('click', (event, t) => this.showTask(t)); } else { taskBtn.on('click', null); } diff --git a/src/Taskview/tasks/Filter.ts b/src/Taskview/tasks/Filter.ts index 1b8550f..1b32008 100644 --- a/src/Taskview/tasks/Filter.ts +++ b/src/Taskview/tasks/Filter.ts @@ -10,7 +10,7 @@ import {DensityPlot} from '../visualizations/DensityPlot'; import {GroupedBoxplot} from '../visualizations/GroupedBoxplot'; import {VegaGroupedHistogram} from '../visualizations/GroupedHistogram'; import {KaplanMeierPlot} from '../visualizations/KaplanMeierPlot'; -import {Scatterplot, TsneScatterplot} from '../visualizations/Scatterplot'; +import {Scatterplot} from '../visualizations/Scatterplot'; import {ATask} from './ATask'; export class Filter extends ATask { @@ -152,7 +152,7 @@ export class Filter extends ATask { .append('li').classed('dropdown-item', true) .classed('selected', (vis) => (vis as any).NAME === (this.vis.constructor as any).NAME) .append('a').text((vis) => (vis as any).NAME) // cast to any to access static property - .on('click', (visClass) => { + .on('click', (event, visClass) => { if ((visClass as any).NAME !== (this.vis.constructor as any).NAME) { //check if vis has changed this.header.selectAll('.vis-selector .vis-type li').classed('selected', (vis) => (vis as any).NAME === (visClass as any).NAME); this.showWithVis(new visClass()); @@ -208,7 +208,7 @@ export class Filter extends ATask { configHeader.filter('.dropdown-item') .attr('data-group', (d: Option) => d.group.label) .classed('selected', (d) => (d as Option).selected) - .on('click', (d: Option) => { + .on('click', (evemt, d: Option) => { this.header .selectAll(`li.dropdown-item[data-group="${d.group.label}"]`) .classed('selected', (option) => d === option); diff --git a/src/Taskview/tasks/Prevalence.ts b/src/Taskview/tasks/Prevalence.ts index 37b5d48..856a444 100644 --- a/src/Taskview/tasks/Prevalence.ts +++ b/src/Taskview/tasks/Prevalence.ts @@ -1,9 +1,11 @@ import {format} from 'd3-format'; import {select} from 'd3-selection'; +import {transition} from 'd3-transition'; import tippy from 'tippy.js'; import {Cohort, IBloodlineElement} from '../../Cohort'; import {ICohort} from '../../CohortInterfaces'; import {getRootCohort} from '../../cohortview'; +import {colors} from '../../colors'; import {IAttribute, multiFilter} from '../../data/Attribute'; import {IEqualsList, INumRange} from '../../rest'; import {Task} from '../../Tasks'; @@ -11,7 +13,6 @@ import {createHTMLElementWithClasses, getSessionStorageItem, setSessionStorageIt import {easyLabelFromFilter} from '../../utilLabels'; import {ATask} from './ATask'; - interface ITaskAttributValue { taskId: string; attributes: IAttribute[]; @@ -138,12 +139,9 @@ export class Prevalence extends ATask { divExclContainer.appendChild(checkbox); // add loading effect icon container - const cbCtrLoading = createHTMLElementWithClasses('div', ['icon-container', 'loading-effect']); + const cbCtrLoading = createHTMLElementWithClasses('div', ['icon-container']); cbCtrLoading.toggleAttribute('hidden'); checkbox.appendChild(cbCtrLoading); - // add loading effect icon - const cbLoading = createHTMLElementWithClasses('i', ['fas', 'fa-circle-notch', 'icon-extra']); - cbCtrLoading.appendChild(cbLoading); checkbox.addEventListener('click', async (event) => { this.excludeMissingValues = !this.excludeMissingValues; @@ -249,24 +247,87 @@ export class Prevalence extends ATask { // add all the elements that are needed for an input cohort private addPackElements(ctrPrevPack: HTMLDivElement, chtIndex: number, chtConfig: ICohortAndTasksConfig, tasks: Task[]) { - // 1. row: label + clickable tasks + // split into 3 areas: 1. legend + clickable tasks, 2. bar, 3. scale with the values + + + // 1. Area _______________________________________________ + const divLegend = document.createElement('div'); + divLegend.classList.add('prev-legends-tasks'); + ctrPrevPack.appendChild(divLegend); + // ### 1. row: dataset / base cohort + // row container + const divAllCreation = document.createElement('div'); + divAllCreation.classList.add('prev-all-creation', 'prev-row', 'legend-task-row'); + + // legend container + const divAllLabel = document.createElement('div'); + divAllLabel.classList.add('prev-all-label', 'prev-lable-cntr'); + divAllCreation.appendChild(divAllLabel); + + // legend all (base cohort) + const divLegendAll = this.createLegendItem(['prev-legend-all'], this.baseCohort.label); + divLegendAll.title = `${this.baseCohort.label}`; + divAllLabel.appendChild(divLegendAll); + + // enter mouse hover + divLegendAll.addEventListener('mouseenter', (event) => { + event.stopImmediatePropagation(); + this.baseCohort.representation.getRepresentation().dispatchEvent(new Event('mouseenter')); + }); + // leave mouse hover + divLegendAll.addEventListener('mouseleave', (event) => { + event.stopImmediatePropagation(); + this.baseCohort.representation.getRepresentation().dispatchEvent(new Event('mouseleave')); + }); + + // add eye icon for the dataset bar + const iconEye = document.createElement('i'); + iconEye.classList.add('fas', 'fa-eye', 'prev-show-dataset-eye'); + iconEye.dataset.showDatasetBar = '1'; + iconEye.title = 'Show/Hide base cohort bar'; + iconEye.addEventListener('click', async (event) => { + + const showDatasetBar = Boolean(Number(iconEye.dataset.showDatasetBar)); + const toggled = !showDatasetBar; + + iconEye.dataset.showDatasetBar = toggled ? '1' : '0'; + + const updatePromises = []; + // update data based on exclusion state + for (const currPack of this.prevalencePacks) { + if (currPack.parentTaskId !== null) { + // update prevalence calculations + updatePromises.push(this.updatePrevalencePack(currPack)); + } + } + // wait until all prevalence are updated + await Promise.all(updatePromises); + + }); + divAllCreation.appendChild(iconEye); + + + // ### 2. row: reference cohort + // row container const divRefCreation = document.createElement('div'); - divRefCreation.classList.add('prev-ref-creation', 'prev-row'); - ctrPrevPack.appendChild(divRefCreation); + divRefCreation.classList.add('prev-ref-creation', 'prev-row', 'legend-task-row'); - // label + + // legend container const divRefLabel = document.createElement('div'); - divRefLabel.classList.add('prev-ref-label'); + divRefLabel.classList.add('prev-ref-label', 'prev-lable-cntr'); + divRefCreation.appendChild(divRefLabel); + // legend reference const divLegendRef = this.createLegendItem(['prev-legend-ref'], 'Reference, defined by'); divRefLabel.appendChild(divLegendRef); - divRefCreation.appendChild(divRefLabel); + // tasks container // clickable taks // task container (containes all tasks) - const divTaskContainer = document.createElement('div'); - divTaskContainer.classList.add('ref-task-container'); - divRefCreation.appendChild(divTaskContainer); + const divRefTaskContainer = document.createElement('div'); + divRefTaskContainer.classList.add('ref-task-container'); + divRefCreation.appendChild(divRefTaskContainer); //add different task options (tasks with their attributes) const taskAndAttribute: {task: Task, values: Array}[] = tasks.map((elem) => { @@ -278,46 +339,35 @@ export class Prevalence extends ATask { }); // tasks - const dataCells = select(divTaskContainer).selectAll}>('div.ref-task-option').data(taskAndAttribute, (d) => d.task.id); + const dataCellsRef = select(divRefTaskContainer).selectAll}>('div.ref-task-option').data(taskAndAttribute, (d) => d.task.id); // create buttons for the tasks - const enterSelection = dataCells.enter(); - enterSelection + const enterSelectionRef = dataCellsRef.enter(); + enterSelectionRef .append('div') .classed('ref-task-option', true) + .classed('task-option', true) .each((d, index, nodes) => { this.createClickableTasks(d, chtIndex, index, nodes); }); - // ------- - // 2. row: label (legend) + bars + label space - const divResult = document.createElement('div'); - divResult.classList.add('prev-result', 'prev-row'); - ctrPrevPack.appendChild(divResult); + // ### 3. row: cohort + // row container + const divChtCreation = document.createElement('div'); + divChtCreation.classList.add('prev-cht-creation', 'prev-row', 'legend-task-row'); - // label (legend) - const divResultLabel = document.createElement('div'); - divResultLabel.classList.add('prev-result-label', 'prev-label'); - divResult.appendChild(divResultLabel); - - // legend all (base cohort) - const divLegendAll = this.createLegendItem(['prev-legend-all'], this.baseCohort.label); - divLegendAll.title = `${this.baseCohort.label}`; - // enter mouse hover - divLegendAll.addEventListener('mouseenter', (event) => { - event.stopImmediatePropagation(); - this.baseCohort.representation.getRepresentation().dispatchEvent(new Event('mouseenter')); - }); - // leave mouse hover - divLegendAll.addEventListener('mouseleave', (event) => { - event.stopImmediatePropagation(); - this.baseCohort.representation.getRepresentation().dispatchEvent(new Event('mouseleave')); - }); + // legend container + const divChtlabel = document.createElement('div'); + divChtlabel.classList.add('prev-cht-label', 'prev-lable-cntr'); + divChtCreation.appendChild(divChtlabel); // legend cohort (input cohort) const currCht = chtConfig.cht; - const divLegendCht = this.createLegendItem(['prev-legend-cht'], currCht.label, currCht.colorTaskView); + // get the styled cohort label + const currLabel = currCht.getHTMLLabel(); + const divLegendCht = this.createLegendItem(['prev-legend-cht'], currLabel, currCht.colorTaskView); divLegendCht.title = `${currCht.label} (All filters are used to create this cohort.)`; + divChtlabel.appendChild(divLegendCht); // enter mouse hover divLegendCht.addEventListener('mouseenter', (event) => { event.stopImmediatePropagation(); @@ -329,10 +379,38 @@ export class Prevalence extends ATask { currCht.representation.getRepresentation().dispatchEvent(new Event('mouseleave')); }); - // add legend items - divResultLabel.appendChild(divLegendAll); - // divResultLabel.appendChild(divLegendRef); - divResultLabel.appendChild(divLegendCht); + // tasks container + // clickable taks + // task container (containes all tasks) + const divChtTaskContainer = document.createElement('div'); + divChtTaskContainer.classList.add('cht-task-container'); + divChtCreation.appendChild(divChtTaskContainer); + + // tasks + const dataCellsCht = select(divChtTaskContainer).selectAll}>('div.cht-task-option').data(taskAndAttribute, (d) => d.task.id); + + // create buttons for the tasks + const enterSelectionCht = dataCellsCht.enter(); + enterSelectionCht + .append('div') + .classed('cht-task-option', true) + .classed('task-option', true) + // .classed('active', true) + .each((d, index, nodes) => { + this.createNonClickableTasks(d, chtIndex, index, nodes); + }); + + // add all row containers + divLegend.appendChild(divAllCreation); + divLegend.appendChild(divRefCreation); + divLegend.appendChild(divChtCreation); + + + // 2. Area _______________________________________________ + // bars container + const divResult = document.createElement('div'); + divResult.classList.add('prev-result', 'prev-row'); + ctrPrevPack.appendChild(divResult); // bars const divResultBar = document.createElement('div'); @@ -340,7 +418,7 @@ export class Prevalence extends ATask { divResult.appendChild(divResultBar); this.createBarStructure(divResultBar, chtConfig.cht.colorTaskView); - // scale label space + // scale label space at the end const divBarSpace = document.createElement('div'); divBarSpace.classList.add('prev-label-space'); divResult.appendChild(divBarSpace); @@ -349,17 +427,13 @@ export class Prevalence extends ATask { maxScaleLable.innerHTML = `${this.baseCohortSize}`; divBarSpace.appendChild(maxScaleLable); - // ------- - // 3. row: label (= space for size label) + scale (+ size indicators) + label space + + // 3. Area _______________________________________________ + // label (= space for size label) + scale (+ size indicators) + label space const divScale = document.createElement('div'); divScale.classList.add('prev-result-scale', 'prev-row'); ctrPrevPack.appendChild(divScale); - // label - const divScaleLabel = document.createElement('div'); - divScaleLabel.classList.add('prev-scale-label', 'prev-label'); - divScale.appendChild(divScaleLabel); - // scale const divScaleSizes = document.createElement('div'); divScaleSizes.classList.add('prev-scale-sizes'); @@ -387,13 +461,21 @@ export class Prevalence extends ATask { // divScaleSizes.appendChild(divScaleRef); lowerScales.appendChild(divScaleRef); + // -> tick const divScaleRefTick = document.createElement('div'); divScaleRefTick.classList.add('scale-reference-tick'); divScaleRef.appendChild(divScaleRefTick); + // -> label container const divScaleRefLabelContainer = document.createElement('div'); divScaleRefLabelContainer.classList.add('scale-reference-container'); divScaleRef.appendChild(divScaleRefLabelContainer); + + // -> label prevalence (percentage) + const divScaleRefPercentage = document.createElement('div'); + divScaleRefPercentage.classList.add('scale-ref-percentage'); + divScaleRefPercentage.innerHTML = '100%'; + divScaleRefLabelContainer.appendChild(divScaleRefPercentage); // -> label size const ctrRefSize = createHTMLElementWithClasses('div', ['scale-ctr-ref-size']); divScaleRefLabelContainer.appendChild(ctrRefSize); @@ -410,11 +492,6 @@ export class Prevalence extends ATask { because samples with missing values are filtered out.` }); infoLable.appendChild(infoIcon); - // -> label prevalence (percentage) - const divScaleRefPercentage = document.createElement('div'); - divScaleRefPercentage.classList.add('scale-ref-percentage'); - divScaleRefPercentage.innerHTML = '100%'; - divScaleRefLabelContainer.appendChild(divScaleRefPercentage); // cohort scale @@ -423,21 +500,27 @@ export class Prevalence extends ATask { // divScaleSizes.appendChild(divScaleCohort); lowerScales.appendChild(divScaleCohort); + // -> tick + const divScaleChtTick = document.createElement('div'); + divScaleChtTick.classList.add('scale-cohort-tick'); + divScaleCohort.appendChild(divScaleChtTick); + // -> label size container const divScaleCohortContainer = document.createElement('div'); divScaleCohortContainer.classList.add('scale-cohort-container'); divScaleCohort.appendChild(divScaleCohortContainer); - // -> label size - const divScaleCohortSize = document.createElement('div'); - divScaleCohortSize.classList.add('scale-cohort-size'); - divScaleCohortContainer.appendChild(divScaleCohortSize); // -> label prevalence (percentage) const divScaleCohortPercentage = document.createElement('div'); divScaleCohortPercentage.classList.add('scale-cohort-percentage'); const cohortColor = chtConfig.cht.colorTaskView === null ? 'white' : chtConfig.cht.colorTaskView; - divScaleCohortPercentage.style.background = `linear-gradient(to right, white 0%, white 25%, ${cohortColor} 100%)`; + divScaleCohortPercentage.style.background = `linear-gradient(to right, ${cohortColor} 0%, white 100%)`; + // divScaleCohortPercentage.style.background = `linear-gradient(to right, ${cohortColor} 0%, white 25%, white 100%)`; divScaleCohortContainer.appendChild(divScaleCohortPercentage); + // -> label size + const divScaleCohortSize = document.createElement('div'); + divScaleCohortSize.classList.add('scale-cohort-size'); + divScaleCohortContainer.appendChild(divScaleCohortSize); // scale label space at the end @@ -474,7 +557,7 @@ export class Prevalence extends ATask { divDataset.classList.add('bar-dataset'); ctrBars.appendChild(divDataset); - // zero line bar + // zero line bar -> needed so that the scale is aligned correctly const divZero = createHTMLElementWithClasses('div', ['bar', 'prev-value-zero']); divDataset.appendChild(divZero); @@ -503,7 +586,66 @@ export class Prevalence extends ATask { barError.appendChild(barErrorRight); } + // create all task options for an input cohort + private createNonClickableTasks(d: {task: Task; values: Array;}, chtIndex: number, index: number, nodes: HTMLDivElement[] | ArrayLike) { + const currNode = nodes[index]; + const currTask = d.task; + const taskRep = currTask.representation.getRepresentation(); + + // add the task id as class + currNode.classList.add(currTask.id); + + // checkbox + const checkbox = document.createElement('div'); + // checkbox.classList.add('task-checkbox'); + checkbox.classList.add('prev-checkbox'); + // checkbox indicator + const cbIndicator = document.createElement('div'); + // cbIndicator.classList.add('task-checkbox-indicator'); + cbIndicator.classList.add('checkbox-indicator'); + checkbox.appendChild(cbIndicator); + + // label + const label = document.createElement('div'); + label.classList.add('task-label'); + + // add checkbox and label + currNode.appendChild(checkbox); + currNode.appendChild(label); + + // get attribute label + const attrLabel = currTask.label; + // get all values for the task + const values = d.values; + // get all attribtues for the task + const attributes = d.task.attributes; + // get all value labels for all attributes + const valueLabel = attributes.map((attr, i) => { + let attributeRangeLabel; + if (Array.isArray(values[i])) { + // TODO labels + // attributeRangeLabel = (values[i] as INumRange[]).map((val) => labelFromFilter(val, attr)).join('/'); + attributeRangeLabel = (values[i] as INumRange[]).map((val) => easyLabelFromFilter(val, attr.label)).join('/'); + } else { + // TODO labels + // attributeRangeLabel = labelFromFilter((values[i] as IEqualsList), attr); + attributeRangeLabel = easyLabelFromFilter((values[i] as IEqualsList), attr.label); + } + return attributeRangeLabel; + }).join(', '); + + // set text for the task html element + label.innerHTML = `${attrLabel}: ${valueLabel}`; + + // set tootip + tippy(label, { + content: `${attrLabel}: ${valueLabel}` + }); + + } + + // create all task options for an referce cohort private createClickableTasks(d: {task: Task; values: Array;}, chtIndex: number, index: number, nodes: HTMLDivElement[] | ArrayLike) { const currNode = nodes[index]; const currTask = d.task; @@ -522,13 +664,9 @@ export class Prevalence extends ATask { cbIndicator.classList.add('checkbox-indicator'); checkbox.appendChild(cbIndicator); // add loading effect icon container - const cbCtrLoading = createHTMLElementWithClasses('div', ['icon-container', 'loading-effect']); + const cbCtrLoading = createHTMLElementWithClasses('div', ['icon-container']); cbCtrLoading.toggleAttribute('hidden', true); checkbox.appendChild(cbCtrLoading); - // add loading effect icon - const cbLoading = createHTMLElementWithClasses('i', ['fas', 'fa-circle-notch', 'icon-extra']); - cbCtrLoading.appendChild(cbLoading); - // label @@ -685,14 +823,7 @@ export class Prevalence extends ATask { // change reference bar size and the prevalence value this.updateBars(currPack, datasetSize, currPack.chtConfig.size, cohortRefSize); - // add info label for no filter active and excluding missing values - // and if reference size != dataset size - const infoLabel = currPack.container.querySelector('.prev-info-bar-label') as HTMLDivElement; - if (exclState && activeTasks.length === 0 && datasetSize !== cohortRefSize) { - infoLabel.removeAttribute('hidden'); - } else { - infoLabel.toggleAttribute('hidden', true); - } + } private startBarLoadingAnimation(prevPack: IPrevalencePack) { @@ -767,12 +898,58 @@ export class Prevalence extends ATask { this.stopBarLoadingAnimation(prevPack); this.stopTaskLoadingAnimation(prevPack); + const animationTime = 1000; + const tBar = transition().duration(animationTime); + + // check if the dataset bar should be shown + const iconEye = prevPack.container.querySelector('.prev-show-dataset-eye') as HTMLElement; + const showDatasetBar = Boolean(Number(iconEye.dataset.showDatasetBar)); + + const maxSizeRef = showDatasetBar ? sizeDataset : sizeRef; + + const colorDatasetBar = showDatasetBar ? colors.lightBorder : 'transparent'; + const datasetBar = prevPack.container.querySelector('.bar-dataset') as HTMLDivElement; + // datasetBar.classList.toggle('hide-dataset', !showDatasetBar); + select(datasetBar).transition(tBar).style('background-color', `${colorDatasetBar}`); + + const colorDatasetMaxLabel = showDatasetBar ? colors.textColor : 'transparent'; + const datasetBarMaxLabel = prevPack.container.querySelector('.prev-max-scale-label') as HTMLDivElement; + // datasetBarMaxLabel.classList.toggle('hide-label', !showDatasetBar); + select(datasetBarMaxLabel).transition(tBar).style('color', `${colorDatasetMaxLabel}`); + + + // reference size + const percentageRef = (sizeRef / maxSizeRef) * 100; + const refElems = prevPack.container.querySelectorAll('.prev-value-reference') as NodeListOf; + refElems.forEach((elem) => { + select(elem).transition(tBar).style('width', `${percentageRef}%`); + // elem.style.width = `${percentageRef}%`; + }); + + const scaleRefS = prevPack.container.querySelector('.scale-ref-size') as HTMLDivElement; + scaleRefS.innerHTML = `${sizeRef}`; + + setTimeout(() => { + // update ci interval after the animation for the dataset bar -> otherwise the bar size is not correct + // error bar for confidence intervall + // set error bar length + const refBar = prevPack.container.querySelector('.prev-value-reference.bar') as HTMLDivElement; + const refBarWidth = refBar.getBoundingClientRect().width; + + const errorBar = prevPack.container.querySelector('.prev-ci-bar-error') as HTMLDivElement; + const ciHalfBarWidth = ciValue * refBarWidth; + const ciBarWidth = 2 * ciHalfBarWidth; + // select(errorBar).transition(tBar).style('width', `${ciBarWidth}px`).style('margin-right', `-${ciHalfBarWidth}px`); + errorBar.style.width = `${ciBarWidth}px`; + errorBar.style.marginRight = `-${ciHalfBarWidth}px`; + }, animationTime + 10); // cohort size - const percentageCht = (sizeCht / sizeDataset) * 100; + const percentageCht = (sizeCht / maxSizeRef) * 100; const chtElems = prevPack.container.querySelectorAll('.prev-value-cohort') as NodeListOf; chtElems.forEach((elem) => { - elem.style.width = `${percentageCht}%`; + select(elem).transition(tBar).style('width', `${percentageCht}%`); + // elem.style.width = `${percentageCht}%`; }); const scaleChtS = prevPack.container.querySelector('.scale-cohort-size') as HTMLDivElement; @@ -782,7 +959,8 @@ export class Prevalence extends ATask { // add tooltip for the prevalence and its CI const prevTooltip = ` Prevalence: ${prevValueMore}%
- Confidence Interval: ± ${ciValueMore}%
`; + Confidence Interval (95% Confidence): ± ${ciValueMore}%
+ `; const prevInstance = (scaleChtP as any)._tippy; if (prevInstance) { prevInstance.setContent(prevTooltip); @@ -792,36 +970,30 @@ export class Prevalence extends ATask { }); } - // reference size - const percentageRef = (sizeRef / sizeDataset) * 100; - const refElems = prevPack.container.querySelectorAll('.prev-value-reference') as NodeListOf; - refElems.forEach((elem) => { - elem.style.width = `${percentageRef}%`; - }); - - const scaleRefS = prevPack.container.querySelector('.scale-ref-size') as HTMLDivElement; - scaleRefS.innerHTML = `${sizeRef}`; - - // error bar for confidence intervall - // set error bar length - const refBar = prevPack.container.querySelector('.prev-value-reference.bar') as HTMLDivElement; - const refBarWidth = refBar.getBoundingClientRect().width; - - const errorBar = prevPack.container.querySelector('.prev-ci-bar-error') as HTMLDivElement; - const ciHalfBarWidth = ciValue * refBarWidth; - const ciBarWidth = 2 * ciHalfBarWidth; - errorBar.style.width = `${ciBarWidth}px`; - errorBar.style.marginRight = `-${ciHalfBarWidth}px`; + // add info label for no filter active and excluding missing values + // and if reference size != dataset size + const exclState = this.excludeMissingValues; + const activeTasks = select(prevPack.container).selectAll('.ref-task-option.active').data().map((elem: {task: Task, value: INumRange[] | IEqualsList}) => elem.task) as Task[]; + const infoLabel = prevPack.container.querySelector('.prev-info-bar-label') as HTMLDivElement; + if (showDatasetBar) { + if (exclState && activeTasks.length === 0 && sizeDataset !== sizeRef) { + infoLabel.removeAttribute('hidden'); + } else { + infoLabel.toggleAttribute('hidden', true); + } + } else { + infoLabel.toggleAttribute('hidden', true); + } // add tooltip to bar const barContainer = prevPack.container.querySelector('.prev-result-bar') as HTMLDivElement; // update toottip text const tooltip = ` + ${this.baseCohort.label} (${sizeDataset} items)
Reference: defined with checkboxes (${sizeRef} items)
- Cohort: ${prevPack.chtConfig.cht.label} (${sizeCht} items)
- Dataset: ${this.baseCohort.label} (${sizeDataset} items)
+ ${prevPack.chtConfig.cht.getHTMLLabel()} (${sizeCht} items)
Prevalence: ${prevValueMore}%
- Confidence Interval: ± ${ciValueMore}%
`; + Confidence Interval (95% Confidence): ± ${ciValueMore}%
`; // get tippy instance, to overwrite existing tippy tooltip const instance = (barContainer as any)._tippy; if (instance) { diff --git a/src/app.ts b/src/app.ts index e20af7f..5012194 100644 --- a/src/app.ts +++ b/src/app.ts @@ -80,9 +80,9 @@ export class CohortApp { const taskParams: ITaskParams[] = ev.detail.params; // task parameters (e.g. column/category to filter) const taskAttributes = ev.detail.attributes; - for(const task of taskParams) { + for (const task of taskParams) { for (const cht of task.outputCohorts) { - log.debug('app sets counter to', 1+this.chtCounter); + log.debug('app sets counter to', 1 + this.chtCounter); (cht as Cohort).setLabels( `#${this.chtCounter++} ` + (cht as Cohort).labelOne, (cht as Cohort).labelTwo @@ -186,7 +186,7 @@ export class CohortApp { .attr('data-db', (d) => d.source.dbConnectorName) .attr('data-dbview', (d) => d.source.viewName) .html((d) => {return d.source.idType.toUpperCase();}) - .on('click', async (d) => { // click on button + .on('click', async (event, d) => { // click on button const newDataset = this.dataset?.source?.idType === d.source.idType ? //same as current? {source: null, rootCohort: null, chtOverviewElements: null} : // deselect {source: d.source, rootCohort: null, chtOverviewElements: null}; // select @@ -201,7 +201,7 @@ export class CohortApp { const dropdown = datasetGroup.append('ul').classed('dropdown-menu', true); dropdown.append('li').classed('dropdown-item', true).append('a').text('All') - .on('click', async (d) => { //click all + .on('click', async (event, d) => { //click all const newDataset = {source: d.source, rootCohort: null, chtOverviewElements: null}; this.handleDatasetClick(newDataset); }); @@ -216,7 +216,7 @@ export class CohortApp { .enter() .append('li').classed('data-panel', true).classed('dropdown-item', true) .append('a').text((d) => d.id).attr('title', (d) => d.description) - .on('click', async function (d) { // click subset + .on('click', async function (event, d) { // click subset // don't toggle data by checkging what is selected in dropdown const dataSourcesAndPanels = select(this.parentNode.parentNode).datum() as {source: IEntitySourceConfig; panels: IPanelDesc[];}; // a -> parent = li -> parent = dropdown = ul const newDataset = {source: dataSourcesAndPanels.source, panel: d, rootCohort: null, chtOverviewElements: null}; diff --git a/src/scss/components/task/_prevalence.scss b/src/scss/components/task/_prevalence.scss index 5dcb2a0..1a11af9 100644 --- a/src/scss/components/task/_prevalence.scss +++ b/src/scss/components/task/_prevalence.scss @@ -1,17 +1,20 @@ .prev-checkbox { position: relative; flex-shrink: 0; - width: 16px; + width: 1.2em; + height: 1.2em; + margin: 0 0.2em; background: $color-background; - border: 1px solid $color-text; + border: 1px solid $color-border-light; + border-radius: 3px; cursor: pointer; .checkbox-indicator { position: absolute; left: 5px; - top: 2px; - width: 4px; - height: 8px; + top: 0px; + width: 5px; + height: 11px; border: solid $color-background; // border right+bot and roation creates checkmark border-width: 0 2px 2px 0; @@ -24,53 +27,98 @@ width: 100%; } - .icon-extra { - position: absolute; - top: calc(50% - 6px); - left: calc(50% - 7px); - font-weight: bold; - transform: scale(0.95); - } - .loading-effect { - animation-name: spin; - animation-duration: 2000ms; - animation-iteration-count: infinite; - animation-timing-function: linear; + .icon-container::after { + animation: spinAround infinite .75s linear; + position: absolute; + top: calc(50% - (0.45em)); + left: calc(50% - (0.45em)); + border: 2px black solid; + border-radius: 9999px; + border-color: transparent transparent $color-background $color-background; + content: ''; + display: block; + height: 0.9em; + width: 0.9em; + + @keyframes spinAround { + 0% { + transform: rotate(0deg); + } - @keyframes spin { - from { - transform:rotate(0deg); - } - to { - transform:rotate(360deg); - } + 100% { + transform: rotate(359deg); + } } + } } // container for the checkbox for the exclusion of missing values .exclude-container { display: flex; - height: 16px; + height: 1.5em; + align-items: center; // label for the checkbox .label-excl-container { align-self: center; - height: 16px; + height: 100%; margin-left: 3px; cursor: default; } // loading checkbox - .prev-checkbox.color-loading { + .prev-checkbox.color-loading, + .prev-checkbox.active.color-loading { background: $color-background !important; - color: $color-text !important; + + .icon-container::after { + background: $color-background !important; + border-color: transparent transparent $color-text $color-text !important; + } } // active checkbox .prev-checkbox.active { background: $color-bar; + border-color: $color-bar; + + .checkbox-indicator { + border-color: $color-background; + } + } +} + +// container for the checkbox for showing the dataset bar +.show-dataset-container { + display: flex; + height: 1.5em; + align-items: center; + + // label for the checkbox + .label-show-dataset-container { + align-self: center; + height: 100%; + margin-left: 3px; + cursor: default; + } + + // loading checkbox + .prev-checkbox.color-loading, + .prev-checkbox.active.color-loading { + background: $color-background !important; + + .icon-container::after { + background: $color-background !important; + border-color: transparent transparent $color-text $color-text !important; + } + } + + // active checkbox + .prev-checkbox.active { + background: $color-bar; + border-color: $color-bar; .checkbox-indicator { border-color: $color-background; @@ -89,7 +137,7 @@ $error-bar-line-width: 1px !default; .prev-element-highlight { border-color: $color-hover !important; - box-shadow: inset 0 0px 2px $color-hover-opacity-75 , 0 0 8px $color-hover-opacity-75 !important; + box-shadow: inset 0 0px 2px $color-hover-opacity-75, 0 0 8px $color-hover-opacity-75 !important; } // reach row @@ -98,72 +146,117 @@ $error-bar-line-width: 1px !default; flex-direction: row; } - // define the labels for each row (tasks, bars, result text) - .prev-label { - width: 148px; - flex-grow: 0; - flex-shrink: 0; + + .prev-show-dataset-eye { + cursor: pointer; + padding-top: 0.25em; + + &[data-show-dataset-bar='0'] { + color: $color-border-light; + } + + &[data-show-dataset-bar='1'] { + color: $color-text; + } + } + + .legend-task-row { + margin-bottom: 0.2em; + height: 1.6em; } - // set spaces between the bar row and the others - .prev-result { - margin: 3px 0 0 0; + // labels for each bar legend + .prev-lable-cntr { + width: 200px; } - // row with label and task options - .prev-ref-creation { - align-items: flex-start; + // **** task options ***** + + .task-option { + max-width: 350px; + height: 100%; + display: flex; + margin-right: 0.5em; + align-items: center; + border-radius: 3px; - // task options - .prev-ref-label { - line-height: 16px; - margin-right: 1em; - min-width: max-content; + .task-label { + padding: 0 0.25em; + text-overflow: ellipsis; + white-space: nowrap; // No line breaks + overflow: hidden; // require for text-overflow to work + text-align: center; + align-self: center; + height: 100%; } } - // **** task options ***** - // container that holds all task options - .ref-task-container { + .ref-task-container, + .cht-task-container { display: flex; flex-direction: row; align-items: center; flex-wrap: wrap; } + // ---- reference tasks // task options .ref-task-option { - max-width: 350px; - height: 16px; - display: flex; - margin-right: 15px; + border: 1px solid $color-border-light; cursor: pointer; + .task-label { - padding: 0 0.25em; - text-overflow: ellipsis; - white-space: nowrap; // No line breaks - overflow: hidden; // require for text-overflow to work - text-align: center; - align-self: center; - height: 16px; - line-height: 16px; background: $color-background; } + + .prev-checkbox { + border-color: $color-hover; + } + } // loading task options - .ref-task-option.color-loading { - .prev-checkbox{ + .ref-task-option.color-loading, + .ref-task-option.active.color-loading { + .prev-checkbox { + background: $color-background !important; + } + + .icon-container::after { background: $color-background !important; - color: $color-text !important; + border-color: transparent transparent $color-hover $color-hover !important; } + } // active task options .ref-task-option.active { .prev-checkbox { - background: $color-bar; + background: $color-hover; + border-color: $color-hover; + } + + .checkbox-indicator { + border-color: $color-background; + } + } + + // ---- input cohort tasks + // task options + .cht-task-option { + border: 1px solid $color-border-light; + cursor: default; + + .task-label { + background: $color-background; + color: $color-text-light; + } + + .prev-checkbox { + cursor: default !important; + background: $color-text-light; + border-color: $color-text-light; } .checkbox-indicator { @@ -175,8 +268,8 @@ $error-bar-line-width: 1px !default; .prev-legend-item { display: flex; flex-direction: row; - height: 16px; - line-height: 16px; + height: 100%; + align-items: center; cursor: default; } @@ -190,10 +283,11 @@ $error-bar-line-width: 1px !default; // mark for all legend items .prev-legend-mark { - height: 16px; - width: 8px; - min-width: 8px; + height: 30%; + width: 1em; + min-width: 1em; margin-right: 3px; + margin-bottom: 0.25em; } // text for all legend items @@ -201,26 +295,28 @@ $error-bar-line-width: 1px !default; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; + height: 100%; } // mark for the reference item .prev-legend-ref { - .prev-legend-mark{ + .prev-legend-mark { background: $color-bar; } } // mark for the filtered out item .prev-legend-all { - margin-bottom: 3px; - .prev-legend-mark{ + + // margin-bottom: 3px; + .prev-legend-mark { background: $color-background-darker; } } // space after bar and scale .prev-label-space { - width: 70px; + width: 150px; flex-grow: 0; flex-shrink: 0; display: flex; @@ -229,7 +325,7 @@ $error-bar-line-width: 1px !default; .prev-max-scale-label { height: 15px; font-size: 0.9em; - margin-bottom: -10px; + margin-bottom: -0.45em; margin-top: auto; width: 100%; flex-grow: 0; @@ -240,6 +336,10 @@ $error-bar-line-width: 1px !default; white-space: nowrap; overflow: hidden; cursor: default; + + &.hide-label { + display: none !important; + } } } @@ -247,7 +347,7 @@ $error-bar-line-width: 1px !default; // **** bars ***** // container with all the bars .prev-result-bar { - height: 35px; + height: 25px; width: 100%; margin-top: auto; @@ -262,6 +362,10 @@ $error-bar-line-width: 1px !default; height: 100%; width: 100%; background: $color-background-darker; + + &.hide-dataset { + background: transparent; + } } .prev-value-zero { @@ -274,7 +378,7 @@ $error-bar-line-width: 1px !default; .bar-reference { top: 10%; height: 80%; - width: 100%; // inital value + width: 0%; // inital value background: $color-bar; &.loading-effect { @@ -296,6 +400,7 @@ $error-bar-line-width: 1px !default; 0% { background-position: 0px 0; } + 100% { background-position: 40px 0; } @@ -323,7 +428,8 @@ $error-bar-line-width: 1px !default; .prev-ci-bar-offset { width: 0% // inital value } - .prev-ci-bar-error{ + + .prev-ci-bar-error { flex-grow: 0; flex-shrink: 0; height: 50%; @@ -338,14 +444,15 @@ $error-bar-line-width: 1px !default; width: 100%; - &.side{ + &.side { height: 100%; width: $error-bar-line-width; flex-grow: 0; flex-shrink: 0; background: $color-background; } - &.middle{ + + &.middle { height: $error-bar-line-width; flex-grow: 1; flex-shrink: 1; @@ -369,6 +476,7 @@ $error-bar-line-width: 1px !default; left: 0; top: 0; } + .prev-scale-sizes { width: 100%; @@ -376,116 +484,131 @@ $error-bar-line-width: 1px !default; position: relative; width: 100%; - .prev-scale-dataset { - width: 100%; - // height: 20px; - border-top: $scale-line-width solid $color-text; - - .prev-scale-first-tick { - height:4px; - border-top: none; - border-right: none; - border-left: $scale-line-width solid $color-text; - } - } - - // reference scale - .prev-scale-reference { - height: 100%; - width: 100%; // inital value - display: flex; - flex-direction: row; - - // remove the border on the right -> use tick - &.prev-scale-elem { - border-right: none; - } - - // add border to the right = tick - .scale-reference-tick { - height: 36px; + .prev-scale-dataset { width: 100%; - flex-grow: 0; - flex-shrink: 0; - border-right: $scale-line-width solid $color-text; + // height: 20px; + border-top: $scale-line-width solid $color-text; + + .prev-scale-first-tick { + height: 4px; + border-top: none; + border-right: none; + border-left: $scale-line-width solid $color-text; + } } - // container with the labels = centered by tick - .scale-reference-container { - height: 36px; - width: 70px; - padding-top: 5px; - flex-grow: 0; - flex-shrink: 0; - text-align: center; - cursor: default; - - .scale-ctr-ref-size { - display: flex; - flex-direction: row; + // reference scale + .prev-scale-reference { + height: 1.5em; + width: 0%; // inital value + display: flex; + flex-direction: row; + + // remove the border on the right -> use tick + &.prev-scale-elem { + border-right: none; } - .prev-info-bar-label { - margin-left: 5px; - color: $color-bar; + // add border to the right = tick + .scale-reference-tick { + height: 100%; + width: 100%; flex-grow: 0; flex-shrink: 0; - font-size: 0.9em; - height: 15px; + border-right: $scale-line-width solid $color-text; } - .scale-ref-size { - height: 15px; - font-size: 0.9em; - padding-left: 0.25em; - text-align: left; + // container with the labels = centered by tick + .scale-reference-container { + display: flex; + align-items: flex-end; + height: 100%; + width: 150px; flex-grow: 0; flex-shrink: 0; - } - - .scale-ref-percentage { - height: 16px; - padding-left: 0.25em; - text-align: left; + text-align: center; + cursor: default; + + .scale-ctr-ref-size { + display: flex; + flex-direction: row; + } + + .prev-info-bar-label { + margin-left: 5px; + color: $color-bar; + flex-grow: 0; + flex-shrink: 0; + font-size: 0.9em; + height: 15px; + } + + .scale-ref-size { + height: 15px; + font-size: 0.9em; + padding-left: 0.25em; + text-align: left; + flex-grow: 0; + flex-shrink: 0; + } + + .scale-ref-percentage { + height: 16px; + padding: 0 0.25em; + text-align: left; + } } } - } - // cohort scale - .prev-scale-cohort { - height: 36px; - width: 0%; // inital value - display: flex; - flex-direction: row-reverse; - - // container with the labels = right aligned by tick - .scale-cohort-container { - min-width: 100px; - padding-top: 5px; - cursor: default; - - .scale-cohort-size { - height: 15px; - font-size: 0.9em; - padding-right: 0.25em; - text-align: right; + + // cohort scale + .prev-scale-cohort { + height: 2.7em; + width: 0%; // inital value + display: flex; + + // remove the border on the right -> use tick + &.prev-scale-elem { + border-right: none; } - .scale-cohort-percentage { - height: 16px; - padding-right: 0.25em; - text-align: right; + // add border to the right = tick + .scale-cohort-tick { + height: 100%; + width: 100%; + flex-grow: 0; + flex-shrink: 0; + border-right: $scale-line-width solid $color-text; } - .scale-cohort-percentage { - font-weight: bold; + // container with the labels = right aligned by tick + .scale-cohort-container { + display: flex; + height: 100%; + align-items: flex-end; + min-width: 150px; + cursor: default; + + .scale-cohort-size { + height: 15px; + font-size: 0.9em; + padding-left: 0.25em; + } + + .scale-cohort-percentage { + height: 16px; + padding: 0 0.25em; + } + + .scale-cohort-percentage { + font-weight: bold; + } } } } } - } } -} +} \ No newline at end of file