UNPKG

ng-zorro-antd

Version:

An enterprise-class UI components based on Ant Design and Angular

1 lines 27.4 kB
{"version":3,"file":"ng-zorro-antd-checkbox.mjs","sources":["../../components/checkbox/checkbox-wrapper.component.ts","../../components/checkbox/tokens.ts","../../components/checkbox/checkbox.component.ts","../../components/checkbox/checkbox-group.component.ts","../../components/checkbox/checkbox.module.ts","../../components/checkbox/public-api.ts","../../components/checkbox/ng-zorro-antd-checkbox.ts"],"sourcesContent":["/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { ChangeDetectionStrategy, Component, EventEmitter, Output, ViewEncapsulation } from '@angular/core';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { NzCheckboxComponent } from './checkbox.component';\n\n/**\n * @deprecated Deprecated in v19.0.0. It is recommended to use `<nz-checkbox-group>`.\n */\n@Component({\n selector: 'nz-checkbox-wrapper',\n exportAs: 'nzCheckboxWrapper',\n template: `<ng-content></ng-content>`,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'ant-checkbox-group'\n }\n})\nexport class NzCheckboxWrapperComponent {\n @Output() readonly nzOnChange = new EventEmitter<NzSafeAny[]>();\n private checkboxList: NzCheckboxComponent[] = [];\n\n addCheckbox(value: NzCheckboxComponent): void {\n this.checkboxList.push(value);\n }\n\n removeCheckbox(value: NzCheckboxComponent): void {\n this.checkboxList.splice(this.checkboxList.indexOf(value), 1);\n }\n\n onChange(): void {\n const listOfCheckedValue = this.checkboxList.filter(item => item.nzChecked).map(item => item.nzValue);\n this.nzOnChange.emit(listOfCheckedValue);\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { InjectionToken } from '@angular/core';\n\nimport type { NzCheckboxGroupComponent } from './checkbox-group.component';\n\nexport const NZ_CHECKBOX_GROUP = new InjectionToken<NzCheckboxGroupComponent>('NZ_CHECKBOX_GROUP');\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { FocusMonitor } from '@angular/cdk/a11y';\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n ViewEncapsulation,\n booleanAttribute,\n effect,\n forwardRef,\n inject\n} from '@angular/core';\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { NzFormStatusService } from 'ng-zorro-antd/core/form';\nimport { NzSafeAny, OnChangeType, OnTouchedType } from 'ng-zorro-antd/core/types';\nimport { fromEventOutsideAngular } from 'ng-zorro-antd/core/util';\n\nimport { NzCheckboxWrapperComponent } from './checkbox-wrapper.component';\nimport { NZ_CHECKBOX_GROUP } from './tokens';\n\n@Component({\n selector: '[nz-checkbox]',\n exportAs: 'nzCheckbox',\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n template: `\n <span\n class=\"ant-checkbox\"\n [class.ant-checkbox-checked]=\"nzChecked && !nzIndeterminate\"\n [class.ant-checkbox-disabled]=\"nzDisabled || checkboxGroupComponent?.finalDisabled()\"\n [class.ant-checkbox-indeterminate]=\"nzIndeterminate\"\n >\n <input\n #inputElement\n type=\"checkbox\"\n class=\"ant-checkbox-input\"\n [attr.autofocus]=\"nzAutoFocus ? 'autofocus' : null\"\n [attr.id]=\"nzId\"\n [attr.name]=\"nzName || checkboxGroupComponent?.nzName()\"\n [checked]=\"nzChecked\"\n [ngModel]=\"nzChecked\"\n [disabled]=\"nzDisabled || (checkboxGroupComponent?.finalDisabled() ?? false)\"\n (ngModelChange)=\"innerCheckedChange($event)\"\n />\n <span class=\"ant-checkbox-inner\"></span>\n </span>\n <span><ng-content></ng-content></span>\n `,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NzCheckboxComponent),\n multi: true\n }\n ],\n host: {\n class: 'ant-checkbox-wrapper',\n '[class.ant-checkbox-group-item]': '!!checkboxGroupComponent',\n '[class.ant-checkbox-wrapper-in-form-item]': '!!nzFormStatusService',\n '[class.ant-checkbox-wrapper-checked]': 'nzChecked',\n '[class.ant-checkbox-wrapper-disabled]': 'nzDisabled || checkboxGroupComponent?.finalDisabled()',\n '[class.ant-checkbox-rtl]': `dir === 'rtl'`\n },\n imports: [FormsModule]\n})\nexport class NzCheckboxComponent implements OnInit, ControlValueAccessor, OnDestroy, AfterViewInit {\n dir: Direction = 'ltr';\n private destroy$ = new Subject<void>();\n private isNzDisableFirstChange: boolean = true;\n\n onChange: OnChangeType = () => {};\n onTouched: OnTouchedType = () => {};\n @ViewChild('inputElement', { static: true }) inputElement!: ElementRef<HTMLInputElement>;\n @Output() readonly nzCheckedChange = new EventEmitter<boolean>();\n @Input() nzValue: NzSafeAny | null = null;\n @Input({ transform: booleanAttribute }) nzAutoFocus = false;\n @Input({ transform: booleanAttribute }) nzDisabled = false;\n @Input({ transform: booleanAttribute }) nzIndeterminate = false;\n @Input({ transform: booleanAttribute }) nzChecked = false;\n @Input() nzId: string | null = null;\n @Input() nzName: string | null = null;\n\n innerCheckedChange(checked: boolean): void {\n if (!this.nzDisabled && !this.checkboxGroupComponent?.finalDisabled()) {\n this.setValue(checked);\n this.nzCheckboxWrapperComponent?.onChange();\n this.checkboxGroupComponent?.onCheckedChange(this.nzValue, checked);\n }\n }\n\n writeValue(value: boolean): void {\n this.nzChecked = value;\n this.cdr.markForCheck();\n }\n\n registerOnChange(fn: OnChangeType): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: OnTouchedType): void {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean): void {\n this.nzDisabled = (this.isNzDisableFirstChange && this.nzDisabled) || disabled;\n this.isNzDisableFirstChange = false;\n this.cdr.markForCheck();\n }\n\n focus(): void {\n this.focusMonitor.focusVia(this.inputElement, 'keyboard');\n }\n\n blur(): void {\n this.inputElement.nativeElement.blur();\n }\n\n /** @deprecated */\n private nzCheckboxWrapperComponent = inject(NzCheckboxWrapperComponent, { optional: true });\n protected checkboxGroupComponent = inject(NZ_CHECKBOX_GROUP, { optional: true });\n protected nzFormStatusService = inject(NzFormStatusService, { optional: true });\n\n constructor(\n private ngZone: NgZone,\n private elementRef: ElementRef<HTMLElement>,\n private cdr: ChangeDetectorRef,\n private focusMonitor: FocusMonitor,\n private directionality: Directionality\n ) {\n if (this.checkboxGroupComponent) {\n effect(() => {\n const values = this.checkboxGroupComponent!.value() || [];\n this.setValue(values.includes(this.nzValue));\n this.cdr.markForCheck();\n });\n }\n }\n\n ngOnInit(): void {\n this.focusMonitor\n .monitor(this.elementRef, true)\n .pipe(takeUntil(this.destroy$))\n .subscribe(focusOrigin => {\n if (!focusOrigin) {\n Promise.resolve().then(() => this.onTouched());\n }\n });\n\n this.nzCheckboxWrapperComponent?.addCheckbox(this);\n\n this.directionality.change.pipe(takeUntil(this.destroy$)).subscribe((direction: Direction) => {\n this.dir = direction;\n this.cdr.detectChanges();\n });\n\n this.dir = this.directionality.value;\n\n fromEventOutsideAngular(this.elementRef.nativeElement, 'click')\n .pipe(takeUntil(this.destroy$))\n .subscribe(event => {\n event.preventDefault();\n this.focus();\n if (this.nzDisabled) {\n return;\n }\n this.ngZone.run(() => {\n this.innerCheckedChange(!this.nzChecked);\n this.cdr.markForCheck();\n });\n });\n\n fromEventOutsideAngular(this.inputElement.nativeElement, 'click')\n .pipe(takeUntil(this.destroy$))\n .subscribe(event => event.stopPropagation());\n }\n\n ngAfterViewInit(): void {\n if (this.nzAutoFocus) {\n this.focus();\n }\n }\n\n ngOnDestroy(): void {\n this.focusMonitor.stopMonitoring(this.elementRef);\n this.nzCheckboxWrapperComponent?.removeCheckbox(this);\n\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n private setValue(value: boolean): void {\n this.nzChecked = value;\n this.onChange(value);\n this.nzCheckedChange.emit(value);\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { FocusMonitor } from '@angular/cdk/a11y';\nimport { Directionality } from '@angular/cdk/bidi';\nimport {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n ElementRef,\n ViewEncapsulation,\n afterNextRender,\n booleanAttribute,\n computed,\n forwardRef,\n inject,\n input,\n linkedSignal,\n signal,\n untracked\n} from '@angular/core';\nimport { takeUntilDestroyed, toSignal } from '@angular/core/rxjs-interop';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { OnChangeType, OnTouchedType } from 'ng-zorro-antd/core/types';\n\nimport { NzCheckboxComponent } from './checkbox.component';\nimport { NZ_CHECKBOX_GROUP } from './tokens';\n\nexport interface NzCheckboxOption {\n label: string;\n value: string | number;\n disabled?: boolean;\n}\n\n/**\n * @deprecated Deprecated in v19.0.0. Please use {@link NzCheckboxOption} to instead.\n */\nexport type NzCheckBoxOptionInterface = NzCheckboxOption;\n\n@Component({\n selector: 'nz-checkbox-group',\n exportAs: 'nzCheckboxGroup',\n imports: [NzCheckboxComponent],\n template: `\n <ng-content>\n @for (option of normalizedOptions(); track option.value) {\n <label\n nz-checkbox\n [nzValue]=\"option.value\"\n [nzName]=\"nzName()\"\n [nzDisabled]=\"option.disabled || finalDisabled()\"\n >\n {{ option.label }}\n </label>\n }\n </ng-content>\n `,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NzCheckboxGroupComponent),\n multi: true\n },\n {\n provide: NZ_CHECKBOX_GROUP,\n useExisting: forwardRef(() => NzCheckboxGroupComponent)\n }\n ],\n host: {\n class: 'ant-checkbox-group',\n '[class.ant-checkbox-group-rtl]': `dir() === 'rtl'`\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class NzCheckboxGroupComponent implements ControlValueAccessor {\n private onChange: OnChangeType = () => {};\n private onTouched: OnTouchedType = () => {};\n private isDisabledFirstChange = true;\n private readonly directionality = inject(Directionality);\n\n readonly nzName = input<string | null>(null);\n readonly nzDisabled = input(false, { transform: booleanAttribute });\n readonly nzOptions = input<NzCheckboxOption[] | string[] | number[]>([]);\n readonly value = signal<Array<NzCheckboxOption['value']> | null>(null);\n readonly finalDisabled = linkedSignal(() => this.nzDisabled());\n\n protected readonly dir = toSignal(this.directionality.change, { initialValue: this.directionality.value });\n protected readonly normalizedOptions = computed(() => normalizeOptions(this.nzOptions()));\n\n constructor() {\n const elementRef = inject(ElementRef);\n const focusMonitor = inject(FocusMonitor);\n const destroyRef = inject(DestroyRef);\n\n afterNextRender(() => {\n focusMonitor\n .monitor(elementRef, true)\n .pipe(takeUntilDestroyed(destroyRef))\n .subscribe(focusOrigin => {\n if (!focusOrigin) {\n this.onTouched();\n }\n });\n\n destroyRef.onDestroy(() => {\n focusMonitor.stopMonitoring(elementRef);\n });\n });\n }\n\n writeValue(value: Array<string | number> | null): void {\n untracked(() => {\n this.value.set(value);\n });\n }\n\n registerOnChange(fn: OnChangeType): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: OnTouchedType): void {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean): void {\n untracked(() => {\n this.finalDisabled.set((this.isDisabledFirstChange && this.nzDisabled()) || disabled);\n });\n this.isDisabledFirstChange = false;\n }\n\n onCheckedChange(optionValue: NzCheckboxOption['value'], checked: boolean): void {\n if (this.finalDisabled()) return;\n\n this.value.update(value => {\n if (checked) {\n return value?.concat(optionValue) || [optionValue];\n } else {\n return value?.filter(val => val !== optionValue) || [];\n }\n });\n\n this.onChange(this.value());\n }\n}\n\nfunction normalizeOptions(value: string[] | number[] | NzCheckboxOption[]): NzCheckboxOption[] {\n return value.map(item => {\n if (typeof item === 'string' || typeof item === 'number') {\n return {\n label: `${item}`,\n value: item\n };\n }\n\n return item;\n });\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgModule } from '@angular/core';\n\nimport { NzCheckboxGroupComponent } from './checkbox-group.component';\nimport { NzCheckboxWrapperComponent } from './checkbox-wrapper.component';\nimport { NzCheckboxComponent } from './checkbox.component';\n\n@NgModule({\n imports: [NzCheckboxComponent, NzCheckboxGroupComponent, NzCheckboxWrapperComponent],\n exports: [NzCheckboxComponent, NzCheckboxGroupComponent, NzCheckboxWrapperComponent]\n})\nexport class NzCheckboxModule {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './checkbox-group.component';\nexport * from './checkbox-wrapper.component';\nexport * from './checkbox.component';\nexport * from './checkbox.module';\nexport * from './tokens';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA;;;AAGG;AAQH;;AAEG;MAYU,0BAA0B,CAAA;AAClB,IAAA,UAAU,GAAG,IAAI,YAAY,EAAe;IACvD,YAAY,GAA0B,EAAE;AAEhD,IAAA,WAAW,CAAC,KAA0B,EAAA;AACpC,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;;AAG/B,IAAA,cAAc,CAAC,KAA0B,EAAA;AACvC,QAAA,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;;IAG/D,QAAQ,GAAA;QACN,MAAM,kBAAkB,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC;AACrG,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,CAAC;;uGAd/B,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA1B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,uMAR3B,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAQ1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAXtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,QAAQ,EAAE,CAA2B,yBAAA,CAAA;AACrC,oBAAA,mBAAmB,EAAE,KAAK;oBAC1B,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE;AACR;AACF,iBAAA;8BAEoB,UAAU,EAAA,CAAA;sBAA5B;;;AC1BH;;;AAGG;MAMU,iBAAiB,GAAG,IAAI,cAAc,CAA2B,mBAAmB;;MC0EpF,mBAAmB,CAAA;AA0DpB,IAAA,MAAA;AACA,IAAA,UAAA;AACA,IAAA,GAAA;AACA,IAAA,YAAA;AACA,IAAA,cAAA;IA7DV,GAAG,GAAc,KAAK;AACd,IAAA,QAAQ,GAAG,IAAI,OAAO,EAAQ;IAC9B,sBAAsB,GAAY,IAAI;AAE9C,IAAA,QAAQ,GAAiB,MAAK,GAAG;AACjC,IAAA,SAAS,GAAkB,MAAK,GAAG;AACU,IAAA,YAAY;AACtC,IAAA,eAAe,GAAG,IAAI,YAAY,EAAW;IACvD,OAAO,GAAqB,IAAI;IACD,WAAW,GAAG,KAAK;IACnB,UAAU,GAAG,KAAK;IAClB,eAAe,GAAG,KAAK;IACvB,SAAS,GAAG,KAAK;IAChD,IAAI,GAAkB,IAAI;IAC1B,MAAM,GAAkB,IAAI;AAErC,IAAA,kBAAkB,CAAC,OAAgB,EAAA;AACjC,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,aAAa,EAAE,EAAE;AACrE,YAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AACtB,YAAA,IAAI,CAAC,0BAA0B,EAAE,QAAQ,EAAE;YAC3C,IAAI,CAAC,sBAAsB,EAAE,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC;;;AAIvE,IAAA,UAAU,CAAC,KAAc,EAAA;AACvB,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;;AAGzB,IAAA,gBAAgB,CAAC,EAAgB,EAAA;AAC/B,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;;AAGpB,IAAA,iBAAiB,CAAC,EAAiB,EAAA;AACjC,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;;AAGrB,IAAA,gBAAgB,CAAC,QAAiB,EAAA;AAChC,QAAA,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ;AAC9E,QAAA,IAAI,CAAC,sBAAsB,GAAG,KAAK;AACnC,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;;IAGzB,KAAK,GAAA;QACH,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC;;IAG3D,IAAI,GAAA;AACF,QAAA,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,EAAE;;;IAIhC,0BAA0B,GAAG,MAAM,CAAC,0BAA0B,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACjF,sBAAsB,GAAG,MAAM,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACtE,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAE/E,WACU,CAAA,MAAc,EACd,UAAmC,EACnC,GAAsB,EACtB,YAA0B,EAC1B,cAA8B,EAAA;QAJ9B,IAAM,CAAA,MAAA,GAAN,MAAM;QACN,IAAU,CAAA,UAAA,GAAV,UAAU;QACV,IAAG,CAAA,GAAA,GAAH,GAAG;QACH,IAAY,CAAA,YAAA,GAAZ,YAAY;QACZ,IAAc,CAAA,cAAA,GAAd,cAAc;AAEtB,QAAA,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC/B,MAAM,CAAC,MAAK;gBACV,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAuB,CAAC,KAAK,EAAE,IAAI,EAAE;AACzD,gBAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC5C,gBAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;AACzB,aAAC,CAAC;;;IAIN,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC;AACF,aAAA,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI;AAC7B,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC7B,SAAS,CAAC,WAAW,IAAG;YACvB,IAAI,CAAC,WAAW,EAAE;AAChB,gBAAA,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;;AAElD,SAAC,CAAC;AAEJ,QAAA,IAAI,CAAC,0BAA0B,EAAE,WAAW,CAAC,IAAI,CAAC;QAElD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAoB,KAAI;AAC3F,YAAA,IAAI,CAAC,GAAG,GAAG,SAAS;AACpB,YAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;AAC1B,SAAC,CAAC;QAEF,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK;QAEpC,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,OAAO;AAC3D,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC7B,SAAS,CAAC,KAAK,IAAG;YACjB,KAAK,CAAC,cAAc,EAAE;YACtB,IAAI,CAAC,KAAK,EAAE;AACZ,YAAA,IAAI,IAAI,CAAC,UAAU,EAAE;gBACnB;;AAEF,YAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAK;gBACnB,IAAI,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;AACxC,gBAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;AACzB,aAAC,CAAC;AACJ,SAAC,CAAC;QAEJ,uBAAuB,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO;AAC7D,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC7B,SAAS,CAAC,KAAK,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;;IAGhD,eAAe,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,KAAK,EAAE;;;IAIhB,WAAW,GAAA;QACT,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC;AACjD,QAAA,IAAI,CAAC,0BAA0B,EAAE,cAAc,CAAC,IAAI,CAAC;AAErD,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;AACpB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;;AAGlB,IAAA,QAAQ,CAAC,KAAc,EAAA;AAC7B,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;AACpB,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;;uGAhIvB,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,WAAA,EAAA,CAAA,aAAA,EAAA,aAAA,EAUV,gBAAgB,CAChB,EAAA,UAAA,EAAA,CAAA,YAAA,EAAA,YAAA,EAAA,gBAAgB,2DAChB,gBAAgB,CAAA,EAAA,SAAA,EAAA,CAAA,WAAA,EAAA,WAAA,EAChB,gBAAgB,CA9BzB,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,OAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,+BAAA,EAAA,0BAAA,EAAA,yCAAA,EAAA,uBAAA,EAAA,oCAAA,EAAA,WAAA,EAAA,qCAAA,EAAA,uDAAA,EAAA,wBAAA,EAAA,eAAA,EAAA,EAAA,cAAA,EAAA,sBAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,mBAAmB,CAAC;AAClD,gBAAA,KAAK,EAAE;AACR;SACF,EA7BS,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,cAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,cAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;AAsBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAgBS,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,4BAAA,EAAA,QAAA,EAAA,uGAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAEV,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBA9C/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,mBAAmB,EAAE,KAAK;oBAC1B,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;AAsBT,EAAA,CAAA;AACD,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,yBAAyB,CAAC;AAClD,4BAAA,KAAK,EAAE;AACR;AACF,qBAAA;AACD,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,sBAAsB;AAC7B,wBAAA,iCAAiC,EAAE,0BAA0B;AAC7D,wBAAA,2CAA2C,EAAE,uBAAuB;AACpE,wBAAA,sCAAsC,EAAE,WAAW;AACnD,wBAAA,uCAAuC,EAAE,uDAAuD;AAChG,wBAAA,0BAA0B,EAAE,CAAe,aAAA;AAC5C,qBAAA;oBACD,OAAO,EAAE,CAAC,WAAW;AACtB,iBAAA;4LAQ8C,YAAY,EAAA,CAAA;sBAAxD,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,cAAc,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBACxB,eAAe,EAAA,CAAA;sBAAjC;gBACQ,OAAO,EAAA,CAAA;sBAAf;gBACuC,WAAW,EAAA,CAAA;sBAAlD,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;gBACE,UAAU,EAAA,CAAA;sBAAjD,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;gBACE,eAAe,EAAA,CAAA;sBAAtD,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;gBACE,SAAS,EAAA,CAAA;sBAAhD,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;gBAC7B,IAAI,EAAA,CAAA;sBAAZ;gBACQ,MAAM,EAAA,CAAA;sBAAd;;;AClGH;;;AAGG;MA2EU,wBAAwB,CAAA;AAC3B,IAAA,QAAQ,GAAiB,MAAK,GAAG;AACjC,IAAA,SAAS,GAAkB,MAAK,GAAG;IACnC,qBAAqB,GAAG,IAAI;AACnB,IAAA,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;AAE/C,IAAA,MAAM,GAAG,KAAK,CAAgB,IAAI,CAAC;IACnC,UAAU,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AAC1D,IAAA,SAAS,GAAG,KAAK,CAA2C,EAAE,CAAC;AAC/D,IAAA,KAAK,GAAG,MAAM,CAA0C,IAAI,CAAC;IAC7D,aAAa,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;AAE3C,IAAA,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;AACvF,IAAA,iBAAiB,GAAG,QAAQ,CAAC,MAAM,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;AAEzF,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AACrC,QAAA,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;AACzC,QAAA,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAErC,eAAe,CAAC,MAAK;YACnB;AACG,iBAAA,OAAO,CAAC,UAAU,EAAE,IAAI;AACxB,iBAAA,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC;iBACnC,SAAS,CAAC,WAAW,IAAG;gBACvB,IAAI,CAAC,WAAW,EAAE;oBAChB,IAAI,CAAC,SAAS,EAAE;;AAEpB,aAAC,CAAC;AAEJ,YAAA,UAAU,CAAC,SAAS,CAAC,MAAK;AACxB,gBAAA,YAAY,CAAC,cAAc,CAAC,UAAU,CAAC;AACzC,aAAC,CAAC;AACJ,SAAC,CAAC;;AAGJ,IAAA,UAAU,CAAC,KAAoC,EAAA;QAC7C,SAAS,CAAC,MAAK;AACb,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;AACvB,SAAC,CAAC;;AAGJ,IAAA,gBAAgB,CAAC,EAAgB,EAAA;AAC/B,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;;AAGpB,IAAA,iBAAiB,CAAC,EAAiB,EAAA;AACjC,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;;AAGrB,IAAA,gBAAgB,CAAC,QAAiB,EAAA;QAChC,SAAS,CAAC,MAAK;AACb,YAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC,UAAU,EAAE,KAAK,QAAQ,CAAC;AACvF,SAAC,CAAC;AACF,QAAA,IAAI,CAAC,qBAAqB,GAAG,KAAK;;IAGpC,eAAe,CAAC,WAAsC,EAAE,OAAgB,EAAA;QACtE,IAAI,IAAI,CAAC,aAAa,EAAE;YAAE;AAE1B,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,IAAG;YACxB,IAAI,OAAO,EAAE;gBACX,OAAO,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;;iBAC7C;AACL,gBAAA,OAAO,KAAK,EAAE,MAAM,CAAC,GAAG,IAAI,GAAG,KAAK,WAAW,CAAC,IAAI,EAAE;;AAE1D,SAAC,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;;uGApElB,wBAAwB,EAAA,IAAA,EAAA,EAAA,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,EAlBxB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,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,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,8BAAA,EAAA,iBAAA,EAAA,EAAA,cAAA,EAAA,oBAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,wBAAwB,CAAC;AACvD,gBAAA,KAAK,EAAE;AACR,aAAA;AACD,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,wBAAwB;AACvD;SACF,EAxBS,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;;AAaT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAdS,mBAAmB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,aAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAiClB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBApCpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,QAAQ,EAAE,iBAAiB;oBAC3B,OAAO,EAAE,CAAC,mBAAmB,CAAC;AAC9B,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;AAaT,EAAA,CAAA;AACD,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,8BAA8B,CAAC;AACvD,4BAAA,KAAK,EAAE;AACR,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,8BAA8B;AACvD;AACF,qBAAA;AACD,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,oBAAoB;AAC3B,wBAAA,gCAAgC,EAAE,CAAiB,eAAA;AACpD,qBAAA;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC;AAC1C,iBAAA;;AAyED,SAAS,gBAAgB,CAAC,KAA+C,EAAA;AACvE,IAAA,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,IAAG;QACtB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YACxD,OAAO;gBACL,KAAK,EAAE,CAAG,EAAA,IAAI,CAAE,CAAA;AAChB,gBAAA,KAAK,EAAE;aACR;;AAGH,QAAA,OAAO,IAAI;AACb,KAAC,CAAC;AACJ;;ACjKA;;;AAGG;MAYU,gBAAgB,CAAA;uGAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;wGAAhB,gBAAgB,EAAA,OAAA,EAAA,CAHjB,mBAAmB,EAAE,wBAAwB,EAAE,0BAA0B,CAAA,EAAA,OAAA,EAAA,CACzE,mBAAmB,EAAE,wBAAwB,EAAE,0BAA0B,CAAA,EAAA,CAAA;wGAExE,gBAAgB,EAAA,OAAA,EAAA,CAHjB,mBAAmB,EAAE,wBAAwB,CAAA,EAAA,CAAA;;2FAG5C,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,mBAAmB,EAAE,wBAAwB,EAAE,0BAA0B,CAAC;AACpF,oBAAA,OAAO,EAAE,CAAC,mBAAmB,EAAE,wBAAwB,EAAE,0BAA0B;AACpF,iBAAA;;;ACdD;;;AAGG;;ACHH;;AAEG;;;;"}