verben-workflow-ui 0.5.44 → 0.5.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/src/lib/components/form-response/form-response.component.mjs +52 -47
- package/esm2022/src/lib/components/form-response/form-response.service.mjs +2 -2
- package/esm2022/src/lib/components/forms/forms.component.mjs +3 -3
- package/fesm2022/verben-workflow-ui-src-lib-components-form-response.mjs +52 -47
- package/fesm2022/verben-workflow-ui-src-lib-components-form-response.mjs.map +1 -1
- package/fesm2022/verben-workflow-ui-src-lib-components-forms.mjs +2 -2
- package/fesm2022/verben-workflow-ui-src-lib-components-forms.mjs.map +1 -1
- package/package.json +1 -1
- package/src/lib/components/form-response/form-response.component.d.ts +25 -24
- package/src/lib/components/form-response/form-response.service.d.ts +1 -1
- package/styles/styles.css +0 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verben-workflow-ui-src-lib-components-form-response.mjs","sources":["../../../projects/verben-workflow-ui/src/lib/components/form-response/form-response.service.ts","../../../projects/verben-workflow-ui/src/lib/components/form-response/form-response.component.ts","../../../projects/verben-workflow-ui/src/lib/components/form-response/form-response.component.html","../../../projects/verben-workflow-ui/src/lib/components/form-response/form-response.module.ts","../../../projects/verben-workflow-ui/src/lib/components/form-response/verben-workflow-ui-src-lib-components-form-response.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { ColumnDefinition } from 'verben-ng-ui';\nimport { Form } from 'verben-workflow-ui/src/lib/models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FormResponseService {\n constructor() {}\n\n get taskUsersColumns(): ColumnDefinition<Form>[] {\n return [\n {\n id: 'select',\n header: '',\n },\n {\n id: 'createdAt',\n header: 'CREATED',\n accessorKey: 'CreatedAt',\n },\n {\n id: 'name',\n header: 'NAME',\n accessorKey: 'Name',\n },\n {\n id: 'isValid',\n header: 'ISVAliDATED',\n accessorKey: 'IsValid',\n },\n {\n id: 'expiryDate',\n header: 'EXPIRY DATE',\n accessorKey: 'ExpiryDate',\n },\n {\n id: 'duration',\n header: 'Duration',\n accessorKey: 'Duration',\n },\n\n {\n id: 'actions',\n header: 'ACTIONS',\n accessorFn: (row: Form) => {\n return row;\n },\n },\n ];\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n Validators,\n} from '@angular/forms';\nimport {\n CardData,\n CardDataViewComponent,\n ColumnDefinition,\n ConditionalOptions,\n DataFilterType,\n DataTableComponent,\n DataViewComponent,\n DropdownChangeEvent,\n IDataFilter,\n} from 'verben-ng-ui';\nimport { FormResponseService } from './form-response.service';\nimport { workflowBaseStyle as baseStyle } from 'verben-workflow-ui/src/lib/components/workflow';\nimport { UtilService } from 'verben-workflow-ui/src/lib/services';\nimport { HttpWebRequestService } from 'verben-workflow-ui/src/lib/services';\nimport { ErrorResponse } from 'verben-workflow-ui/src/lib/models';\nimport { PagedResult } from 'verben-workflow-ui/src/lib/models';\nimport { SearchPropertyValue } from 'verben-workflow-ui/src/lib/models';\nimport { SearchOperator } from 'verben-workflow-ui/src/lib/models';\nimport { SearchPropertySign } from 'verben-workflow-ui/src/lib/models';\nimport { EnvironmentService } from 'verben-workflow-ui/src/lib/services';\nimport { SearchPropertyValueType } from 'verben-workflow-ui/src/lib/models';\nimport { Subject } from 'rxjs';\nimport { Status } from 'verben-workflow-ui/src/lib/models';\nimport { ObjectState } from 'verben-workflow-ui/src/lib/models';\n\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { Location } from '@angular/common';\nimport { Form as Forms } from 'verben-workflow-ui/src/lib/models';\nimport { DataType } from 'verben-workflow-ui/src/lib/models';\n\nenum FormFieldProperty {\n Name = 'Name',\n Description = 'Description',\n IsValidated = 'IsValidated',\n WorkFlow = 'WorkFlow',\n ServiceName = 'ServiceName',\n CreatedAt = 'CreatedAt',\n}\n\nenum FilterTypes {\n Before = SearchPropertySign.LT,\n On = SearchPropertySign.EQ,\n After = SearchPropertySign.GT,\n NEQ = SearchPropertySign.NEQ,\n}\n\n@Component({\n selector: 'lib-form-response',\n templateUrl: './form-response.component.html',\n styleUrl: './form-response.component.css',\n})\nexport class FormResponseComponent implements OnInit {\n visibleColumnDef: ColumnDefinition<Forms>[] = [];\n styles = baseStyle;\n data: Forms[] = [];\n @Input() path: string = '/documentation/form-group/fields';\n cardData: CardData[] = [];\n selectedFilterTableCount: number = 0;\n showFilter: boolean = false;\n currentData: CardData | null = null;\n @ViewChild('vdcv') cardDataView!: CardDataViewComponent;\n @ViewChild('vdv') dataView!: DataViewComponent;\n @ViewChild('dt') tableView!: DataTableComponent<Forms>;\n @Input() application: string | null = null;\n @Input() pageSize: number = 10;\n skip: number = 0;\n hasMore: boolean = true;\n @Output() onViewProcessClicked: EventEmitter<string> = new EventEmitter();\n searchTerm: string = '';\n pageState: PagedResult<Forms> | null = null;\n isOpen: boolean = false;\n openDropdownId: string | null = null;\n currentFilters: IDataFilter[] = [];\n currentSorts: IDataFilter[] = [];\n dataType: DataType = DataType.Text;\n searchTerm$ = new Subject<string>();\n statusOptions: Status[] = Object.values(Status);\n active: number = 0;\n taskCode: string = '';\n users: Forms[] = [];\n\n visibleColumns: IDataFilter[] = [];\n\n filterArray: IDataFilter[] = [\n {\n name: FormFieldProperty.Name,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.Description,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.IsValidated,\n type: DataFilterType.Bool,\n checked: false,\n },\n {\n name: FormFieldProperty.ServiceName,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.WorkFlow,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.CreatedAt,\n type: DataFilterType.Date,\n checked: false,\n },\n ];\n closePopUp(row: Forms) {\n this.openDropdownId = row.Id;\n this.onClose();\n }\n toggleTable(rowId: any) {\n this.tableView.toggleRowEdit(rowId);\n }\n sortOptions: IDataFilter[] = [\n {\n name: FormFieldProperty.Name,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.Description,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.IsValidated,\n type: DataFilterType.Bool,\n checked: false,\n },\n {\n name: FormFieldProperty.ServiceName,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.WorkFlow,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.CreatedAt,\n type: DataFilterType.Date,\n checked: false,\n },\n ];\n\n private currentSearchTerm: string = '';\n\n constructor(\n private utilService: UtilService,\n private server: HttpWebRequestService,\n private cdr: ChangeDetectorRef,\n private fb: FormBuilder,\n private envSvc: EnvironmentService,\n private router: Router,\n private taskUsersSvc: FormResponseService,\n private _location: Location,\n private route: ActivatedRoute\n ) {\n this.visibleColumnDef = taskUsersSvc.taskUsersColumns;\n this.visibleColumns = taskUsersSvc.taskUsersColumns.map((col) => ({\n checked: true,\n name: typeof col.header === 'string' ? col.header : col.id,\n type: DataFilterType.Bool,\n }));\n }\n goBack() {\n this._location.back();\n }\n async ngOnInit(): Promise<void> {\n this.active = 0;\n this.route.queryParams.subscribe((params) => {\n const Code = params['taskCode'];\n this.taskCode = Code;\n if (this.taskCode) {\n this.getForms(this.taskCode);\n }\n });\n }\n setActive(i: number = 0) {\n this.active = i;\n }\n\n async getAllTaskUsers(): Promise<Forms[] | undefined> {\n this.utilService.sendBI(true);\n const res = await this.server.get(\n `TaskUser/GetTaskUsers/0/${this.pageSize}`,\n this.envSvc.environment.WorkFlowAPI\n );\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n return undefined;\n } else {\n this.pageState = res as PagedResult<Forms>;\n var result = (res as PagedResult<Forms>).Result;\n return result;\n }\n }\n clearLogs(sortValue: string = 'CreatedAt', order: string = 'asc') {\n this.data = [];\n this.skip = 0;\n this.hasMore = true;\n this.getForms(this.taskCode);\n }\n async getForms(taskCode: string): Promise<Forms[] | undefined> {\n this.utilService.sendBI(true);\n const res = await this.server.get(\n `Task/GetCurrentFormsForTask/${taskCode}`,\n this.envSvc.environment.WorkFlowAPI\n );\n this.utilService.sendBI(false);\n\n if (res instanceof ErrorResponse) {\n return undefined;\n }\n\n this.pageState = res as PagedResult<Forms>;\n const result = this.pageState.Result;\n if (this.data && Array.isArray(this.data)) {\n this.data = [...this.data, ...result];\n } else {\n this.data = result;\n }\n this.data.forEach((x) => (x.id = x.Id));\n\n this.skip += this.pageSize;\n this.hasMore = this.skip < this.pageState.Total;\n this.setUpCardData();\n\n return result;\n }\n\n loadMore() {\n if (this.hasMore) {\n this.getForms(this.taskCode);\n }\n }\n\n reset() {\n this.skip = 0;\n this.pageSize = 10;\n }\n onUserSelected(event: DropdownChangeEvent, item: Forms) {\n const user = this.users.find((x) => x.Name == event.value);\n if (user) {\n item.Name = user.Name;\n item.Duration = user.Duration;\n item.ExpiryDate = user.ExpiryDate;\n item.IsValid = user.IsValid;\n item.ServiceName = user.ServiceName;\n }\n }\n onClear(event: Event, item: Forms) {}\n\n setUpCardData() {\n const cardData: CardData[] = this.data.map((x) => {\n return {\n selected: false,\n title: x.Name,\n data: x,\n body: [],\n children: [],\n };\n });\n this.cardData = cardData;\n }\n\n goToCardView(data: Forms) {\n const item = this.cardData.find((x) => x.data == data);\n\n if (item) {\n this.userCardClicked(item, true);\n this.onClose();\n }\n }\n areRequiredPropertiesFilled(data: Forms): boolean {\n const properties = data.Entities[this.active].Properties || [];\n return properties.every((property: any) => {\n return (\n !property.isRequired ||\n (property.Value !== undefined &&\n property.Value !== null &&\n property.Value !== '')\n );\n });\n }\n\n goToTableView() {\n if (!this.currentData) {\n return;\n }\n this.dataView.toggleView();\n const id = this.currentData.data ? this.currentData.data.Id : '';\n if (id.trim().length > 0 && !this.tableView.isRowEditing(id)) {\n console.log(id);\n\n this.tableView.toggleRowEdit(id);\n }\n }\n\n viewProcesses(code: string) {\n if (code.trim().length == 0) {\n return;\n }\n this.onViewProcessClicked.emit(code);\n }\n\n userCardClicked(item: CardData, toggleView: boolean = false) {\n this.cardData.forEach((card) => (card.selected = false));\n item.selected = true;\n this.setActive(0);\n this.currentData = this.cardDataView.onItemClick(item);\n\n if (toggleView) {\n this.dataView.toggleView();\n }\n }\n\n async saveUser() {\n if (this.currentData) {\n var user: Forms = this.currentData.data as Forms;\n\n if (this.currentData.data.Name.trim().length == 0) {\n this.utilService.showInfo('Name cannot be empty');\n return;\n }\n user.DataState =\n user.DataState == ObjectState.New\n ? ObjectState.New\n : ObjectState.Changed;\n user.Id = user.DataState == ObjectState.New ? '' : user.Id;\n this.utilService.sendBI(true);\n const res = await this.server.post(\n `Form/FillForm/${this.taskCode}`,\n [user],\n this.envSvc.environment.WorkFlowAPI\n );\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n } else {\n this.utilService.showSuccess('Form entity saved successfully');\n const result = res as Forms[];\n if (result.length > 0) {\n var userResult = result[0];\n const itemIndex = this.data.findIndex(\n (x) => x == this.currentData?.data\n );\n if (itemIndex > -1) {\n this.data[itemIndex].Name = userResult.Name;\n this.data[itemIndex].Id = userResult.Id;\n this.data[itemIndex].id = userResult.id;\n this.data[itemIndex].DataState = userResult.DataState;\n this.data[itemIndex].Name = userResult.Name;\n this.data[itemIndex].Duration = userResult.Duration;\n this.data[itemIndex].Entities = userResult.Entities;\n this.data[itemIndex].ExpiryDate = userResult.ExpiryDate;\n this.data[itemIndex].IsValid = userResult.IsValid;\n this.data = this.data.map((x) => x);\n }\n }\n }\n }\n }\n\n async tableSaveUser(user: Forms, callBack: () => any) {\n user.DataState =\n user.DataState == ObjectState.New ? ObjectState.New : ObjectState.Changed;\n user.Id = user.DataState == ObjectState.New ? '' : user.Id;\n this.utilService.sendBI(true);\n const res = await this.server.post(\n `Form/SaveFormEntities`,\n [user],\n this.envSvc.environment.WorkFlowAPI\n );\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n } else {\n this.utilService.showSuccess('Form saved successfully');\n const result = res as Forms[];\n if (result.length > 0) {\n var userResult = result[0];\n const itemIndex = this.data.findIndex((x) => x == user);\n if (itemIndex > -1) {\n this.data[itemIndex].Name = userResult.Name;\n this.data[itemIndex].Id = userResult.Id;\n this.data[itemIndex].id = userResult.id;\n this.data[itemIndex].DataState = userResult.DataState;\n this.data[itemIndex].Name = userResult.Name;\n this.data[itemIndex].Duration = userResult.Duration;\n this.data[itemIndex].Entities = userResult.Entities;\n this.data[itemIndex].ExpiryDate = userResult.ExpiryDate;\n this.data[itemIndex].IsValid = userResult.IsValid;\n this.data = this.data.map((x) => x);\n }\n callBack();\n }\n }\n }\n\n updateTable() {\n this.data = this.data.map((x) => x);\n console.log(this.data);\n }\n\n navigateToFields(card: Forms) {\n const queryParams = { FormId: card.Id, Name: card.Name };\n this.router.navigate([`${this.path}`], { queryParams });\n }\n onClose() {\n this.isOpen = false;\n }\n\n openDropdown(item: Forms): void {\n if (this.openDropdownId === item.Id) {\n this.openDropdownId = null;\n } else {\n this.openDropdownId = item.Id;\n }\n }\n\n async onSearch(event: { key: string; value: string }) {\n this.searchTerm = event.value;\n this.reset();\n if (!this.searchTerm) {\n this.getForms(this.taskCode);\n return;\n }\n\n this.utilService.sendBI(true);\n\n try {\n const res = await this.server.get(\n `Form/GetFormEntitiesWithParam/${this.searchTerm}/${this.skip}/${this.pageSize}/CreatedAt/asc`\n );\n\n this.utilService.sendBI(false);\n\n if (res instanceof ErrorResponse) {\n console.error('Error during search:', res);\n } else {\n this.pageState = res as PagedResult<Forms>;\n var result = (res as PagedResult<Forms>).Result;\n this.data = result;\n this.setUpCardData();\n }\n } catch (error) {\n console.error('Search error:', error);\n } finally {\n }\n }\n isDropdownOpen(item: any): boolean {\n return this.openDropdownId === item.id;\n }\n\n onViewChange(isGridView: boolean): void {}\n\n onStateChange(event: { key: string; value: boolean }): void {\n switch (event.key) {\n case 'filter':\n this.showFilter = event.value;\n break;\n default:\n break;\n }\n }\n\n showTableView: boolean = false;\n onSelectionChange(selectedRows: Forms[]) {}\n retryMessage() {}\n\n onColumnsUpdated(updatedColumns: IDataFilter[]) {\n const updatedColumnDef: ColumnDefinition<Forms>[] = [];\n updatedColumns.forEach((col) => {\n const matchingCol = this.taskUsersSvc.taskUsersColumns.find(\n (column) => column.header === col.name || column.id === col.name\n );\n if (matchingCol) {\n updatedColumnDef.push(matchingCol);\n }\n });\n\n this.visibleColumnDef = [...updatedColumnDef];\n }\n\n async updateFiltersAndSorts(isSearch: boolean = false) {\n if (!isSearch) {\n this.dataView.onClearSearch();\n this.currentSearchTerm = '';\n this.cdr.detectChanges();\n const clickEvent = new MouseEvent('click', {\n bubbles: true,\n cancelable: true,\n view: window,\n });\n document.dispatchEvent(clickEvent);\n }\n var payload: SearchPropertyValue[] = this.currentFilters.map((x) => {\n return {\n PropertyName:\n FormFieldProperty[x.name as keyof typeof FormFieldProperty],\n EntityValue: x.value,\n Operator: SearchOperator.And,\n Sign:\n x.condition && Object.keys(FilterTypes).includes(x.condition)\n ? (FilterTypes[\n x.condition as keyof typeof FilterTypes\n ] as unknown as SearchPropertySign)\n : SearchPropertySign.EQ,\n Type:\n x.name == FormFieldProperty.CreatedAt\n ? SearchPropertyValueType.Date\n : SearchPropertyValueType.String,\n };\n });\n // payload.push({\n // PropertyName: 'APIKey',\n // EntityValue: this.envSvc.environment.APIKey,\n // Operator: SearchOperator.And,\n // Sign: SearchPropertySign.EQ,\n // });\n const sortParam: { Param: string; Order: string } | null =\n this.currentSorts.length > 0\n ? {\n Param:\n FormFieldProperty[\n this.currentSorts[0].name as keyof typeof FormFieldProperty\n ],\n Order: this.currentSorts[0].value,\n }\n : null;\n const searchTermExists = this.currentSearchTerm.trim().length > 0;\n this.utilService.sendBI(true);\n const res = searchTermExists\n ? await this.server.get(\n `Form/GetFormEntitiesWithParam/${this.currentSearchTerm.trim()}/0/${\n this.pageSize\n }`,\n this.envSvc.environment.WorkFlowAPI\n )\n : await this.server.post(\n sortParam\n ? `Form/SearchFormEntities/0/${this.pageSize}/${sortParam.Param}/${sortParam.Order}`\n : `Form/SearchFormEntities/0/${this.pageSize}`,\n payload,\n this.envSvc.environment.WorkFlowAPI\n );\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n this.currentFilters = [];\n this.currentSorts = [];\n return undefined;\n } else {\n this.pageState = res as PagedResult<Forms>;\n var result = (res as PagedResult<Forms>).Result;\n this.data = result;\n this.setUpCardData();\n }\n }\n\n async postSearch(payload: any) {\n this.utilService.sendBI(true);\n const res = await this.server.post(\n `Form/SearchFormEntities/0/${this.pageSize}`,\n payload\n );\n\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n return;\n } else {\n this.pageState = res as PagedResult<Forms>;\n var result = (res as PagedResult<Forms>).Result;\n this.data = result;\n\n this.setUpCardData();\n // this.setUpCardDataExtra(this.data)\n\n return result;\n }\n }\n async loadMoreFiltersAndSorts(): Promise<PagedResult<Forms> | undefined> {\n if (!this.pageState) {\n return;\n }\n var payload: SearchPropertyValue[] = this.currentFilters.map((x) => {\n return {\n PropertyName:\n FormFieldProperty[x.name as keyof typeof FormFieldProperty],\n EntityValue: x.value,\n Operator: SearchOperator.And,\n Sign:\n x.condition && Object.keys(FilterTypes).includes(x.condition)\n ? (FilterTypes[\n x.condition as keyof typeof FilterTypes\n ] as unknown as SearchPropertySign)\n : SearchPropertySign.EQ,\n Type:\n x.name == FormFieldProperty.CreatedAt\n ? SearchPropertyValueType.Date\n : SearchPropertyValueType.String,\n };\n });\n const sortParam: { Param: string; Order: string } | null =\n this.currentSorts.length > 0\n ? {\n Param:\n FormFieldProperty[\n this.currentSorts[0].name as keyof typeof FormFieldProperty\n ],\n Order: this.currentSorts[0].value,\n }\n : null;\n const searchTermExists = this.currentSearchTerm.trim().length > 0;\n this.utilService.sendBI(true);\n const res = searchTermExists\n ? await this.server.get(\n `Form/GetFormEntitiesWithParam/${this.currentSearchTerm.trim()}/${\n this.pageState.Skip\n }/${this.pageSize}`,\n this.envSvc.environment.WorkFlowAPI\n )\n : await this.server.post(\n sortParam\n ? `Form/SearchFormEntities/${this.pageState.Skip}/${this.pageSize}/${sortParam.Param}/${sortParam.Order}`\n : `Form/SearchFormEntities/${this.pageState.Skip}/${this.pageSize}`,\n payload,\n this.envSvc.environment.WorkFlowAPI\n );\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n return undefined;\n } else {\n var result = res as PagedResult<Forms>;\n this.data = result.Result;\n return result;\n }\n }\n onFilterApplied(appliedFilter: IDataFilter[]) {\n this.showFilter = false;\n if (Array.isArray(appliedFilter)) {\n this.selectedFilterTableCount = appliedFilter.length;\n console.log(appliedFilter);\n\n const queryParams = appliedFilter\n .filter((filter) => filter.checked)\n .map((filter) => ({\n PropertyName: filter.name,\n EntityValue: filter.value,\n Type: filter.type,\n Operator: 'And',\n Sign: this.getCondition(filter.condition),\n }));\n\n this.postSearch(queryParams);\n }\n }\n getCondition(value: any) {\n switch (value) {\n case ConditionalOptions.On:\n return SearchPropertySign.EQ;\n case ConditionalOptions.After:\n return SearchPropertySign.EQ;\n case ConditionalOptions.Before:\n return SearchPropertySign.LT;\n case ConditionalOptions.NotEqual:\n return SearchPropertySign.NEQ;\n default:\n return value;\n }\n }\n\n onSortUpdated(updatedSorts: IDataFilter[]) {\n this.currentSorts = updatedSorts;\n this.updateFiltersAndSorts();\n }\n\n handleSearch(event: { key: string; value: string }) {\n this.searchTerm$.next(event.value);\n }\n\n handleExport(exportedData: Partial<any>[]) {\n // console.log('Exported data:', exportedData);\n this.downloadCSV(exportedData);\n }\n private downloadCSV(data: Partial<any>[]) {\n const headers = Object.keys(data[0]);\n const csvContent = [\n headers.join(','),\n ...data.map((row) => headers.map((header) => row[header]).join(',')),\n ].join('\\n');\n\n const blob = new Blob([csvContent], { type: 'text/csv;charset=utf-8;' });\n const link = document.createElement('a');\n if (link.download !== undefined) {\n const url = URL.createObjectURL(blob);\n link.setAttribute('href', url);\n link.setAttribute('download', 'export.csv');\n link.style.visibility = 'hidden';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n }\n }\n}\n","<div #messageLog class=\"flex flex-col gap-4 message-log-container\">\n <header\n class=\"rounded-lg shadow-lg flex justify-between items-center px-6 py-2 bg-[#D4A00773]\"\n >\n <h4 class=\"font-semibold\">{{ \"Contact Info\" }}</h4>\n <verben-svg\n (click)=\"goBack()\"\n class=\"cursor-pointer\"\n [width]=\"17\"\n [height]=\"17\"\n [icon]=\"'close'\"\n ></verben-svg>\n </header>\n <verben-data-view\n #vdv\n [viewState]=\"{\n isSearch: true,\n isColumn: true,\n isFilter: true,\n isSort: true,\n isExport: true,\n isSelect: true,\n isCreate: false,\n isToggle:true,\n \n }\"\n [buttonClass]=\"'my-custom-button-class'\"\n [iconClass]=\"'my-icon-class'\"\n [searchValue]=\"searchTerm\"\n (onSearchChange)=\"onSearch($event)\"\n [showFilterChild]=\"showFilter\"\n [activeIconClass]=\"'my-active-icon-class'\"\n [selectedColumnCount]=\"0\"\n [selectedSortCount]=\"0\"\n [selectedFilterTableCount]=\"0\"\n (viewChange)=\"onViewChange($event)\"\n (stateChange)=\"onStateChange($event)\"\n >\n <div class=\"mt-2\" table-content>\n <lib-data-table\n #dt\n [data]=\"data\"\n [columns]=\"visibleColumnDef\"\n [styleConfig]=\"styles\"\n (selectionChange)=\"onSelectionChange($event)\"\n >\n <ng-container libColumn=\"select\">\n <ng-template\n #cell\n let-isSelected=\"isSelected\"\n let-toggleRowSelection=\"toggleRowSelection\"\n >\n <input\n type=\"checkbox\"\n [checked]=\"isSelected\"\n (change)=\"toggleRowSelection()\"\n />\n </ng-template>\n <ng-template\n #header\n let-allRowsSelected=\"allRowsSelected\"\n let-someRowsSelected=\"someRowsSelected\"\n let-toggleAllRows=\"toggleAllRows\"\n >\n <input\n type=\"checkbox\"\n [checked]=\"allRowsSelected()\"\n [indeterminate]=\"someRowsSelected()\"\n (change)=\"toggleAllRows()\"\n />\n </ng-template>\n </ng-container>\n <ng-container libColumn=\"createdAt\">\n <ng-template #cell let-row=\"row\" let-value>\n {{ value | date }}\n </ng-template>\n <ng-template\n #cellEdit\n let-row=\"row\"\n let-updateValue=\"updateValue\"\n let-value\n >\n <verbena-input\n inputContainerClass=\"w-fit\"\n [(ngModel)]=\"row.Workflow\"\n ></verbena-input>\n </ng-template>\n </ng-container>\n <ng-container libColumn=\"expiryDate\">\n <ng-template #cell let-row=\"row\" let-value>\n {{ value | date }}\n </ng-template>\n <ng-template\n #cellEdit\n let-row=\"row\"\n let-updateValue=\"updateValue\"\n let-value\n >\n <verbena-input\n inputContainerClass=\"w-fit\"\n [(ngModel)]=\"row.Workflow\"\n ></verbena-input>\n </ng-template>\n </ng-container>\n <ng-container libColumn=\"name\">\n <ng-template #cell let-row=\"row\" let-value>\n {{ value }}\n </ng-template>\n <ng-template\n #cellEdit\n let-row=\"row\"\n let-updateValue=\"updateValue\"\n let-value\n >\n <verbena-input\n inputContainerClass=\"w-fit\"\n [(ngModel)]=\"row.Workflow\"\n ></verbena-input>\n </ng-template>\n </ng-container>\n <!-- <ng-container libColumn=\"status\">\n <ng-template #cell let-row=\"row\" let-value>\n <span *ngIf=\"value === 'Completed'\" class=\"bg-[#4ABB54]\">\n {{ value }}\n </span>\n <span\n *ngIf=\"value === 'Saved'\"\n class=\"bg-[#BEB8FF] rounded-xl px-4 py-1\"\n >\n {{ value }}\n </span>\n </ng-template>\n <ng-template\n #cellEdit\n let-row=\"row\"\n let-updateValue=\"updateValue\"\n let-value\n >\n <verbena-input\n inputContainerClass=\"w-fit\"\n [(ngModel)]=\"row.Workflow\"\n ></verbena-input>\n </ng-template>\n </ng-container> -->\n \n \n <ng-container libColumn=\"isValid\">\n <ng-template #cell let-row=\"row\" let-value>\n <verben-svg *ngIf=\"value===true\" [icon]=\"'check'\"></verben-svg>\n <verben-svg *ngIf=\"value===false\" [icon]=\"'error'\"></verben-svg>\n </ng-template>\n <ng-template #cellEdit let-row=\"row\" let-updateValue=\"updateValue\" let-value>\n <verbena-switch [onColor]=\"'#1A237E'\" [(ngModel)]=\"row.IsValidated\"></verbena-switch>\n </ng-template>\n \n </ng-container>\n\n <ng-container libColumn=\"actions\">\n <ng-template\n #cell\n let-isEditing=\"isEditing\"\n let-toggleRowEdit=\"toggleRowEdit\"\n let-row=\"row\"\n let-value\n >\n <verben-pop-Up\n [customStyles]=\"{ 'z-index': '99' }\"\n [dropdownOpen]=\"isDropdownOpen(row)\"\n [enableMouseLeave]=\"false\"\n (close)=\"onClose()\"\n >\n <verben-svg\n class=\"cursor-pointer actions-icon\"\n (click)=\"openDropdown(row)\"\n dropdown-trigger\n icon=\"list\"\n ></verben-svg>\n <div class=\"pop-up-content flex flex-col\" dropdown-content>\n <div\n (click)=\"goToCardView(value)\"\n class=\"pop-up-value cursor-pointer\"\n >\n View Form Group\n </div>\n <div class=\"pop-up-value cursor-pointer\">Delete</div>\n </div>\n </verben-pop-Up>\n </ng-template>\n <ng-template\n #cellEdit\n let-isEditing=\"isEditing\"\n let-toggleRowEdit=\"toggleRowEdit\"\n let-row=\"row\"\n let-value\n >\n <div class=\"flex gap-2 items-center\">\n <verben-svg\n icon=\"check\"\n [width]=\"15\"\n [height]=\"15\"\n (click)=\"tableSaveUser(value, toggleRowEdit)\"\n ></verben-svg>\n <verben-svg icon=\"delete\" [width]=\"15\" [height]=\"15\"></verben-svg>\n <verben-svg\n icon=\"cardViewAlt\"\n [width]=\"15\"\n [height]=\"15\"\n (click)=\"goToCardView(value)\"\n ></verben-svg>\n </div>\n </ng-template>\n </ng-container>\n </lib-data-table>\n </div>\n <div card-content>\n <verben-card-data-view\n borderRadius=\"12px\"\n #vdcv\n dataId=\"Id\"\n border=\"5px\"\n [cardDataList]=\"cardData\"\n rbgColor=\"#f5f6f9\"\n mg=\"0px\"\n >\n <verben-left-card-data-view class=\"space-y-7\">\n <verben-left-card-data\n #vlcd\n [parent]=\"vdcv\"\n dataId=\"MailAddress\"\n class=\"bg-secondary-100 rounded-xl border-primary border-[1px]\"\n [cardDataList]=\"cardData\"\n >\n <ng-template #card let-item>\n <div\n (click)=\"userCardClicked(item)\"\n class=\"flex cursor-pointer h-[max-content]\"\n >\n <!-- <verben-svg [width]=\"15\" [height]=\"15\" (click)=\"toggleChildren(item); $event.stopPropagation()\"\n [ngClass]=\"item.children && item.children.length?'visible':'invisible'\"\n class=\"items-center flex pr-1 cursor-pointer\" [icon]=\"item.isChildrenExpanded?'minus':'plus'\" /> -->\n <div class=\"flex w-full bg-secondary rounded-xl\">\n <div\n class=\"w-3 rounded-xl rounded-tr-none rounded-br-none\"\n [ngClass]=\"\n item.selected ? 'bg-primary' : 'bg-secondary-200'\n \"\n ></div>\n <div class=\"py-3 px-4 flex-1 h-[100%]\">\n <div\n class=\"flex items-start flex-1 gap-1 justify-between h-[100%]\"\n >\n <div\n class=\"flex flex-col flex-1 card-min-height justify-between h-[100%]\"\n >\n <div class=\"flex justify-between\">\n <div>\n <h3\n class=\"my-0 font-bold text-[#404040] leading-[19.5px]\"\n >\n {{ item.data.Name??'Null' }}\n </h3>\n <span class=\"flex mt-2 items-center gap-1\">\n <span\n class=\"!text-[10px] font-light text-[#404040]\"\n >Expiry Date:</span\n >\n <span class=\"!text-[12px] font-semibold\">{{\n item.data.ExpiryDate|date\n }}</span>\n </span>\n </div>\n\n <div>\n <span class=\"!text-[10px] text-[#404040]\"\n >Duration</span\n >\n <p class=\"!text-[12px]\">{{ item.data.Duration }}</p>\n \n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </ng-template>\n </verben-left-card-data>\n </verben-left-card-data-view>\n <verben-right-card-data-view>\n <ng-template #parent>\n <div *ngIf=\"this.currentData\">\n \n <div *ngIf=\"currentData.data.Entities[active]\" class=\"flex flex-wrap bg-[#9A9FBF80] rounded-xl px-3 py-2 w-full relative gap-6\">\n <!-- <app-form-timer></app-form-timer> -->\n <div *ngFor=\"let group of currentData.data.Entities; let index = index\">\n <p \n (click)=\"setActive(index)\" \n [ngClass]=\"{'bg-[#fff] text-primary rounded-lg shadow-lg': active === index}\" \n class=\"px-6 py-2 cursor-pointer\">\n {{ group.Name }}\n </p>\n </div>\n </div>\n \n<div *ngIf=\"currentData.data.Entities[active]; else emptyState\" class=\"mt-4\">\n <form-control [dataType]=\"dataType\" [formProperties]=\"currentData.data.Entities[active].Properties\"></form-control>\n <div class=\"flex justify-between w-full bottom-8 left-0 right-0 mt-4\">\n <verbena-button\n class=\"verben-delete-button\"\n text=\"Delete\"\n ></verbena-button>\n\n <div class=\"flex gap-3\">\n <verbena-button\n class=\"verben-switch-button\"\n (click)=\"goToTableView()\"\n text=\"Switch To Table\"\n ></verbena-button>\n <verbena-button\n class=\"verben-primary-button\"\n (click)=\"saveUser()\"\n text=\"Save\"\n ></verbena-button>\n </div>\n </div>\n</div>\n\n<!-- Empty state template -->\n<ng-template #emptyState>\n <p class=\"mt-4 p-4 text-gray-600 text-center\">\n No entries available for the selected form group.\n </p>\n</ng-template>\n\n </div>\n \n </ng-template>\n </verben-right-card-data-view>\n <!-- <verben-right-card-data-view>\n yeshhhhhh\n </verben-right-card-data-view> -->\n\n <verben-card-data-view-footer>\n <div class=\"flex gap-2 justify-between\">\n <div\n *ngIf=\"!vdcv.hasCurrentItem()\"\n class=\"message-log-button-container flex justify-between\"\n >\n <verbena-button\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [text]=\"'Delete'\"\n >\n </verbena-button>\n </div>\n <div\n class=\"flex {{\n vdcv.hasCurrentItem() ? 'flex-1' : ''\n }} justify-end items-center gap-5\"\n >\n <span class=\"paginator-text\"\n >{{ cardData.length }} records loaded</span\n >\n <button (click)=\"loadMore()\" class=\"load-more view-links\">\n Load more\n </button>\n </div>\n </div>\n </verben-card-data-view-footer>\n </verben-card-data-view>\n </div>\n <div column-content>\n <verben-visible-column\n (columnsUpdated)=\"onColumnsUpdated($event)\"\n [border]=\"'1px solid rgba(212, 160, 7, 1)'\"\n borderRadius=\"10px\"\n boxShadow=\"2px 2px 2px 0px silver\"\n bgColor=\"white\"\n width=\"400px\"\n textColor=\"black\"\n pd=\"1rem\"\n primaryColor=\"#FFE681\"\n secondaryColor=\"#3479E9\"\n [columns]=\"visibleColumns\"\n [displayedColumns]=\"5\"\n ></verben-visible-column>\n </div>\n <div filter-content>\n <verben-table-filter\n (filtersApplied)=\"onFilterApplied($event)\"\n [border]=\"'1px solid rgba(212, 160, 7, 1)'\"\n borderRadius=\"10px\"\n boxShadow=\"2px 2px 2px 0px silver\"\n bgColor=\"white\"\n width=\"420px\"\n textColor=\"black\"\n pd=\"1rem\"\n primaryColor=\"#FFE681\"\n secondaryColor=\"#3479E9\"\n tertiaryColor=\"#404040\"\n [filterOptions]=\"filterArray\"\n [maxFilterLength]=\"3\"\n ></verben-table-filter>\n </div>\n <div sort-content>\n <verben-sort-table\n (selectedOptions)=\"onSortUpdated($event)\"\n [border]=\"'1px solid rgba(212, 160, 7, 1)'\"\n borderRadius=\"10px\"\n boxShadow=\"2px 2px 2px 0px silver\"\n bgColor=\"white\"\n width=\"400px\"\n textColor=\"black\"\n pd=\"1rem\"\n primaryColor=\"#FFE681\"\n secondaryColor=\"#3479E9\"\n tertiaryColor=\"#404040\"\n [enableDragAndDrop]=\"true\"\n [sortOptions]=\"sortOptions\"\n ></verben-sort-table>\n </div>\n <div export-content>\n <lib-data-export [data]=\"data\" (exportDataEvent)=\"handleExport($event)\">\n </lib-data-export>\n </div>\n </verben-data-view>\n <div *ngIf=\"vdv.isTableView\" class=\"flex gap-2 justify-between\">\n <div class=\"message-log-button-container flex justify-between\">\n <verbena-button\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [text]=\"'Delete'\"\n >\n </verbena-button>\n </div>\n <div class=\"flex justify-end items-center gap-5\">\n <span class=\"paginator-text\">{{ cardData.length }} records loaded</span>\n <button (click)=\"loadMore()\" class=\"load-more view-links\">\n Load more\n </button>\n </div>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport {\n CardDataViewModule,\n DataExportModule,\n DataTableModule,\n DataViewModule,\n DropDownModule,\n SortTableModule,\n SvgModule,\n TableFilterModule,\n VerbenaButtonModule,\n VerbenaInputModule,\n VerbenaSwitchModule,\n VerbenPopUpModule,\n VisibleColumnModule,\n} from 'verben-ng-ui';\nimport { FormResponseComponent } from './form-response.component';\nimport { FormControlerModule } from 'verben-workflow-ui/src/lib/components/form-control';\nimport { FormTimerModule } from 'verben-workflow-ui/src/lib/components/form-timer';\n\n@NgModule({\n declarations: [FormResponseComponent],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n DataTableModule,\n SvgModule,\n VerbenPopUpModule,\n DataViewModule,\n VerbenaButtonModule,\n CardDataViewModule,\n DropDownModule,\n VerbenaSwitchModule,\n TableFilterModule,\n VisibleColumnModule,\n SortTableModule,\n DataExportModule,\n VerbenaInputModule,\n FormControlerModule,\n FormTimerModule,\n ],\n exports: [FormResponseComponent],\n})\nexport class FormResponseLibModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["baseStyle","i4.FormResponseService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"verben-workflow-ui-src-lib-components-form-response.mjs","sources":["../../../projects/verben-workflow-ui/src/lib/components/form-response/form-response.service.ts","../../../projects/verben-workflow-ui/src/lib/components/form-response/form-response.component.ts","../../../projects/verben-workflow-ui/src/lib/components/form-response/form-response.component.html","../../../projects/verben-workflow-ui/src/lib/components/form-response/form-response.module.ts","../../../projects/verben-workflow-ui/src/lib/components/form-response/verben-workflow-ui-src-lib-components-form-response.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { ColumnDefinition } from 'verben-ng-ui';\nimport { Form } from 'verben-workflow-ui/src/lib/models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FormResponseService {\n constructor() {}\n\n get formColumns(): ColumnDefinition<Form>[] {\n return [\n {\n id: 'select',\n header: '',\n },\n {\n id: 'createdAt',\n header: 'CREATED',\n accessorKey: 'CreatedAt',\n },\n {\n id: 'name',\n header: 'NAME',\n accessorKey: 'Name',\n },\n {\n id: 'isValid',\n header: 'ISVAliDATED',\n accessorKey: 'IsValid',\n },\n {\n id: 'expiryDate',\n header: 'EXPIRY DATE',\n accessorKey: 'ExpiryDate',\n },\n {\n id: 'duration',\n header: 'Duration',\n accessorKey: 'Duration',\n },\n\n {\n id: 'actions',\n header: 'ACTIONS',\n accessorFn: (row: Form) => {\n return row;\n },\n },\n ];\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n Validators,\n} from '@angular/forms';\nimport {\n CardData,\n CardDataViewComponent,\n ColumnDefinition,\n ConditionalOptions,\n DataFilterType,\n DataTableComponent,\n DataViewComponent,\n DropdownChangeEvent,\n IDataFilter,\n} from 'verben-ng-ui';\nimport { FormResponseService } from './form-response.service';\nimport { workflowBaseStyle as baseStyle } from 'verben-workflow-ui/src/lib/components/workflow';\nimport { UtilService } from 'verben-workflow-ui/src/lib/services';\nimport { HttpWebRequestService } from 'verben-workflow-ui/src/lib/services';\nimport { ErrorResponse } from 'verben-workflow-ui/src/lib/models';\nimport { PagedResult } from 'verben-workflow-ui/src/lib/models';\nimport { SearchPropertyValue } from 'verben-workflow-ui/src/lib/models';\nimport { SearchOperator } from 'verben-workflow-ui/src/lib/models';\nimport { SearchPropertySign } from 'verben-workflow-ui/src/lib/models';\nimport { EnvironmentService } from 'verben-workflow-ui/src/lib/services';\nimport { SearchPropertyValueType } from 'verben-workflow-ui/src/lib/models';\nimport { Subject } from 'rxjs';\nimport { Status } from 'verben-workflow-ui/src/lib/models';\nimport { ObjectState } from 'verben-workflow-ui/src/lib/models';\n\nimport { ActivatedRoute, ParamMap, Router } from '@angular/router';\nimport { Location } from '@angular/common';\nimport { Form } from 'verben-workflow-ui/src/lib/models';\nimport { DataType } from 'verben-workflow-ui/src/lib/models';\n\nenum FormFieldProperty {\n Name = 'Name',\n Description = 'Description',\n IsValidated = 'IsValidated',\n WorkFlow = 'WorkFlow',\n ServiceName = 'ServiceName',\n CreatedAt = 'CreatedAt',\n}\n\nenum FilterTypes {\n Before = SearchPropertySign.LT,\n On = SearchPropertySign.EQ,\n After = SearchPropertySign.GT,\n NEQ = SearchPropertySign.NEQ,\n}\n\n@Component({\n selector: 'lib-form-response',\n templateUrl: './form-response.component.html',\n styleUrl: './form-response.component.css',\n})\nexport class FormResponseComponent implements OnInit {\n visibleColumnDef: ColumnDefinition<Form>[] = [];\n styles = baseStyle;\n data: Form[] = [];\n @Input() path: string = '/documentation/form-group/fields';\n cardData: CardData[] = [];\n selectedFilterTableCount: number = 0;\n showFilter: boolean = false;\n currentData: CardData | null = null;\n @ViewChild('vdcv') cardDataView!: CardDataViewComponent;\n @ViewChild('vdv') dataView!: DataViewComponent;\n @ViewChild('dt') tableView!: DataTableComponent<Form>;\n @Input() application: string | null = null;\n @Input() pageSize: number = 10;\n @Input() taskCodeKey: string = 'taskCode';\n skip: number = 0;\n hasMore: boolean = true;\n @Output() onViewProcessClicked: EventEmitter<string> = new EventEmitter();\n searchTerm: string = '';\n pageState: PagedResult<Form> | null = null;\n isOpen: boolean = false;\n openDropdownId: string | null = null;\n currentFilters: IDataFilter[] = [];\n currentSorts: IDataFilter[] = [];\n dataType: DataType = DataType.Text;\n searchTerm$ = new Subject<string>();\n statusOptions: Status[] = Object.values(Status);\n active: number = 0;\n taskCode: string = '';\n users: Form[] = [];\n\n visibleColumns: IDataFilter[] = [];\n\n filterArray: IDataFilter[] = [\n {\n name: FormFieldProperty.Name,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.Description,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.IsValidated,\n type: DataFilterType.Bool,\n checked: false,\n },\n {\n name: FormFieldProperty.ServiceName,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.WorkFlow,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.CreatedAt,\n type: DataFilterType.Date,\n checked: false,\n },\n ];\n closePopUp(row: Form) {\n this.openDropdownId = row.Id;\n this.onClose();\n }\n toggleTable(rowId: any) {\n this.tableView.toggleRowEdit(rowId);\n }\n sortOptions: IDataFilter[] = [\n {\n name: FormFieldProperty.Name,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.Description,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.IsValidated,\n type: DataFilterType.Bool,\n checked: false,\n },\n {\n name: FormFieldProperty.ServiceName,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.WorkFlow,\n type: DataFilterType.String,\n checked: false,\n },\n {\n name: FormFieldProperty.CreatedAt,\n type: DataFilterType.Date,\n checked: false,\n },\n ];\n\n private currentSearchTerm: string = '';\n\n constructor(\n private utilService: UtilService,\n private server: HttpWebRequestService,\n private cdr: ChangeDetectorRef,\n private fb: FormBuilder,\n private envSvc: EnvironmentService,\n private router: Router,\n private formResponseSvc: FormResponseService,\n private _location: Location,\n private route: ActivatedRoute\n ) {\n this.visibleColumnDef = formResponseSvc.formColumns;\n this.visibleColumns = formResponseSvc.formColumns.map((col) => ({\n checked: true,\n name: typeof col.header === 'string' ? col.header : col.id,\n type: DataFilterType.Bool,\n }));\n }\n goBack() {\n this._location.back();\n }\n async ngOnInit(): Promise<void> {\n this.active = 0;\n this.route.paramMap.subscribe((params: ParamMap) => {\n const code = params.get(this.taskCodeKey);\n this.taskCode = code || '';\n if (this.taskCode && this.taskCode.trim().length > 0) {\n this.getForms(this.taskCode);\n }\n });\n }\n setActive(i: number = 0) {\n this.active = i;\n }\n\n async getAllTaskUsers(): Promise<Form[] | undefined> {\n this.utilService.sendBI(true);\n const res = await this.server.get(\n `TaskUser/GetTaskUsers/0/${this.pageSize}`,\n this.envSvc.environment.WorkFlowAPI\n );\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n return undefined;\n } else {\n this.pageState = res as PagedResult<Form>;\n var result = (res as PagedResult<Form>).Result;\n return result;\n }\n }\n clearLogs(sortValue: string = 'CreatedAt', order: string = 'asc') {\n this.data = [];\n this.skip = 0;\n this.hasMore = true;\n this.getForms(this.taskCode);\n }\n async getForms(taskCode: string): Promise<Form[] | undefined> {\n this.utilService.sendBI(true);\n const res = await this.server.get(\n `Task/GetCurrentFormsForTask/${taskCode}`,\n this.envSvc.environment.WorkFlowAPI\n );\n this.utilService.sendBI(false);\n\n if (res instanceof ErrorResponse) {\n return undefined;\n }\n\n // this.pageState = res as Form[];\n const result = res as Form[];\n if (this.data && Array.isArray(this.data)) {\n this.data = [...this.data, ...result];\n } else {\n this.data = result;\n }\n this.data.forEach((x) => (x.id = x.Id));\n\n this.skip += this.pageSize;\n this.hasMore = this.skip < result.length;\n this.setUpCardData();\n\n return result;\n }\n\n loadMore() {\n if (this.hasMore) {\n this.getForms(this.taskCode);\n }\n }\n\n reset() {\n this.skip = 0;\n this.pageSize = 10;\n }\n onUserSelected(event: DropdownChangeEvent, item: Form) {\n const user = this.users.find((x) => x.Name == event.value);\n if (user) {\n item.Name = user.Name;\n item.Duration = user.Duration;\n item.ExpiryDate = user.ExpiryDate;\n item.IsValid = user.IsValid;\n item.ServiceName = user.ServiceName;\n }\n }\n onClear(event: Event, item: Form) {}\n\n setUpCardData() {\n const cardData: CardData[] = this.data.map((x) => {\n return {\n selected: false,\n title: x.Name,\n data: x,\n body: [],\n children: [],\n };\n });\n this.cardData = cardData;\n }\n\n goToCardView(data: Form) {\n const item = this.cardData.find((x) => x.data == data);\n\n if (item) {\n this.cardClicked(item, true);\n this.onClose();\n }\n }\n areRequiredPropertiesFilled(data: Form): boolean {\n const properties = data.Entities[this.active].Properties || [];\n return properties.every((property: any) => {\n return (\n !property.isRequired ||\n (property.Value !== undefined &&\n property.Value !== null &&\n property.Value !== '')\n );\n });\n }\n\n goToTableView() {\n if (!this.currentData) {\n return;\n }\n this.dataView.toggleView();\n const id = this.currentData.data ? this.currentData.data.Id : '';\n if (id.trim().length > 0 && !this.tableView.isRowEditing(id)) {\n console.log(id);\n\n this.tableView.toggleRowEdit(id);\n }\n }\n\n viewProcesses(code: string) {\n if (code.trim().length == 0) {\n return;\n }\n this.onViewProcessClicked.emit(code);\n }\n\n cardClicked(item: CardData, toggleView: boolean = false) {\n this.cardData.forEach((card) => (card.selected = false));\n item.selected = true;\n this.setActive(0);\n this.currentData = this.cardDataView.onItemClick(item);\n\n if (toggleView) {\n this.dataView.toggleView();\n }\n }\n\n async saveItem() {\n if (this.currentData) {\n var form: Form = this.currentData.data as Form;\n\n if (this.currentData.data.Name.trim().length == 0) {\n this.utilService.showInfo('Name cannot be empty');\n return;\n }\n form.DataState =\n form.DataState == ObjectState.New\n ? ObjectState.New\n : ObjectState.Changed;\n form.Id = form.DataState == ObjectState.New ? '' : form.Id;\n this.utilService.sendBI(true);\n const res = await this.server.post(\n `Form/FillForm/${this.taskCode}`,\n form,\n this.envSvc.environment.WorkFlowAPI\n );\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n } else {\n this.utilService.showSuccess('Form entity saved successfully');\n // const result = res as Form[];\n // if (result.length > 0) {\n // var userResult = result[0];\n // const itemIndex = this.data.findIndex(\n // (x) => x == this.currentData?.data\n // );\n // if (itemIndex > -1) {\n // this.data[itemIndex].Name = userResult.Name;\n // this.data[itemIndex].Id = userResult.Id;\n // this.data[itemIndex].id = userResult.id;\n // this.data[itemIndex].DataState = userResult.DataState;\n // this.data[itemIndex].Name = userResult.Name;\n // this.data[itemIndex].Duration = userResult.Duration;\n // this.data[itemIndex].Entities = userResult.Entities;\n // this.data[itemIndex].ExpiryDate = userResult.ExpiryDate;\n // this.data[itemIndex].IsValid = userResult.IsValid;\n // this.data = this.data.map((x) => x);\n // }\n // }\n }\n }\n }\n\n async tableSaveItem(form: Form, callBack: () => any) {\n form.DataState =\n form.DataState == ObjectState.New ? ObjectState.New : ObjectState.Changed;\n form.Id = form.DataState == ObjectState.New ? '' : form.Id;\n this.utilService.sendBI(true);\n const res = await this.server.post(\n `Form/SaveFormEntities`,\n [form],\n this.envSvc.environment.WorkFlowAPI\n );\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n } else {\n this.utilService.showSuccess('Form saved successfully');\n const result = res as Form[];\n if (result.length > 0) {\n var userResult = result[0];\n const itemIndex = this.data.findIndex((x) => x == form);\n if (itemIndex > -1) {\n this.data[itemIndex].Name = userResult.Name;\n this.data[itemIndex].Id = userResult.Id;\n this.data[itemIndex].id = userResult.id;\n this.data[itemIndex].DataState = userResult.DataState;\n this.data[itemIndex].Name = userResult.Name;\n this.data[itemIndex].Duration = userResult.Duration;\n this.data[itemIndex].Entities = userResult.Entities;\n this.data[itemIndex].ExpiryDate = userResult.ExpiryDate;\n this.data[itemIndex].IsValid = userResult.IsValid;\n this.data = this.data.map((x) => x);\n }\n callBack();\n }\n }\n }\n\n updateTable() {\n this.data = this.data.map((x) => x);\n console.log(this.data);\n }\n\n navigateToFields(card: Form) {\n const queryParams = { FormId: card.Id, Name: card.Name };\n this.router.navigate([`${this.path}`], { queryParams });\n }\n onClose() {\n this.isOpen = false;\n }\n\n openDropdown(item: Form): void {\n if (this.openDropdownId === item.Id) {\n this.openDropdownId = null;\n } else {\n this.openDropdownId = item.Id;\n }\n }\n\n async onSearch(event: { key: string; value: string }) {\n this.searchTerm = event.value;\n this.reset();\n if (!this.searchTerm) {\n this.getForms(this.taskCode);\n return;\n }\n\n this.utilService.sendBI(true);\n\n try {\n const res = await this.server.get(\n `Form/GetFormEntitiesWithParam/${this.searchTerm}/${this.skip}/${this.pageSize}/CreatedAt/asc`\n );\n\n this.utilService.sendBI(false);\n\n if (res instanceof ErrorResponse) {\n console.error('Error during search:', res);\n } else {\n this.pageState = res as PagedResult<Form>;\n var result = (res as PagedResult<Form>).Result;\n this.data = result;\n this.setUpCardData();\n }\n } catch (error) {\n console.error('Search error:', error);\n } finally {\n }\n }\n isDropdownOpen(item: any): boolean {\n return this.openDropdownId === item.id;\n }\n\n onViewChange(isGridView: boolean): void {}\n\n onStateChange(event: { key: string; value: boolean }): void {\n switch (event.key) {\n case 'filter':\n this.showFilter = event.value;\n break;\n default:\n break;\n }\n }\n\n showTableView: boolean = false;\n onSelectionChange(selectedRows: Form[]) {}\n retryMessage() {}\n\n onColumnsUpdated(updatedColumns: IDataFilter[]) {\n const updatedColumnDef: ColumnDefinition<Form>[] = [];\n updatedColumns.forEach((col) => {\n const matchingCol = this.formResponseSvc.formColumns.find(\n (column) => column.header === col.name || column.id === col.name\n );\n if (matchingCol) {\n updatedColumnDef.push(matchingCol);\n }\n });\n\n this.visibleColumnDef = [...updatedColumnDef];\n }\n\n async updateFiltersAndSorts(isSearch: boolean = false) {\n if (!isSearch) {\n this.dataView.onClearSearch();\n this.currentSearchTerm = '';\n this.cdr.detectChanges();\n const clickEvent = new MouseEvent('click', {\n bubbles: true,\n cancelable: true,\n view: window,\n });\n document.dispatchEvent(clickEvent);\n }\n var payload: SearchPropertyValue[] = this.currentFilters.map((x) => {\n return {\n PropertyName:\n FormFieldProperty[x.name as keyof typeof FormFieldProperty],\n EntityValue: x.value,\n Operator: SearchOperator.And,\n Sign:\n x.condition && Object.keys(FilterTypes).includes(x.condition)\n ? (FilterTypes[\n x.condition as keyof typeof FilterTypes\n ] as unknown as SearchPropertySign)\n : SearchPropertySign.EQ,\n Type:\n x.name == FormFieldProperty.CreatedAt\n ? SearchPropertyValueType.Date\n : SearchPropertyValueType.String,\n };\n });\n // payload.push({\n // PropertyName: 'APIKey',\n // EntityValue: this.envSvc.environment.APIKey,\n // Operator: SearchOperator.And,\n // Sign: SearchPropertySign.EQ,\n // });\n const sortParam: { Param: string; Order: string } | null =\n this.currentSorts.length > 0\n ? {\n Param:\n FormFieldProperty[\n this.currentSorts[0].name as keyof typeof FormFieldProperty\n ],\n Order: this.currentSorts[0].value,\n }\n : null;\n const searchTermExists = this.currentSearchTerm.trim().length > 0;\n this.utilService.sendBI(true);\n const res = searchTermExists\n ? await this.server.get(\n `Form/GetFormEntitiesWithParam/${this.currentSearchTerm.trim()}/0/${\n this.pageSize\n }`,\n this.envSvc.environment.WorkFlowAPI\n )\n : await this.server.post(\n sortParam\n ? `Form/SearchFormEntities/0/${this.pageSize}/${sortParam.Param}/${sortParam.Order}`\n : `Form/SearchFormEntities/0/${this.pageSize}`,\n payload,\n this.envSvc.environment.WorkFlowAPI\n );\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n this.currentFilters = [];\n this.currentSorts = [];\n return undefined;\n } else {\n this.pageState = res as PagedResult<Form>;\n var result = (res as PagedResult<Form>).Result;\n this.data = result;\n this.setUpCardData();\n }\n }\n\n async postSearch(payload: any) {\n this.utilService.sendBI(true);\n const res = await this.server.post(\n `Form/SearchFormEntities/0/${this.pageSize}`,\n payload\n );\n\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n return;\n } else {\n this.pageState = res as PagedResult<Form>;\n var result = (res as PagedResult<Form>).Result;\n this.data = result;\n\n this.setUpCardData();\n // this.setUpCardDataExtra(this.data)\n\n return result;\n }\n }\n async loadMoreFiltersAndSorts(): Promise<PagedResult<Form> | undefined> {\n if (!this.pageState) {\n return;\n }\n var payload: SearchPropertyValue[] = this.currentFilters.map((x) => {\n return {\n PropertyName:\n FormFieldProperty[x.name as keyof typeof FormFieldProperty],\n EntityValue: x.value,\n Operator: SearchOperator.And,\n Sign:\n x.condition && Object.keys(FilterTypes).includes(x.condition)\n ? (FilterTypes[\n x.condition as keyof typeof FilterTypes\n ] as unknown as SearchPropertySign)\n : SearchPropertySign.EQ,\n Type:\n x.name == FormFieldProperty.CreatedAt\n ? SearchPropertyValueType.Date\n : SearchPropertyValueType.String,\n };\n });\n const sortParam: { Param: string; Order: string } | null =\n this.currentSorts.length > 0\n ? {\n Param:\n FormFieldProperty[\n this.currentSorts[0].name as keyof typeof FormFieldProperty\n ],\n Order: this.currentSorts[0].value,\n }\n : null;\n const searchTermExists = this.currentSearchTerm.trim().length > 0;\n this.utilService.sendBI(true);\n const res = searchTermExists\n ? await this.server.get(\n `Form/GetFormEntitiesWithParam/${this.currentSearchTerm.trim()}/${\n this.pageState.Skip\n }/${this.pageSize}`,\n this.envSvc.environment.WorkFlowAPI\n )\n : await this.server.post(\n sortParam\n ? `Form/SearchFormEntities/${this.pageState.Skip}/${this.pageSize}/${sortParam.Param}/${sortParam.Order}`\n : `Form/SearchFormEntities/${this.pageState.Skip}/${this.pageSize}`,\n payload,\n this.envSvc.environment.WorkFlowAPI\n );\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n return undefined;\n } else {\n var result = res as PagedResult<Form>;\n this.data = result.Result;\n return result;\n }\n }\n onFilterApplied(appliedFilter: IDataFilter[]) {\n this.showFilter = false;\n if (Array.isArray(appliedFilter)) {\n this.selectedFilterTableCount = appliedFilter.length;\n console.log(appliedFilter);\n\n const queryParams = appliedFilter\n .filter((filter) => filter.checked)\n .map((filter) => ({\n PropertyName: filter.name,\n EntityValue: filter.value,\n Type: filter.type,\n Operator: 'And',\n Sign: this.getCondition(filter.condition),\n }));\n\n this.postSearch(queryParams);\n }\n }\n getCondition(value: any) {\n switch (value) {\n case ConditionalOptions.On:\n return SearchPropertySign.EQ;\n case ConditionalOptions.After:\n return SearchPropertySign.EQ;\n case ConditionalOptions.Before:\n return SearchPropertySign.LT;\n case ConditionalOptions.NotEqual:\n return SearchPropertySign.NEQ;\n default:\n return value;\n }\n }\n\n onSortUpdated(updatedSorts: IDataFilter[]) {\n this.currentSorts = updatedSorts;\n this.updateFiltersAndSorts();\n }\n\n handleSearch(event: { key: string; value: string }) {\n this.searchTerm$.next(event.value);\n }\n\n handleExport(exportedData: Partial<any>[]) {\n // console.log('Exported data:', exportedData);\n this.downloadCSV(exportedData);\n }\n private downloadCSV(data: Partial<any>[]) {\n const headers = Object.keys(data[0]);\n const csvContent = [\n headers.join(','),\n ...data.map((row) => headers.map((header) => row[header]).join(',')),\n ].join('\\n');\n\n const blob = new Blob([csvContent], { type: 'text/csv;charset=utf-8;' });\n const link = document.createElement('a');\n if (link.download !== undefined) {\n const url = URL.createObjectURL(blob);\n link.setAttribute('href', url);\n link.setAttribute('download', 'export.csv');\n link.style.visibility = 'hidden';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n }\n }\n}\n","<div #messageLog class=\"flex flex-col gap-4 message-log-container\">\n <!-- <header\n class=\"rounded-lg shadow-lg flex justify-between items-center px-6 py-2 bg-[#D4A00773]\"\n >\n <h4 class=\"font-semibold\">{{ \"Contact Info\" }}</h4>\n <verben-svg\n (click)=\"goBack()\"\n class=\"cursor-pointer\"\n [width]=\"17\"\n [height]=\"17\"\n [icon]=\"'close'\"\n ></verben-svg>\n </header> -->\n\n <div>\n <verben-card-data-view\n borderRadius=\"12px\"\n #vdcv\n dataId=\"Id\"\n border=\"5px\"\n [cardDataList]=\"cardData\"\n rbgColor=\"#f5f6f9\"\n mg=\"0px\"\n >\n <verben-left-card-data-view class=\"space-y-7\">\n <verben-left-card-data\n #vlcd\n [parent]=\"vdcv\"\n dataId=\"MailAddress\"\n class=\"bg-secondary-100 rounded-xl border-primary border-[1px]\"\n [cardDataList]=\"cardData\"\n >\n <ng-template #card let-item>\n <div\n (click)=\"cardClicked(item)\"\n class=\"flex cursor-pointer h-[max-content]\"\n >\n <!-- <verben-svg [width]=\"15\" [height]=\"15\" (click)=\"toggleChildren(item); $event.stopPropagation()\"\n [ngClass]=\"item.children && item.children.length?'visible':'invisible'\"\n class=\"items-center flex pr-1 cursor-pointer\" [icon]=\"item.isChildrenExpanded?'minus':'plus'\" /> -->\n <div class=\"flex w-full bg-secondary rounded-xl\">\n <div\n class=\"w-3 rounded-xl rounded-tr-none rounded-br-none\"\n [ngClass]=\"item.selected ? 'bg-primary' : 'bg-secondary-200'\"\n ></div>\n <div class=\"py-3 px-4 flex-1 h-[100%]\">\n <div\n class=\"flex items-start flex-1 gap-1 justify-between h-[100%]\"\n >\n <div\n class=\"flex flex-col flex-1 card-min-height justify-between h-[100%]\"\n >\n <div class=\"flex justify-between\">\n <div>\n <h3\n class=\"my-0 font-bold text-[#404040] leading-[19.5px]\"\n >\n {{ item.data.Name ?? \"Null\" }}\n </h3>\n <span class=\"flex mt-2 items-center gap-1\">\n <span class=\"!text-[10px] font-light text-[#404040]\"\n >Expiry Date:</span\n >\n <span class=\"!text-[12px] font-semibold\">{{\n item.data.ExpiryDate | date\n }}</span>\n </span>\n </div>\n\n <div>\n <span class=\"!text-[10px] text-[#404040]\"\n >Duration</span\n >\n <p class=\"!text-[12px]\">{{ item.data.Duration }}</p>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </ng-template>\n </verben-left-card-data>\n </verben-left-card-data-view>\n <verben-right-card-data-view>\n <ng-template #parent>\n <div *ngIf=\"this.currentData\">\n <div\n *ngIf=\"currentData.data.Entities[active]\"\n class=\"flex flex-wrap bg-[#9A9FBF80] rounded-xl px-3 py-2 w-full relative gap-6\"\n >\n <!-- <app-form-timer></app-form-timer> -->\n <div\n *ngFor=\"\n let group of currentData.data.Entities;\n let index = index\n \"\n >\n <p\n (click)=\"setActive(index)\"\n [ngClass]=\"{\n 'bg-[#fff] text-primary rounded-lg shadow-lg':\n active === index\n }\"\n class=\"px-6 py-2 cursor-pointer\"\n >\n {{ group.Name }}\n </p>\n </div>\n </div>\n\n <div\n *ngIf=\"currentData.data.Entities[active]; else emptyState\"\n class=\"mt-4\"\n >\n <form-control\n [dataType]=\"dataType\"\n [formProperties]=\"currentData.data.Entities[active].Properties\"\n ></form-control>\n <div\n class=\"flex justify-between w-full bottom-8 left-0 right-0 mt-4\"\n >\n <!-- <verbena-button\n class=\"verben-delete-button\"\n text=\"Delete\"\n ></verbena-button> -->\n <div></div>\n\n <div class=\"flex gap-3\">\n <!-- <verbena-button\n class=\"verben-switch-button\"\n (click)=\"goToTableView()\"\n text=\"Switch To Table\"\n ></verbena-button> -->\n <verbena-button\n class=\"verben-primary-button\"\n (click)=\"saveItem()\"\n text=\"Save\"\n ></verbena-button>\n </div>\n </div>\n </div>\n\n <!-- Empty state template -->\n <ng-template #emptyState>\n <p class=\"mt-4 p-4 text-gray-600 text-center\">\n No entries available for the selected form group.\n </p>\n </ng-template>\n </div>\n </ng-template>\n </verben-right-card-data-view>\n <!-- <verben-right-card-data-view>\n yeshhhhhh\n </verben-right-card-data-view> -->\n\n <verben-card-data-view-footer>\n <!-- <div class=\"flex gap-2 justify-between\">\n <div\n *ngIf=\"!vdcv.hasCurrentItem()\"\n class=\"message-log-button-container flex justify-between\"\n >\n <verbena-button\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [text]=\"'Delete'\"\n >\n </verbena-button>\n </div>\n <div\n class=\"flex {{\n vdcv.hasCurrentItem() ? 'flex-1' : ''\n }} justify-end items-center gap-5\"\n >\n <span class=\"paginator-text\"\n >{{ cardData.length }} records loaded</span\n >\n <button (click)=\"loadMore()\" class=\"load-more view-links\">\n Load more\n </button>\n </div>\n </div> -->\n </verben-card-data-view-footer>\n </verben-card-data-view>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport {\n CardDataViewModule,\n DataExportModule,\n DataTableModule,\n DataViewModule,\n DropDownModule,\n SortTableModule,\n SvgModule,\n TableFilterModule,\n VerbenaButtonModule,\n VerbenaInputModule,\n VerbenaSwitchModule,\n VerbenPopUpModule,\n VisibleColumnModule,\n} from 'verben-ng-ui';\nimport { FormResponseComponent } from './form-response.component';\nimport { FormControlerModule } from 'verben-workflow-ui/src/lib/components/form-control';\nimport { FormTimerModule } from 'verben-workflow-ui/src/lib/components/form-timer';\n\n@NgModule({\n declarations: [FormResponseComponent],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n DataTableModule,\n SvgModule,\n VerbenPopUpModule,\n DataViewModule,\n VerbenaButtonModule,\n CardDataViewModule,\n DropDownModule,\n VerbenaSwitchModule,\n TableFilterModule,\n VisibleColumnModule,\n SortTableModule,\n DataExportModule,\n VerbenaInputModule,\n FormControlerModule,\n FormTimerModule,\n ],\n exports: [FormResponseComponent],\n})\nexport class FormResponseLibModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["baseStyle","i4.FormResponseService"],"mappings":";;;;;;;;;;;;;;;;;MAOa,mBAAmB,CAAA;AAC9B,IAAA,WAAA,GAAA,GAAgB;AAEhB,IAAA,IAAI,WAAW,GAAA;QACb,OAAO;AACL,YAAA;AACE,gBAAA,EAAE,EAAE,QAAQ;AACZ,gBAAA,MAAM,EAAE,EAAE;AACX,aAAA;AACD,YAAA;AACE,gBAAA,EAAE,EAAE,WAAW;AACf,gBAAA,MAAM,EAAE,SAAS;AACjB,gBAAA,WAAW,EAAE,WAAW;AACzB,aAAA;AACD,YAAA;AACE,gBAAA,EAAE,EAAE,MAAM;AACV,gBAAA,MAAM,EAAE,MAAM;AACd,gBAAA,WAAW,EAAE,MAAM;AACpB,aAAA;AACD,YAAA;AACE,gBAAA,EAAE,EAAE,SAAS;AACb,gBAAA,MAAM,EAAE,aAAa;AACrB,gBAAA,WAAW,EAAE,SAAS;AACvB,aAAA;AACD,YAAA;AACE,gBAAA,EAAE,EAAE,YAAY;AAChB,gBAAA,MAAM,EAAE,aAAa;AACrB,gBAAA,WAAW,EAAE,YAAY;AAC1B,aAAA;AACD,YAAA;AACE,gBAAA,EAAE,EAAE,UAAU;AACd,gBAAA,MAAM,EAAE,UAAU;AAClB,gBAAA,WAAW,EAAE,UAAU;AACxB,aAAA;AAED,YAAA;AACE,gBAAA,EAAE,EAAE,SAAS;AACb,gBAAA,MAAM,EAAE,SAAS;AACjB,gBAAA,UAAU,EAAE,CAAC,GAAS,KAAI;AACxB,oBAAA,OAAO,GAAG,CAAC;iBACZ;AACF,aAAA;SACF,CAAC;KACH;wGA3CU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAnB,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,cAFlB,MAAM,EAAA,CAAA,CAAA;;4FAEP,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAH/B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;ACwCD,IAAK,iBAOJ,CAAA;AAPD,CAAA,UAAK,iBAAiB,EAAA;AACpB,IAAA,iBAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AACb,IAAA,iBAAA,CAAA,aAAA,CAAA,GAAA,aAA2B,CAAA;AAC3B,IAAA,iBAAA,CAAA,aAAA,CAAA,GAAA,aAA2B,CAAA;AAC3B,IAAA,iBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACrB,IAAA,iBAAA,CAAA,aAAA,CAAA,GAAA,aAA2B,CAAA;AAC3B,IAAA,iBAAA,CAAA,WAAA,CAAA,GAAA,WAAuB,CAAA;AACzB,CAAC,EAPI,iBAAiB,KAAjB,iBAAiB,GAOrB,EAAA,CAAA,CAAA,CAAA;AAED,IAAK,WAKJ,CAAA;AALD,CAAA,UAAK,WAAW,EAAA;AACd,IAAA,WAAA,CAAA,QAAA,CAAA,GAAA,IAA8B,CAAA;AAC9B,IAAA,WAAA,CAAA,IAAA,CAAA,GAAA,IAA0B,CAAA;AAC1B,IAAA,WAAA,CAAA,OAAA,CAAA,GAAA,IAA6B,CAAA;AAC7B,IAAA,WAAA,CAAA,KAAA,CAAA,GAAA,KAA4B,CAAA;AAC9B,CAAC,EALI,WAAW,KAAX,WAAW,GAKf,EAAA,CAAA,CAAA,CAAA;MAOY,qBAAqB,CAAA;AA4GtB,IAAA,WAAA,CAAA;AACA,IAAA,MAAA,CAAA;AACA,IAAA,GAAA,CAAA;AACA,IAAA,EAAA,CAAA;AACA,IAAA,MAAA,CAAA;AACA,IAAA,MAAA,CAAA;AACA,IAAA,eAAA,CAAA;AACA,IAAA,SAAA,CAAA;AACA,IAAA,KAAA,CAAA;IAnHV,gBAAgB,GAA6B,EAAE,CAAC;IAChD,MAAM,GAAGA,iBAAS,CAAC;IACnB,IAAI,GAAW,EAAE,CAAC;IACT,IAAI,GAAW,kCAAkC,CAAC;IAC3D,QAAQ,GAAe,EAAE,CAAC;IAC1B,wBAAwB,GAAW,CAAC,CAAC;IACrC,UAAU,GAAY,KAAK,CAAC;IAC5B,WAAW,GAAoB,IAAI,CAAC;AACjB,IAAA,YAAY,CAAyB;AACtC,IAAA,QAAQ,CAAqB;AAC9B,IAAA,SAAS,CAA4B;IAC7C,WAAW,GAAkB,IAAI,CAAC;IAClC,QAAQ,GAAW,EAAE,CAAC;IACtB,WAAW,GAAW,UAAU,CAAC;IAC1C,IAAI,GAAW,CAAC,CAAC;IACjB,OAAO,GAAY,IAAI,CAAC;AACd,IAAA,oBAAoB,GAAyB,IAAI,YAAY,EAAE,CAAC;IAC1E,UAAU,GAAW,EAAE,CAAC;IACxB,SAAS,GAA6B,IAAI,CAAC;IAC3C,MAAM,GAAY,KAAK,CAAC;IACxB,cAAc,GAAkB,IAAI,CAAC;IACrC,cAAc,GAAkB,EAAE,CAAC;IACnC,YAAY,GAAkB,EAAE,CAAC;AACjC,IAAA,QAAQ,GAAa,QAAQ,CAAC,IAAI,CAAC;AACnC,IAAA,WAAW,GAAG,IAAI,OAAO,EAAU,CAAC;AACpC,IAAA,aAAa,GAAa,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,GAAW,CAAC,CAAC;IACnB,QAAQ,GAAW,EAAE,CAAC;IACtB,KAAK,GAAW,EAAE,CAAC;IAEnB,cAAc,GAAkB,EAAE,CAAC;AAEnC,IAAA,WAAW,GAAkB;AAC3B,QAAA;YACE,IAAI,EAAE,iBAAiB,CAAC,IAAI;YAC5B,IAAI,EAAE,cAAc,CAAC,MAAM;AAC3B,YAAA,OAAO,EAAE,KAAK;AACf,SAAA;AACD,QAAA;YACE,IAAI,EAAE,iBAAiB,CAAC,WAAW;YACnC,IAAI,EAAE,cAAc,CAAC,MAAM;AAC3B,YAAA,OAAO,EAAE,KAAK;AACf,SAAA;AACD,QAAA;YACE,IAAI,EAAE,iBAAiB,CAAC,WAAW;YACnC,IAAI,EAAE,cAAc,CAAC,IAAI;AACzB,YAAA,OAAO,EAAE,KAAK;AACf,SAAA;AACD,QAAA;YACE,IAAI,EAAE,iBAAiB,CAAC,WAAW;YACnC,IAAI,EAAE,cAAc,CAAC,MAAM;AAC3B,YAAA,OAAO,EAAE,KAAK;AACf,SAAA;AACD,QAAA;YACE,IAAI,EAAE,iBAAiB,CAAC,QAAQ;YAChC,IAAI,EAAE,cAAc,CAAC,MAAM;AAC3B,YAAA,OAAO,EAAE,KAAK;AACf,SAAA;AACD,QAAA;YACE,IAAI,EAAE,iBAAiB,CAAC,SAAS;YACjC,IAAI,EAAE,cAAc,CAAC,IAAI;AACzB,YAAA,OAAO,EAAE,KAAK;AACf,SAAA;KACF,CAAC;AACF,IAAA,UAAU,CAAC,GAAS,EAAA;AAClB,QAAA,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;KAChB;AACD,IAAA,WAAW,CAAC,KAAU,EAAA;AACpB,QAAA,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;KACrC;AACD,IAAA,WAAW,GAAkB;AAC3B,QAAA;YACE,IAAI,EAAE,iBAAiB,CAAC,IAAI;YAC5B,IAAI,EAAE,cAAc,CAAC,MAAM;AAC3B,YAAA,OAAO,EAAE,KAAK;AACf,SAAA;AACD,QAAA;YACE,IAAI,EAAE,iBAAiB,CAAC,WAAW;YACnC,IAAI,EAAE,cAAc,CAAC,MAAM;AAC3B,YAAA,OAAO,EAAE,KAAK;AACf,SAAA;AACD,QAAA;YACE,IAAI,EAAE,iBAAiB,CAAC,WAAW;YACnC,IAAI,EAAE,cAAc,CAAC,IAAI;AACzB,YAAA,OAAO,EAAE,KAAK;AACf,SAAA;AACD,QAAA;YACE,IAAI,EAAE,iBAAiB,CAAC,WAAW;YACnC,IAAI,EAAE,cAAc,CAAC,MAAM;AAC3B,YAAA,OAAO,EAAE,KAAK;AACf,SAAA;AACD,QAAA;YACE,IAAI,EAAE,iBAAiB,CAAC,QAAQ;YAChC,IAAI,EAAE,cAAc,CAAC,MAAM;AAC3B,YAAA,OAAO,EAAE,KAAK;AACf,SAAA;AACD,QAAA;YACE,IAAI,EAAE,iBAAiB,CAAC,SAAS;YACjC,IAAI,EAAE,cAAc,CAAC,IAAI;AACzB,YAAA,OAAO,EAAE,KAAK;AACf,SAAA;KACF,CAAC;IAEM,iBAAiB,GAAW,EAAE,CAAC;AAEvC,IAAA,WAAA,CACU,WAAwB,EACxB,MAA6B,EAC7B,GAAsB,EACtB,EAAe,EACf,MAA0B,EAC1B,MAAc,EACd,eAAoC,EACpC,SAAmB,EACnB,KAAqB,EAAA;QARrB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAa;QACxB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAuB;QAC7B,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;QACtB,IAAE,CAAA,EAAA,GAAF,EAAE,CAAa;QACf,IAAM,CAAA,MAAA,GAAN,MAAM,CAAoB;QAC1B,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACd,IAAe,CAAA,eAAA,GAAf,eAAe,CAAqB;QACpC,IAAS,CAAA,SAAA,GAAT,SAAS,CAAU;QACnB,IAAK,CAAA,KAAA,GAAL,KAAK,CAAgB;AAE7B,QAAA,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC,WAAW,CAAC;AACpD,QAAA,IAAI,CAAC,cAAc,GAAG,eAAe,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM;AAC9D,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,IAAI,EAAE,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,GAAG,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE;YAC1D,IAAI,EAAE,cAAc,CAAC,IAAI;AAC1B,SAAA,CAAC,CAAC,CAAC;KACL;IACD,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;KACvB;AACD,IAAA,MAAM,QAAQ,GAAA;AACZ,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,MAAgB,KAAI;YACjD,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAC1C,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;AAC3B,YAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;AACpD,gBAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC9B;AACH,SAAC,CAAC,CAAC;KACJ;IACD,SAAS,CAAC,IAAY,CAAC,EAAA;AACrB,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;KACjB;AAED,IAAA,MAAM,eAAe,GAAA;AACnB,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAC/B,CAA2B,wBAAA,EAAA,IAAI,CAAC,QAAQ,CAAA,CAAE,EAC1C,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CACpC,CAAC;AACF,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC/B,QAAA,IAAI,GAAG,YAAY,aAAa,EAAE;AAChC,YAAA,OAAO,SAAS,CAAC;SAClB;aAAM;AACL,YAAA,IAAI,CAAC,SAAS,GAAG,GAAwB,CAAC;AAC1C,YAAA,IAAI,MAAM,GAAI,GAAyB,CAAC,MAAM,CAAC;AAC/C,YAAA,OAAO,MAAM,CAAC;SACf;KACF;AACD,IAAA,SAAS,CAAC,SAAA,GAAoB,WAAW,EAAE,QAAgB,KAAK,EAAA;AAC9D,QAAA,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;AACf,QAAA,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;AACd,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KAC9B;IACD,MAAM,QAAQ,CAAC,QAAgB,EAAA;AAC7B,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAC/B,CAAA,4BAAA,EAA+B,QAAQ,CAAE,CAAA,EACzC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CACpC,CAAC;AACF,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAE/B,QAAA,IAAI,GAAG,YAAY,aAAa,EAAE;AAChC,YAAA,OAAO,SAAS,CAAC;SAClB;;QAGD,MAAM,MAAM,GAAG,GAAa,CAAC;AAC7B,QAAA,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AACzC,YAAA,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,CAAC;SACvC;aAAM;AACL,YAAA,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;SACpB;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAExC,QAAA,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;QACzC,IAAI,CAAC,aAAa,EAAE,CAAC;AAErB,QAAA,OAAO,MAAM,CAAC;KACf;IAED,QAAQ,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC9B;KACF;IAED,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;AACd,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;KACpB;IACD,cAAc,CAAC,KAA0B,EAAE,IAAU,EAAA;QACnD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAI,IAAI,EAAE;AACR,YAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;AACtB,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;AAC9B,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;AAClC,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;AAC5B,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;SACrC;KACF;AACD,IAAA,OAAO,CAAC,KAAY,EAAE,IAAU,KAAI;IAEpC,aAAa,GAAA;QACX,MAAM,QAAQ,GAAe,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;YAC/C,OAAO;AACL,gBAAA,QAAQ,EAAE,KAAK;gBACf,KAAK,EAAE,CAAC,CAAC,IAAI;AACb,gBAAA,IAAI,EAAE,CAAC;AACP,gBAAA,IAAI,EAAE,EAAE;AACR,gBAAA,QAAQ,EAAE,EAAE;aACb,CAAC;AACJ,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;KAC1B;AAED,IAAA,YAAY,CAAC,IAAU,EAAA;AACrB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;QAEvD,IAAI,IAAI,EAAE;AACR,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;KACF;AACD,IAAA,2BAA2B,CAAC,IAAU,EAAA;AACpC,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC;AAC/D,QAAA,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,QAAa,KAAI;AACxC,YAAA,QACE,CAAC,QAAQ,CAAC,UAAU;AACpB,iBAAC,QAAQ,CAAC,KAAK,KAAK,SAAS;oBAC3B,QAAQ,CAAC,KAAK,KAAK,IAAI;AACvB,oBAAA,QAAQ,CAAC,KAAK,KAAK,EAAE,CAAC,EACxB;AACJ,SAAC,CAAC,CAAC;KACJ;IAED,aAAa,GAAA;AACX,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,OAAO;SACR;AACD,QAAA,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;AACjE,QAAA,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE;AAC5D,YAAA,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAEhB,YAAA,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;SAClC;KACF;AAED,IAAA,aAAa,CAAC,IAAY,EAAA;QACxB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE;YAC3B,OAAO;SACR;AACD,QAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACtC;AAED,IAAA,WAAW,CAAC,IAAc,EAAE,UAAA,GAAsB,KAAK,EAAA;AACrD,QAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,MAAM,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC;AACzD,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;AACrB,QAAA,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAClB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAEvD,IAAI,UAAU,EAAE;AACd,YAAA,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;SAC5B;KACF;AAED,IAAA,MAAM,QAAQ,GAAA;AACZ,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,YAAA,IAAI,IAAI,GAAS,IAAI,CAAC,WAAW,CAAC,IAAY,CAAC;AAE/C,YAAA,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE;AACjD,gBAAA,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;gBAClD,OAAO;aACR;AACD,YAAA,IAAI,CAAC,SAAS;AACZ,gBAAA,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC,GAAG;sBAC7B,WAAW,CAAC,GAAG;AACjB,sBAAE,WAAW,CAAC,OAAO,CAAC;YAC1B,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;AAC3D,YAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAChC,CAAA,cAAA,EAAiB,IAAI,CAAC,QAAQ,CAAE,CAAA,EAChC,IAAI,EACJ,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CACpC,CAAC;AACF,YAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC/B,YAAA,IAAI,GAAG,YAAY,aAAa,EAAE;aACjC;iBAAM;AACL,gBAAA,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,gCAAgC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;aAoBhE;SACF;KACF;AAED,IAAA,MAAM,aAAa,CAAC,IAAU,EAAE,QAAmB,EAAA;AACjD,QAAA,IAAI,CAAC,SAAS;AACZ,YAAA,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC,GAAG,GAAG,WAAW,CAAC,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC;QAC5E,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;AAC3D,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAChC,CAAuB,qBAAA,CAAA,EACvB,CAAC,IAAI,CAAC,EACN,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CACpC,CAAC;AACF,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC/B,QAAA,IAAI,GAAG,YAAY,aAAa,EAAE;SACjC;aAAM;AACL,YAAA,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAAC;YACxD,MAAM,MAAM,GAAG,GAAa,CAAC;AAC7B,YAAA,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;AACrB,gBAAA,IAAI,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;AAC3B,gBAAA,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC;AACxD,gBAAA,IAAI,SAAS,GAAG,CAAC,CAAC,EAAE;oBAClB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;oBAC5C,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,EAAE,CAAC;oBACxC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,EAAE,CAAC;oBACxC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;oBACtD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;oBAC5C,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;oBACpD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;oBACpD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;oBACxD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;AAClD,oBAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;iBACrC;AACD,gBAAA,QAAQ,EAAE,CAAC;aACZ;SACF;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACpC,QAAA,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACxB;AAED,IAAA,gBAAgB,CAAC,IAAU,EAAA;AACzB,QAAA,MAAM,WAAW,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;AACzD,QAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAG,EAAA,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;KACzD;IACD,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;KACrB;AAED,IAAA,YAAY,CAAC,IAAU,EAAA;QACrB,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC,EAAE,EAAE;AACnC,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;SAC5B;aAAM;AACL,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,EAAE,CAAC;SAC/B;KACF;IAED,MAAM,QAAQ,CAAC,KAAqC,EAAA;AAClD,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,KAAK,EAAE,CAAC;AACb,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AACpB,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7B,OAAO;SACR;AAED,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAE9B,QAAA,IAAI;YACF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAC/B,CAAiC,8BAAA,EAAA,IAAI,CAAC,UAAU,CAAA,CAAA,EAAI,IAAI,CAAC,IAAI,CAAA,CAAA,EAAI,IAAI,CAAC,QAAQ,CAAgB,cAAA,CAAA,CAC/F,CAAC;AAEF,YAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAE/B,YAAA,IAAI,GAAG,YAAY,aAAa,EAAE;AAChC,gBAAA,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;aAC5C;iBAAM;AACL,gBAAA,IAAI,CAAC,SAAS,GAAG,GAAwB,CAAC;AAC1C,gBAAA,IAAI,MAAM,GAAI,GAAyB,CAAC,MAAM,CAAC;AAC/C,gBAAA,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;gBACnB,IAAI,CAAC,aAAa,EAAE,CAAC;aACtB;SACF;QAAC,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;SACvC;gBAAS;SACT;KACF;AACD,IAAA,cAAc,CAAC,IAAS,EAAA;AACtB,QAAA,OAAO,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC,EAAE,CAAC;KACxC;IAED,YAAY,CAAC,UAAmB,EAAA,GAAU;AAE1C,IAAA,aAAa,CAAC,KAAsC,EAAA;AAClD,QAAA,QAAQ,KAAK,CAAC,GAAG;AACf,YAAA,KAAK,QAAQ;AACX,gBAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC;gBAC9B,MAAM;AACR,YAAA;gBACE,MAAM;SACT;KACF;IAED,aAAa,GAAY,KAAK,CAAC;IAC/B,iBAAiB,CAAC,YAAoB,EAAA,GAAI;AAC1C,IAAA,YAAY,MAAK;AAEjB,IAAA,gBAAgB,CAAC,cAA6B,EAAA;QAC5C,MAAM,gBAAgB,GAA6B,EAAE,CAAC;AACtD,QAAA,cAAc,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;AAC7B,YAAA,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,CACvD,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,KAAK,GAAG,CAAC,IAAI,CACjE,CAAC;YACF,IAAI,WAAW,EAAE;AACf,gBAAA,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;aACpC;AACH,SAAC,CAAC,CAAC;AAEH,QAAA,IAAI,CAAC,gBAAgB,GAAG,CAAC,GAAG,gBAAgB,CAAC,CAAC;KAC/C;AAED,IAAA,MAAM,qBAAqB,CAAC,QAAA,GAAoB,KAAK,EAAA;QACnD,IAAI,CAAC,QAAQ,EAAE;AACb,YAAA,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;AAC9B,YAAA,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;AAC5B,YAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;AACzB,YAAA,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,EAAE;AACzC,gBAAA,OAAO,EAAE,IAAI;AACb,gBAAA,UAAU,EAAE,IAAI;AAChB,gBAAA,IAAI,EAAE,MAAM;AACb,aAAA,CAAC,CAAC;AACH,YAAA,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;SACpC;QACD,IAAI,OAAO,GAA0B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;YACjE,OAAO;AACL,gBAAA,YAAY,EACV,iBAAiB,CAAC,CAAC,CAAC,IAAsC,CAAC;gBAC7D,WAAW,EAAE,CAAC,CAAC,KAAK;gBACpB,QAAQ,EAAE,cAAc,CAAC,GAAG;AAC5B,gBAAA,IAAI,EACF,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,sBAAG,WAAW,CACV,CAAC,CAAC,SAAqC,CACN;sBACnC,kBAAkB,CAAC,EAAE;AAC3B,gBAAA,IAAI,EACF,CAAC,CAAC,IAAI,IAAI,iBAAiB,CAAC,SAAS;sBACjC,uBAAuB,CAAC,IAAI;sBAC5B,uBAAuB,CAAC,MAAM;aACrC,CAAC;AACJ,SAAC,CAAC,CAAC;;;;;;;QAOH,MAAM,SAAS,GACb,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;AAC1B,cAAE;gBACE,KAAK,EACH,iBAAiB,CACf,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAsC,CAC5D;gBACH,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK;AAClC,aAAA;cACD,IAAI,CAAC;AACX,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAClE,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAG,gBAAgB;AAC1B,cAAE,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CACnB,CAAiC,8BAAA,EAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAA,GAAA,EAC5D,IAAI,CAAC,QACP,CAAA,CAAE,EACF,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CACpC;cACD,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CACpB,SAAS;AACP,kBAAE,CAAA,0BAAA,EAA6B,IAAI,CAAC,QAAQ,CAAA,CAAA,EAAI,SAAS,CAAC,KAAK,CAAA,CAAA,EAAI,SAAS,CAAC,KAAK,CAAE,CAAA;AACpF,kBAAE,CAA6B,0BAAA,EAAA,IAAI,CAAC,QAAQ,EAAE,EAChD,OAAO,EACP,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CACpC,CAAC;AACN,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC/B,QAAA,IAAI,GAAG,YAAY,aAAa,EAAE;AAChC,YAAA,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;AACzB,YAAA,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;AACvB,YAAA,OAAO,SAAS,CAAC;SAClB;aAAM;AACL,YAAA,IAAI,CAAC,SAAS,GAAG,GAAwB,CAAC;AAC1C,YAAA,IAAI,MAAM,GAAI,GAAyB,CAAC,MAAM,CAAC;AAC/C,YAAA,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;YACnB,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB;KACF;IAED,MAAM,UAAU,CAAC,OAAY,EAAA;AAC3B,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC9B,QAAA,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAChC,CAAA,0BAAA,EAA6B,IAAI,CAAC,QAAQ,EAAE,EAC5C,OAAO,CACR,CAAC;AAEF,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC/B,QAAA,IAAI,GAAG,YAAY,aAAa,EAAE;YAChC,OAAO;SACR;aAAM;AACL,YAAA,IAAI,CAAC,SAAS,GAAG,GAAwB,CAAC;AAC1C,YAAA,IAAI,MAAM,GAAI,GAAyB,CAAC,MAAM,CAAC;AAC/C,YAAA,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;YAEnB,IAAI,CAAC,aAAa,EAAE,CAAC;;AAGrB,YAAA,OAAO,MAAM,CAAC;SACf;KACF;AACD,IAAA,MAAM,uBAAuB,GAAA;AAC3B,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,OAAO;SACR;QACD,IAAI,OAAO,GAA0B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;YACjE,OAAO;AACL,gBAAA,YAAY,EACV,iBAAiB,CAAC,CAAC,CAAC,IAAsC,CAAC;gBAC7D,WAAW,EAAE,CAAC,CAAC,KAAK;gBACpB,QAAQ,EAAE,cAAc,CAAC,GAAG;AAC5B,gBAAA,IAAI,EACF,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,sBAAG,WAAW,CACV,CAAC,CAAC,SAAqC,CACN;sBACnC,kBAAkB,CAAC,EAAE;AAC3B,gBAAA,IAAI,EACF,CAAC,CAAC,IAAI,IAAI,iBAAiB,CAAC,SAAS;sBACjC,uBAAuB,CAAC,IAAI;sBAC5B,uBAAuB,CAAC,MAAM;aACrC,CAAC;AACJ,SAAC,CAAC,CAAC;QACH,MAAM,SAAS,GACb,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;AAC1B,cAAE;gBACE,KAAK,EACH,iBAAiB,CACf,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAsC,CAC5D;gBACH,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK;AAClC,aAAA;cACD,IAAI,CAAC;AACX,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAClE,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAG,gBAAgB;AAC1B,cAAE,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CACnB,CAAA,8BAAA,EAAiC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAC5D,CAAA,EAAA,IAAI,CAAC,SAAS,CAAC,IACjB,CAAI,CAAA,EAAA,IAAI,CAAC,QAAQ,CAAA,CAAE,EACnB,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CACpC;cACD,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CACpB,SAAS;AACP,kBAAE,CAA2B,wBAAA,EAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAI,CAAA,EAAA,IAAI,CAAC,QAAQ,CAAA,CAAA,EAAI,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,CAAE,CAAA;kBACvG,2BAA2B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAI,CAAA,EAAA,IAAI,CAAC,QAAQ,EAAE,EACrE,OAAO,EACP,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CACpC,CAAC;AACN,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC/B,QAAA,IAAI,GAAG,YAAY,aAAa,EAAE;AAChC,YAAA,OAAO,SAAS,CAAC;SAClB;aAAM;YACL,IAAI,MAAM,GAAG,GAAwB,CAAC;AACtC,YAAA,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;AAC1B,YAAA,OAAO,MAAM,CAAC;SACf;KACF;AACD,IAAA,eAAe,CAAC,aAA4B,EAAA;AAC1C,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AACxB,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;AAChC,YAAA,IAAI,CAAC,wBAAwB,GAAG,aAAa,CAAC,MAAM,CAAC;AACrD,YAAA,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAE3B,MAAM,WAAW,GAAG,aAAa;iBAC9B,MAAM,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,OAAO,CAAC;AAClC,iBAAA,GAAG,CAAC,CAAC,MAAM,MAAM;gBAChB,YAAY,EAAE,MAAM,CAAC,IAAI;gBACzB,WAAW,EAAE,MAAM,CAAC,KAAK;gBACzB,IAAI,EAAE,MAAM,CAAC,IAAI;AACjB,gBAAA,QAAQ,EAAE,KAAK;gBACf,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC;AAC1C,aAAA,CAAC,CAAC,CAAC;AAEN,YAAA,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;SAC9B;KACF;AACD,IAAA,YAAY,CAAC,KAAU,EAAA;QACrB,QAAQ,KAAK;YACX,KAAK,kBAAkB,CAAC,EAAE;gBACxB,OAAO,kBAAkB,CAAC,EAAE,CAAC;YAC/B,KAAK,kBAAkB,CAAC,KAAK;gBAC3B,OAAO,kBAAkB,CAAC,EAAE,CAAC;YAC/B,KAAK,kBAAkB,CAAC,MAAM;gBAC5B,OAAO,kBAAkB,CAAC,EAAE,CAAC;YAC/B,KAAK,kBAAkB,CAAC,QAAQ;gBAC9B,OAAO,kBAAkB,CAAC,GAAG,CAAC;AAChC,YAAA;AACE,gBAAA,OAAO,KAAK,CAAC;SAChB;KACF;AAED,IAAA,aAAa,CAAC,YAA2B,EAAA;AACvC,QAAA,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,qBAAqB,EAAE,CAAC;KAC9B;AAED,IAAA,YAAY,CAAC,KAAqC,EAAA;QAChD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;KACpC;AAED,IAAA,YAAY,CAAC,YAA4B,EAAA;;AAEvC,QAAA,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;KAChC;AACO,IAAA,WAAW,CAAC,IAAoB,EAAA;QACtC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACrC,QAAA,MAAM,UAAU,GAAG;AACjB,YAAA,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;AACjB,YAAA,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACrE,SAAA,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,QAAA,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAC,CAAC;QACzE,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AACzC,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;YAC/B,MAAM,GAAG,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;AACtC,YAAA,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC/B,YAAA,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;AAC5C,YAAA,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;AACjC,YAAA,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,CAAC,KAAK,EAAE,CAAC;AACb,YAAA,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SACjC;KACF;wGArpBU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,mBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,qBAAqB,seCnElC,w9NA4LA,EAAA,MAAA,EAAA,CAAA,01CAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,SAAA,EAAA,aAAA,EAAA,cAAA,EAAA,SAAA,EAAA,WAAA,EAAA,QAAA,EAAA,cAAA,EAAA,IAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,YAAA,EAAA,SAAA,EAAA,SAAA,EAAA,QAAA,EAAA,SAAA,EAAA,WAAA,EAAA,KAAA,EAAA,UAAA,EAAA,WAAA,EAAA,WAAA,EAAA,UAAA,EAAA,aAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,IAAA,EAAA,SAAA,EAAA,SAAA,EAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,SAAA,EAAA,cAAA,EAAA,WAAA,EAAA,aAAA,EAAA,cAAA,EAAA,cAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,cAAA,EAAA,aAAA,EAAA,kBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,aAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,EAAA,QAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,yBAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,UAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,8BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,OAAA,EAAA,eAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FDzHa,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,SAAS;+BACE,mBAAmB,EAAA,QAAA,EAAA,w9NAAA,EAAA,MAAA,EAAA,CAAA,01CAAA,CAAA,EAAA,CAAA;uTAQpB,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAKa,YAAY,EAAA,CAAA;sBAA9B,SAAS;uBAAC,MAAM,CAAA;gBACC,QAAQ,EAAA,CAAA;sBAAzB,SAAS;uBAAC,KAAK,CAAA;gBACC,SAAS,EAAA,CAAA;sBAAzB,SAAS;uBAAC,IAAI,CAAA;gBACN,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAGI,oBAAoB,EAAA,CAAA;sBAA7B,MAAM;;;MErCI,qBAAqB,CAAA;wGAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;yGAArB,qBAAqB,EAAA,YAAA,EAAA,CAvBjB,qBAAqB,CAAA,EAAA,OAAA,EAAA,CAElC,YAAY;YACZ,WAAW;YACX,mBAAmB;YACnB,eAAe;YACf,SAAS;YACT,iBAAiB;YACjB,cAAc;YACd,mBAAmB;YACnB,kBAAkB;YAClB,cAAc;YACd,mBAAmB;YACnB,iBAAiB;YACjB,mBAAmB;YACnB,eAAe;YACf,gBAAgB;YAChB,kBAAkB;YAClB,mBAAmB;AACnB,YAAA,eAAe,aAEP,qBAAqB,CAAA,EAAA,CAAA,CAAA;AAEpB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,YArB9B,YAAY;YACZ,WAAW;YACX,mBAAmB;YACnB,eAAe;YACf,SAAS;YACT,iBAAiB;YACjB,cAAc;YACd,mBAAmB;YACnB,kBAAkB;YAClB,cAAc;YACd,mBAAmB;YACnB,iBAAiB;YACjB,mBAAmB;YACnB,eAAe;YACf,gBAAgB;YAChB,kBAAkB;YAClB,mBAAmB;YACnB,eAAe,CAAA,EAAA,CAAA,CAAA;;4FAIN,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAxBjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,qBAAqB,CAAC;AACrC,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,mBAAmB;wBACnB,eAAe;wBACf,SAAS;wBACT,iBAAiB;wBACjB,cAAc;wBACd,mBAAmB;wBACnB,kBAAkB;wBAClB,cAAc;wBACd,mBAAmB;wBACnB,iBAAiB;wBACjB,mBAAmB;wBACnB,eAAe;wBACf,gBAAgB;wBAChB,kBAAkB;wBAClB,mBAAmB;wBACnB,eAAe;AAChB,qBAAA;oBACD,OAAO,EAAE,CAAC,qBAAqB,CAAC;AACjC,iBAAA,CAAA;;;AC9CD;;AAEG;;;;"}
|