@obliczeniowo/elementary
Version:
Library made in Angular version 20
1 lines • 15.7 kB
Source Map (JSON)
{"version":3,"file":"obliczeniowo-elementary-arch-progress.mjs","sources":["../../../../projects/components/arch-progress/components/arch-progress/arch-progress.component.ts","../../../../projects/components/arch-progress/components/arch-progress/arch-progress.component.html","../../../../projects/components/arch-progress/components/two-arch-progress/two-arch-progress.component.ts","../../../../projects/components/arch-progress/components/two-arch-progress/two-arch-progress.component.html","../../../../projects/components/arch-progress/arch-progress.module.ts","../../../../projects/components/arch-progress/obliczeniowo-elementary-arch-progress.ts"],"sourcesContent":["import {\n AfterViewInit,\n Component,\n effect,\n ElementRef,\n input,\n model,\n Renderer2,\n ViewChild,\n} from '@angular/core';\nimport {\n DrawingSvgInterface,\n TextAlign,\n} from '@obliczeniowo/elementary/drawing';\nimport { ColorHSV, ColorRGB, Point2D } from '@obliczeniowo/elementary/classes';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'obl-arch-progress',\n templateUrl: './arch-progress.component.html',\n styleUrls: ['./arch-progress.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: ArchProgressComponent,\n },\n ],\n standalone: false\n})\nexport class ArchProgressComponent\n implements AfterViewInit, ControlValueAccessor\n{\n size = input<number>(100);\n\n value = model<number>(0);\n\n @ViewChild('svg') svg!: ElementRef<SVGSVGElement>;\n\n dc!: DrawingSvgInterface;\n\n color: ColorRGB = ColorHSV.createColorHSVfromRGB(\n new ColorRGB(0, 100, 255)\n ).convertToRGB();\n\n constructor(protected renderer: Renderer2) {\n effect(() => {\n this.color = ColorHSV.createColorHSVfromRGB(new ColorRGB(0, 100, 255))\n .addHue((150 * this.value()) / 100)\n .convertToRGB();\n this.draw();\n });\n }\n\n onChange = (value: number) => {};\n\n onTouched = () => {};\n\n registerOnValidatorChange(fn: () => void): void {\n this.onChange = fn;\n }\n\n writeValue(set?: number): void {\n this.value.set(set || 0);\n }\n\n registerOnChange(onChange: any): void {\n this.onChange = onChange;\n }\n\n registerOnTouched(onTouched: any): void {\n this.onTouched = onTouched;\n }\n\n ngAfterViewInit(): void {\n if (this.svg) {\n this.dc = new DrawingSvgInterface(this.svg.nativeElement, this.renderer);\n this.draw();\n }\n }\n\n protected draw(): void {\n if (this.dc) {\n const center = new Point2D(25, 25);\n const value = this.value();\n this.dc.clear();\n this.dc.drawCircle(center, 22, 5, 'var(--arch-progress-secondary-color)');\n\n this.dc.drawArch(\n center,\n 22,\n 22,\n 0,\n (Math.PI * 2 * value) / 100,\n 5,\n this.color.toString()\n );\n this.dc.setTextAlign(TextAlign.CENTER);\n this.dc.setFontSize(15);\n this.dc.drawText(\n `${value.toFixed()}`,\n center.add(new Point2D(0, 5)),\n this.color.toString(),\n 0\n );\n }\n }\n}\n","<svg [attr.width]=\"size()\" [attr.height]=\"size()\" viewBox=\"0 0 50 50\" #svg></svg>","import {\n AfterViewInit,\n Component,\n effect,\n ElementRef,\n input,\n model,\n Renderer2,\n ViewChild,\n} from '@angular/core';\nimport {\n DrawingSvgInterface,\n TextAlign,\n} from '@obliczeniowo/elementary/drawing';\nimport { ColorHSV, ColorRGB, Point2D } from '@obliczeniowo/elementary/classes';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport interface TwoArchProgressValues {\n first: number;\n second: number;\n}\n\n@Component({\n selector: 'obl-two-arch-progress',\n templateUrl: './two-arch-progress.component.html',\n styleUrls: ['./two-arch-progress.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: TwoArchProgressComponent,\n },\n ],\n standalone: false\n})\nexport class TwoArchProgressComponent\n implements ControlValueAccessor, AfterViewInit\n{\n size = input<number>(100);\n first = model<number>(0);\n\n second = model<number>(0);\n\n @ViewChild('svg') svg!: ElementRef<SVGSVGElement>;\n\n dc!: DrawingSvgInterface;\n\n firstColor: ColorRGB = ColorHSV.createColorHSVfromRGB(\n new ColorRGB(0, 100, 255)\n ).convertToRGB();\n\n secondColor: ColorRGB = ColorHSV.createColorHSVfromRGB(\n new ColorRGB(0, 100, 255)\n ).convertToRGB();\n\n constructor(protected renderer: Renderer2) {\n effect(() => {\n this.firstColor = ColorHSV.createColorHSVfromRGB(\n new ColorRGB(0, 100, 255)\n )\n .addHue((150 * this.first()) / 100)\n .convertToRGB();\n this.draw();\n });\n\n effect(() => {\n this.secondColor = ColorHSV.createColorHSVfromRGB(\n new ColorRGB(0, 100, 255)\n )\n .addHue((150 * this.second()) / 100)\n .convertToRGB();\n this.draw();\n });\n }\n\n onChange = (value: TwoArchProgressValues) => {};\n\n onTouched = () => {};\n\n registerOnValidatorChange(fn: () => void): void {\n this.onChange = fn;\n }\n\n writeValue(set?: TwoArchProgressValues): void {\n this.first.set(set?.first || 0);\n this.second.set(set?.second || 0);\n }\n\n registerOnChange(onChange: any): void {\n this.onChange = onChange;\n }\n\n registerOnTouched(onTouched: any): void {\n this.onTouched = onTouched;\n }\n\n ngAfterViewInit(): void {\n if (this.svg) {\n this.dc = new DrawingSvgInterface(this.svg.nativeElement, this.renderer);\n this.draw();\n }\n }\n\n protected draw(): void {\n if (this.dc) {\n const center = new Point2D(25, 25);\n this.dc.clear();\n this.dc.drawCircle(center, 19, 2, 'var(--arch-progress-secondary-color)');\n this.dc.drawCircle(center, 22, 2, 'var(--arch-progress-secondary-color)');\n\n this.dc.drawArch(\n center,\n 19,\n 19,\n 0,\n (Math.PI * 2 * this.first()) / 100,\n 2,\n this.firstColor.toString()\n );\n this.dc.drawArch(\n center,\n 22,\n 22,\n 0,\n (Math.PI * 2 * this.second()) / 100,\n 2,\n this.secondColor.toString()\n );\n this.dc.setTextAlign(TextAlign.CENTER);\n this.dc.setFontSize(15);\n this.dc.drawText(\n `${this.second().toFixed()}`,\n center.add(new Point2D(2, -2)),\n this.secondColor.toString(),\n 0\n );\n this.dc.setFontSize(10);\n this.dc.drawText(\n `${this.first().toFixed()}`,\n center.add(new Point2D(-4, 12)),\n this.firstColor.toString(),\n 0\n );\n }\n }\n}\n","<svg\n [attr.width]=\"size()\"\n [attr.height]=\"size()\"\n viewBox=\"0 0 50 50\"\n #svg\n></svg>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ArchProgressComponent } from './components/arch-progress/arch-progress.component';\nimport { TwoArchProgressComponent } from './components/two-arch-progress/two-arch-progress.component';\n\n@NgModule({\n declarations: [\n ArchProgressComponent,\n TwoArchProgressComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n ArchProgressComponent,\n TwoArchProgressComponent\n ]\n})\nexport class ArchProgressModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;MA8Ba,qBAAqB,CAAA;AAeV,IAAA,QAAA;AAZtB,IAAA,IAAI,GAAG,KAAK,CAAS,GAAG,CAAC;AAEzB,IAAA,KAAK,GAAG,KAAK,CAAS,CAAC,CAAC;AAEN,IAAA,GAAG;AAErB,IAAA,EAAE;AAEF,IAAA,KAAK,GAAa,QAAQ,CAAC,qBAAqB,CAC9C,IAAI,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAC1B,CAAC,YAAY,EAAE;AAEhB,IAAA,WAAA,CAAsB,QAAmB,EAAA;QAAnB,IAAQ,CAAA,QAAA,GAAR,QAAQ;QAC5B,MAAM,CAAC,MAAK;AACV,YAAA,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,qBAAqB,CAAC,IAAI,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;iBAClE,MAAM,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,GAAG;AACjC,iBAAA,YAAY,EAAE;YACjB,IAAI,CAAC,IAAI,EAAE;AACb,SAAC,CAAC;;AAGJ,IAAA,QAAQ,GAAG,CAAC,KAAa,KAAI,GAAG;AAEhC,IAAA,SAAS,GAAG,MAAK,GAAG;AAEpB,IAAA,yBAAyB,CAAC,EAAc,EAAA;AACtC,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;;AAGpB,IAAA,UAAU,CAAC,GAAY,EAAA;QACrB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;;AAG1B,IAAA,gBAAgB,CAAC,QAAa,EAAA;AAC5B,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ;;AAG1B,IAAA,iBAAiB,CAAC,SAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS;;IAG5B,eAAe,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,GAAG,EAAE;AACZ,YAAA,IAAI,CAAC,EAAE,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC;YACxE,IAAI,CAAC,IAAI,EAAE;;;IAIL,IAAI,GAAA;AACZ,QAAA,IAAI,IAAI,CAAC,EAAE,EAAE;YACX,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC;AAClC,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;AAC1B,YAAA,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;AACf,YAAA,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,sCAAsC,CAAC;AAEzE,YAAA,IAAI,CAAC,EAAE,CAAC,QAAQ,CACd,MAAM,EACN,EAAE,EACF,EAAE,EACF,CAAC,EACD,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,IAAI,GAAG,EAC3B,CAAC,EACD,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CACtB;YACD,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC;AACtC,YAAA,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;AACvB,YAAA,IAAI,CAAC,EAAE,CAAC,QAAQ,CACd,CAAG,EAAA,KAAK,CAAC,OAAO,EAAE,CAAE,CAAA,EACpB,MAAM,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAC7B,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EACrB,CAAC,CACF;;;uGA1EM,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAArB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,EATnB,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,aAAA,EAAA,EAAA,SAAA,EAAA;AACP,YAAA;AACI,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,KAAK,EAAE,IAAI;AACX,gBAAA,WAAW,EAAE,qBAAqB;AACrC,aAAA;AACJ,SAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,KAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,KAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC3BL,yFAAiF,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FD8BpE,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAbjC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,EAGlB,SAAA,EAAA;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,KAAK,EAAE,IAAI;AACX,4BAAA,WAAW,EAAuB,qBAAA;AACrC,yBAAA;AACJ,qBAAA,EAAA,UAAA,EACW,KAAK,EAAA,QAAA,EAAA,yFAAA,EAAA;8EASD,GAAG,EAAA,CAAA;sBAApB,SAAS;uBAAC,KAAK;;;MEFL,wBAAwB,CAAA;AAoBb,IAAA,QAAA;AAjBtB,IAAA,IAAI,GAAG,KAAK,CAAS,GAAG,CAAC;AACzB,IAAA,KAAK,GAAG,KAAK,CAAS,CAAC,CAAC;AAExB,IAAA,MAAM,GAAG,KAAK,CAAS,CAAC,CAAC;AAEP,IAAA,GAAG;AAErB,IAAA,EAAE;AAEF,IAAA,UAAU,GAAa,QAAQ,CAAC,qBAAqB,CACnD,IAAI,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAC1B,CAAC,YAAY,EAAE;AAEhB,IAAA,WAAW,GAAa,QAAQ,CAAC,qBAAqB,CACpD,IAAI,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAC1B,CAAC,YAAY,EAAE;AAEhB,IAAA,WAAA,CAAsB,QAAmB,EAAA;QAAnB,IAAQ,CAAA,QAAA,GAAR,QAAQ;QAC5B,MAAM,CAAC,MAAK;AACV,YAAA,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,qBAAqB,CAC9C,IAAI,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;iBAExB,MAAM,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,GAAG;AACjC,iBAAA,YAAY,EAAE;YACjB,IAAI,CAAC,IAAI,EAAE;AACb,SAAC,CAAC;QAEF,MAAM,CAAC,MAAK;AACV,YAAA,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC,qBAAqB,CAC/C,IAAI,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;iBAExB,MAAM,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,GAAG;AAClC,iBAAA,YAAY,EAAE;YACjB,IAAI,CAAC,IAAI,EAAE;AACb,SAAC,CAAC;;AAGJ,IAAA,QAAQ,GAAG,CAAC,KAA4B,KAAI,GAAG;AAE/C,IAAA,SAAS,GAAG,MAAK,GAAG;AAEpB,IAAA,yBAAyB,CAAC,EAAc,EAAA;AACtC,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;;AAGpB,IAAA,UAAU,CAAC,GAA2B,EAAA;QACpC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,CAAC;;AAGnC,IAAA,gBAAgB,CAAC,QAAa,EAAA;AAC5B,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ;;AAG1B,IAAA,iBAAiB,CAAC,SAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS;;IAG5B,eAAe,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,GAAG,EAAE;AACZ,YAAA,IAAI,CAAC,EAAE,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC;YACxE,IAAI,CAAC,IAAI,EAAE;;;IAIL,IAAI,GAAA;AACZ,QAAA,IAAI,IAAI,CAAC,EAAE,EAAE;YACX,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC;AAClC,YAAA,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;AACf,YAAA,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,sCAAsC,CAAC;AACzE,YAAA,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,sCAAsC,CAAC;AAEzE,YAAA,IAAI,CAAC,EAAE,CAAC,QAAQ,CACd,MAAM,EACN,EAAE,EACF,EAAE,EACF,CAAC,EACD,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,GAAG,EAClC,CAAC,EACD,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAC3B;AACD,YAAA,IAAI,CAAC,EAAE,CAAC,QAAQ,CACd,MAAM,EACN,EAAE,EACF,EAAE,EACF,CAAC,EACD,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,GAAG,EACnC,CAAC,EACD,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAC5B;YACD,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC;AACtC,YAAA,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;AACvB,YAAA,IAAI,CAAC,EAAE,CAAC,QAAQ,CACd,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,EAC5B,MAAM,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAC9B,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,EAC3B,CAAC,CACF;AACD,YAAA,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;AACvB,YAAA,IAAI,CAAC,EAAE,CAAC,QAAQ,CACd,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,EAC3B,MAAM,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAC/B,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,EAC1B,CAAC,CACF;;;uGA3GM,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAxB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,EATtB,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,aAAA,EAAA,MAAA,EAAA,cAAA,EAAA,EAAA,SAAA,EAAA;AACP,YAAA;AACI,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,KAAK,EAAE,IAAI;AACX,gBAAA,WAAW,EAAE,wBAAwB;AACxC,aAAA;AACJ,SAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,KAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,KAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EChCL,yGAMA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FD6Ba,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAbpC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,EAGtB,SAAA,EAAA;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,KAAK,EAAE,IAAI;AACX,4BAAA,WAAW,EAA0B,wBAAA;AACxC,yBAAA;AACJ,qBAAA,EAAA,UAAA,EACW,KAAK,EAAA,QAAA,EAAA,yGAAA,EAAA;8EAUD,GAAG,EAAA,CAAA;sBAApB,SAAS;uBAAC,KAAK;;;MEzBL,kBAAkB,CAAA;uGAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,iBAX3B,qBAAqB;YACrB,wBAAwB,CAAA,EAAA,OAAA,EAAA,CAGxB,YAAY,CAAA,EAAA,OAAA,EAAA,CAGZ,qBAAqB;YACrB,wBAAwB,CAAA,EAAA,CAAA;AAGf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,YAP3B,YAAY,CAAA,EAAA,CAAA;;2FAOH,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAb9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,qBAAqB;wBACrB;AACD,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP;AACD,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,qBAAqB;wBACrB;AACD;AACF,iBAAA;;;ACjBD;;AAEG;;;;"}