{"version":3,"file":"angular-extensions-directives.mjs","sources":["../../../projects/angular-extensions/directives/src/format.directive.ts","../../../projects/angular-extensions/directives/src/custom-paginator.directive.ts","../../../projects/angular-extensions/directives/src/mat-enhanced-tooltip.directive.ts","../../../projects/angular-extensions/directives/src/prevent-click-on-selection.directive.ts","../../../projects/angular-extensions/directives/src/mat-cell-def.directive.ts","../../../projects/angular-extensions/directives/src/ng-for.directive.ts","../../../projects/angular-extensions/directives/src/cdk-virtual-for.directive.ts","../../../projects/angular-extensions/directives/src/ng-let.directive.ts","../../../projects/angular-extensions/directives/src/typed-template.directive.ts","../../../projects/angular-extensions/directives/src/ngx-directives.module.ts","../../../projects/angular-extensions/directives/src/angular-extensions-directives.ts"],"sourcesContent":["import { Directive, Input, OnInit } from \"@angular/core\";\nimport { MatDatepickerInput } from \"@angular/material/datepicker\";\n\nimport { MatDateFormats } from \"@angular/material/core\";\nimport type { AppMatDatepickerInput } from \"angular-extensions/models\";\n\n/**\n * Forces date/time format in text input view\n */\n@Directive({\n  selector: \"input[format]\"\n})\nexport class FormatDirective implements OnInit {\n\n  @Input()\n  public format = \"\";\n\n  private datePicker: AppMatDatepickerInput<Date>;\n\n  constructor(\n    datePicker: MatDatepickerInput<Date>,\n  ) {\n    this.datePicker = datePicker as any as AppMatDatepickerInput<Date>;\n  }\n\n  public ngOnInit() {\n    this.datePicker._dateFormats = Object.assign(\n      {},\n      this.datePicker._dateFormats,\n      {\n        display: { dateInput: this.format }\n      } as MatDateFormats);\n\n    // trigger formatting for existing value\n    if (this.datePicker.value) {\n      this.datePicker._formatValue(this.datePicker.value);\n    }\n  }\n}\n","import { Directive, Input } from \"@angular/core\";\r\nimport { MatPaginator } from \"@angular/material/paginator\";\r\n\r\n@Directive({\r\n  selector: \"[customPaginator]\"\r\n})\r\nexport class CustomPaginatorDirective {\r\n\r\n  /**\r\n   * Fixes problem with pagination when it is not updating page after items were filtered\r\n   */\r\n  @Input()\r\n  public set length(length: number) {\r\n    if (length != null && this.paginator.pageIndex * this.paginator.pageSize >= length) {\r\n      this.paginator.pageIndex = this.paginator.pageIndex - 1;\r\n    }\r\n  }\r\n\r\n  constructor(\r\n    private paginator: MatPaginator\r\n  ) { }\r\n}\r\n","import { Directive, ElementRef, Input, OnInit, OnDestroy, HostListener } from \"@angular/core\";\r\nimport { MatTooltip } from \"@angular/material/tooltip\";\r\n\r\n@Directive({\r\n  selector: \"[matTooltipWhenDisabled],[matTooltipWhenEnabled]\",\r\n})\r\nexport class MatEnhancedTooltipDirective extends MatTooltip implements OnInit, OnDestroy {\r\n\r\n  /**\r\n   * Tooltip message shown only when element (button, link etc.) is enabled\r\n   */\r\n  @Input()\r\n  public matTooltipWhenEnabled: string;\r\n\r\n  /**\r\n   * Tooltip message shown only when element (button, link etc.) is disabled\r\n   */\r\n  @Input()\r\n  public matTooltipWhenDisabled: string;\r\n\r\n  @Input()\r\n  public override set disabled(disabled: boolean) {\r\n    this.tooltipDisabled = disabled;\r\n\r\n    // tooltip should be always enabled\r\n    super.disabled = false;\r\n\r\n    setTimeout(() => {\r\n      this.elementRef.nativeElement.classList.toggle(\"disabled\", !!disabled);\r\n\r\n      if (this.elementRef.nativeElement.attributes.getNamedItem(\"disabled\")) {\r\n        this.elementRef.nativeElement.attributes.removeNamedItem(\"disabled\");\r\n      }\r\n    });\r\n  }\r\n\r\n  public override get message() {\r\n    return this.tooltipDisabled ? this.matTooltipWhenDisabled : this.matTooltipWhenEnabled;\r\n  }\r\n\r\n  public override set message(value: string) {\r\n    super.message = value;\r\n  }\r\n\r\n  private tooltipDisabled: boolean;\r\n\r\n  private get elementRef() {\r\n    return (this as any)._elementRef as ElementRef<HTMLElement>;\r\n  }\r\n\r\n  /**\r\n   * Prevents text selection when long-press on tooltip\r\n   */\r\n  @HostListener(\"touchstart\")\r\n  public touchStart() {\r\n    document.body.classList.add(\"no-selection\");\r\n  }\r\n\r\n  /**\r\n   * Prevents text selection when long-press on tooltip\r\n   */\r\n  @HostListener(\"touchend\")\r\n  public touchEnd() {\r\n    document.body.classList.remove(\"no-selection\");\r\n  }\r\n\r\n  public ngOnInit() {\r\n    this.elementRef.nativeElement.addEventListener(\"click\", event => {\r\n      if (this.tooltipDisabled) {\r\n        event.stopPropagation();\r\n        event.preventDefault();\r\n      }\r\n    }, { capture: true });\r\n  }\r\n}\r\n","import { Directive, ElementRef, OnDestroy } from \"@angular/core\";\r\n\r\n@Directive({\r\n  selector: \"[preventClickOnSelection]\",\r\n})\r\nexport class PreventClickOnSelectionDirective implements OnDestroy {\r\n\r\n  constructor(\r\n    private elementRef: ElementRef<HTMLElement>,\r\n  ) {\r\n    elementRef.nativeElement.addEventListener(\"click\", this.clickHandler, { capture: true });\r\n  }\r\n\r\n  public ngOnDestroy() {\r\n    this.elementRef.nativeElement.removeEventListener(\"click\", this.clickHandler, { capture: true });\r\n  }\r\n\r\n  private clickHandler = (event: MouseEvent) => {\r\n    if (!!document.getSelection()?.toString()?.replace(\"\\n\", \"\")) {\r\n      event.stopPropagation();\r\n    }\r\n  };\r\n}\r\n","import { Observable } from \"rxjs\";\r\nimport { CdkCellDef, CdkRowDef } from \"@angular/cdk/table\";\r\nimport { Directive, Input } from \"@angular/core\";\r\nimport { MatCellDef, MatRowDef, MatTableDataSource } from \"@angular/material/table\";\r\n\r\n@Directive({\r\n  selector: \"[matCellDef]\",\r\n  providers: [\r\n    { provide: CdkCellDef, useExisting: MatCellDefDirective },\r\n  ],\r\n})\r\nexport class MatCellDefDirective<T, TValue> extends MatCellDef {\r\n\r\n  @Input()\r\n  public matCellDefDataSource: T[] | Observable<T[]> | MatTableDataSource<T>;\r\n\r\n  public value: TValue;\r\n\r\n  public static ngTemplateContextGuard<T, TValue>(\r\n    dir: MatCellDefDirective<T, TValue>,\r\n    ctx: unknown\r\n  ): ctx is { $implicit: T; index: number } {\r\n    return true;\r\n  }\r\n}\r\n\r\n@Directive({\r\n  selector: \"[matRowDef]\",\r\n  providers: [\r\n    { provide: CdkRowDef, useExisting: MatRowDefDirective },\r\n  ],\r\n})\r\nexport class MatRowDefDirective<T> extends MatRowDef<T> {\r\n\r\n  @Input()\r\n  public matRowDefDataSource: T[] | Observable<T[]> | MatTableDataSource<T>;\r\n\r\n  public static ngTemplateContextGuard<T>(\r\n    dir: MatRowDefDirective<T>,\r\n    ctx: unknown\r\n  ): ctx is { $implicit: T; index: number } {\r\n    return true;\r\n  }\r\n}\r\n","import { NgFor } from \"@angular/common\";\r\nimport { Directive, EmbeddedViewRef, Input, OnChanges, Self, TemplateRef, ViewContainerRef } from \"@angular/core\";\r\n\r\n@Directive({\r\n  selector: \"[ngFor]\"\r\n})\r\nexport class NgForDirective<T> implements OnChanges {\r\n\r\n  @Input()\r\n  public ngForOf?: Iterable<T> | null;\r\n\r\n  @Input()\r\n  public set ngForTrackByProp(prop: keyof T) {\r\n    this.ngFor.ngForTrackBy = (_: number, item: T) => item[prop];\r\n  }\r\n\r\n  @Input()\r\n  public ngForEmpty?: TemplateRef<unknown>;\r\n\r\n  private ngForEmptyViewRef?: EmbeddedViewRef<unknown>;\r\n\r\n  constructor(\r\n    @Self() private ngFor: NgFor<T>,\r\n    private viewContainerRef: ViewContainerRef,\r\n  ) {\r\n  }\r\n\r\n  public ngOnChanges(): void {\r\n    if (this.ngForEmpty) {\r\n      if (this.ngForEmptyViewRef && (this.ngForOf as Array<T>)?.length > 0) {\r\n        this.ngForEmptyViewRef.destroy();\r\n        this.ngForEmptyViewRef = undefined;\r\n      }\r\n      else if (!this.ngForEmptyViewRef && !(this.ngForOf as Array<T>)?.length) {\r\n        this.ngForEmptyViewRef = this.viewContainerRef.createEmbeddedView(this.ngForEmpty);\r\n      }\r\n    }\r\n  }\r\n}\r\n","import { Observable } from \"rxjs\";\r\nimport { Directive, Input, NgIterable, Self } from \"@angular/core\";\r\nimport { DataSource } from \"@angular/cdk/collections\";\r\nimport { CdkVirtualForOf } from \"@angular/cdk/scrolling\";\r\n\r\n@Directive({\r\n  selector: \"[cdkVirtualFor]\"\r\n})\r\nexport class CdkVirtualForOfDirective<T> {\r\n\r\n  @Input()\r\n  public cdkVirtualForOf?: DataSource<T> | Observable<T[]> | NgIterable<T> | null;\r\n\r\n  @Input()\r\n  public set cdkVirtualForTrackByProp(prop: keyof T) {\r\n    this.cdkVirtualFor.cdkVirtualForTrackBy = (_: number, item: T) => item[prop];\r\n  }\r\n\r\n  constructor(\r\n    @Self() private cdkVirtualFor: CdkVirtualForOf<T>,\r\n  ) {\r\n  }\r\n\r\n  public static ngTemplateContextGuard<T>(\r\n    dir: CdkVirtualForOfDirective<T>,\r\n    ctx: unknown\r\n  ): ctx is { $implicit: T; index: number } {\r\n    return true;\r\n  }\r\n}\r\n","import { Directive, Input, TemplateRef, ViewContainerRef } from \"@angular/core\";\r\n\r\ninterface NgLetContext<T> {\r\n  $implicit: T;\r\n\r\n  ngLet: T;\r\n}\r\n\r\n\r\n@Directive({\r\n  selector: \"[ngLet]\"\r\n})\r\nexport class NgLetDirective<T> {\r\n\r\n  public static ngTemplateGuard_ngLet: \"binding\";\r\n\r\n  private context: NgLetContext<T | null> = { ngLet: null, $implicit: null };\r\n  private hasView = false;\r\n\r\n  @Input()\r\n  public set ngLet(value: T) {\r\n    this.context.$implicit = this.context.ngLet = value;\r\n    if (!this.hasView) {\r\n      this.hasView = true;\r\n      this.viewContainer.createEmbeddedView(this.templateRef, this.context);\r\n    }\r\n  }\r\n\r\n  constructor(\r\n    private viewContainer: ViewContainerRef,\r\n    private templateRef: TemplateRef<NgLetContext<T>>,\r\n  ) {\r\n  }\r\n\r\n  public static ngTemplateContextGuard<T>(dir: NgLetDirective<T>, ctx: any): ctx is NgLetContext<T> {\r\n    return true;\r\n  }\r\n}\r\n","import { Directive, Input } from \"@angular/core\";\n\ninterface TemplateContext<T> {\n  $implicit: T;\n}\n\n@Directive({\n  selector: \"ng-template[type]\",\n})\nexport class TypedTemplateDirective<T> {\n\n  @Input()\n  public type!: T;\n\n  public static ngTemplateContextGuard<TContext>(\n    dir: TypedTemplateDirective<TContext>,\n    ctx: unknown\n  ): ctx is TemplateContext<TContext> {\n    return true;\n  }\n}\n","import { NgModule } from \"@angular/core\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { CustomPaginatorDirective } from \"./custom-paginator.directive\";\r\nimport { FormatDirective } from \"./format.directive\";\r\nimport { MatEnhancedTooltipDirective } from \"./mat-enhanced-tooltip.directive\";\r\nimport { PreventClickOnSelectionDirective } from \"./prevent-click-on-selection.directive\";\r\nimport { MatCellDefDirective, MatRowDefDirective } from \"./mat-cell-def.directive\";\r\nimport { NgForDirective } from \"./ng-for.directive\";\r\nimport { CdkVirtualForOfDirective } from \"./cdk-virtual-for.directive\";\r\nimport { NgLetDirective } from \"./ng-let.directive\";\r\nimport { TypedTemplateDirective } from \"./typed-template.directive\";\r\n\r\n@NgModule({\r\n  imports: [\r\n    CommonModule,\r\n  ],\r\n  declarations: [\r\n    CustomPaginatorDirective,\r\n    FormatDirective,\r\n    MatEnhancedTooltipDirective,\r\n    PreventClickOnSelectionDirective,\r\n    MatCellDefDirective,\r\n    MatRowDefDirective,\r\n    NgForDirective,\r\n    CdkVirtualForOfDirective,\r\n    NgLetDirective,\r\n    TypedTemplateDirective,\r\n  ],\r\n  exports: [\r\n    CommonModule,\r\n\r\n    CustomPaginatorDirective,\r\n    FormatDirective,\r\n    MatEnhancedTooltipDirective,\r\n    PreventClickOnSelectionDirective,\r\n    MatCellDefDirective,\r\n    MatRowDefDirective,\r\n    NgForDirective,\r\n    CdkVirtualForOfDirective,\r\n    NgLetDirective,\r\n    TypedTemplateDirective,\r\n  ]\r\n})\r\nexport class NgxDirectivesModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1"],"mappings":";;;;;;;;;;;AAMA;;AAEG;MAIU,eAAe,CAAA;AAO1B,IAAA,WAAA,CACE,UAAoC,EAAA;AAL/B,QAAA,IAAM,CAAA,MAAA,GAAG,EAAE,CAAC;AAOjB,QAAA,IAAI,CAAC,UAAU,GAAG,UAAgD,CAAC;KACpE;IAEM,QAAQ,GAAA;AACb,QAAA,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,CAC1C,EAAE,EACF,IAAI,CAAC,UAAU,CAAC,YAAY,EAC5B;AACE,YAAA,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE;AAClB,SAAA,CAAC,CAAC;;AAGvB,QAAA,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE;YACzB,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AACrD,SAAA;KACF;;6GAzBU,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;iGAAf,eAAe,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;iBAC1B,CAAA;yGAIQ,MAAM,EAAA,CAAA;sBADZ,KAAK;;;MCRK,wBAAwB,CAAA;AAYnC,IAAA,WAAA,CACU,SAAuB,EAAA;AAAvB,QAAA,IAAS,CAAA,SAAA,GAAT,SAAS,CAAc;KAC5B;AAZL;;AAEG;IACH,IACW,MAAM,CAAC,MAAc,EAAA;AAC9B,QAAA,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,IAAI,MAAM,EAAE;AAClF,YAAA,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,CAAC,CAAC;AACzD,SAAA;KACF;;sHAVU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;0GAAxB,wBAAwB,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;iBAC9B,CAAA;qGAOY,MAAM,EAAA,CAAA;sBADhB,KAAK;;;ACLF,MAAO,2BAA4B,SAAQ,UAAU,CAAA;IAczD,IACoB,QAAQ,CAAC,QAAiB,EAAA;AAC5C,QAAA,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;;AAGhC,QAAA,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC;QAEvB,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;AAEvE,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE;gBACrE,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;AACtE,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;AAED,IAAA,IAAoB,OAAO,GAAA;AACzB,QAAA,OAAO,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,qBAAqB,CAAC;KACxF;IAED,IAAoB,OAAO,CAAC,KAAa,EAAA;AACvC,QAAA,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;KACvB;AAID,IAAA,IAAY,UAAU,GAAA;QACpB,OAAQ,IAAY,CAAC,WAAsC,CAAC;KAC7D;AAED;;AAEG;IAEI,UAAU,GAAA;QACf,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;KAC7C;AAED;;AAEG;IAEI,QAAQ,GAAA;QACb,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;KAChD;IAEM,QAAQ,GAAA;QACb,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,IAAG;YAC9D,IAAI,IAAI,CAAC,eAAe,EAAE;gBACxB,KAAK,CAAC,eAAe,EAAE,CAAC;gBACxB,KAAK,CAAC,cAAc,EAAE,CAAC;AACxB,aAAA;AACH,SAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;KACvB;;yHAnEU,2BAA2B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;6GAA3B,2BAA2B,EAAA,QAAA,EAAA,kDAAA,EAAA,MAAA,EAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAA3B,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAHvC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kDAAkD;iBAC7D,CAAA;8BAOQ,qBAAqB,EAAA,CAAA;sBAD3B,KAAK;gBAOC,sBAAsB,EAAA,CAAA;sBAD5B,KAAK;gBAIc,QAAQ,EAAA,CAAA;sBAD3B,KAAK;gBAkCC,UAAU,EAAA,CAAA;sBADhB,YAAY;uBAAC,YAAY,CAAA;gBASnB,QAAQ,EAAA,CAAA;sBADd,YAAY;uBAAC,UAAU,CAAA;;;MCxDb,gCAAgC,CAAA;AAE3C,IAAA,WAAA,CACU,UAAmC,EAAA;AAAnC,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAyB;AASrC,QAAA,IAAA,CAAA,YAAY,GAAG,CAAC,KAAiB,KAAI;;YAC3C,IAAI,CAAC,EAAC,CAAA,EAAA,GAAA,MAAA,QAAQ,CAAC,YAAY,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,QAAQ,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA,EAAE;gBAC5D,KAAK,CAAC,eAAe,EAAE,CAAC;AACzB,aAAA;AACH,SAAC,CAAC;AAXA,QAAA,UAAU,CAAC,aAAa,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;KAC1F;IAEM,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;KAClG;;8HAVU,gCAAgC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kHAAhC,gCAAgC,EAAA,QAAA,EAAA,2BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAhC,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAH5C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,2BAA2B;iBACtC,CAAA;;;ACOK,MAAO,mBAA+B,SAAQ,UAAU,CAAA;AAOrD,IAAA,OAAO,sBAAsB,CAClC,GAAmC,EACnC,GAAY,EAAA;AAEZ,QAAA,OAAO,IAAI,CAAC;KACb;;iHAZU,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,mBAAmB,EAJnB,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,EAAA,SAAA,EAAA;AACT,QAAA,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,mBAAmB,EAAE;KAC1D,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAEU,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAN/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,qBAAqB,EAAE;AAC1D,qBAAA;iBACF,CAAA;8BAIQ,oBAAoB,EAAA,CAAA;sBAD1B,KAAK;;AAmBF,MAAO,kBAAsB,SAAQ,SAAY,CAAA;AAK9C,IAAA,OAAO,sBAAsB,CAClC,GAA0B,EAC1B,GAAY,EAAA;AAEZ,QAAA,OAAO,IAAI,CAAC;KACb;;gHAVU,kBAAkB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,EAJlB,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,EAAA,SAAA,EAAA;AACT,QAAA,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,kBAAkB,EAAE;KACxD,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAEU,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAN9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;AACvB,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,oBAAoB,EAAE;AACxD,qBAAA;iBACF,CAAA;8BAIQ,mBAAmB,EAAA,CAAA;sBADzB,KAAK;;;MC5BK,cAAc,CAAA;IAezB,WACkB,CAAA,KAAe,EACvB,gBAAkC,EAAA;AAD1B,QAAA,IAAK,CAAA,KAAA,GAAL,KAAK,CAAU;AACvB,QAAA,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;KAE3C;IAdD,IACW,gBAAgB,CAAC,IAAa,EAAA;AACvC,QAAA,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAS,EAAE,IAAO,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC;KAC9D;IAaM,WAAW,GAAA;;QAChB,IAAI,IAAI,CAAC,UAAU,EAAE;AACnB,YAAA,IAAI,IAAI,CAAC,iBAAiB,IAAK,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,OAAoB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,IAAG,CAAC,EAAE;AACpE,gBAAA,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;AACjC,gBAAA,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;AACpC,aAAA;AACI,iBAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAA,EAAA,GAAA,IAAI,CAAC,OAAoB,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAM,CAAA,EAAE;AACvE,gBAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AACpF,aAAA;AACF,SAAA;KACF;;4GA/BU,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,KAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;gGAAd,cAAc,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,SAAS;iBACpB,CAAA;;;8BAiBI,IAAI;;yBAbA,OAAO,EAAA,CAAA;sBADb,KAAK;gBAIK,gBAAgB,EAAA,CAAA;sBAD1B,KAAK;gBAMC,UAAU,EAAA,CAAA;sBADhB,KAAK;;;MCRK,wBAAwB,CAAA;AAUnC,IAAA,WAAA,CACkB,aAAiC,EAAA;AAAjC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAoB;KAElD;IARD,IACW,wBAAwB,CAAC,IAAa,EAAA;AAC/C,QAAA,IAAI,CAAC,aAAa,CAAC,oBAAoB,GAAG,CAAC,CAAS,EAAE,IAAO,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC;KAC9E;AAOM,IAAA,OAAO,sBAAsB,CAClC,GAAgC,EAChC,GAAY,EAAA;AAEZ,QAAA,OAAO,IAAI,CAAC;KACb;;sHApBU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,IAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;0GAAxB,wBAAwB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,wBAAA,EAAA,0BAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;iBAC5B,CAAA;;;8BAYI,IAAI;;yBARA,eAAe,EAAA,CAAA;sBADrB,KAAK;gBAIK,wBAAwB,EAAA,CAAA;sBADlC,KAAK;;;MCDK,cAAc,CAAA;IAgBzB,WACU,CAAA,aAA+B,EAC/B,WAAyC,EAAA;AADzC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAkB;AAC/B,QAAA,IAAW,CAAA,WAAA,GAAX,WAAW,CAA8B;AAd3C,QAAA,IAAO,CAAA,OAAA,GAA2B,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AACnE,QAAA,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;KAevB;IAbD,IACW,KAAK,CAAC,KAAQ,EAAA;AACvB,QAAA,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;AACpD,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AACjB,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,YAAA,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;AACvE,SAAA;KACF;AAQM,IAAA,OAAO,sBAAsB,CAAI,GAAsB,EAAE,GAAQ,EAAA;AACtE,QAAA,OAAO,IAAI,CAAC;KACb;;4GAxBU,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;gGAAd,cAAc,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,SAAS;iBACpB,CAAA;iIASY,KAAK,EAAA,CAAA;sBADf,KAAK;;;MCVK,sBAAsB,CAAA;AAK1B,IAAA,OAAO,sBAAsB,CAClC,GAAqC,EACrC,GAAY,EAAA;AAEZ,QAAA,OAAO,IAAI,CAAC;KACb;;oHAVU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;wGAAtB,sBAAsB,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;iBAC9B,CAAA;8BAIQ,IAAI,EAAA,CAAA;sBADV,KAAK;;;MCgCK,mBAAmB,CAAA;;iHAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,iBA1B5B,wBAAwB;QACxB,eAAe;QACf,2BAA2B;QAC3B,gCAAgC;QAChC,mBAAmB;QACnB,kBAAkB;QAClB,cAAc;QACd,wBAAwB;QACxB,cAAc;QACd,sBAAsB,CAAA,EAAA,OAAA,EAAA,CAZtB,YAAY,CAAA,EAAA,OAAA,EAAA,CAeZ,YAAY;QAEZ,wBAAwB;QACxB,eAAe;QACf,2BAA2B;QAC3B,gCAAgC;QAChC,mBAAmB;QACnB,kBAAkB;QAClB,cAAc;QACd,wBAAwB;QACxB,cAAc;QACd,sBAAsB,CAAA,EAAA,CAAA,CAAA;kHAGb,mBAAmB,EAAA,OAAA,EAAA,CA7B5B,YAAY,EAeZ,YAAY,CAAA,EAAA,CAAA,CAAA;4FAcH,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBA/B/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACZ,wBAAwB;wBACxB,eAAe;wBACf,2BAA2B;wBAC3B,gCAAgC;wBAChC,mBAAmB;wBACnB,kBAAkB;wBAClB,cAAc;wBACd,wBAAwB;wBACxB,cAAc;wBACd,sBAAsB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBAEZ,wBAAwB;wBACxB,eAAe;wBACf,2BAA2B;wBAC3B,gCAAgC;wBAChC,mBAAmB;wBACnB,kBAAkB;wBAClB,cAAc;wBACd,wBAAwB;wBACxB,cAAc;wBACd,sBAAsB;AACvB,qBAAA;iBACF,CAAA;;;AC1CD;;AAEG;;;;"}