@coreui/angular-pro 4.0.0-beta.3 → 4.0.1
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/esm2020/lib/accordion/accordion/accordion.component.mjs +3 -3
- package/esm2020/lib/accordion/accordion-button/accordion-button.directive.mjs +3 -3
- package/esm2020/lib/accordion/accordion-item/accordion-item.component.mjs +3 -3
- package/esm2020/lib/accordion/accordion.module.mjs +4 -4
- package/esm2020/lib/accordion/accordion.service.mjs +3 -3
- package/esm2020/lib/alert/alert-heading.directive.mjs +3 -3
- package/esm2020/lib/alert/alert-link.directive.mjs +3 -3
- package/esm2020/lib/alert/alert.component.mjs +3 -3
- package/esm2020/lib/alert/alert.module.mjs +4 -4
- package/esm2020/lib/avatar/avatar.component.mjs +3 -3
- package/esm2020/lib/avatar/avatar.module.mjs +4 -4
- package/esm2020/lib/backdrop/backdrop.service.mjs +3 -3
- package/esm2020/lib/badge/badge.component.mjs +3 -3
- package/esm2020/lib/badge/badge.module.mjs +4 -4
- package/esm2020/lib/breadcrumb/breadcrumb/breadcrumb.component.mjs +3 -3
- package/esm2020/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.mjs +3 -3
- package/esm2020/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.mjs +3 -3
- package/esm2020/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.mjs +3 -3
- package/esm2020/lib/breadcrumb/breadcrumb.module.mjs +4 -4
- package/esm2020/lib/button/button-close.directive.mjs +3 -3
- package/esm2020/lib/button/button.directive.mjs +3 -3
- package/esm2020/lib/button/button.module.mjs +4 -4
- package/esm2020/lib/button-group/button-group/button-group.component.mjs +3 -3
- package/esm2020/lib/button-group/button-group.module.mjs +4 -4
- package/esm2020/lib/button-group/button-toolbar/button-toolbar.component.mjs +3 -3
- package/esm2020/lib/callout/callout.component.mjs +3 -3
- package/esm2020/lib/callout/callout.module.mjs +4 -4
- package/esm2020/lib/card/card-body.component.mjs +3 -3
- package/esm2020/lib/card/card-footer.component.mjs +3 -3
- package/esm2020/lib/card/card-group.component.mjs +3 -3
- package/esm2020/lib/card/card-header-actions.component.mjs +3 -3
- package/esm2020/lib/card/card-header.component.mjs +3 -3
- package/esm2020/lib/card/card-img-overlay/card-img-overlay.component.mjs +3 -3
- package/esm2020/lib/card/card-img.directive.mjs +3 -3
- package/esm2020/lib/card/card-link.directive.mjs +3 -3
- package/esm2020/lib/card/card-subtitle.directive.mjs +3 -3
- package/esm2020/lib/card/card-text.directive.mjs +3 -3
- package/esm2020/lib/card/card-title.directive.mjs +3 -3
- package/esm2020/lib/card/card.component.mjs +3 -3
- package/esm2020/lib/card/card.module.mjs +4 -4
- package/esm2020/lib/carousel/carousel/carousel.component.mjs +3 -3
- package/esm2020/lib/carousel/carousel-caption/carousel-caption.component.mjs +3 -3
- package/esm2020/lib/carousel/carousel-control/carousel-control.component.mjs +3 -3
- package/esm2020/lib/carousel/carousel-indicators/carousel-indicators.component.mjs +3 -3
- package/esm2020/lib/carousel/carousel-inner/carousel-inner.component.mjs +3 -3
- package/esm2020/lib/carousel/carousel-item/carousel-item.component.mjs +3 -3
- package/esm2020/lib/carousel/carousel-state.mjs +3 -3
- package/esm2020/lib/carousel/carousel.config.mjs +3 -3
- package/esm2020/lib/carousel/carousel.module.mjs +4 -4
- package/esm2020/lib/carousel/carousel.service.mjs +3 -3
- package/esm2020/lib/collapse/collapse.directive.mjs +3 -3
- package/esm2020/lib/collapse/collapse.module.mjs +4 -4
- package/esm2020/lib/dropdown/dropdown/dropdown.component.mjs +20 -18
- package/esm2020/lib/dropdown/dropdown-close/dropdown-close.directive.mjs +3 -3
- package/esm2020/lib/dropdown/dropdown-divider/dropdown-divider.directive.mjs +3 -3
- package/esm2020/lib/dropdown/dropdown-header/dropdown-header.directive.mjs +3 -3
- package/esm2020/lib/dropdown/dropdown-item/dropdown-item-plain.directive.mjs +3 -3
- package/esm2020/lib/dropdown/dropdown-item/dropdown-item.directive.mjs +3 -3
- package/esm2020/lib/dropdown/dropdown-menu/dropdown-menu.directive.mjs +3 -3
- package/esm2020/lib/dropdown/dropdown.module.mjs +4 -4
- package/esm2020/lib/dropdown/dropdown.service.mjs +3 -3
- package/esm2020/lib/element-cover/element-cover.component.mjs +3 -3
- package/esm2020/lib/element-cover/element-cover.module.mjs +4 -4
- package/esm2020/lib/footer/footer.component.mjs +3 -3
- package/esm2020/lib/footer/footer.module.mjs +4 -4
- package/esm2020/lib/form/form/form.directive.mjs +3 -3
- package/esm2020/lib/form/form-check/form-check-input.directive.mjs +3 -3
- package/esm2020/lib/form/form-check/form-check-label.directive.mjs +3 -3
- package/esm2020/lib/form/form-check/form-check.component.mjs +3 -3
- package/esm2020/lib/form/form-control/form-control.directive.mjs +3 -3
- package/esm2020/lib/form/form-feedback/form-feedback.component.mjs +3 -3
- package/esm2020/lib/form/form-floating/form-floating.directive.mjs +3 -3
- package/esm2020/lib/form/form-label/form-label.directive.mjs +3 -3
- package/esm2020/lib/form/form-select/form-select.directive.mjs +3 -3
- package/esm2020/lib/form/form-text/form-text.directive.mjs +3 -3
- package/esm2020/lib/form/form.module.mjs +4 -4
- package/esm2020/lib/form/input-group/input-group.component.mjs +3 -3
- package/esm2020/lib/form/input-group-text/input-group-text.directive.mjs +3 -3
- package/esm2020/lib/grid/col.component.mjs +3 -3
- package/esm2020/lib/grid/col.directive.mjs +3 -3
- package/esm2020/lib/grid/container.component.mjs +3 -3
- package/esm2020/lib/grid/grid.module.mjs +4 -4
- package/esm2020/lib/grid/gutter.directive.mjs +3 -3
- package/esm2020/lib/grid/row.component.mjs +3 -3
- package/esm2020/lib/grid/row.directive.mjs +3 -3
- package/esm2020/lib/header/header/header.component.mjs +3 -3
- package/esm2020/lib/header/header-brand/header-brand.component.mjs +3 -3
- package/esm2020/lib/header/header-divider/header-divider.component.mjs +3 -3
- package/esm2020/lib/header/header-nav/header-nav.component.mjs +3 -3
- package/esm2020/lib/header/header-text/header-text.component.mjs +3 -3
- package/esm2020/lib/header/header-toggler/header-toggler.directive.mjs +3 -3
- package/esm2020/lib/header/header.module.mjs +4 -4
- package/esm2020/lib/image/img.directive.mjs +3 -3
- package/esm2020/lib/image/img.module.mjs +4 -4
- package/esm2020/lib/list-group/list-group-item.directive.mjs +3 -3
- package/esm2020/lib/list-group/list-group.directive.mjs +3 -3
- package/esm2020/lib/list-group/list-group.module.mjs +4 -4
- package/esm2020/lib/loading-button/loading-button.component.mjs +3 -3
- package/esm2020/lib/loading-button/loading-button.module.mjs +4 -4
- package/esm2020/lib/modal/modal/modal.component.mjs +3 -3
- package/esm2020/lib/modal/modal-body/modal-body.component.mjs +3 -3
- package/esm2020/lib/modal/modal-content/modal-content.component.mjs +3 -3
- package/esm2020/lib/modal/modal-dialog/modal-dialog.component.mjs +3 -3
- package/esm2020/lib/modal/modal-dismiss/modal-toggle.directive.mjs +3 -3
- package/esm2020/lib/modal/modal-footer/modal-footer.component.mjs +3 -3
- package/esm2020/lib/modal/modal-header/modal-header.component.mjs +3 -3
- package/esm2020/lib/modal/modal-title/modal-title.directive.mjs +3 -3
- package/esm2020/lib/modal/modal.module.mjs +4 -4
- package/esm2020/lib/modal/modal.service.mjs +3 -3
- package/esm2020/lib/multi-select/multi-select/multi-select.component.mjs +3 -3
- package/esm2020/lib/multi-select/multi-select-native-select/multi-select-native-select.component.mjs +3 -3
- package/esm2020/lib/multi-select/multi-select-optgroup/multi-select-optgroup-label.component.mjs +3 -3
- package/esm2020/lib/multi-select/multi-select-optgroup/multi-select-optgroup.component.mjs +3 -3
- package/esm2020/lib/multi-select/multi-select-option/multi-select-option.component.mjs +3 -3
- package/esm2020/lib/multi-select/multi-select-tag/multi-select-tag.component.mjs +3 -3
- package/esm2020/lib/multi-select/multi-select.module.mjs +4 -4
- package/esm2020/lib/multi-select/multi-select.service.mjs +3 -3
- package/esm2020/lib/nav/nav-item.component.mjs +3 -3
- package/esm2020/lib/nav/nav-link.directive.mjs +3 -3
- package/esm2020/lib/nav/nav.component.mjs +3 -3
- package/esm2020/lib/nav/nav.module.mjs +4 -4
- package/esm2020/lib/navbar/navbar-brand/navbar-brand.directive.mjs +3 -3
- package/esm2020/lib/navbar/navbar-nav/navbar-nav.component.mjs +3 -3
- package/esm2020/lib/navbar/navbar-text/navbar-text.component.mjs +3 -3
- package/esm2020/lib/navbar/navbar-toggler/navbar-toggler.directive.mjs +3 -3
- package/esm2020/lib/navbar/navbar.component.mjs +3 -3
- package/esm2020/lib/navbar/navbar.module.mjs +4 -4
- package/esm2020/lib/offcanvas/offcanvas/offcanvas.component.mjs +3 -3
- package/esm2020/lib/offcanvas/offcanvas-body/offcanvas-body.component.mjs +3 -3
- package/esm2020/lib/offcanvas/offcanvas-header/offcanvas-header.component.mjs +3 -3
- package/esm2020/lib/offcanvas/offcanvas-title/offcanvas-title.directive.mjs +3 -3
- package/esm2020/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.mjs +3 -3
- package/esm2020/lib/offcanvas/offcanvas.module.mjs +4 -4
- package/esm2020/lib/offcanvas/offcanvas.service.mjs +3 -3
- package/esm2020/lib/pagination/page-item/page-item.component.mjs +3 -3
- package/esm2020/lib/pagination/page-item/page-item.directive.mjs +3 -3
- package/esm2020/lib/pagination/page-link/page-link.directive.mjs +3 -3
- package/esm2020/lib/pagination/pagination/pagination.component.mjs +3 -3
- package/esm2020/lib/pagination/pagination.module.mjs +4 -4
- package/esm2020/lib/placeholder/placeholder-animation.directive.mjs +3 -3
- package/esm2020/lib/placeholder/placeholder.directive.mjs +3 -3
- package/esm2020/lib/placeholder/placeholder.module.mjs +4 -4
- package/esm2020/lib/popover/popover/popover.component.mjs +3 -3
- package/esm2020/lib/popover/popover.directive.mjs +3 -3
- package/esm2020/lib/popover/popover.module.mjs +4 -4
- package/esm2020/lib/progress/progress-bar.component.mjs +3 -3
- package/esm2020/lib/progress/progress.component.mjs +3 -3
- package/esm2020/lib/progress/progress.module.mjs +4 -4
- package/esm2020/lib/services/class-toggle.service.mjs +3 -3
- package/esm2020/lib/services/intersection.service.mjs +3 -3
- package/esm2020/lib/services/listeners.service.mjs +3 -3
- package/esm2020/lib/shared/html-attr.directive.mjs +3 -3
- package/esm2020/lib/shared/shared.module.mjs +4 -4
- package/esm2020/lib/shared/template-id.directive.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar/sidebar.component.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar-brand/sidebar-brand.component.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar-footer/sidebar-footer.component.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar-header/sidebar-header.component.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-label.component.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-link.component.mjs +6 -6
- package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav-title.component.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav.component.mjs +6 -6
- package/esm2020/lib/sidebar/sidebar-nav/sidebar-nav.service.mjs +6 -6
- package/esm2020/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar-toggler/sidebar-toggler.component.mjs +3 -3
- package/esm2020/lib/sidebar/sidebar.module.mjs +4 -4
- package/esm2020/lib/sidebar/sidebar.service.mjs +3 -3
- package/esm2020/lib/smart-pagination/smart-pagination.component.mjs +3 -3
- package/esm2020/lib/smart-pagination/smart-pagination.module.mjs +4 -4
- package/esm2020/lib/smart-table/smart-table/smart-table.component.mjs +3 -3
- package/esm2020/lib/smart-table/smart-table-filter/smart-table-filter.component.mjs +3 -3
- package/esm2020/lib/smart-table/smart-table-head/smart-table-head.component.mjs +3 -3
- package/esm2020/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.mjs +3 -3
- package/esm2020/lib/smart-table/smart-table.module.mjs +4 -4
- package/esm2020/lib/spinner/spinner.component.mjs +3 -3
- package/esm2020/lib/spinner/spinner.module.mjs +4 -4
- package/esm2020/lib/table/table-active.directive.mjs +3 -3
- package/esm2020/lib/table/table-color.directive.mjs +3 -3
- package/esm2020/lib/table/table.directive.mjs +3 -3
- package/esm2020/lib/table/table.module.mjs +4 -4
- package/esm2020/lib/tabs/tab-content/tab-content.component.mjs +3 -3
- package/esm2020/lib/tabs/tab-content-ref.directive.mjs +3 -3
- package/esm2020/lib/tabs/tab-pane/tab-pane.component.mjs +3 -3
- package/esm2020/lib/tabs/tab.service.mjs +3 -3
- package/esm2020/lib/tabs/tabs.module.mjs +4 -4
- package/esm2020/lib/toast/toast/toast.component.mjs +3 -3
- package/esm2020/lib/toast/toast-body/toast-body.component.mjs +3 -3
- package/esm2020/lib/toast/toast-close.directive.mjs +3 -3
- package/esm2020/lib/toast/toast-header/toast-header.component.mjs +3 -3
- package/esm2020/lib/toast/toast.module.mjs +4 -4
- package/esm2020/lib/toast/toaster/toaster-host.directive.mjs +3 -3
- package/esm2020/lib/toast/toaster/toaster.component.mjs +3 -3
- package/esm2020/lib/toast/toaster/toaster.service.mjs +3 -3
- package/esm2020/lib/tooltip/tooltip/tooltip.component.mjs +3 -3
- package/esm2020/lib/tooltip/tooltip.directive.mjs +3 -3
- package/esm2020/lib/tooltip/tooltip.module.mjs +4 -4
- package/esm2020/lib/utilities/align.directive.mjs +3 -3
- package/esm2020/lib/utilities/bg-color.directive.mjs +3 -3
- package/esm2020/lib/utilities/border.directive.mjs +3 -3
- package/esm2020/lib/utilities/rounded.directive.mjs +3 -3
- package/esm2020/lib/utilities/text-color.directive.mjs +3 -3
- package/esm2020/lib/utilities/utilities.module.mjs +4 -4
- package/esm2020/lib/widget/widget-stat-a/widget-stat-a.component.mjs +3 -3
- package/esm2020/lib/widget/widget-stat-b/widget-stat-b.component.mjs +3 -3
- package/esm2020/lib/widget/widget-stat-c/widget-stat-c.component.mjs +3 -3
- package/esm2020/lib/widget/widget-stat-d/widget-stat-d.component.mjs +3 -3
- package/esm2020/lib/widget/widget-stat-e/widget-stat-e.component.mjs +3 -3
- package/esm2020/lib/widget/widget-stat-f/widget-stat-f.component.mjs +3 -3
- package/esm2020/lib/widget/widget.module.mjs +4 -4
- package/fesm2015/coreui-angular-pro.mjs +710 -708
- package/fesm2015/coreui-angular-pro.mjs.map +1 -1
- package/fesm2020/coreui-angular-pro.mjs +710 -708
- package/fesm2020/coreui-angular-pro.mjs.map +1 -1
- package/lib/dropdown/dropdown/dropdown.component.d.ts +2 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coreui-angular-pro.mjs","sources":["../../../projects/coreui-angular/src/lib/coreui.types.ts","../../../projects/coreui-angular/src/lib/shared/html-attr.directive.ts","../../../projects/coreui-angular/src/lib/shared/template-id.directive.ts","../../../projects/coreui-angular/src/lib/shared/shared.module.ts","../../../projects/coreui-angular/src/lib/accordion/accordion-button/accordion-button.directive.ts","../../../projects/coreui-angular/src/lib/accordion/accordion.service.ts","../../../projects/coreui-angular/src/lib/accordion/accordion/accordion.component.ts","../../../projects/coreui-angular/src/lib/collapse/collapse.animations.ts","../../../projects/coreui-angular/src/lib/collapse/collapse.directive.ts","../../../projects/coreui-angular/src/lib/accordion/accordion-item/accordion-item.component.ts","../../../projects/coreui-angular/src/lib/accordion/accordion-item/accordion-item.component.html","../../../projects/coreui-angular/src/lib/collapse/collapse.module.ts","../../../projects/coreui-angular/src/lib/accordion/accordion.module.ts","../../../projects/coreui-angular/src/lib/alert/alert-heading.directive.ts","../../../projects/coreui-angular/src/lib/alert/alert-link.directive.ts","../../../projects/coreui-angular/src/lib/button/button.directive.ts","../../../projects/coreui-angular/src/lib/button/button-close.directive.ts","../../../projects/coreui-angular/src/lib/alert/alert.component.ts","../../../projects/coreui-angular/src/lib/alert/alert.component.html","../../../projects/coreui-angular/src/lib/button/button.module.ts","../../../projects/coreui-angular/src/lib/alert/alert.module.ts","../../../projects/coreui-angular/src/lib/avatar/avatar.component.ts","../../../projects/coreui-angular/src/lib/avatar/avatar.component.html","../../../projects/coreui-angular/src/lib/avatar/avatar.module.ts","../../../projects/coreui-angular/src/lib/badge/badge.component.ts","../../../projects/coreui-angular/src/lib/badge/badge.component.html","../../../projects/coreui-angular/src/lib/badge/badge.module.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.html","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb/breadcrumb.component.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb/breadcrumb.component.html","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.html","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb.module.ts","../../../projects/coreui-angular/src/lib/button-group/button-group/button-group.component.ts","../../../projects/coreui-angular/src/lib/button-group/button-toolbar/button-toolbar.component.ts","../../../projects/coreui-angular/src/lib/button-group/button-group.module.ts","../../../projects/coreui-angular/src/lib/callout/callout.component.ts","../../../projects/coreui-angular/src/lib/callout/callout.module.ts","../../../projects/coreui-angular/src/lib/card/card.component.ts","../../../projects/coreui-angular/src/lib/card/card-body.component.ts","../../../projects/coreui-angular/src/lib/card/card-footer.component.ts","../../../projects/coreui-angular/src/lib/card/card-group.component.ts","../../../projects/coreui-angular/src/lib/card/card-header.component.ts","../../../projects/coreui-angular/src/lib/card/card-header-actions.component.ts","../../../projects/coreui-angular/src/lib/card/card-img.directive.ts","../../../projects/coreui-angular/src/lib/card/card-img-overlay/card-img-overlay.component.ts","../../../projects/coreui-angular/src/lib/card/card-img-overlay/card-img-overlay.component.html","../../../projects/coreui-angular/src/lib/card/card-link.directive.ts","../../../projects/coreui-angular/src/lib/card/card-subtitle.directive.ts","../../../projects/coreui-angular/src/lib/card/card-text.directive.ts","../../../projects/coreui-angular/src/lib/card/card-title.directive.ts","../../../projects/coreui-angular/src/lib/card/card.module.ts","../../../projects/coreui-angular/src/lib/services/intersection.service.ts","../../../projects/coreui-angular/src/lib/services/listeners.service.ts","../../../projects/coreui-angular/src/lib/carousel/carousel.service.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-state.ts","../../../projects/coreui-angular/src/lib/carousel/carousel.config.ts","../../../projects/coreui-angular/src/lib/carousel/carousel/carousel.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-caption/carousel-caption.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-control/carousel-control.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-control/carousel-control.component.html","../../../projects/coreui-angular/src/lib/carousel/carousel-indicators/carousel-indicators.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-indicators/carousel-indicators.component.html","../../../projects/coreui-angular/src/lib/carousel/carousel.animation.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-item/carousel-item.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-item/carousel-item.component.html","../../../projects/coreui-angular/src/lib/carousel/carousel-inner/carousel-inner.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-inner/carousel-inner.component.html","../../../projects/coreui-angular/src/lib/carousel/carousel.module.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-divider/dropdown-divider.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-header/dropdown-header.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown.service.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-menu/dropdown-menu.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown/dropdown.component.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-item/dropdown-item.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-item/dropdown-item-plain.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-close/dropdown-close.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown.module.ts","../../../projects/coreui-angular/src/lib/spinner/spinner.component.ts","../../../projects/coreui-angular/src/lib/spinner/spinner.component.html","../../../projects/coreui-angular/src/lib/element-cover/element-cover.component.ts","../../../projects/coreui-angular/src/lib/element-cover/element-cover.component.html","../../../projects/coreui-angular/src/lib/spinner/spinner.module.ts","../../../projects/coreui-angular/src/lib/element-cover/element-cover.module.ts","../../../projects/coreui-angular/src/lib/footer/footer.component.ts","../../../projects/coreui-angular/src/lib/footer/footer.module.ts","../../../projects/coreui-angular/src/lib/form/form/form.directive.ts","../../../projects/coreui-angular/src/lib/form/form-feedback/form-feedback.component.ts","../../../projects/coreui-angular/src/lib/form/input-group/input-group.component.ts","../../../projects/coreui-angular/src/lib/form/form-select/form-select.directive.ts","../../../projects/coreui-angular/src/lib/form/form-label/form-label.directive.ts","../../../projects/coreui-angular/src/lib/form/form-check/form-check-label.directive.ts","../../../projects/coreui-angular/src/lib/form/form-check/form-check.component.ts","../../../projects/coreui-angular/src/lib/form/form-check/form-check-input.directive.ts","../../../projects/coreui-angular/src/lib/form/form-control/form-control.directive.ts","../../../projects/coreui-angular/src/lib/form/form-text/form-text.directive.ts","../../../projects/coreui-angular/src/lib/form/form-floating/form-floating.directive.ts","../../../projects/coreui-angular/src/lib/form/input-group-text/input-group-text.directive.ts","../../../projects/coreui-angular/src/lib/form/form.module.ts","../../../projects/coreui-angular/src/lib/grid/container.component.ts","../../../projects/coreui-angular/src/lib/grid/col.directive.ts","../../../projects/coreui-angular/src/lib/grid/col.component.ts","../../../projects/coreui-angular/src/lib/grid/row.directive.ts","../../../projects/coreui-angular/src/lib/grid/row.component.ts","../../../projects/coreui-angular/src/lib/grid/gutter.directive.ts","../../../projects/coreui-angular/src/lib/grid/grid.module.ts","../../../projects/coreui-angular/src/lib/header/header/header.component.ts","../../../projects/coreui-angular/src/lib/header/header/header.component.html","../../../projects/coreui-angular/src/lib/header/header-brand/header-brand.component.ts","../../../projects/coreui-angular/src/lib/header/header-divider/header-divider.component.ts","../../../projects/coreui-angular/src/lib/header/header-nav/header-nav.component.ts","../../../projects/coreui-angular/src/lib/header/header-text/header-text.component.ts","../../../projects/coreui-angular/src/lib/header/header-toggler/header-toggler.directive.ts","../../../projects/coreui-angular/src/lib/header/header.module.ts","../../../projects/coreui-angular/src/lib/image/img.directive.ts","../../../projects/coreui-angular/src/lib/image/img.module.ts","../../../projects/coreui-angular/src/lib/list-group/list-group.directive.ts","../../../projects/coreui-angular/src/lib/list-group/list-group-item.directive.ts","../../../projects/coreui-angular/src/lib/list-group/list-group.module.ts","../../../projects/coreui-angular/src/lib/loading-button/loading-button.component.ts","../../../projects/coreui-angular/src/lib/loading-button/loading-button.component.html","../../../projects/coreui-angular/src/lib/loading-button/loading-button.module.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select-optgroup/multi-select-optgroup-label.component.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select-optgroup/multi-select-optgroup-label.component.html","../../../projects/coreui-angular/src/lib/multi-select/multi-select.service.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select-option/multi-select-option.component.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select-option/multi-select-option.component.html","../../../projects/coreui-angular/src/lib/multi-select/multi-select-optgroup/multi-select-optgroup.component.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select-optgroup/multi-select-optgroup.component.html","../../../projects/coreui-angular/src/lib/multi-select/multi-select-tag/multi-select-tag.component.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select-tag/multi-select-tag.component.html","../../../projects/coreui-angular/src/lib/multi-select/multi-select-native-select/multi-select-native-select.component.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select-native-select/multi-select-native-select.component.html","../../../projects/coreui-angular/src/lib/multi-select/multi-select/multi-select.component.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select/multi-select.component.html","../../../projects/coreui-angular/src/lib/multi-select/multi-select.module.ts","../../../projects/coreui-angular/src/lib/nav/nav-link.directive.ts","../../../projects/coreui-angular/src/lib/nav/nav-item.component.ts","../../../projects/coreui-angular/src/lib/nav/nav-item.component.html","../../../projects/coreui-angular/src/lib/nav/nav.component.ts","../../../projects/coreui-angular/src/lib/nav/nav.module.ts","../../../projects/coreui-angular/src/lib/navbar/navbar.component.ts","../../../projects/coreui-angular/src/lib/navbar/navbar.component.html","../../../projects/coreui-angular/src/lib/navbar/navbar-brand/navbar-brand.directive.ts","../../../projects/coreui-angular/src/lib/navbar/navbar-nav/navbar-nav.component.ts","../../../projects/coreui-angular/src/lib/navbar/navbar-text/navbar-text.component.ts","../../../projects/coreui-angular/src/lib/navbar/navbar-toggler/navbar-toggler.directive.ts","../../../projects/coreui-angular/src/lib/navbar/navbar.module.ts","../../../projects/coreui-angular/src/lib/modal/modal-body/modal-body.component.ts","../../../projects/coreui-angular/src/lib/modal/modal-content/modal-content.component.ts","../../../projects/coreui-angular/src/lib/modal/modal-dialog/modal-dialog.component.ts","../../../projects/coreui-angular/src/lib/modal/modal.service.ts","../../../projects/coreui-angular/src/lib/modal/modal-dismiss/modal-toggle.directive.ts","../../../projects/coreui-angular/src/lib/modal/modal-footer/modal-footer.component.ts","../../../projects/coreui-angular/src/lib/modal/modal-header/modal-header.component.ts","../../../projects/coreui-angular/src/lib/modal/modal-title/modal-title.directive.ts","../../../projects/coreui-angular/src/lib/backdrop/backdrop.service.ts","../../../projects/coreui-angular/src/lib/modal/modal/modal.component.ts","../../../projects/coreui-angular/src/lib/modal/modal/modal.component.html","../../../projects/coreui-angular/src/lib/modal/modal.module.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas.service.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas/offcanvas.component.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas/offcanvas.component.html","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas-body/offcanvas-body.component.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas-header/offcanvas-header.component.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas-title/offcanvas-title.directive.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas.module.ts","../../../projects/coreui-angular/src/lib/pagination/page-link/page-link.directive.ts","../../../projects/coreui-angular/src/lib/pagination/page-item/page-item.directive.ts","../../../projects/coreui-angular/src/lib/pagination/page-item/page-item.component.ts","../../../projects/coreui-angular/src/lib/pagination/pagination/pagination.component.ts","../../../projects/coreui-angular/src/lib/pagination/pagination/pagination.component.html","../../../projects/coreui-angular/src/lib/pagination/pagination.module.ts","../../../projects/coreui-angular/src/lib/placeholder/placeholder.directive.ts","../../../projects/coreui-angular/src/lib/placeholder/placeholder-animation.directive.ts","../../../projects/coreui-angular/src/lib/placeholder/placeholder.module.ts","../../../projects/coreui-angular/src/lib/popover/popover/popover.component.ts","../../../projects/coreui-angular/src/lib/popover/popover/popover.component.html","../../../projects/coreui-angular/src/lib/popover/popover.directive.ts","../../../projects/coreui-angular/src/lib/popover/popover.module.ts","../../../projects/coreui-angular/src/lib/progress/progress.component.ts","../../../projects/coreui-angular/src/lib/progress/progress-bar.component.ts","../../../projects/coreui-angular/src/lib/progress/progress.module.ts","../../../projects/coreui-angular/src/lib/services/class-toggle.service.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar.service.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar/sidebar.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-brand/sidebar-brand.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-brand/sidebar-brand.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-toggler/sidebar-toggler.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-header/sidebar-header.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-header/sidebar-header.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-footer/sidebar-footer.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-footer/sidebar-footer.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav.service.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-title.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-label.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-label.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-link.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-link.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-group.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar.module.ts","../../../projects/coreui-angular/src/lib/smart-pagination/smart-pagination.component.ts","../../../projects/coreui-angular/src/lib/smart-pagination/smart-pagination.component.html","../../../projects/coreui-angular/src/lib/smart-pagination/smart-pagination.module.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table-filter/smart-table-filter.component.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table-filter/smart-table-filter.component.html","../../../projects/coreui-angular/src/lib/table/table-color.directive.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table-head/smart-table-head.component.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table-head/smart-table-head.component.html","../../../projects/coreui-angular/src/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.html","../../../projects/coreui-angular/src/lib/table/table.directive.ts","../../../projects/coreui-angular/src/lib/utilities/align.directive.ts","../../../projects/coreui-angular/src/lib/table/table-active.directive.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table/smart-table.component.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table/smart-table.component.html","../../../projects/coreui-angular/src/lib/table/table.module.ts","../../../projects/coreui-angular/src/lib/utilities/bg-color.directive.ts","../../../projects/coreui-angular/src/lib/utilities/border.directive.ts","../../../projects/coreui-angular/src/lib/utilities/text-color.directive.ts","../../../projects/coreui-angular/src/lib/utilities/rounded.directive.ts","../../../projects/coreui-angular/src/lib/utilities/utilities.module.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table.module.ts","../../../projects/coreui-angular/src/lib/tabs/tab.service.ts","../../../projects/coreui-angular/src/lib/tabs/tab-pane/tab-pane.component.ts","../../../projects/coreui-angular/src/lib/tabs/tab-pane/tab-pane.component.html","../../../projects/coreui-angular/src/lib/tabs/tab-content/tab-content.component.ts","../../../projects/coreui-angular/src/lib/tabs/tab-content/tab-content.component.html","../../../projects/coreui-angular/src/lib/tabs/tab-content-ref.directive.ts","../../../projects/coreui-angular/src/lib/tabs/tabs.module.ts","../../../projects/coreui-angular/src/lib/toast/toaster/toaster.service.ts","../../../projects/coreui-angular/src/lib/toast/toast/toast.component.ts","../../../projects/coreui-angular/src/lib/toast/toast/toast.component.html","../../../projects/coreui-angular/src/lib/toast/toast-body/toast-body.component.ts","../../../projects/coreui-angular/src/lib/toast/toast-close.directive.ts","../../../projects/coreui-angular/src/lib/toast/toast-header/toast-header.component.ts","../../../projects/coreui-angular/src/lib/toast/toast-header/toast-header.component.html","../../../projects/coreui-angular/src/lib/toast/toaster/toaster-host.directive.ts","../../../projects/coreui-angular/src/lib/toast/toaster/toaster.component.ts","../../../projects/coreui-angular/src/lib/toast/toaster/toaster.component.html","../../../projects/coreui-angular/src/lib/toast/toast.module.ts","../../../projects/coreui-angular/src/lib/tooltip/tooltip/tooltip.component.ts","../../../projects/coreui-angular/src/lib/tooltip/tooltip/tooltip.component.html","../../../projects/coreui-angular/src/lib/tooltip/tooltip.directive.ts","../../../projects/coreui-angular/src/lib/tooltip/tooltip.module.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-a/widget-stat-a.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-a/widget-stat-a.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-b/widget-stat-b.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-b/widget-stat-b.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-c/widget-stat-c.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-c/widget-stat-c.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-d/widget-stat-d.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-d/widget-stat-d.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-e/widget-stat-e.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-e/widget-stat-e.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-f/widget-stat-f.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-f/widget-stat-f.component.html","../../../projects/coreui-angular/src/lib/widget/widget.module.ts","../../../projects/coreui-angular/src/public-api.ts","../../../projects/coreui-angular/src/coreui-angular-pro.ts"],"sourcesContent":["export enum BreakpointInfix {\r\n xs = 'xs',\r\n sm = 'sm',\r\n md = 'md',\r\n lg = 'lg',\r\n xl = 'xl',\r\n xxl = 'xxl'\r\n}\r\n\r\nexport type BreakpointInfixStrings = keyof typeof BreakpointInfix;\r\n\r\nexport type Breakpoints = BreakpointInfixStrings | string;\r\n\r\nexport type Sizes = 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | string;\r\n\r\nexport type Colors =\r\n | 'primary'\r\n | 'secondary'\r\n | 'success'\r\n | 'danger'\r\n | 'warning'\r\n | 'info'\r\n | 'dark'\r\n | 'light'\r\n | 'primary-gradient'\r\n | 'secondary-gradient'\r\n | 'success-gradient'\r\n | 'danger-gradient'\r\n | 'warning-gradient'\r\n | 'info-gradient'\r\n | 'dark-gradient'\r\n | 'light-gradient'\r\n | string;\r\n\r\n// export type ColorsGradient =\r\n// | Colors\r\n// | `${Colors}-gradient`;\r\n\r\nexport type BackgroundColors = Colors | 'body' | 'white' | 'transparent';\r\n\r\nexport type Directions = 'down' | 'up' | 'start' | 'end' | '';\r\n\r\nexport type TextColors =\r\n | Colors\r\n | 'body'\r\n | 'white'\r\n | 'muted'\r\n | 'black-50'\r\n | 'white-50'\r\n | 'high-emphasis'\r\n | 'medium-emphasis'\r\n | 'disabled'\r\n | 'high-emphasis-inverse'\r\n | 'medium-emphasis-inverse'\r\n | 'disabled-inverse';\r\n\r\nexport type Alignment =\r\n | 'baseline'\r\n | 'top'\r\n | 'middle'\r\n | 'bottom'\r\n | 'text-top'\r\n | 'text-bottom';\r\n\r\nexport type BadgePositions =\r\n | 'top-start'\r\n | 'top-end'\r\n | 'bottom-end'\r\n | 'bottom-start'\r\n | string\r\n | undefined;\r\n\r\nexport type Placements =\r\n | 'auto'\r\n | 'auto-start'\r\n | 'auto-end'\r\n | 'top-end'\r\n | 'top'\r\n | 'top-start'\r\n | 'bottom-end'\r\n | 'bottom'\r\n | 'bottom-start'\r\n | 'right-start'\r\n | 'right'\r\n | 'right-end'\r\n | 'left-start'\r\n | 'left'\r\n | 'left-end'\r\n | undefined;\r\n\r\nexport type Shapes =\r\n | 'rounded'\r\n | 'rounded-top'\r\n | 'rounded-end'\r\n | 'rounded-bottom'\r\n | 'rounded-start'\r\n | 'rounded-circle'\r\n | 'rounded-pill'\r\n | 'rounded-0'\r\n | 'rounded-1'\r\n | 'rounded-2'\r\n | 'rounded-3'\r\n | string;\r\n\r\nexport type Triggers = 'hover' | 'focus' | 'click';\r\n\r\nexport type Positions = 'fixed' | 'sticky';\r\n\r\nexport type InputType =\r\n | 'button'\r\n | 'color'\r\n | 'date'\r\n | 'datetime'\r\n | 'datetime-local'\r\n | 'email'\r\n | 'file'\r\n | 'hidden'\r\n | 'image'\r\n | 'month'\r\n | 'number'\r\n | 'password'\r\n | 'range'\r\n | 'reset'\r\n | 'search'\r\n | 'submit'\r\n | 'tel'\r\n | 'text'\r\n | 'time'\r\n | 'url'\r\n | 'week'\r\n | 'checkbox'\r\n | 'radio';\r\n\r\nexport interface INavLinkProps {\r\n queryParams?: { [k: string]: any };\r\n fragment?: string;\r\n queryParamsHandling?: 'merge' | 'preserve' | '' | null;\r\n preserveFragment?: boolean;\r\n skipLocationChange?: boolean;\r\n replaceUrl?: boolean;\r\n state?: { [k: string]: any };\r\n routerLinkActiveOptions?: { exact: boolean };\r\n routerLinkActive?: string | string[];\r\n}\r\n\r\nexport interface INavAttributes {\r\n [propName: string]: any;\r\n}\r\n\r\nexport type ButtonType = 'button' | 'submit' | 'reset';\r\n","import {Directive, ElementRef, Input, OnInit, Renderer2} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cHtmlAttr]',\r\n exportAs: 'cHtmlAttr'\r\n})\r\nexport class HtmlAttributesDirective implements OnInit {\r\n\r\n // @ts-ignore\r\n @Input() cHtmlAttr: {[key: string]: any };\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n private el: ElementRef\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n const attribs = this.cHtmlAttr;\r\n for (const attr in attribs) {\r\n if (attr === 'style' && typeof(attribs[attr]) === 'object' ) {\r\n this.setStyle(attribs[attr]);\r\n } else if (attr === 'class') {\r\n this.addClass(attribs[attr]);\r\n } else {\r\n this.setAttrib(attr, attribs[attr]);\r\n }\r\n }\r\n }\r\n\r\n private setStyle(styles: { [x: string]: any; }): void {\r\n for (const style in styles) {\r\n if (style) {\r\n this.renderer.setStyle(this.el.nativeElement, style, styles[style]);\r\n }\r\n }\r\n }\r\n\r\n private addClass(classes: string): void {\r\n const classArray = (Array.isArray(classes) ? classes : classes.split(' '));\r\n classArray.filter((element) => element.length > 0).forEach(element => {\r\n this.renderer.addClass(this.el.nativeElement, element );\r\n });\r\n }\r\n\r\n private setAttrib(key: string, value: string | null): void {\r\n value !== null ?\r\n this.renderer.setAttribute(this.el.nativeElement, key, value ) :\r\n this.renderer.removeAttribute(this.el.nativeElement, key);\r\n }\r\n}\r\n","import { Directive, Input, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cTemplateId]'\r\n})\r\nexport class TemplateIdDirective {\r\n @Input('cTemplateId') id!: string;\r\n\r\n constructor(\r\n public templateRef: TemplateRef<any>\r\n ) { }\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n// import { OutClickService } from './out-click.service';\r\n// import { OutClickDirective } from './out-click.directive';\r\nimport { HtmlAttributesDirective } from './html-attr.directive';\r\nimport { TemplateIdDirective } from './template-id.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n // OutClickDirective,\r\n HtmlAttributesDirective,\r\n TemplateIdDirective\r\n ],\r\n exports: [\r\n // OutClickDirective,\r\n HtmlAttributesDirective,\r\n TemplateIdDirective\r\n ],\r\n providers: []\r\n})\r\nexport class SharedModule {\r\n\r\n static forRoot(): ModuleWithProviders<SharedModule> {\r\n return {\r\n ngModule: SharedModule,\r\n // providers: [\r\n // {provide: OutClickService}\r\n // ]\r\n };\r\n }\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cAccordionButton]'\r\n})\r\nexport class AccordionButtonDirective {\r\n\r\n /**\r\n * Toggles an accordion button collapsed state. Use in accordionHeaderTemplate. [docs]\r\n * @type boolean\r\n */\r\n @Input() collapsed!: boolean;\r\n\r\n /**\r\n * Default type for cAccordionButton. [docs]\r\n * @type string\r\n * @default 'button'\r\n */\r\n @HostBinding('attr.type')\r\n @Input() type = 'button';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'accordion-button': true,\r\n collapsed: this.collapsed\r\n };\r\n }\r\n\r\n @HostBinding('attr.aria-expanded') get ariaExpanded(): boolean {\r\n return !this.collapsed;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AccordionItemComponent } from './accordion-item/accordion-item.component';\r\n\r\n@Injectable()\r\nexport class AccordionService {\r\n\r\n items: AccordionItemComponent[] = [];\r\n alwaysOpen = false;\r\n\r\n constructor() { }\r\n\r\n addItem(item: AccordionItemComponent): void {\r\n this.items.push(item);\r\n }\r\n\r\n removeItem(item: AccordionItemComponent): void {\r\n const index = this.items.indexOf(item);\r\n if (index !== -1) {\r\n this.items.splice(index, 1);\r\n }\r\n }\r\n\r\n toggleItem(item: AccordionItemComponent): void {\r\n item.visible = !item.visible;\r\n this.closeOtherItems(item);\r\n }\r\n\r\n closeOtherItems(openItem: AccordionItemComponent): void {\r\n if (!this.alwaysOpen) {\r\n this.items.forEach((item: AccordionItemComponent) => {\r\n if (item !== openItem) {\r\n item.visible = false;\r\n }\r\n });\r\n }\r\n }\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\nimport { AccordionService } from '../accordion.service';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-accordion',\r\n template: `<ng-content></ng-content>`,\r\n styleUrls: ['./accordion.component.scss'],\r\n exportAs: 'cAccordionItem',\r\n providers: [AccordionService]\r\n})\r\nexport class AccordionComponent {\r\n\r\n static ngAcceptInputType_alwaysOpen: BooleanInput;\r\n\r\n /**\r\n * Removes the default background-color, some borders, and some rounded corners to render accordions edge-to-edge with their parent container.\r\n * @type boolean\r\n */\r\n @Input() flush?: boolean;\r\n /**\r\n * Make accordion items stay open when another item is opened\r\n * @type boolean\r\n */\r\n @Input()\r\n set alwaysOpen(value: boolean) {\r\n this.accordionService.alwaysOpen = coerceBooleanProperty(value);\r\n }\r\n get alwaysOpen(): boolean {\r\n return this.accordionService.alwaysOpen;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n accordion: true,\r\n 'accordion-flush': !!this.flush\r\n };\r\n }\r\n\r\n constructor(\r\n private accordionService: AccordionService\r\n ) {}\r\n\r\n}\r\n","import { animation, animate, style } from '@angular/animations';\r\n\r\nexport const expandAnimation = animation([\r\n style({ height: 0, visibility: 'hidden', overflow: 'hidden', paddingTop: 0, paddingBottom: 0 }),\r\n animate('{{ time }} {{ easing }}', style({ height: '*', visibility: 'visible', paddingTop: '*', paddingBottom: '*', minHeight: '*' })\r\n ),\r\n animate('{{ time }}', style({opacity: '*', overflow: '*'})),\r\n]);\r\n\r\nexport const collapseAnimation = animation([\r\n style({ height: '*', visibility: 'visible', overflow: 'hidden', paddingTop: '*', paddingBottom: '*', minHeight: '*' }),\r\n animate(\r\n '{{ time }} {{ easing }}',\r\n style({ height: 0, visibility: 'hidden', opacity: 0, overflow: 'hidden', paddingTop: 0, paddingBottom: 0, minHeight: 0 })\r\n )\r\n]);\r\n\r\nexport const expandHorizontalAnimation = animation([\r\n style({ width: 0, visibility: 'hidden', paddingLeft: 0, paddingRight: 0 }),\r\n animate('{{ time }} {{ easing }}', style({ width: '*', visibility: 'visible', paddingLeft: '*', paddingRight: '*', minWidth: '*' })\r\n ),\r\n animate('{{ time }}', style({opacity: '*'})),\r\n]);\r\n\r\nexport const collapseHorizontalAnimation = animation([\r\n style({ width: '*', visibility: 'visible', paddingLeft: '*', paddingRight: '*', minWidth: '*' }),\r\n animate(\r\n '{{ time }} {{ easing }}',\r\n style({ width: 0, visibility: 'hidden', opacity: 0, paddingLeft: 0, paddingRight: 0, minWidth: 0 })\r\n )\r\n]);\r\n","import {\r\n AfterViewInit,\r\n Directive,\r\n DoCheck,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n Output,\r\n Renderer2,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { AnimationBuilder, AnimationPlayer, useAnimation } from '@angular/animations';\r\n\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport {\r\n collapseAnimation,\r\n collapseHorizontalAnimation,\r\n expandAnimation,\r\n expandHorizontalAnimation\r\n} from './collapse.animations';\r\n\r\n// todo\r\n// tslint:disable-next-line:no-conflicting-lifecycle\r\n@Directive({\r\n selector: '[cCollapse]',\r\n exportAs: 'cCollapse'\r\n})\r\nexport class CollapseDirective implements OnChanges, OnDestroy, DoCheck, AfterViewInit {\r\n\r\n static ngAcceptInputType_horizontal: BooleanInput;\r\n static ngAcceptInputType_navbar: BooleanInput;\r\n\r\n /**\r\n * @ignore\r\n */\r\n @Input()\r\n set animate(value: boolean) {\r\n this._animate = value;\r\n }\r\n get animate(): boolean {\r\n return this._animate;\r\n }\r\n private _animate = true;\r\n\r\n /**\r\n * Set horizontal collapsing to transition the width instead of height.\r\n */\r\n @Input()\r\n set horizontal(value: boolean) {\r\n this._horizontal = coerceBooleanProperty(value);\r\n }\r\n get horizontal(): boolean {\r\n return this._horizontal;\r\n }\r\n private _horizontal: boolean = false;\r\n\r\n /**\r\n * Toggle the visibility of collapsible element.\r\n */\r\n @Input()\r\n set visible(value) {\r\n this._visible = value;\r\n }\r\n get visible(): boolean {\r\n return this._visible;\r\n }\r\n private _visible = false;\r\n\r\n /**\r\n * Add `navbar` prop for grouping and hiding navbar contents by a parent breakpoint.\r\n */\r\n @Input()\r\n set navbar(value: boolean) {\r\n this._navbar = coerceBooleanProperty(value);\r\n };\r\n get navbar() {\r\n return this._navbar;\r\n }\r\n private _navbar = false;\r\n\r\n /**\r\n * @ignore\r\n */\r\n @Input() duration = '350ms';\r\n /**\r\n * @ignore\r\n */\r\n @Input() transition = 'ease';\r\n /**\r\n * Event emitted on visibility change. [docs]\r\n * @type string\r\n */\r\n @Output() collapseChange = new EventEmitter<string>();\r\n\r\n private player!: AnimationPlayer;\r\n private readonly host: HTMLElement;\r\n // private scrollHeight!: number;\r\n private scrollWidth!: number;\r\n private collapsing: boolean = false;\r\n\r\n constructor(\r\n private hostElement: ElementRef,\r\n private renderer: Renderer2,\r\n private animationBuilder: AnimationBuilder\r\n ) {\r\n this.host = this.hostElement.nativeElement;\r\n this.renderer.setStyle(this.host, 'display', 'none');\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'navbar-collapse': this.navbar,\r\n show: this.visible,\r\n 'collapse-horizontal': this.horizontal,\r\n collapsing: this.collapsing\r\n // collapse: !this.collapsing && !this.visible\r\n };\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n if (this.visible) {\r\n this.toggle();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroyPlayer();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['visible']) {\r\n if (!changes['visible'].firstChange || !changes['visible'].currentValue) {\r\n this.toggle(changes['visible'].currentValue);\r\n }\r\n }\r\n }\r\n\r\n ngDoCheck(): void {\r\n if (this._visible !== this.visible) {\r\n this.toggle();\r\n }\r\n }\r\n\r\n toggle(visible = this.visible): void {\r\n this.createPlayer(visible);\r\n this.player?.play();\r\n }\r\n\r\n destroyPlayer(): void {\r\n this.player?.destroy();\r\n }\r\n\r\n createPlayer(visible: boolean = this.visible): void {\r\n if (this.player?.hasStarted()) {\r\n this.destroyPlayer();\r\n }\r\n\r\n if (visible) {\r\n this.renderer.removeStyle(this.host, 'display');\r\n }\r\n\r\n const duration = this.animate ? this.duration : '0ms';\r\n\r\n const expand = this.horizontal ? expandHorizontalAnimation : expandAnimation;\r\n const collapse = this.horizontal ? collapseHorizontalAnimation : collapseAnimation;\r\n\r\n const animationFactory = this.animationBuilder.build(\r\n useAnimation(visible ? expand : collapse, { params: { time: duration, easing: this.transition } })\r\n );\r\n\r\n this.player = animationFactory.create(this.host);\r\n this.player.onStart(() => {\r\n this.setMaxSize();\r\n this.visible = visible;\r\n this.collapsing = true;\r\n this.collapseChange.emit(visible ? 'opening' : 'collapsing');\r\n });\r\n this.player.onDone(() => {\r\n this.collapsing = false;\r\n this.collapseChange.emit(visible ? 'open' : 'collapsed');\r\n });\r\n }\r\n\r\n setMaxSize() {\r\n setTimeout(() => {\r\n if (this.horizontal) {\r\n this.scrollWidth = this.host.scrollWidth;\r\n this.scrollWidth > 0 && this.renderer.setStyle(this.host, 'maxWidth', `${this.scrollWidth}px`);\r\n // } else {\r\n // this.scrollHeight = this.host.scrollHeight;\r\n // this.scrollHeight > 0 && this.renderer.setStyle(this.host, 'maxHeight', `${this.scrollHeight}px`);\r\n }\r\n });\r\n }\r\n}\r\n","import {\r\n AfterContentInit,\r\n Component,\r\n ContentChildren,\r\n HostBinding,\r\n Input,\r\n OnDestroy,\r\n OnInit, QueryList,\r\n} from '@angular/core';\r\n\r\nimport { AccordionService } from '../accordion.service';\r\nimport { TemplateIdDirective } from '../../shared';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nlet nextId = 0;\r\n\r\n@Component({\r\n selector: 'c-accordion-item',\r\n templateUrl: './accordion-item.component.html',\r\n styleUrls: ['./accordion-item.component.scss'],\r\n exportAs: 'cAccordionItem',\r\n})\r\nexport class AccordionItemComponent implements OnInit, OnDestroy, AfterContentInit {\r\n\r\n static ngAcceptInputType_visible: BooleanInput;\r\n\r\n /**\r\n * Toggle an accordion item programmatically\r\n * @type boolean\r\n * @default false\r\n */\r\n @Input()\r\n set visible(value: boolean){\r\n this._visible = coerceBooleanProperty(value);\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible: boolean = false;\r\n\r\n @Input()\r\n set open(value: boolean) {\r\n console.warn('c-accordion-item \"open\" prop is deprecated, use \"visible\" prop instead.')\r\n this.visible = value || this.visible;\r\n }\r\n get open() {\r\n return this.visible;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'accordion-item': true,\r\n };\r\n }\r\n contentId = `accordion-item-${nextId++}`;\r\n itemContext = { $implicit: this.visible };\r\n templates: any = {};\r\n\r\n @ContentChildren(TemplateIdDirective, {descendants: true}) contentTemplates!: QueryList<TemplateIdDirective>;\r\n\r\n constructor(\r\n private accordionService: AccordionService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.accordionService.addItem(this);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.accordionService.removeItem(this);\r\n }\r\n\r\n toggleItem(): void {\r\n this.accordionService.toggleItem(this);\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.contentTemplates.forEach((child: TemplateIdDirective) => {\r\n this.templates[child.id] = child.templateRef;\r\n });\r\n }\r\n}\r\n\r\n","<ng-container>\r\n <div class=\"accordion-header\">\r\n <ng-container *ngTemplateOutlet=\"templates['accordionHeaderTemplate'] || defaultAccordionHeaderTemplate; context: itemContext\"></ng-container>\r\n </div>\r\n <div class=\"accordion-collapse\" cCollapse [visible]=\"visible\" [attr.aria-expanded]=\"visible\" [id]=\"contentId\">\r\n <ng-container *ngTemplateOutlet=\"templates['accordionBodyTemplate'] || defaultAccordionBodyTemplate; context: itemContext\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-template #defaultAccordionHeaderTemplate>\r\n <button cAccordionButton [collapsed]=\"!visible\" [attr.aria-controls]=\"contentId\" (click)=\"toggleItem()\">\r\n <ng-container\r\n *ngTemplateOutlet=\"templates['accordionHeader'] || defaultAccordionHeaderContentTemplate; context: itemContext\">\r\n </ng-container>\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #defaultAccordionHeaderContentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n\r\n<ng-template #defaultAccordionBodyTemplate>\r\n <div class=\"accordion-body\">\r\n <ng-container\r\n *ngTemplateOutlet=\"templates['accordionBody'] || defaultAccordionBodyContentTemplate; context: itemContext\">\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #defaultAccordionBodyContentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n","import { NgModule, ModuleWithProviders } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CollapseDirective } from './collapse.directive';\r\n\r\n@NgModule({\r\n declarations: [CollapseDirective],\r\n exports: [CollapseDirective],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class CollapseModule {\r\n static forRoot(): ModuleWithProviders<CollapseModule> {\r\n return { ngModule: CollapseModule, providers: [] };\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AccordionComponent } from './accordion/accordion.component';\r\nimport { AccordionButtonDirective } from './accordion-button/accordion-button.directive';\r\nimport { AccordionItemComponent } from './accordion-item/accordion-item.component';\r\nimport { AccordionService } from './accordion.service';\r\nimport { CollapseModule } from '../collapse';\r\nimport { SharedModule } from '../shared';\r\n\r\n@NgModule({\r\n declarations: [\r\n AccordionComponent,\r\n AccordionButtonDirective,\r\n AccordionItemComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n CollapseModule,\r\n SharedModule\r\n ],\r\n exports: [\r\n AccordionComponent,\r\n AccordionButtonDirective,\r\n AccordionItemComponent,\r\n ],\r\n providers: [\r\n AccordionService\r\n ]\r\n})\r\nexport class AccordionModule {\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cAlertHeading]'\r\n})\r\nexport class AlertHeadingDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'alert-heading': true,\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cAlertLink]'\r\n})\r\nexport class AlertLinkDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'alert-link': true,\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { coerceBooleanProperty, BooleanInput } from '@angular/cdk/coercion';\r\n\r\nimport { ButtonType, Colors, Shapes } from '../coreui.types';\r\n\r\n@Directive({\r\n selector: '[cButton]',\r\n exportAs: 'cButton'\r\n})\r\nexport class ButtonDirective {\r\n\r\n constructor() {}\r\n\r\n static ngAcceptInputType_active: BooleanInput;\r\n private _active = false;\r\n static ngAcceptInputType_disabled: BooleanInput;\r\n private _disabled = false;\r\n\r\n /**\r\n * Toggle the active state for the component. [docs]\r\n * @type boolean\r\n */\r\n @Input()\r\n get active(): boolean {\r\n return this._active;\r\n }\r\n set active(value: boolean) {\r\n this._active = coerceBooleanProperty(value);\r\n }\r\n\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors. [docs]\r\n * @type Colors\r\n */\r\n @Input() color?: Colors = 'primary';\r\n /**\r\n * Toggle the disabled state for the component.\r\n * @type boolean\r\n */\r\n @Input()\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n /**\r\n * Select the shape of the component.\r\n * @type { 'rounded' | 'rounded-top' | 'rounded-end' | 'rounded-bottom' | 'rounded-start' | 'rounded-circle' | 'rounded-pill' | 'rounded-0' | 'rounded-1' | 'rounded-2' | 'rounded-3' | string }\r\n */\r\n @Input() shape?: Shapes;\r\n /**\r\n * Size the component small or large.\r\n * @type {'sm' | 'lg'}\r\n */\r\n @Input() size?: 'sm' | 'lg' | '' = '';\r\n /**\r\n * Specifies the type of button. Always specify the type attribute for the `<button>` element.\r\n * Different browsers may use different default types for the `<button>` element.\r\n */\r\n @HostBinding('attr.type')\r\n @Input() type: ButtonType = 'button';\r\n /**\r\n * Set the button variant to an outlined button or a ghost button.\r\n * @type {'ghost' | 'outline'}\r\n */\r\n @Input() variant?: 'ghost' | 'outline';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n btn: true,\r\n [`btn-${this.color}`]: !!this.color && !this.variant,\r\n [`btn-${this.variant}`]: !!this.variant && !this.color,\r\n [`btn-${this.variant}-${this.color}`]: !!this.variant && !!this.color,\r\n [`btn-${this.size}`]: !!this.size,\r\n [`${this.shape}`]: !!this.shape,\r\n disabled: this.disabled,\r\n active: this.active\r\n };\r\n }\r\n\r\n @HostBinding('attr.aria-disabled')\r\n get ariaDisabled () {\r\n return this.disabled || null;\r\n };\r\n\r\n @HostBinding('attr.aria-pressed')\r\n get isActive(): boolean | null {\r\n return this.active || null;\r\n }\r\n\r\n @HostBinding('attr.disabled')\r\n get attrDisabled () {\r\n return this.disabled ? '' : null;\r\n };\r\n\r\n @HostBinding('attr.tabindex')\r\n get tabIndex(): string | null {\r\n return this.disabled ? '-1' : null;\r\n }\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { ButtonDirective } from './button.directive';\r\n\r\n@Directive({\r\n selector: '[cButtonClose]'\r\n})\r\nexport class ButtonCloseDirective extends ButtonDirective {\r\n\r\n static ngAcceptInputType_white: BooleanInput;\r\n private _white = false;\r\n /**\r\n * Change the default color to white.\r\n * @type boolean\r\n */\r\n @Input()\r\n get white(): boolean {\r\n return this._white;\r\n }\r\n set white(value: boolean) {\r\n this._white = coerceBooleanProperty(value);\r\n }\r\n\r\n @HostBinding('class')\r\n override get hostClasses(): any {\r\n return {\r\n 'btn-close': true,\r\n 'btn-close-white': this.white,\r\n [`btn-${this.size}`]: !!this.size,\r\n disabled: this.disabled,\r\n active: this.active,\r\n };\r\n }\r\n}\r\n","import {\r\n AfterContentInit,\r\n Component,\r\n ContentChildren,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n Output,\r\n QueryList\r\n} from '@angular/core';\r\nimport { animate, AnimationEvent, state, style, transition, trigger } from '@angular/animations';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { Colors } from '../coreui.types';\r\nimport { TemplateIdDirective } from '../shared';\r\n\r\ntype AnimateType = ('hide' | 'show');\r\n\r\n@Component({\r\n selector: 'c-alert',\r\n templateUrl: './alert.component.html',\r\n styleUrls: ['./alert.component.scss'],\r\n exportAs: 'cAlert',\r\n animations: [\r\n trigger('fadeInOut', [\r\n state('show', style({opacity: 1, height: '*', padding: '*', border: '*', margin: '*', overflow: 'hidden'})),\r\n state('hide', style({opacity: 0, height: 0, padding: 0, border: 0, margin: 0, overflow: 'hidden'})),\r\n state('void', style({opacity: 0, height: 0, padding: 0, border: 0, margin: 0, overflow: 'hidden'})),\r\n transition('show => hide', [\r\n animate('.3s ease-out'),\r\n ]),\r\n transition('hide => show', [\r\n animate('.3s ease-in'),\r\n ]),\r\n transition('show => void', [\r\n animate('.3s ease-out'),\r\n ]),\r\n transition('void => show', [\r\n animate('.3s ease-in'),\r\n ]),\r\n ])\r\n ]\r\n})\r\nexport class AlertComponent implements AfterContentInit {\r\n\r\n static ngAcceptInputType_dismissible: BooleanInput;\r\n static ngAcceptInputType_fade: BooleanInput;\r\n static ngAcceptInputType_visible: BooleanInput;\r\n\r\n hide!: boolean;\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n *\r\n * @type Colors\r\n * @default 'primary'\r\n */\r\n @Input() color: Colors = 'primary';\r\n\r\n /**\r\n * Optionally adds a close button to alert and allow it to self dismiss.\r\n * @type boolean\r\n */\r\n @Input()\r\n get dismissible(): boolean {\r\n return this._dismissible;\r\n }\r\n set dismissible(value: boolean) {\r\n this._dismissible = coerceBooleanProperty(value);\r\n }\r\n private _dismissible = false;\r\n\r\n /**\r\n * Adds animation for dismissible alert.\r\n * @type boolean\r\n */\r\n @Input()\r\n get fade(): boolean {\r\n return this._fade;\r\n }\r\n set fade(value: boolean) {\r\n this._fade = coerceBooleanProperty(value);\r\n }\r\n private _fade = false;\r\n\r\n /**\r\n * Default role for alert. [docs]\r\n * @type string\r\n * @default 'alert'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'alert';\r\n\r\n /**\r\n * Set the alert variant to a solid.\r\n * @type string\r\n */\r\n @Input() variant?: 'solid' | string;\r\n\r\n /**\r\n * Toggle the visibility of alert component.\r\n * @type boolean\r\n */\r\n @Input()\r\n set visible(value: boolean) {\r\n if (this._visible !== value) {\r\n this._visible = coerceBooleanProperty(value);\r\n this.visibleChange.emit(value);\r\n }\r\n };\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible = true;\r\n\r\n /**\r\n * Event triggered on the alert dismiss.\r\n */\r\n @Output() visibleChange: EventEmitter<boolean> = new EventEmitter();\r\n\r\n templates: any = {};\r\n @ContentChildren(TemplateIdDirective, {descendants: true}) contentTemplates!: QueryList<TemplateIdDirective>;\r\n\r\n @HostBinding('@.disabled')\r\n get animationDisabled(): boolean {\r\n return !this.fade;\r\n }\r\n\r\n @HostBinding('@fadeInOut')\r\n get animateType(): AnimateType {\r\n return this.visible ? 'show' : 'hide';\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n alert: true,\r\n 'alert-dismissible': this.dismissible,\r\n fade: this.fade,\r\n show: !this.hide,\r\n [`alert-${this.color}`]: !!this.color && this.variant !== 'solid',\r\n [`bg-${this.color}`]: !!this.color && this.variant === 'solid',\r\n 'text-white': !!this.color && this.variant === 'solid'\r\n };\r\n }\r\n\r\n @HostListener('@fadeInOut.start', ['$event'])\r\n onAnimationStart($event: AnimationEvent): void {\r\n this.onAnimationEvent($event);\r\n }\r\n\r\n @HostListener('@fadeInOut.done', ['$event'])\r\n onAnimationDone($event: AnimationEvent): void {\r\n this.onAnimationEvent($event);\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.contentTemplates.forEach((child: TemplateIdDirective) => {\r\n this.templates[child.id] = child.templateRef;\r\n });\r\n }\r\n\r\n onAnimationEvent(event: AnimationEvent): void {\r\n this.hide = event.phaseName === 'start' && event.toState === 'show';\r\n if (event.phaseName === 'done') {\r\n this.hide = (event.toState === 'hide' || event.toState === 'void');\r\n if (event.toState === 'show') {\r\n this.hide = false;\r\n }\r\n }\r\n }\r\n}\r\n","<ng-container *ngIf=\"visible || !hide\">\r\n <ng-template [ngIf]=\"dismissible\">\r\n <ng-container *ngTemplateOutlet=\"templates?.alertButtonCloseTemplate || defaultAlertButtonCloseTemplate\">\r\n </ng-container>\r\n </ng-template>\r\n <ng-content></ng-content>\r\n</ng-container>\r\n\r\n<ng-template #defaultAlertButtonCloseTemplate>\r\n <button (click)=\"visible=false\" aria-label=\"Close\" cButtonClose></button>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ButtonDirective } from './button.directive';\r\nimport { ButtonCloseDirective } from './button-close.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n ButtonDirective,\r\n ButtonCloseDirective,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n ButtonDirective,\r\n ButtonCloseDirective,\r\n ]\r\n})\r\nexport class ButtonModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { AlertComponent } from './alert.component';\r\nimport { AlertHeadingDirective } from './alert-heading.directive';\r\nimport { AlertLinkDirective } from './alert-link.directive';\r\nimport { ButtonModule } from '../button';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ButtonModule\r\n ],\r\n exports: [\r\n AlertComponent,\r\n AlertHeadingDirective,\r\n AlertLinkDirective\r\n ],\r\n declarations: [\r\n AlertComponent,\r\n AlertHeadingDirective,\r\n AlertLinkDirective\r\n ]\r\n})\r\nexport class AlertModule {}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { Colors, Shapes, Sizes, TextColors } from '../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-avatar',\r\n templateUrl: './avatar.component.html',\r\n styleUrls: ['./avatar.component.scss']\r\n})\r\nexport class AvatarComponent {\r\n /**\r\n * Sets the background color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Select the shape of the component.\r\n * @type Shapes\r\n */\r\n @Input() shape?: Shapes;\r\n /**\r\n * Size the component small, large, or extra large.\r\n * @default 'md'\r\n */\r\n @Input() size?: Omit<Sizes, 'xxl'> = 'md';\r\n /**\r\n * The src attribute for the img element.\r\n * @type string\r\n */\r\n @Input() src?: string;\r\n /**\r\n * Sets the color context of the status indicator to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() status?: Colors;\r\n /**\r\n * Sets the text color of the component to one of CoreUI’s themed colors.\r\n *\r\n * @values 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'info' | 'dark' | 'light' | 'white' | 'muted' | string\r\n */\r\n @Input() textColor?: TextColors;\r\n\r\n constructor() { }\r\n\r\n get statusClass(): any {\r\n return {\r\n 'avatar-status': true,\r\n [`bg-${this.status}`]: !!this.status\r\n };\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n avatar: true,\r\n [`avatar-${this.size}`]: !!this.size,\r\n [`bg-${this.color}`]: !!this.color,\r\n [`${this.shape}`]: !!this.shape,\r\n [`text-${this.textColor}`]: !!this.textColor\r\n };\r\n }\r\n}\r\n","<ng-container>\r\n <ng-container *ngTemplateOutlet=\"defaultImageTemplate\"></ng-container>\r\n <span *ngIf=\"!!status\" [ngClass]=\"statusClass\"></span>\r\n</ng-container>\r\n\r\n<ng-template #defaultImageTemplate>\r\n <img *ngIf=\"!!src; else imageContent\" [src]=\"src\" class=\"avatar-img\" />\r\n <ng-template #imageContent>\r\n <ng-content></ng-content>\r\n </ng-template>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AvatarComponent } from './avatar.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n AvatarComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n AvatarComponent\r\n ]\r\n})\r\nexport class AvatarModule { }\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { BadgePositions, Colors, Shapes } from '../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-badge',\r\n templateUrl: './badge.component.html',\r\n styleUrls: ['./badge.component.scss'],\r\n})\r\nexport class BadgeComponent {\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Position badge in one of the corners of a link or button.\r\n * @type BadgePositions\r\n */\r\n @Input() position?: BadgePositions;\r\n /**\r\n * Select the shape of the component.\r\n * @type Shapes\r\n */\r\n @Input() shape?: Shapes;\r\n /**\r\n * Size the component small.\r\n */\r\n @Input() size?: 'sm';\r\n /**\r\n * Sets the text color of the component to one of CoreUI’s themed colors.\r\n * @type TextColors\r\n */\r\n @Input() textColor?: string;\r\n\r\n constructor() {}\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n const positionClasses = {\r\n 'position-absolute': !!this.position,\r\n 'translate-middle': !!this.position,\r\n 'top-0': this.position?.includes('top'),\r\n 'top-100': this.position?.includes('bottom'),\r\n 'start-100': this.position?.includes('end'),\r\n 'start-0': this.position?.includes('start'),\r\n };\r\n\r\n return Object.assign({\r\n badge: true,\r\n [`bg-${this.color}`]: !!this.color,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n [`badge-${this.size}`]: !!this.size,\r\n [`${this.shape}`]: !!this.shape,\r\n }, !!this.position ? positionClasses : {}\r\n );\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BadgeComponent } from './badge.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n BadgeComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n BadgeComponent\r\n ]\r\n})\r\nexport class BadgeModule { }\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { INavAttributes, INavLinkProps } from './breadcrumb-item';\r\n\r\n@Component({\r\n selector: 'c-breadcrumb-item',\r\n templateUrl: './breadcrumb-item.component.html',\r\n styleUrls: ['./breadcrumb-item.component.scss']\r\n})\r\nexport class BreadcrumbItemComponent {\r\n\r\n /**\r\n * Toggle the active state for the component. [docs]\r\n * @type boolean\r\n */\r\n @Input() active?: boolean;\r\n /**\r\n * The `url` prop for the inner `[routerLink]` directive. [docs]\r\n * @type string\r\n */\r\n @Input() url?: string | any[];\r\n /**\r\n * Additional html attributes for link. [docs]\r\n * @type INavAttributes\r\n */\r\n @Input() attributes?: INavAttributes;\r\n /**\r\n * Some `NavigationExtras` props for the inner `[routerLink]` directive and `routerLinkActiveOptions`. [docs]\r\n * @type INavLinkProps\r\n */\r\n @Input() linkProps?: INavLinkProps;\r\n\r\n @HostBinding('attr.aria-current') get ariaCurrent(): string | null {\r\n return this.active ? 'page' : null;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'breadcrumb-item': true,\r\n active: this.active\r\n };\r\n }\r\n}\r\n","<a *ngIf=\"!active; else activeItem\"\r\n [routerLink]=\"url\"\r\n [cHtmlAttr]=\"attributes ?? {}\"\r\n [target]=\"attributes?.['target']\"\r\n [queryParams]=\"linkProps?.queryParams ?? null\"\r\n [fragment]=\"linkProps?.fragment\"\r\n [queryParamsHandling]=\"linkProps?.queryParamsHandling ?? null\"\r\n [preserveFragment]=\"linkProps?.preserveFragment ?? false\"\r\n [skipLocationChange]=\"linkProps?.skipLocationChange ?? false\"\r\n [replaceUrl]=\"linkProps?.replaceUrl ?? false\"\r\n [state]=\"linkProps?.state ?? {}\"\r\n>\r\n <ng-container *ngTemplateOutlet=\"defaultBreadcrumbItemContentTemplate\"></ng-container>\r\n</a>\r\n\r\n<ng-template #activeItem>\r\n <span [cHtmlAttr]=\"attributes ?? {}\">\r\n <ng-container *ngTemplateOutlet=\"defaultBreadcrumbItemContentTemplate\"></ng-container>\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #defaultBreadcrumbItemContentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-breadcrumb',\r\n templateUrl: './breadcrumb.component.html',\r\n styleUrls: ['./breadcrumb.component.scss']\r\n})\r\nexport class BreadcrumbComponent {\r\n /**\r\n * Default aria-label for breadcrumb. [docs]\r\n * @type string\r\n * @default 'breadcrumb'\r\n */\r\n @HostBinding('attr.aria-label')\r\n @Input() ariaLabel = 'breadcrumb';\r\n\r\n /**\r\n * Default role for breadcrumb. [docs]\r\n * @type string\r\n * @default 'navigation'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'navigation';\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n breadcrumb: true\r\n }\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","<ng-content></ng-content>\r\n\r\n","import { Injectable } from '@angular/core';\nimport { Router, ActivatedRoute, NavigationEnd } from '@angular/router';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { filter } from 'rxjs/operators';\nimport { IBreadcrumbItem } from '../breadcrumb-item/breadcrumb-item';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class BreadcrumbRouterService {\n public outlet = 'primary';\n\n breadcrumbs$: Observable<IBreadcrumbItem[]>;\n private breadcrumbsBehaviorSubject: BehaviorSubject<IBreadcrumbItem[]>;\n\n constructor(private router: Router, private route: ActivatedRoute) {\n this.breadcrumbsBehaviorSubject = new BehaviorSubject<any[]>(\n new Array<IBreadcrumbItem>()\n );\n\n this.breadcrumbs$ = this.breadcrumbsBehaviorSubject.asObservable();\n\n this.router.events\n .pipe(filter((event) => event instanceof NavigationEnd))\n .subscribe((event) => {\n const breadcrumbs: any[] = [];\n let currentRoute: ActivatedRoute | null = this.route.root;\n let url = '';\n do {\n const childrenRoutes: ActivatedRoute[] = currentRoute.children;\n currentRoute = null;\n childrenRoutes.forEach((childRoute) => {\n // console.log('breadcrumb event', event, 'route', route);\n if (childRoute.outlet === this.outlet) {\n const routeSnapshot = childRoute.snapshot;\n url +=\n '/' +\n routeSnapshot.url.map((segment) => segment.path).join('/');\n breadcrumbs.push({\n label: childRoute.snapshot.data['title'] || '',\n url,\n queryParams: routeSnapshot.queryParams,\n });\n currentRoute = childRoute;\n }\n });\n } while (currentRoute);\n\n this.breadcrumbsBehaviorSubject.next(Object.assign([], breadcrumbs));\n\n // console.log('breadcrumbs', breadcrumbs);\n return breadcrumbs;\n });\n }\n}\n","import { Component, Input, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';\r\n\r\nimport {IBreadcrumbItem} from '../breadcrumb-item/breadcrumb-item';\r\nimport {Observable, Observer} from 'rxjs';\r\nimport { BreadcrumbRouterService } from './breadcrumb-router.service';\r\n\r\n@Component({\r\n selector: 'c-breadcrumb-router, [cBreadcrumbRouter]',\r\n templateUrl: './breadcrumb-router.component.html',\r\n styleUrls: ['./breadcrumb-router.component.scss']\r\n})\r\nexport class BreadcrumbRouterComponent implements OnChanges, OnDestroy, OnInit {\r\n /**\r\n * Optional array of IBreadcrumbItem to override default BreadcrumbRouter behavior. [docs]\r\n * @type IBreadcrumbItem[]\r\n */\r\n @Input() items?: IBreadcrumbItem[];\r\n\r\n public breadcrumbs: Observable<IBreadcrumbItem[]> | undefined;\r\n\r\n constructor(\r\n public service: BreadcrumbRouterService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.breadcrumbs = this.service.breadcrumbs$;\r\n }\r\n\r\n public ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['items']) {\r\n this.setup();\r\n }\r\n }\r\n\r\n setup(): void {\r\n if (this.items && this.items.length > 0) {\r\n this.breadcrumbs = new Observable<IBreadcrumbItem[]>((observer: Observer<IBreadcrumbItem[]>) => {\r\n if (this.items) {\r\n observer.next(this.items);\r\n }\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.breadcrumbs = undefined;\r\n }\r\n}\r\n","<c-breadcrumb class=\"m-0\">\r\n <ng-template ngFor let-breadcrumb [ngForOf]=\"breadcrumbs | async\" let-last=\"last\">\r\n <ng-container *ngIf=\"breadcrumb?.label && (breadcrumb?.url?.slice(-1) === '/' || last)\">\r\n <c-breadcrumb-item\r\n [active]=\"last\"\r\n [url]=\"breadcrumb?.url\"\r\n [attributes]=\"breadcrumb?.attributes\"\r\n [linkProps]=\"breadcrumb?.linkProps\"\r\n >\r\n {{ breadcrumb?.label }}\r\n </c-breadcrumb-item>\r\n </ng-container>\r\n </ng-template>\r\n</c-breadcrumb>\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n// CoreUI Breadcrumb Component\r\nimport { BreadcrumbComponent } from './breadcrumb/breadcrumb.component';\r\nimport { BreadcrumbItemComponent } from './breadcrumb-item/breadcrumb-item.component';\r\nimport { BreadcrumbRouterComponent } from './breadcrumb-router/breadcrumb-router.component';\r\nimport { BreadcrumbRouterService } from './breadcrumb-router/breadcrumb-router.service';\r\nimport { SharedModule } from '../shared';\r\n\r\n@NgModule({\r\n imports: [CommonModule, RouterModule, SharedModule],\r\n exports: [\r\n BreadcrumbComponent,\r\n BreadcrumbItemComponent,\r\n BreadcrumbRouterComponent,\r\n ],\r\n declarations: [\r\n BreadcrumbRouterComponent,\r\n BreadcrumbItemComponent,\r\n BreadcrumbComponent,\r\n ],\r\n providers: [BreadcrumbRouterService],\r\n})\r\nexport class BreadcrumbModule { }\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-button-group',\r\n template: `<ng-content></ng-content>`,\r\n})\r\nexport class ButtonGroupComponent {\r\n\r\n /**\r\n * Size the component small or large.\r\n * @type { 'sm' | 'lg' }\r\n */\r\n @Input() size?: 'sm' | 'lg';\r\n /**\r\n * Create a set of buttons that appear vertically stacked rather than horizontally. Split button dropdowns are not supported here.\r\n * @type boolean\r\n */\r\n @Input() vertical?: boolean;\r\n /**\r\n * Default role attr for ButtonGroup. [docs]\r\n * @type string\r\n * @default 'group'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'group';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'btn-group': !this.vertical,\r\n 'btn-group-vertical': this.vertical,\r\n [`btn-group-${this.size}`]: !!this.size,\r\n };\r\n }\r\n\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-button-toolbar',\r\n template: `<ng-content></ng-content>`,\r\n})\r\nexport class ButtonToolbarComponent {\r\n /**\r\n * Default role attr for ButtonToolbar. [docs]\r\n * @type string\r\n * @default 'toolbar'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'toolbar';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'btn-toolbar': true,\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ButtonGroupComponent } from './button-group/button-group.component';\r\nimport { ButtonToolbarComponent } from './button-toolbar/button-toolbar.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n ButtonGroupComponent,\r\n ButtonToolbarComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n ButtonGroupComponent,\r\n ButtonToolbarComponent\r\n ]\r\n})\r\nexport class ButtonGroupModule { }\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { Colors } from '../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-callout, [cCallout]',\r\n template: `<ng-content></ng-content>`,\r\n styleUrls: ['./callout.component.scss']\r\n})\r\nexport class CalloutComponent {\r\n\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n callout: true,\r\n [`callout-${this.color}`]: !!this.color\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { CalloutComponent } from './callout.component';\r\n\r\n@NgModule({\r\n declarations: [CalloutComponent],\r\n exports: [CalloutComponent],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class CalloutModule { }\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { Colors, TextColors } from '../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-card, [c-card]',\r\n template: `<ng-content></ng-content>`\r\n})\r\nexport class CardComponent {\r\n\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Sets the text color context of the component to one of CoreUI’s themed colors.\r\n * @type TextColors\r\n */\r\n @Input() textColor?: TextColors;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n card: true,\r\n [`bg-${this.color}`]: !!this.color,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import {Component, HostBinding, Input} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-card-body, [c-card-body]',\r\n template: '<ng-content></ng-content>'\r\n})\r\nexport class CardBodyComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-body': true,\r\n };\r\n }\r\n}\r\n","import {Component, HostBinding, Input} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-card-footer, [c-card-footer]',\r\n template: '<ng-content></ng-content>'\r\n})\r\nexport class CardFooterComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-footer': true,\r\n };\r\n }\r\n}\r\n","import {Component, HostBinding, Input} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-card-group, [c-card-group]',\r\n template: '<ng-content></ng-content>'\r\n})\r\nexport class CardGroupComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-group': true\r\n };\r\n }\r\n}\r\n","import {Component, HostBinding, Input} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-card-header, [c-card-header]',\r\n template: '<ng-content></ng-content>',\r\n})\r\nexport class CardHeaderComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-header': true,\r\n };\r\n }\r\n}\r\n","import {Component, HostBinding} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-card-header-actions, [c-card-header-actions]',\r\n template: '<ng-content></ng-content>',\r\n})\r\nexport class CardHeaderActionsComponent {\r\n\r\n @HostBinding('class.card-header-actions') cardHeaderActions = true;\r\n\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cCardImg]'\r\n})\r\nexport class CardImgDirective {\r\n /**\r\n * Optionally orientate the image to the top, bottom, or make it overlaid across the card.\r\n * @type {'top | 'bottom'}\r\n */\r\n @Input('cCardImg') orientation?: 'top' | 'bottom';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n const suffix = !!this.orientation ? `-${this.orientation}` : '';\r\n return {\r\n [`card-img${suffix}`]: true\r\n };\r\n }\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-card-img-overlay',\r\n templateUrl: './card-img-overlay.component.html',\r\n styleUrls: ['./card-img-overlay.component.scss']\r\n})\r\nexport class CardImgOverlayComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-img-overlay': true\r\n };\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cCardLink]'\r\n})\r\nexport class CardLinkDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-link': true\r\n };\r\n }\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cCardSubtitle]'\r\n})\r\nexport class CardSubtitleDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-subtitle': true\r\n };\r\n }\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cCardText]'\r\n})\r\nexport class CardTextDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-text': true\r\n };\r\n }\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cCardTitle]'\r\n})\r\nexport class CardTitleDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-title': true\r\n };\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { CardComponent } from './card.component';\r\nimport { CardBodyComponent } from './card-body.component';\r\nimport { CardFooterComponent } from './card-footer.component';\r\nimport { CardHeaderComponent } from './card-header.component';\r\nimport { CardHeaderActionsComponent } from './card-header-actions.component';\r\nimport { CardGroupComponent } from './card-group.component';\r\nimport { CardImgDirective } from './card-img.directive';\r\nimport { CardLinkDirective } from './card-link.directive';\r\nimport { CardSubtitleDirective } from './card-subtitle.directive';\r\nimport { CardTextDirective } from './card-text.directive';\r\nimport { CardTitleDirective } from './card-title.directive';\r\nimport { CardImgOverlayComponent } from './card-img-overlay/card-img-overlay.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n CardComponent,\r\n CardBodyComponent,\r\n CardFooterComponent,\r\n CardGroupComponent,\r\n CardHeaderComponent,\r\n CardHeaderActionsComponent,\r\n CardImgDirective,\r\n CardImgOverlayComponent,\r\n CardLinkDirective,\r\n CardSubtitleDirective,\r\n CardTextDirective,\r\n CardTitleDirective,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n CardComponent,\r\n CardBodyComponent,\r\n CardFooterComponent,\r\n CardGroupComponent,\r\n CardHeaderComponent,\r\n CardHeaderActionsComponent,\r\n CardImgDirective,\r\n CardImgOverlayComponent,\r\n CardLinkDirective,\r\n CardSubtitleDirective,\r\n CardTextDirective,\r\n CardTitleDirective,\r\n ]\r\n})\r\nexport class CardModule { }\r\n","import { Injectable, OnDestroy } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\ninterface IIntersectionObserverInit {\r\n root?: Element | null;\r\n rootMargin?: string;\r\n threshold?: number | number[];\r\n}\r\n\r\n@Injectable()\r\nexport class IntersectionService implements OnDestroy {\r\n\r\n constructor() { }\r\n\r\n private intersecting = new BehaviorSubject<boolean>(false);\r\n intersecting$ = this.intersecting.asObservable();\r\n\r\n private intersectionObserver!: IntersectionObserver;\r\n private hostElement!: { nativeElement: Element; };\r\n\r\n private defaultObserverOptions: IIntersectionObserverInit = {\r\n root: null,\r\n rootMargin: '0px',\r\n threshold: 0.2\r\n };\r\n\r\n createIntersectionObserver(hostElement: { nativeElement: Element; }, observerOptions = this.defaultObserverOptions) {\r\n\r\n const options = { ...this.defaultObserverOptions, ...observerOptions }\r\n\r\n this.hostElement = hostElement;\r\n\r\n const handleIntersect = (entries: any[], observer: any) => {\r\n entries.forEach((entry: any) => {\r\n this.intersecting.next(entry.isIntersecting);\r\n });\r\n };\r\n\r\n this.intersectionObserver = new IntersectionObserver(handleIntersect, options);\r\n this.intersectionObserver.observe(hostElement.nativeElement);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.intersectionObserver?.unobserve(this.hostElement?.nativeElement);\r\n }\r\n}\r\n","import { ElementRef, Injectable, Renderer2 } from '@angular/core';\r\nimport { Triggers } from '../coreui.types';\r\n\r\nexport interface IListenersConfig {\r\n hostElement: ElementRef,\r\n trigger?: Triggers | Triggers[],\r\n callbackOn?: () => void,\r\n callbackOff?: () => void,\r\n callbackToggle?: () => void,\r\n}\r\n\r\n@Injectable()\r\nexport class ListenersService {\r\n\r\n private listeners: Map<string, () => void> = new Map();\r\n\r\n constructor(\r\n private renderer: Renderer2\r\n ) {}\r\n\r\n setListeners({hostElement, trigger, callbackOn, callbackOff, callbackToggle}: IListenersConfig): void {\r\n const host = hostElement.nativeElement;\r\n const triggers = Array.isArray(trigger)\r\n ? trigger\r\n : trigger?.split(' ') ?? [];\r\n\r\n if (triggers?.includes('click')) {\r\n typeof callbackToggle === 'function' && this.listeners.set(\r\n 'click',\r\n this.renderer.listen(host, 'click', callbackToggle)\r\n );\r\n }\r\n if (triggers?.includes('focus')) {\r\n typeof callbackOn === 'function' && this.listeners.set(\r\n 'focus',\r\n this.renderer.listen(host, 'focus', callbackOn)\r\n );\r\n }\r\n if (triggers?.includes('click') || triggers?.includes('focus')) {\r\n typeof callbackOff === 'function' && this.listeners.set(\r\n 'blur',\r\n this.renderer.listen(host, 'blur', callbackOff)\r\n );\r\n }\r\n if (triggers?.includes('hover')) {\r\n typeof callbackOn === 'function' && this.listeners.set(\r\n 'mouseenter',\r\n this.renderer.listen(host, 'mouseenter', callbackOn),\r\n );\r\n typeof callbackOff === 'function' && this.listeners.set(\r\n 'mouseleave',\r\n this.renderer.listen(host, 'mouseleave', callbackOff)\r\n );\r\n }\r\n }\r\n\r\n clearListeners(): void {\r\n this.listeners.forEach((unListen, key) => {\r\n unListen();\r\n });\r\n this.listeners.forEach((unListen, key) => {\r\n // @ts-ignore\r\n this.listeners.set(key, null);\r\n });\r\n this.listeners.clear();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nexport interface ICarouselIndex {\r\n active?: number;\r\n interval?: number;\r\n lastItemIndex?: number;\r\n}\r\n\r\n@Injectable()\r\nexport class CarouselService {\r\n private carouselIndex = new BehaviorSubject<ICarouselIndex>({});\r\n carouselIndex$ = this.carouselIndex.asObservable();\r\n\r\n constructor() {}\r\n\r\n setIndex(index: ICarouselIndex): void {\r\n this.carouselIndex.next(index);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ICarouselState } from './carousel-state.type';\r\nimport { CarouselService } from './carousel.service';\r\nimport { CarouselItemComponent } from './carousel-item/carousel-item.component';\r\n\r\n@Injectable()\r\nexport class CarouselState {\r\n private _state: ICarouselState = {\r\n activeItemIndex: -1,\r\n animate: true,\r\n items: [],\r\n direction: 'next',\r\n transition: 'slide'\r\n };\r\n\r\n constructor(private carouselService: CarouselService) {}\r\n\r\n get state(): ICarouselState {\r\n return this._state;\r\n }\r\n\r\n set state(state) {\r\n const prevState = { ...this._state };\r\n const nextState = { ...this._state, ...state };\r\n this._state = nextState;\r\n if (prevState.activeItemIndex !== nextState.activeItemIndex) {\r\n const activeItemIndex = this.state.activeItemIndex || 0;\r\n const itemInterval = this.state.items && this.state.items[activeItemIndex]?.interval || -1;\r\n this.carouselService.setIndex({\r\n active: nextState.activeItemIndex,\r\n interval: itemInterval,\r\n lastItemIndex: (nextState.items?.length ?? 0) - 1\r\n });\r\n }\r\n }\r\n\r\n setItems(newItems: any): void {\r\n if (newItems.length) {\r\n const itemsArray = newItems.toArray();\r\n itemsArray.forEach((item: CarouselItemComponent, i: number) => {\r\n item.index = i;\r\n });\r\n this.state = {\r\n items: itemsArray\r\n };\r\n } else {\r\n this.reset();\r\n }\r\n }\r\n\r\n setNextIndex(nextIndex: any): void {\r\n this.carouselService.setIndex(nextIndex);\r\n }\r\n\r\n direction(direction: 'next' | 'prev' = 'next'): number {\r\n this.state = { direction };\r\n const { activeItemIndex = -1, items } = this.state;\r\n const itemsCount = items?.length ?? 0;\r\n if (itemsCount > 0) {\r\n return direction === 'next' ?\r\n (activeItemIndex === itemsCount - 1 ? 0 : activeItemIndex + 1) :\r\n (activeItemIndex === 0 ? itemsCount - 1 : activeItemIndex - 1);\r\n } else {\r\n return 0;\r\n }\r\n }\r\n\r\n reset(): void {\r\n this.state = {\r\n activeItemIndex: -1,\r\n animate: true,\r\n items: [],\r\n direction: 'next',\r\n transition: 'slide'\r\n };\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class CarouselConfig {\r\n /* Animate transition of slides */\r\n activeIndex = 0;\r\n /* Animate transition of slides */\r\n animate = true;\r\n /* Darken controls, indicators, and captions */\r\n dark? = false;\r\n /* Default direction of auto changing of slides */\r\n direction: 'next' | 'prev' = 'next';\r\n /* Default interval of auto changing of slides */\r\n interval = 3000;\r\n}\r\n","import {\r\n AfterContentInit,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n Inject,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output\r\n} from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { IntersectionService } from '../../services/intersection.service';\r\nimport { IListenersConfig, ListenersService } from '../../services/listeners.service';\r\n\r\nimport { CarouselState } from '../carousel-state';\r\nimport { CarouselService } from '../carousel.service';\r\nimport { CarouselConfig } from '../carousel.config';\r\nimport { Triggers } from '../../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-carousel',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./carousel.component.scss'],\r\n providers: [CarouselService, CarouselState, CarouselConfig, IntersectionService, ListenersService]\r\n})\r\nexport class CarouselComponent implements OnInit, OnDestroy, AfterContentInit {\r\n /**\r\n * Index of the active item.\r\n * @type number\r\n */\r\n @Input() activeIndex = 0;\r\n /**\r\n * Carousel automatically starts cycle items.\r\n * @type boolean\r\n */\r\n @Input() animate = true;\r\n /**\r\n * Add darker controls, indicators, and captions.\r\n * @type boolean\r\n */\r\n @Input() dark?: boolean;\r\n /**\r\n * Carousel direction. [docs]\r\n * @type {'next' | 'prev'}\r\n */\r\n @Input() direction: 'next' | 'prev' = 'next';\r\n /**\r\n * The amount of time to delay between automatically cycling an item. If false, carousel will not automatically cycle.\r\n * @type number\r\n * @default 0\r\n */\r\n @Input() interval = 0;\r\n /**\r\n * Sets which event handlers you’d like provided to your pause prop. You can specify one trigger or an array of them.\r\n * @type {'hover' | 'focus' | 'click'}\r\n */\r\n @Input() pause: Triggers | Triggers[] | false = 'hover';\r\n /**\r\n * Set type of the transition.\r\n * @type {'slide' | 'crossfade'}\r\n * @default 'slide'\r\n */\r\n @Input() transition: 'slide' | 'crossfade' = 'slide';\r\n /**\r\n * Set whether the carousel should cycle continuously or have hard stops.\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input() wrap = true;\r\n /**\r\n * Event emitted on carousel item change. [docs]\r\n * @type number\r\n */\r\n @Output() itemChange = new EventEmitter<number>();\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n carousel: true,\r\n slide: true,\r\n 'carousel-dark': !!this.dark,\r\n 'carousel-fade': this.transition === 'crossfade'\r\n };\r\n }\r\n\r\n private carouselIndexSubscription?: Subscription;\r\n private timerId!: any;\r\n private intersectingSubscription?: Subscription;\r\n private activeItemInterval = 0;\r\n\r\n constructor(\r\n @Inject(CarouselConfig) private config: CarouselConfig,\r\n private hostElement: ElementRef,\r\n private carouselService: CarouselService,\r\n private carouselState: CarouselState,\r\n private intersectionService: IntersectionService,\r\n private listenersService: ListenersService\r\n ) {\r\n Object.assign(this, config);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.carouselStateSubscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.clearListeners();\r\n this.carouselStateSubscribe(false);\r\n this.intersectionServiceSubscribe(false);\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.intersectionService.createIntersectionObserver(this.hostElement);\r\n this.intersectionServiceSubscribe();\r\n this.carouselState.state = { activeItemIndex: this.activeIndex, animate: this.animate };\r\n this.setListeners();\r\n }\r\n\r\n private setListeners(): void {\r\n const config: IListenersConfig = {\r\n hostElement: this.hostElement,\r\n trigger: this.pause || [],\r\n callbackOff: () => {\r\n this.setTimer();\r\n },\r\n callbackOn: () => {\r\n this.resetTimer();\r\n }\r\n };\r\n this.listenersService.setListeners(config);\r\n }\r\n\r\n private clearListeners(): void {\r\n this.listenersService.clearListeners();\r\n }\r\n\r\n set visible(value) {\r\n this._visible = value;\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible: boolean = true;\r\n\r\n setTimer(): void {\r\n const interval = this.activeItemInterval || 0;\r\n this.resetTimer();\r\n if (interval > 0) {\r\n this.timerId = setTimeout(() => {\r\n const nextIndex = this.carouselState.direction(this.direction);\r\n this.carouselState.state = { activeItemIndex: nextIndex };\r\n }, interval);\r\n }\r\n }\r\n\r\n resetTimer(): void {\r\n clearTimeout(this.timerId);\r\n }\r\n\r\n private carouselStateSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.carouselIndexSubscription = this.carouselService.carouselIndex$.subscribe((nextItem) => {\r\n if ('active' in nextItem) {\r\n this.itemChange.emit(nextItem.active);\r\n }\r\n this.activeItemInterval = typeof nextItem.interval === 'number' && nextItem.interval > -1 ? nextItem.interval : this.interval;\r\n const isLastItem = ((nextItem.active === nextItem.lastItemIndex) && this.direction === 'next') || ((nextItem.active === 0) && this.direction === 'prev');\r\n !this.wrap && isLastItem ? this.resetTimer() : this.setTimer();\r\n });\r\n } else {\r\n this.carouselIndexSubscription?.unsubscribe();\r\n }\r\n }\r\n\r\n private intersectionServiceSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.intersectingSubscription = this.intersectionService.intersecting$.subscribe(isIntersecting => {\r\n this.visible = isIntersecting;\r\n isIntersecting ? this.setTimer() : this.resetTimer();\r\n });\r\n } else {\r\n this.intersectingSubscription?.unsubscribe();\r\n }\r\n }\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-carousel-caption',\r\n template: `<ng-content></ng-content>`,\r\n styleUrls: ['./carousel-caption.component.scss']\r\n})\r\nexport class CarouselCaptionComponent {\r\n\r\n @HostBinding('class.carousel-caption') carouselCaptionClass = true;\r\n\r\n constructor() { }\r\n\r\n}\r\n","import {\r\n AfterViewInit,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n ViewChild\r\n} from '@angular/core';\r\n\r\nimport { CarouselState } from '../carousel-state';\r\n\r\n@Component({\r\n selector: 'c-carousel-control',\r\n templateUrl: './carousel-control.component.html',\r\n styleUrls: ['./carousel-control.component.scss'],\r\n})\r\nexport class CarouselControlComponent implements AfterViewInit {\r\n\r\n constructor(\r\n private changeDetector: ChangeDetectorRef,\r\n private carouselState: CarouselState,\r\n ) {}\r\n\r\n private _caption?: string;\r\n /**\r\n * Carousel control caption. [docs]\r\n * @type string\r\n */\r\n @Input()\r\n set caption(value) {\r\n this._caption = value;\r\n }\r\n get caption(): string {\r\n return !!this._caption ? this._caption : this.direction === 'prev' ? 'Previous' : 'Next';\r\n }\r\n /**\r\n * Carousel control direction. [docs]\r\n * @type {'next' | 'prev'}\r\n */\r\n @Input() direction: 'prev' | 'next' = 'next';\r\n\r\n @HostBinding('attr.role')\r\n get hostRole(): string {\r\n return 'button';\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): string {\r\n return `carousel-control-${this.direction}`;\r\n }\r\n\r\n get carouselControlIconClass(): string {\r\n return `carousel-control-${this.direction}-icon`;\r\n }\r\n\r\n @ViewChild('content') content?: ElementRef;\r\n\r\n hasContent = true;\r\n\r\n @HostListener('keyup', ['$event'])\r\n onKeyUp($event: KeyboardEvent): void {\r\n if ($event.key === 'Enter') {\r\n this.play();\r\n }\r\n if ($event.key === 'ArrowLeft') {\r\n this.play('prev');\r\n }\r\n if ($event.key === 'ArrowRight') {\r\n this.play('next');\r\n }\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n public onClick($event: MouseEvent): void {\r\n this.play();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.hasContent = this.content?.nativeElement.childNodes.length ?? false;\r\n this.changeDetector.detectChanges();\r\n }\r\n\r\n private play(direction = this.direction): void {\r\n const nextIndex = this.carouselState.direction(direction);\r\n this.carouselState.state = { activeItemIndex: nextIndex };\r\n }\r\n}\r\n","<div #content *ngIf = \"hasContent; else default\"><ng-content></ng-content></div>\r\n<ng-template #default>\r\n <span [class]=\"carouselControlIconClass\" [attr.aria-label]=\"direction\" [attr.aria-hidden]=\"true\"></span>\r\n <span class=\"visually-hidden\">{{caption}}</span>\r\n</ng-template>\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { CarouselState } from '../carousel-state';\r\nimport { CarouselService } from '../carousel.service';\r\n\r\n@Component({\r\n selector: 'c-carousel-indicators',\r\n templateUrl: './carousel-indicators.component.html',\r\n styleUrls: ['./carousel-indicators.component.scss'],\r\n})\r\nexport class CarouselIndicatorsComponent implements OnInit, OnDestroy {\r\n items: (number | undefined)[] = [];\r\n active = 0;\r\n\r\n private carouselIndexSubscription?: Subscription;\r\n\r\n constructor(\r\n private carouselService: CarouselService,\r\n private carouselState: CarouselState\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.carouselStateSubscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.carouselStateSubscribe(false);\r\n }\r\n\r\n onClick(index: number): void {\r\n if (index !== this.active) {\r\n const direction = index < this.active ? 'prev' : 'next';\r\n this.carouselState.state = { direction, activeItemIndex: index };\r\n }\r\n }\r\n\r\n private carouselStateSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.carouselIndexSubscription = this.carouselService.carouselIndex$.subscribe((nextIndex) => {\r\n this.items = this.carouselState?.state?.items?.map(item => item.index) ?? [];\r\n if ('active' in nextIndex) {\r\n this.active = nextIndex.active ?? 0;\r\n }\r\n });\r\n } else {\r\n this.carouselIndexSubscription?.unsubscribe();\r\n }\r\n }\r\n}\r\n","<div class=\"carousel-indicators\">\r\n <ng-container *ngFor=\"let item of items; let i=index\">\r\n <button [attr.data-coreui-target]=\"i\" type=\"button\" (click)=\"onClick(i)\" [class]=\"{active: active === i}\" [attr.aria-current]=\"active === i\"></button>\r\n </ng-container>\r\n</div>\r\n","import {\r\n animate,\r\n group,\r\n query,\r\n state,\r\n style,\r\n transition,\r\n trigger,\r\n} from '@angular/animations';\r\n\r\nexport function toLeft(fromState: any, toState: any): boolean {\r\n return toState.left === true;\r\n}\r\nexport function toRight(fromState: any, toState: any): boolean {\r\n return toState.left === false;\r\n}\r\n\r\nexport const slideAnimation = trigger('slideAnimation', [\r\n state(\r\n '*',\r\n style({ transform: 'translateX(0)', display: 'block', opacity: 1 })\r\n ),\r\n transition(\r\n toLeft,\r\n group([\r\n query(\r\n ':leave',\r\n [\r\n animate(\r\n '0.6s ease-in-out',\r\n style({\r\n transform: 'translateX(-100%)',\r\n })\r\n ),\r\n ],\r\n { optional: true }\r\n ),\r\n query(\r\n ':enter',\r\n [\r\n style({\r\n transform: 'translateX(100%)',\r\n }),\r\n animate('0.6s ease-in-out', style('*')),\r\n ],\r\n { optional: true }\r\n ),\r\n ])\r\n ),\r\n transition(\r\n toRight,\r\n group([\r\n query(\r\n ':enter',\r\n [\r\n style({\r\n transform: 'translateX(-100%)',\r\n }),\r\n animate('0.6s ease-in-out', style('*')),\r\n ],\r\n { optional: true }\r\n ),\r\n query(\r\n ':leave',\r\n [\r\n animate(\r\n '0.6s ease-in-out',\r\n style({\r\n transform: 'translateX(100%)',\r\n })\r\n ),\r\n ],\r\n { optional: true }\r\n ),\r\n ])\r\n ),\r\n]);\r\n\r\nexport const fadeAnimation = trigger('fadeAnimation', [\r\n state(\r\n '*',\r\n style({ zIndex: 1, opacity: 1 })\r\n ),\r\n transition(\r\n toLeft,\r\n group([\r\n query(\r\n ':leave',\r\n [\r\n animate(\r\n '0.6s ease-in-out',\r\n style({\r\n zIndex: 0,\r\n opacity: 0,\r\n })\r\n ),\r\n ],\r\n { optional: true }\r\n ),\r\n query(\r\n ':enter',\r\n [\r\n style({\r\n zIndex: 1,\r\n opacity: 1\r\n }),\r\n animate('0.6s ease-in-out', style('*')),\r\n ],\r\n { optional: true }\r\n ),\r\n ])\r\n ),\r\n transition(\r\n toRight,\r\n group([\r\n query(\r\n ':enter',\r\n [\r\n style({\r\n zIndex: 1,\r\n opacity: 1\r\n }),\r\n animate('0.6s ease-in-out', style('*')),\r\n ],\r\n { optional: true }\r\n ),\r\n query(\r\n ':leave',\r\n [\r\n animate(\r\n '0.6s ease-in-out',\r\n style({\r\n zIndex: 0,\r\n opacity: 0,\r\n })\r\n ),\r\n ],\r\n { optional: true }\r\n ),\r\n ])\r\n ),\r\n]);\r\n","import { AfterViewInit, ChangeDetectorRef, Component, HostBinding, Input, OnDestroy } from '@angular/core';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { CarouselService } from '../carousel.service';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-carousel-item',\r\n templateUrl: './carousel-item.component.html',\r\n styleUrls: ['./carousel-item.component.scss']\r\n})\r\nexport class CarouselItemComponent implements OnDestroy, AfterViewInit {\r\n\r\n static ngAcceptInputType_active: BooleanInput;\r\n\r\n index?: number;\r\n private carouselIndexSubscription?: Subscription;\r\n\r\n /**\r\n * @ignore\r\n */\r\n @Input()\r\n set active(value) {\r\n this._active = coerceBooleanProperty(value);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n get active(): boolean {\r\n return this._active;\r\n }\r\n private _active = false;\r\n\r\n /**\r\n * Time delay before cycling to next item. If -1, uses carousel interval value.\r\n * @type number\r\n * @default -1\r\n */\r\n @Input() interval: number = -1;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'carousel-item': true,\r\n active: this.active\r\n };\r\n }\r\n\r\n constructor(\r\n private carouselService: CarouselService,\r\n private changeDetectorRef: ChangeDetectorRef\r\n ) {}\r\n\r\n ngOnDestroy(): void {\r\n this.carouselStateSubscribe(false);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n setTimeout(() => {\r\n this.carouselStateSubscribe();\r\n });\r\n }\r\n\r\n private carouselStateSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.carouselIndexSubscription = this.carouselService.carouselIndex$.subscribe((nextIndex) => {\r\n if ('active' in nextIndex) {\r\n this.active = nextIndex.active === this.index;\r\n }\r\n });\r\n } else {\r\n this.carouselIndexSubscription?.unsubscribe();\r\n }\r\n }\r\n}\r\n","<ng-content *ngIf=\"active\"></ng-content>\r\n","import {\r\n AfterContentChecked,\r\n AfterContentInit,\r\n Component,\r\n ContentChildren,\r\n HostBinding,\r\n OnInit,\r\n QueryList,\r\n} from '@angular/core';\r\n\r\nimport { slideAnimation, fadeAnimation } from '../carousel.animation';\r\nimport { CarouselItemComponent } from '../carousel-item/carousel-item.component';\r\nimport { CarouselState } from '../carousel-state';\r\n\r\n@Component({\r\n selector: 'c-carousel-inner',\r\n templateUrl: './carousel-inner.component.html',\r\n styleUrls: ['./carousel-inner.component.scss'],\r\n animations: [ slideAnimation, fadeAnimation ]\r\n})\r\nexport class CarouselInnerComponent implements AfterContentInit, AfterContentChecked {\r\n @HostBinding('class.carousel-inner') carouselInnerClass = true;\r\n\r\n @ContentChildren(CarouselItemComponent) private contentItems!: QueryList<CarouselItemComponent>;\r\n private prevContentItems!: QueryList<CarouselItemComponent>;\r\n activeIndex?: number;\r\n animate?: boolean;\r\n slide = {left: true};\r\n transition = 'slide';\r\n\r\n constructor(private carouselState: CarouselState) {}\r\n\r\n ngAfterContentInit(): void {\r\n this.setItems();\r\n }\r\n\r\n ngAfterContentChecked(): void {\r\n this.setItems();\r\n const state = this.carouselState?.state;\r\n const nextIndex = state?.activeItemIndex;\r\n const nextDirection = state?.direction;\r\n if (this.activeIndex !== nextIndex) {\r\n this.animate = state?.animate;\r\n this.slide = {left: nextDirection === 'next'};\r\n this.activeIndex = state?.activeItemIndex;\r\n this.transition = state?.transition ?? 'slide';\r\n }\r\n }\r\n\r\n setItems(): void {\r\n if (this.prevContentItems !== this.contentItems) {\r\n this.prevContentItems = this.contentItems;\r\n this.carouselState.setItems(this.contentItems);\r\n }\r\n }\r\n}\r\n","<div [@slideAnimation]=\"slide\" [@.disabled]=\"!animate\">\r\n <ng-content></ng-content>\r\n</div>\r\n<!--todo-->\r\n<!--<div [@fadeAnimation]=\"slide\" [@.disabled]=\"!animate\" >-->\r\n<!-- <ng-content></ng-content>-->\r\n<!--</div>-->\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { CarouselComponent } from './carousel/carousel.component';\r\nimport { CarouselCaptionComponent } from './carousel-caption/carousel-caption.component';\r\nimport { CarouselControlComponent } from './carousel-control/carousel-control.component';\r\nimport { CarouselIndicatorsComponent } from './carousel-indicators/carousel-indicators.component';\r\nimport { CarouselInnerComponent } from './carousel-inner/carousel-inner.component';\r\nimport { CarouselItemComponent } from './carousel-item/carousel-item.component';\r\nimport { CarouselService } from './carousel.service';\r\nimport { CarouselState } from './carousel-state';\r\nimport { CarouselConfig } from './carousel.config';\r\n\r\n@NgModule({\r\n declarations: [\r\n CarouselComponent,\r\n CarouselCaptionComponent,\r\n CarouselControlComponent,\r\n CarouselIndicatorsComponent,\r\n CarouselInnerComponent,\r\n CarouselItemComponent,\r\n ],\r\n imports: [CommonModule],\r\n providers: [CarouselService, CarouselState, CarouselConfig],\r\n exports: [\r\n CarouselComponent,\r\n CarouselCaptionComponent,\r\n CarouselControlComponent,\r\n CarouselIndicatorsComponent,\r\n CarouselInnerComponent,\r\n CarouselItemComponent,\r\n ],\r\n})\r\nexport class CarouselModule {\r\n static forRoot(): ModuleWithProviders<CarouselModule> {\r\n return { ngModule: CarouselModule, providers: [] };\r\n }\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cDropdownDivider]'\r\n})\r\nexport class DropdownDividerDirective {\r\n\r\n constructor() {\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'dropdown-divider': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cDropdownHeader]'\r\n})\r\nexport class DropdownHeaderDirective {\r\n\r\n constructor() {\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'dropdown-header': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nexport interface IDropdownState {\r\n visible?: boolean | 'toggle';\r\n dropdown?: any;\r\n}\r\n\r\n@Injectable()\r\nexport class DropdownService {\r\n\r\n private dropdownState = new BehaviorSubject<any>({});\r\n dropdownState$ = this.dropdownState.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n toggle(state: IDropdownState): void {\r\n this.dropdownState.next(state);\r\n }\r\n}\r\n","import { Directive, ElementRef, HostBinding, Input, OnDestroy, OnInit, } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { DropdownService } from '../dropdown.service';\r\n\r\n@Directive({\r\n selector: '[cDropdownMenu]',\r\n exportAs: 'cDropdownMenu',\r\n})\r\nexport class DropdownMenuDirective implements OnInit, OnDestroy {\r\n static ngAcceptInputType_dark: BooleanInput;\r\n\r\n constructor(\r\n public elementRef: ElementRef,\r\n private dropdownService: DropdownService\r\n ) {}\r\n\r\n /**\r\n * Set alignment of dropdown menu.\r\n * @type {'start' | 'end' }\r\n */\r\n @Input() alignment?: 'start' | 'end' | string;\r\n\r\n /**\r\n * Toggle the visibility of dropdown menu component.\r\n */\r\n @Input() visible = false;\r\n\r\n /**\r\n * Sets a darker color scheme to match a dark navbar.\r\n */\r\n @Input()\r\n get dark(): boolean {\r\n return this._dark;\r\n }\r\n set dark(value: boolean) {\r\n this._dark = coerceBooleanProperty(value);\r\n }\r\n private _dark = false;\r\n\r\n private dropdownStateSubscription!: Subscription;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'dropdown-menu': true,\r\n 'dropdown-menu-dark': this.dark,\r\n [`dropdown-menu-${this.alignment}`]: !!this.alignment,\r\n show: this.visible,\r\n };\r\n }\r\n\r\n @HostBinding('style')\r\n get hostStyles() {\r\n // workaround for popper position calculate (see also: dropdown.component)\r\n return {\r\n visibility: this.visible ? null : '',\r\n display: this.visible ? null : '',\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dropdownStateSubscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.dropdownStateSubscribe(false);\r\n }\r\n\r\n private dropdownStateSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.dropdownStateSubscription =\r\n this.dropdownService.dropdownState$.subscribe((state) => {\r\n if ('visible' in state) {\r\n this.visible =\r\n state.visible === 'toggle' ? !this.visible : state.visible;\r\n }\r\n });\r\n } else {\r\n this.dropdownStateSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","import {\r\n AfterContentInit,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChild,\r\n Directive,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Inject,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n OnInit,\r\n Optional,\r\n Output,\r\n Renderer2\r\n} from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { Subscription } from 'rxjs';\r\nimport { createPopper, Instance, Options, Placement } from '@popperjs/core';\r\n\r\nimport { DropdownService } from '../dropdown.service';\r\nimport { DropdownMenuDirective } from '../dropdown-menu/dropdown-menu.directive';\r\n\r\n@Directive({\r\n selector: '[cDropdownToggle]',\r\n exportAs: 'cDropdownToggle',\r\n})\r\nexport class DropdownToggleDirective {\r\n\r\n static ngAcceptInputType_split: BooleanInput;\r\n static ngAcceptInputType_popper: BooleanInput;\r\n\r\n /**\r\n * Enables pseudo element caret on toggler.\r\n * @type boolean\r\n */\r\n @Input() caret = true;\r\n\r\n /**\r\n * Create split button dropdowns with virtually the same markup as single button dropdowns, but with the addition of `.dropdown-toggle-split` class for proper spacing around the dropdown caret.\r\n * @type boolean\r\n */\r\n @Input()\r\n set split(value: boolean) {\r\n this._split = coerceBooleanProperty(value);\r\n }\r\n get split(): boolean {\r\n return this._split;\r\n }\r\n private _split = false;\r\n\r\n constructor(\r\n public elementRef: ElementRef,\r\n private dropdownService: DropdownService,\r\n @Optional() public dropdown?: DropdownComponent\r\n ) {}\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'dropdown-toggle': this.caret,\r\n 'dropdown-toggle-split': this.split,\r\n };\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n public onClick($event: MouseEvent): void {\r\n $event.preventDefault();\r\n this.dropdownService.toggle({visible: 'toggle', dropdown: this.dropdown});\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'c-dropdown',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./dropdown.component.scss'],\r\n exportAs: 'cDropdown',\r\n providers: [DropdownService],\r\n})\r\nexport class DropdownComponent implements AfterContentInit, OnDestroy, OnInit {\r\n\r\n static ngAcceptInputType_dark: BooleanInput;\r\n static ngAcceptInputType_visible: BooleanInput;\r\n\r\n /**\r\n * Set alignment of dropdown menu.\r\n * @type {'start' | 'end' | { xs: 'start' | 'end' } | { sm: 'start' | 'end' } | { md: 'start' | 'end' } | { lg: 'start' | 'end' } | { xl: 'start' | 'end'} | { xxl: 'start' | 'end'}}\r\n */\r\n @Input() alignment?: string;\r\n\r\n @Input() autoClose: boolean | 'inside' | 'outside' = true;\r\n\r\n /**\r\n * Sets a darker color scheme to match a dark navbar.\r\n * @type boolean\r\n * @default false\r\n */\r\n @Input()\r\n set dark(value: boolean) {\r\n this._dark = coerceBooleanProperty(value);\r\n };\r\n get dark() {\r\n return this._dark;\r\n }\r\n private _dark = false;\r\n\r\n /**\r\n * Sets a specified direction and location of the dropdown menu.\r\n * @type 'dropup' | 'dropend' | 'dropstart'\r\n */\r\n @Input() direction?: 'dropup' | 'dropend' | 'dropstart';\r\n\r\n /**\r\n * Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property.\r\n * @type Placement\r\n */\r\n @Input() placement: Placement = 'bottom-start';\r\n\r\n /**\r\n * If you want to disable dynamic positioning set this property to `false`.\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input()\r\n set popper(value: boolean) {\r\n this._popper = coerceBooleanProperty(value);\r\n }\r\n get popper(): boolean {\r\n return this._popper;\r\n }\r\n private _popper = true;\r\n\r\n /**\r\n * Optional popper Options object, placement prop takes precedence over\r\n * @type Partial<Options>\r\n */\r\n @Input()\r\n set popperOptions(value: Partial<Options>) {\r\n this._popperOptions = { ...this._popperOptions, ...value };\r\n };\r\n get popperOptions(): Partial<Options> {\r\n let placement = this.placement;\r\n switch (this.direction) {\r\n case 'dropup': {\r\n placement = 'top-start';\r\n break;\r\n }\r\n case 'dropend': {\r\n placement = 'right-start';\r\n break;\r\n }\r\n case 'dropstart': {\r\n placement = 'left-start';\r\n break;\r\n }\r\n }\r\n if (this.alignment === 'end') {\r\n placement = 'bottom-end';\r\n }\r\n this._popperOptions = { ...this._popperOptions, placement: placement };\r\n return this._popperOptions;\r\n }\r\n\r\n private _popperOptions: Partial<Options> = {\r\n placement: this.placement,\r\n modifiers: [],\r\n strategy: 'absolute'\r\n };\r\n\r\n /**\r\n * Set the dropdown variant to an btn-group, dropdown, input-group, and nav-item.\r\n */\r\n @Input() variant?: 'btn-group' | 'dropdown' | 'input-group' | 'nav-item' = 'dropdown';\r\n\r\n /**\r\n * Toggle the visibility of dropdown menu component.\r\n * @type boolean\r\n * @default false\r\n */\r\n @Input()\r\n set visible(value: boolean) {\r\n const _value = coerceBooleanProperty(value);\r\n this.activeTrap = _value;\r\n this._visible = _value;\r\n _value ? this.createPopperInstance() : this.destroyPopperInstance();\r\n this.visibleChange.emit(_value);\r\n }\r\n get visible(): boolean {\r\n return this._visible;\r\n }\r\n private _visible = false;\r\n\r\n @Output() visibleChange: EventEmitter<boolean> = new EventEmitter<boolean>();\r\n\r\n dropdownContext = {$implicit: this.visible};\r\n @ContentChild(DropdownToggleDirective) _toggler!: DropdownToggleDirective;\r\n @ContentChild(DropdownMenuDirective) _menu!: DropdownMenuDirective;\r\n\r\n public activeTrap = false;\r\n\r\n private dropdownStateSubscription!: Subscription;\r\n private popperInstance!: Instance | undefined;\r\n private listeners: (() => void)[] = [];\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private ngZone: NgZone,\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private dropdownService: DropdownService\r\n ) {}\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n dropdown:\r\n (this.variant === 'dropdown' || this.variant === 'nav-item') &&\r\n !this.direction,\r\n [`${this.direction}`]: !!this.direction,\r\n 'btn-group': this.variant === 'btn-group',\r\n 'nav-item': this.variant === 'nav-item',\r\n 'input-group': this.variant === 'input-group',\r\n show: this.visible,\r\n };\r\n }\r\n\r\n // todo: find better solution\r\n @HostBinding('style')\r\n get hostStyle(): any {\r\n return this.variant === 'input-group' ? {display: 'contents'} : {};\r\n }\r\n\r\n dropdownStateSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.dropdownStateSubscription =\r\n this.dropdownService.dropdownState$.subscribe((state) => {\r\n if (this === state.dropdown) {\r\n if ('visible' in state) {\r\n state?.visible === 'toggle'\r\n ? this.toggleDropdown()\r\n : (this.visible = state.visible);\r\n }\r\n }\r\n });\r\n } else {\r\n this.dropdownStateSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n toggleDropdown(): void {\r\n this.visible = !this.visible;\r\n }\r\n\r\n onClick(event: any): void {\r\n if (!this._toggler?.elementRef.nativeElement.contains(event.target?.closest('[cDropdownToggle]'))) {\r\n this.toggleDropdown();\r\n }\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n if (this.variant === 'nav-item') {\r\n this.renderer.addClass(this._toggler.elementRef.nativeElement, 'nav-link');\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dropdownStateSubscribe();\r\n this.setVisibleState(this.visible);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.clearListeners();\r\n this.dropdownStateSubscribe(false);\r\n this.destroyPopperInstance();\r\n }\r\n\r\n setVisibleState(value: boolean): void {\r\n this.dropdownService.toggle({visible: value, dropdown: this});\r\n }\r\n\r\n // todo: turn off popper in navbar-nav\r\n createPopperInstance(): void {\r\n if (this._toggler && this._menu) {\r\n this.ngZone.runOutsideAngular(() => {\r\n // workaround for popper position calculate (see also: dropdown-menu.component)\r\n this._menu.elementRef.nativeElement.style.visibility = 'hidden';\r\n this._menu.elementRef.nativeElement.style.display = 'block';\r\n if (this.popper) {\r\n this.popperInstance = createPopper(\r\n this._toggler.elementRef.nativeElement,\r\n this._menu.elementRef.nativeElement,\r\n {...this.popperOptions}\r\n );\r\n }\r\n this.ngZone.run(() => {\r\n this.setListeners();\r\n this.changeDetectorRef.detectChanges();\r\n });\r\n });\r\n }\r\n }\r\n\r\n destroyPopperInstance(): void {\r\n this.clearListeners();\r\n this.popperInstance?.destroy();\r\n this.popperInstance = undefined;\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n private setListeners(): void {\r\n const host = this.elementRef.nativeElement;\r\n this.listeners.push(\r\n this.renderer.listen(this.document, 'click', (event) => {\r\n if (this._toggler?.elementRef.nativeElement.contains(event.target)) {\r\n return;\r\n }\r\n if (this.autoClose === true) {\r\n this.setVisibleState(false);\r\n return;\r\n }\r\n if (!host.contains(event.target)) {\r\n if (this.autoClose === 'outside') {\r\n this.setVisibleState(false);\r\n return;\r\n }\r\n }\r\n if (this._menu.elementRef.nativeElement.contains(event.target)) {\r\n if (this.autoClose === 'inside') {\r\n this.setVisibleState(false);\r\n return;\r\n }\r\n }\r\n })\r\n );\r\n this.listeners.push(\r\n this.renderer.listen(this.document, 'keyup', (event) => {\r\n if (event.key === 'Escape' && this.autoClose !== false) {\r\n this.setVisibleState(false);\r\n }\r\n })\r\n );\r\n }\r\n\r\n private clearListeners(): void {\r\n this.listeners.forEach((unListen) => {\r\n unListen();\r\n });\r\n // @ts-ignore\r\n this.listeners.fill(undefined);\r\n this.listeners = [];\r\n }\r\n}\r\n","import { Directive, HostBinding, HostListener, Input, Optional } from '@angular/core';\r\nimport { DropdownService } from '../dropdown.service';\r\nimport { DropdownComponent } from '../dropdown/dropdown.component';\r\n\r\n@Directive({\r\n selector: '[cDropdownItem]',\r\n exportAs: 'cDropdownItem'\r\n})\r\nexport class DropdownItemDirective {\r\n /**\r\n * Set active state to a dropdown-item.\r\n * @type boolean\r\n * @default undefined\r\n */\r\n @Input() active?: boolean;\r\n /**\r\n * Configure dropdown-item close dropdown behavior.\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input() autoClose: boolean = true;\r\n /**\r\n * Disables a dropdown-item.\r\n * @type boolean\r\n * @default undefined\r\n */\r\n @Input() disabled?: boolean;\r\n\r\n constructor(\r\n private dropdownService: DropdownService,\r\n @Optional() public dropdown?: DropdownComponent\r\n ) {\r\n }\r\n\r\n @HostBinding('attr.aria-current')\r\n get ariaCurrent(): string | null {\r\n return this.active ? 'true' : null;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'dropdown-item': true,\r\n active: this.active,\r\n disabled: this.disabled\r\n };\r\n }\r\n\r\n @HostBinding('attr.tabindex')\r\n @Input()\r\n set tabIndex(value: string | number | null) {\r\n this._tabIndex = value;\r\n }\r\n get tabIndex() {\r\n return this.disabled ? '-1' : this._tabIndex;\r\n }\r\n private _tabIndex: string | number | null = null;\r\n\r\n @HostBinding('attr.aria-disabled')\r\n get isDisabled(): boolean | null {\r\n return this.disabled || null;\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n private onClick($event: MouseEvent): void {\r\n if (this.autoClose) {\r\n this.dropdownService.toggle({ visible: 'toggle', dropdown: this.dropdown });\r\n }\r\n }\r\n\r\n @HostListener('keyup', ['$event'])\r\n private onKeyUp($event: KeyboardEvent): void {\r\n if ($event.key === 'Enter') {\r\n if (this.autoClose) {\r\n this.dropdownService.toggle({ visible: false, dropdown: this.dropdown });\r\n }\r\n }\r\n }\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cDropdownItemPlain]'\r\n})\r\nexport class DropdownItemPlainDirective {\r\n\r\n constructor() {\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'dropdown-item-text': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Directive, HostBinding, HostListener, Input, Optional } from '@angular/core';\r\nimport { DropdownService } from '../dropdown.service';\r\nimport { DropdownComponent } from '../dropdown/dropdown.component';\r\n\r\n@Directive({\r\n selector: '[cDropdownClose]',\r\n exportAs: 'cDropdownClose'\r\n})\r\nexport class DropdownCloseDirective {\r\n\r\n /**\r\n * Disables a dropdown-close directive.\r\n * @type boolean\r\n * @default undefined\r\n */\r\n @Input() disabled?: boolean;\r\n\r\n constructor(\r\n private dropdownService: DropdownService,\r\n @Optional() public dropdown?: DropdownComponent\r\n ) { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n disabled: this.disabled\r\n };\r\n }\r\n\r\n @HostBinding('attr.tabindex')\r\n @Input()\r\n set tabIndex(value: string | number | null) {\r\n this._tabIndex = value;\r\n }\r\n get tabIndex() {\r\n return this.disabled ? '-1' : this._tabIndex;\r\n }\r\n private _tabIndex: string | number | null = null;\r\n\r\n @HostBinding('attr.aria-disabled')\r\n get isDisabled(): boolean | null {\r\n return this.disabled || null;\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n private onClick($event: MouseEvent): void {\r\n this.dropdownService.toggle({ visible: false, dropdown: this.dropdown });\r\n }\r\n\r\n @HostListener('keyup', ['$event'])\r\n private onKeyUp($event: KeyboardEvent): void {\r\n if ($event.key === 'Enter') {\r\n this.dropdownService.toggle({ visible: false, dropdown: this.dropdown });\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DropdownComponent, DropdownToggleDirective } from './dropdown/dropdown.component';\r\nimport { DropdownDividerDirective } from './dropdown-divider/dropdown-divider.directive';\r\nimport { DropdownHeaderDirective } from './dropdown-header/dropdown-header.directive';\r\nimport { DropdownItemDirective } from './dropdown-item/dropdown-item.directive';\r\nimport { DropdownItemPlainDirective } from './dropdown-item/dropdown-item-plain.directive';\r\nimport { DropdownMenuDirective } from './dropdown-menu/dropdown-menu.directive';\r\nimport { DropdownService } from './dropdown.service';\r\nimport { DropdownCloseDirective } from './dropdown-close/dropdown-close.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n DropdownComponent,\r\n DropdownDividerDirective,\r\n DropdownHeaderDirective,\r\n DropdownItemDirective,\r\n DropdownItemPlainDirective,\r\n DropdownToggleDirective,\r\n DropdownMenuDirective,\r\n DropdownCloseDirective\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n DropdownComponent,\r\n DropdownDividerDirective,\r\n DropdownHeaderDirective,\r\n DropdownItemDirective,\r\n DropdownItemPlainDirective,\r\n DropdownToggleDirective,\r\n DropdownMenuDirective,\r\n DropdownCloseDirective\r\n ],\r\n providers: [\r\n DropdownService,\r\n ]\r\n})\r\nexport class DropdownModule {\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\nimport { Colors } from '../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-spinner',\r\n templateUrl: './spinner.component.html',\r\n})\r\nexport class SpinnerComponent {\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n\r\n /**\r\n * Label for accessibility.\r\n * @type string\r\n * @default 'Loading...'\r\n */\r\n @Input() label: string = \"Loading...\";\r\n\r\n /**\r\n * Size the component small.\r\n * @type string\r\n * @values 'sm'\r\n */\r\n @Input() size?: 'sm';\r\n\r\n /**\r\n * Set the button variant to an outlined button or a ghost button.\r\n * @values 'border' | 'grow'\r\n * @default 'border'\r\n */\r\n @Input() variant?: 'border' | 'grow' = 'border';\r\n\r\n @Input()\r\n @HostBinding('attr.role') role = 'status';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n [`spinner-${this.variant}`]: true,\r\n [`text-${this.color}`]: !!this.color,\r\n [`spinner-${this.variant}-${this.size}`]: !!this.size\r\n };\r\n }\r\n}\r\n","<span class=\"visually-hidden\">{{label}}</span>\r\n","import { AfterViewInit, ChangeDetectorRef, Component, ElementRef, HostBinding, Input, ViewChild } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-element-cover, [cElementCover]',\r\n templateUrl: './element-cover.component.html',\r\n styleUrls: ['./element-cover.component.scss']\r\n})\r\nexport class ElementCoverComponent implements AfterViewInit {\r\n\r\n constructor(private elementRef: ElementRef, private changeDetectorRef: ChangeDetectorRef) {}\r\n\r\n /**\r\n * Array of custom boundaries. Use to create custom cover area (instead of parent element area). Area is defined by four sides: 'top', 'bottom', 'right', 'left'. If side is not defined by any custom boundary it is equal to parent element boundary. Each custom boundary is object with keys:\r\n * - sides (array) - select boundaries of element to define boundaries. Side names: 'top', 'bottom', 'right', 'left'.\r\n * - query (string) - query used to get element which define boundaries. Search will be done only inside parent element, by parent.querySelector(query) function. [docs]\r\n * @type {sides: string[], query: string}[]\r\n */\r\n @Input() boundaries?: { sides: string[]; query: string }[];\r\n @Input() opacity: number = 0.4;\r\n\r\n @ViewChild('content') content?: ElementRef;\r\n hasContent = true;\r\n #parent!: any;\r\n\r\n private get customBoundaries() {\r\n if (!this.boundaries || this.elementRef === null) {\r\n return {};\r\n }\r\n if (!this.#parent) {\r\n return {};\r\n }\r\n const parentCoords = this.#parent?.getBoundingClientRect();\r\n const _customBoundaries = {};\r\n this.boundaries.forEach((value: any) => {\r\n const element = this.#parent?.querySelector(value.query);\r\n if (!element || !value.sides) {\r\n return;\r\n }\r\n const coords = element.getBoundingClientRect();\r\n value.sides.forEach((side: string) => {\r\n const sideMargin = Math.abs(coords[side] - parentCoords[side]);\r\n // @ts-ignore\r\n _customBoundaries[side] = `${sideMargin}px`;\r\n });\r\n });\r\n return _customBoundaries;\r\n }\r\n\r\n private get containerCoords() {\r\n return {\r\n top: 0, left: 0, right: 0, bottom: 0, ...this.customBoundaries\r\n };\r\n }\r\n\r\n @HostBinding('style')\r\n private get coverStyles() {\r\n return {\r\n ...this.containerCoords, position: 'absolute', backgroundColor: `rgb(255,255,255,${this.opacity})`\r\n };\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.#parent = this.elementRef.nativeElement.parentElement;\r\n this.hasContent = this.content?.nativeElement.childNodes.length ?? false;\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n}\r\n","<div [ngStyle]=\"{position: 'absolute', 'top.%': '50', 'left.%': '50', transform: 'translateX(-50%) translateY(-50%)'}\">\r\n <div #content *ngIf=\"hasContent; else defaultSpinner\">\r\n <ng-content></ng-content>\r\n </div>\r\n <ng-template #defaultSpinner>\r\n <c-spinner color=\"primary\" variant=\"grow\"></c-spinner>\r\n </ng-template>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { SpinnerComponent } from './spinner.component';\r\nimport {SharedModule} from '../shared';\r\n\r\n@NgModule({\r\n declarations: [\r\n SpinnerComponent\r\n ],\r\n exports: [\r\n SpinnerComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n SharedModule\r\n ]\r\n})\r\nexport class SpinnerModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { SpinnerModule } from '../spinner';\r\nimport { ElementCoverComponent } from './element-cover.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n ElementCoverComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n SpinnerModule\r\n ],\r\n exports: [\r\n ElementCoverComponent\r\n ]\r\n})\r\nexport class ElementCoverModule {\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\nimport { Positions } from '../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-footer, [cFooter]',\r\n template: `<ng-content></ng-content>`,\r\n})\r\nexport class FooterComponent {\r\n /**\r\n * Place footer in non-static positions. [docs]\r\n * @type Positions\r\n */\r\n @Input() position?: Positions;\r\n /**\r\n * Default role for footer. [docs]\r\n * @type string\r\n * @default 'footer'\r\n */\r\n @Input()\r\n @HostBinding('attr.role') role = 'footer';\r\n\r\n @HostBinding('class')\r\n get getClasses(): any {\r\n return {\r\n footer: true,\r\n [`footer-${this.position}`]: !!this.position,\r\n };\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { FooterComponent } from './footer.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n FooterComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n FooterComponent\r\n ]\r\n})\r\nexport class FooterModule { }\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: 'form[cForm]'\r\n})\r\nexport class FormDirective {\r\n\r\n static ngAcceptInputType_validated: BooleanInput;\r\n private _validated = false;\r\n\r\n /**\r\n * Mark a form as validated. If you set it `true`, all validation styles will be applied to the form. [docs]\r\n * @type boolean\r\n * @default false\r\n */\r\n @Input()\r\n set validated(value: boolean) {\r\n this._validated = coerceBooleanProperty(value);\r\n }\r\n get validated() {\r\n return this._validated;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'was-validated': this.validated,\r\n };\r\n }\r\n\r\n constructor() { }\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-form-feedback',\r\n template: '<ng-content></ng-content>'\r\n})\r\nexport class FormFeedbackComponent {\r\n static ngAcceptInputType_tooltip: BooleanInput;\r\n\r\n /**\r\n * If your form layout allows it, you can display validation feedback in a styled tooltip.\r\n */\r\n private _tooltip = false;\r\n @Input()\r\n set tooltip(value: boolean) {\r\n this._tooltip = coerceBooleanProperty(value);\r\n }\r\n get tooltip(): boolean {\r\n return this._tooltip;\r\n }\r\n /**\r\n * Set component validation state to valid.\r\n */\r\n @Input() valid?: boolean;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'valid-feedback': this.valid === true && !this.tooltip,\r\n 'valid-tooltip': this.valid === true && this.tooltip,\r\n 'invalid-feedback': this.valid !== true && !this.tooltip,\r\n 'invalid-tooltip': this.valid !== true && this.tooltip\r\n };\r\n }\r\n}\r\n","import {\r\n Component,\r\n HostBinding,\r\n Input,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-input-group',\r\n template: `<ng-content></ng-content>`,\r\n})\r\nexport class InputGroupComponent {\r\n /**\r\n * Size the component small or large.\r\n */\r\n @Input() sizing: string | 'sm' | 'lg' | '' = '';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'input-group': true,\r\n [`input-group-${this.sizing}`]: !!this.sizing,\r\n };\r\n }\r\n\r\n constructor() {}\r\n\r\n}\r\n","import { Directive, HostBinding, Input, OnChanges } from '@angular/core';\r\n\r\n@Directive({\r\n selector: 'select[cSelect]'\r\n})\r\nexport class FormSelectDirective {\r\n /**\r\n * Size the component small or large.\r\n */\r\n @Input() sizing?: '' | 'sm' | 'lg' | string = '';\r\n\r\n /**\r\n * Set component validation state to valid.\r\n * @type {boolean | undefined}\r\n */\r\n @Input() valid?: boolean;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'form-select': true,\r\n [`form-select-${this.sizing}`]: !!this.sizing,\r\n 'is-valid': this.valid === true,\r\n 'is-invalid': this.valid === false,\r\n };\r\n }\r\n\r\n constructor() {}\r\n\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cLabel]'\r\n})\r\nexport class FormLabelDirective {\r\n\r\n /**\r\n * For horizontal forms set labels to 'col' and make them vertically centered with their associated form controls.\r\n * @type 'col'\r\n */\r\n @Input('cLabel') col: 'col' | '' = '';\r\n /**\r\n * Size the label small or large.\r\n */\r\n @Input() sizing: '' | 'sm' | 'lg' | string = '';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'form-label': true,\r\n 'col-form-label': this.col === 'col',\r\n [`col-form-label-${this.sizing}`]: !!this.sizing && this.col === 'col',\r\n };\r\n }\r\n\r\n constructor() {}\r\n\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: 'label[cFormCheckLabel]'\r\n})\r\nexport class FormCheckLabelDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'form-check-label': true,\r\n };\r\n }\r\n\r\n}\r\n","import { AfterContentInit, Component, ContentChild, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { FormCheckLabelDirective } from './form-check-label.directive';\r\n\r\n@Component({\r\n selector: 'c-form-check',\r\n template: '<ng-content></ng-content>',\r\n exportAs: 'cFormCheck'\r\n})\r\nexport class FormCheckComponent implements AfterContentInit {\r\n\r\n static ngAcceptInputType_inline: BooleanInput;\r\n static ngAcceptInputType_switch: BooleanInput;\r\n\r\n private _inline = false;\r\n /**\r\n * Group checkboxes or radios on the same horizontal row.\r\n * @type boolean\r\n * @default false\r\n */\r\n @Input()\r\n set inline(value: boolean) {\r\n this._inline = coerceBooleanProperty(value);\r\n }\r\n get inline(): boolean {\r\n return this._inline;\r\n }\r\n\r\n /**\r\n * Size the component large or extra large. Works only with `[switch]=\"true\"` [docs]\r\n * @type {'lg' | 'xl' | ''}\r\n */\r\n @Input() sizing?: 'lg' | 'xl' | '' = '';\r\n\r\n /**\r\n * Render a toggle switch on for checkbox.\r\n * @type boolean\r\n * @default false\r\n */\r\n @Input()\r\n set switch(value: boolean) {\r\n this._switch = coerceBooleanProperty(value);\r\n }\r\n get switch(): boolean {\r\n return this._switch;\r\n }\r\n private _switch = false;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'form-check': this.formCheckClass,\r\n 'form-switch': this.switch,\r\n [`form-switch-${this.sizing}`]: this.switch && !!this.sizing,\r\n 'form-check-inline': this.inline\r\n };\r\n }\r\n\r\n @ContentChild(FormCheckLabelDirective) formCheckLabel!: FormCheckLabelDirective;\r\n private _formCheckClass = true;\r\n get formCheckClass() {\r\n return this._formCheckClass;\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this._formCheckClass = !!this.formCheckLabel;\r\n }\r\n}\r\n","import { Directive, ElementRef, HostBinding, Input, Renderer2 } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: 'input[cFormCheckInput]'\r\n})\r\nexport class FormCheckInputDirective {\r\n\r\n static ngAcceptInputType_indeterminate: BooleanInput;\r\n\r\n /**\r\n * Specifies the type of component.\r\n * @type {'checkbox' | 'radio'}\r\n * @default 'checkbox'\r\n */\r\n @HostBinding('attr.type')\r\n @Input() type: ('checkbox' | 'radio') = 'checkbox';\r\n\r\n /**\r\n * Set component indeterminate state.\r\n * @type boolean\r\n */\r\n @Input()\r\n set indeterminate(value: boolean) {\r\n const newValue = coerceBooleanProperty(value);\r\n if (this._indeterminate !== newValue) {\r\n this._indeterminate = newValue;\r\n this.renderer.setProperty(this.hostElement.nativeElement, 'indeterminate', newValue);\r\n }\r\n };\r\n get indeterminate() {\r\n return this._indeterminate;\r\n }\r\n private _indeterminate = false;\r\n\r\n /**\r\n * Set component validation state to valid.\r\n * @type boolean\r\n */\r\n @Input() valid?: boolean;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'form-check-input': true,\r\n 'is-valid': this.valid === true,\r\n 'is-invalid': this.valid === false\r\n };\r\n }\r\n\r\n get checked(): boolean {\r\n return this.hostElement?.nativeElement?.checked;\r\n }\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef\r\n ) { }\r\n\r\n}\r\n","import { Directive, ElementRef, HostBinding, Input, OnInit } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { InputType } from '../../coreui.types';\r\n\r\n@Directive({\r\n selector: 'input[cFormControl], textarea[cFormControl]'\r\n})\r\nexport class FormControlDirective implements OnInit {\r\n\r\n static ngAcceptInputType_plaintext: BooleanInput;\r\n /**\r\n * Size the component small or large.\r\n * @type {'sm' | 'lg'}\r\n */\r\n @Input() sizing?: '' | 'sm' | 'lg' | string = '';\r\n /**\r\n * Set component validation state to valid.\r\n * @type boolean\r\n */\r\n @Input() valid?: boolean;\r\n\r\n /**\r\n * Specifies the type of input element.\r\n */\r\n @HostBinding('attr.type')\r\n @Input() type: Omit<InputType, 'checkbox' | 'radio'> = 'text';\r\n\r\n /**\r\n * Render the component styled as plain text. Removes the default form field styling and preserve the correct margin and padding. Recommend to use alongside `readonly` [docs]\r\n */\r\n @Input()\r\n set plaintext(value: boolean) {\r\n this._plaintext = coerceBooleanProperty(value);\r\n }\r\n get plaintext(): boolean {\r\n return this._plaintext;\r\n }\r\n private _plaintext = false;\r\n\r\n constructor(\r\n private hostElement: ElementRef\r\n ) {}\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n const isRangeType = this.type === 'range';\r\n\r\n return {\r\n 'form-control': !isRangeType && !this.plaintext,\r\n 'form-control-plaintext': !isRangeType && this.plaintext,\r\n 'form-control-color': this.type === 'color',\r\n 'form-range': isRangeType,\r\n [`form-control-${this.sizing}`]: !!this.sizing && !isRangeType,\r\n 'is-valid': this.valid === true,\r\n 'is-invalid': this.valid === false\r\n };\r\n }\r\n\r\n get hostTag(): string {\r\n return this.hostElement.nativeElement.tagName;\r\n }\r\n\r\n ngOnInit(): void {\r\n const hostTag = this.hostTag.toLowerCase();\r\n if (hostTag !== 'input' && hostTag !== 'textarea') {\r\n console.warn(`CoreUI [cFormControl] works with '<input>' and '<texarea>' - not with '<${hostTag}>'`);\r\n }\r\n }\r\n\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cFormText]'\r\n})\r\nexport class FormTextDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'form-text': true,\r\n };\r\n }\r\n\r\n constructor() { }\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: '[cFormFloating]'\r\n})\r\nexport class FormFloatingDirective {\r\n\r\n static ngAcceptInputType_floating: BooleanInput;\r\n\r\n /**\r\n * Enable floating labels\r\n * @type boolean\r\n */\r\n @Input('cFormFloating')\r\n get floating(): boolean {\r\n return this._floating;\r\n }\r\n set floating(value: boolean) {\r\n this._floating = coerceBooleanProperty(value);\r\n }\r\n private _floating = true;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'form-floating': this.floating,\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cInputGroupText]'\r\n})\r\nexport class InputGroupTextDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'input-group-text': true,\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormDirective } from './form/form.directive';\r\nimport { FormFeedbackComponent } from './form-feedback/form-feedback.component';\r\nimport { InputGroupComponent } from './input-group/input-group.component';\r\nimport { FormSelectDirective } from './form-select/form-select.directive';\r\nimport { FormLabelDirective } from './form-label/form-label.directive';\r\nimport { FormCheckComponent } from './form-check/form-check.component';\r\nimport { FormControlDirective } from './form-control/form-control.directive';\r\nimport { FormTextDirective } from './form-text/form-text.directive';\r\nimport { FormFloatingDirective } from './form-floating/form-floating.directive';\r\nimport { InputGroupTextDirective } from './input-group-text/input-group-text.directive';\r\nimport { FormCheckLabelDirective } from './form-check/form-check-label.directive';\r\nimport { FormCheckInputDirective } from './form-check/form-check-input.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n FormDirective,\r\n FormCheckComponent,\r\n FormControlDirective,\r\n FormFeedbackComponent,\r\n FormFloatingDirective,\r\n FormLabelDirective,\r\n FormSelectDirective,\r\n FormTextDirective,\r\n InputGroupComponent,\r\n InputGroupTextDirective,\r\n FormCheckLabelDirective,\r\n FormCheckInputDirective,\r\n ],\r\n imports: [CommonModule],\r\n exports: [\r\n FormDirective,\r\n FormCheckComponent,\r\n FormControlDirective,\r\n FormFeedbackComponent,\r\n FormFloatingDirective,\r\n FormLabelDirective,\r\n FormSelectDirective,\r\n FormTextDirective,\r\n InputGroupComponent,\r\n InputGroupTextDirective,\r\n FormCheckLabelDirective,\r\n FormCheckInputDirective\r\n ]\r\n})\r\nexport class FormModule {}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { IContainer } from './container.type';\r\nimport { Breakpoints } from '../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-container, [cContainer]',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./container.component.scss'],\r\n})\r\nexport class ContainerComponent implements IContainer{\r\n\r\n static ngAcceptInputType_fluid: BooleanInput;\r\n\r\n /**\r\n * Set container 100% wide until a breakpoint.\r\n */\r\n @Input() breakpoint: Exclude<Breakpoints, 'xs'> = '';\r\n /**\r\n * Set container 100% wide, spanning the entire width of the viewport.\r\n */\r\n @Input()\r\n set fluid(value: boolean) {\r\n this._fluid = coerceBooleanProperty(value);\r\n };\r\n get fluid(): boolean {\r\n return this._fluid;\r\n }\r\n private _fluid = false;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n container: !this.fluid && !this.breakpoint,\r\n 'container-fluid': this.fluid,\r\n [`container-${this.breakpoint}`]: !!this.breakpoint,\r\n };\r\n }\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty, coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\r\n\r\nimport { ColOrder, ICol } from './col.type';\r\nimport { BreakpointInfix } from '../coreui.types';\r\n\r\n@Directive({\r\n selector: '[cCol]'\r\n})\r\nexport class ColDirective implements ICol {\r\n\r\n static ngAcceptInputType_cCol: (BooleanInput | NumberInput);\r\n static ngAcceptInputType_xs: (BooleanInput | NumberInput);\r\n static ngAcceptInputType_sm: (BooleanInput | NumberInput);\r\n static ngAcceptInputType_md: (BooleanInput | NumberInput);\r\n static ngAcceptInputType_lg: (BooleanInput | NumberInput);\r\n static ngAcceptInputType_xl: (BooleanInput | NumberInput);\r\n static ngAcceptInputType_xxl: (BooleanInput | NumberInput);\r\n\r\n /**\r\n * The number of columns/offset/order on extra small devices (<576px).\r\n * @type { 'auto' | number | boolean }\r\n */\r\n @Input()\r\n set cCol(value: (BooleanInput | NumberInput)) {\r\n this.xs = this.xs || this.coerceInput(value);\r\n }\r\n @Input()\r\n set xs(value) {\r\n this._xs = this.coerceInput(value);\r\n }\r\n get xs(): (BooleanInput | NumberInput) {\r\n return this._xs;\r\n }\r\n private _xs: (BooleanInput | NumberInput) = false;\r\n\r\n /**\r\n * The number of columns/offset/order on small devices (<768px).\r\n * @type { 'auto' | number | boolean }\r\n */\r\n @Input()\r\n set sm(value) {\r\n this._sm = this.coerceInput(value);\r\n }\r\n get sm(): (BooleanInput | NumberInput) {\r\n return this._sm;\r\n }\r\n private _sm: (BooleanInput | NumberInput) = false;\r\n\r\n /**\r\n * The number of columns/offset/order on medium devices (<992px).\r\n * @type { 'auto' | number | boolean }\r\n */\r\n @Input()\r\n set md(value) {\r\n this._md = this.coerceInput(value);\r\n }\r\n get md(): (BooleanInput | NumberInput) {\r\n return this._md;\r\n }\r\n private _md: (BooleanInput | NumberInput) = false;\r\n\r\n /**\r\n * The number of columns/offset/order on large devices (<1200px).\r\n * @type { 'auto' | number | boolean }\r\n */\r\n @Input()\r\n set lg(value) {\r\n this._lg = this.coerceInput(value);\r\n }\r\n get lg(): (BooleanInput | NumberInput) {\r\n return this._lg;\r\n }\r\n private _lg: (BooleanInput | NumberInput) = false;\r\n\r\n /**\r\n * The number of columns/offset/order on X-Large devices (<1400px).\r\n * @type { 'auto' | number | boolean }\r\n */\r\n @Input()\r\n set xl(value) {\r\n this._xl = this.coerceInput(value);\r\n }\r\n get xl(): (BooleanInput | NumberInput) {\r\n return this._xl;\r\n }\r\n private _xl: (BooleanInput | NumberInput) = false;\r\n\r\n /**\r\n * The number of columns/offset/order on XX-Large devices (≥1400px).\r\n * @type { 'auto' | number | boolean }\r\n */\r\n @Input()\r\n set xxl(value) {\r\n this._xxl = this.coerceInput(value);\r\n }\r\n get xxl(): (BooleanInput | NumberInput) {\r\n return this._xxl;\r\n }\r\n private _xxl: (BooleanInput | NumberInput) = false;\r\n\r\n @Input() offset?: (number | { 'xs'?: number, sm?: number, md?: number, lg?: number, xl?: number, xxl?: number });\r\n @Input() order?: (ColOrder | { xs?: ColOrder, sm?: ColOrder, md?: ColOrder, lg?: ColOrder, xl?: ColOrder, xxl?: ColOrder });\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n const classes: any = {\r\n col: true\r\n };\r\n\r\n Object.keys(BreakpointInfix).forEach((breakpoint) => {\r\n // @ts-ignore\r\n const value: number | string | boolean = this[breakpoint];\r\n const infix = breakpoint === 'xs' ? '' : `-${breakpoint}`;\r\n classes[`col${infix}`] = value === true;\r\n classes[`col${infix}-${value}`] = (typeof value === 'number') || (typeof value === 'string');\r\n });\r\n\r\n if (typeof this.offset === 'object') {\r\n const offset = { ...this.offset };\r\n Object.entries(offset).forEach((entry) => {\r\n const [breakpoint, value] = [...entry];\r\n const infix = breakpoint === 'xs' ? '' : `-${breakpoint}`;\r\n classes[`offset${infix}-${value}`] = value >= 0 && value <= 11;\r\n });\r\n } else {\r\n classes[`offset-${this.offset}`] = (typeof this.offset === 'number') && this.offset > 0 && this.offset <= 11;\r\n }\r\n\r\n if (typeof this.order === 'object') {\r\n const order = { ...this.order };\r\n Object.entries(order).forEach((entry) => {\r\n const [breakpoint, value] = [...entry];\r\n const infix = breakpoint === 'xs' ? '' : `-${breakpoint}`;\r\n classes[`order${infix}-${value}`] = value;\r\n });\r\n } else {\r\n classes[`order-${this.order}`] = !!this.order;\r\n }\r\n\r\n // if there is no 'col' class, add one\r\n classes.col = (!Object.entries(classes).filter(i => i[0].startsWith('col-') && i[1]).length) || this.xs === true;\r\n return classes;\r\n }\r\n\r\n coerceInput(value: (BooleanInput | NumberInput)) {\r\n if (value === 'auto') {\r\n return value;\r\n }\r\n if (value === '' || value === undefined || value === null) {\r\n return coerceBooleanProperty(value);\r\n }\r\n if (typeof value === 'boolean') {\r\n return value;\r\n }\r\n return coerceNumberProperty(value);\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\nimport { ColDirective } from './col.directive';\r\n\r\n@Component({\r\n selector: 'c-col',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./col.component.scss'],\r\n})\r\nexport class ColComponent extends ColDirective {}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\n\r\nimport { BreakpointInfix } from '../coreui.types';\r\nimport { IRow, NumberOfColumns } from './row.type';\r\n\r\n@Directive({\r\n selector: '[cRow]'\r\n})\r\nexport class RowDirective implements IRow {\r\n /**\r\n * The number of columns/offset/order on extra small devices (<576px).\r\n * @type {{ cols: 'auto' | number }\r\n */\r\n @Input() xs?: NumberOfColumns;\r\n /**\r\n * The number of columns/offset/order on small devices (<768px).\r\n * @type {{ cols: 'auto' | number }\r\n */\r\n @Input() sm?: NumberOfColumns;\r\n /**\r\n * The number of columns/offset/order on medium devices (<992px).\r\n * @type {{ cols: 'auto' | number }\r\n */\r\n @Input() md?: NumberOfColumns;\r\n /**\r\n * The number of columns/offset/order on large devices (<1200px).\r\n * @type {{ cols: 'auto' | number }\r\n */\r\n @Input() lg?: NumberOfColumns;\r\n /**\r\n * The number of columns/offset/order on X-Large devices (<1400px).\r\n * @type {{ cols: 'auto' | number }\r\n */\r\n @Input() xl?: NumberOfColumns;\r\n /**\r\n * The number of columns/offset/order on XX-Large devices (≥1400px).\r\n * @type {{ cols: 'auto' | number }\r\n */\r\n @Input() xxl?: NumberOfColumns;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n const cols = this.xs;\r\n\r\n const classes: any = {\r\n row: true,\r\n [`row-cols-${cols}`]: !!cols,\r\n };\r\n\r\n Object.keys(BreakpointInfix).forEach(breakpoint => {\r\n // @ts-ignore\r\n const value: any = this[breakpoint];\r\n if ((typeof value === 'number') || (typeof value === 'string')) {\r\n const infix: string = breakpoint === 'xs' ? '' : breakpoint;\r\n classes[`row-cols-${infix}-${value}`] = !!value;\r\n }\r\n });\r\n\r\n return classes;\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\nimport { RowDirective } from './row.directive';\r\n\r\n@Component({\r\n selector: 'c-row',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./row.component.scss'],\r\n})\r\nexport class RowComponent extends RowDirective {}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\n\r\nimport { BreakpointInfix } from '../coreui.types';\r\nimport { GutterBreakpoints, Gutters, IGutter, IGutterObject } from './gutter.type';\r\n\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: '[gutter]'\r\n})\r\nexport class GutterDirective implements IGutter {\r\n /**\r\n * Define padding between columns to space and align content responsively in the Bootstrap grid system.\r\n */\r\n @Input() gutter: (IGutterObject | GutterBreakpoints | Gutters) = {};\r\n\r\n constructor() { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n let gutterClass: any;\r\n\r\n if (typeof this.gutter === 'number') {\r\n gutterClass = GutterDirective.getGutterClasses({ g: this.gutter });\r\n return gutterClass;\r\n }\r\n\r\n {\r\n // @ts-ignore\r\n const { g, gx, gy } = { ...this.gutter };\r\n gutterClass = GutterDirective.getGutterClasses({ g, gx, gy });\r\n }\r\n\r\n Object.keys(BreakpointInfix).forEach(key => {\r\n // @ts-ignore\r\n const gutter = this.gutter[key] ? { ...this.gutter[key] } : undefined;\r\n if (gutter) {\r\n const classes = GutterDirective.getGutterClasses(gutter, key);\r\n gutterClass = { ...gutterClass, ...classes };\r\n }\r\n });\r\n return gutterClass;\r\n }\r\n\r\n private static getGutterClasses(gutter: IGutterObject, breakpoint?: string): any {\r\n const { g, gx, gy } = { ...gutter };\r\n const infix = breakpoint ? `-${breakpoint}` : '';\r\n return {\r\n [`g${infix}-${g}`]: typeof g === 'number',\r\n [`gx${infix}-${gx}`]: typeof gx === 'number',\r\n [`gy${infix}-${gy}`]: typeof gy === 'number'\r\n };\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { ContainerComponent } from './container.component';\r\nimport { RowComponent } from './row.component';\r\nimport { ColComponent } from './col.component';\r\nimport { RowDirective } from './row.directive';\r\nimport { ColDirective } from './col.directive';\r\nimport { GutterDirective } from './gutter.directive';\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n exports: [\r\n ContainerComponent,\r\n RowComponent,\r\n ColComponent,\r\n GutterDirective,\r\n RowDirective,\r\n ColDirective,\r\n ],\r\n declarations: [\r\n ContainerComponent,\r\n RowComponent,\r\n ColComponent,\r\n RowDirective,\r\n ColDirective,\r\n GutterDirective,\r\n ],\r\n providers: [],\r\n})\r\nexport class GridModule {}\r\n","import {Component, Input, HostBinding} from '@angular/core';\r\n\r\nimport { Positions } from '../../coreui.types';\r\ntype Container = boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | 'fluid';\r\n\r\n@Component({\r\n selector: 'c-header, [c-header]',\r\n templateUrl: './header.component.html'\r\n})\r\nexport class HeaderComponent {\r\n /**\r\n * Defines optional container wrapping children elements.\r\n */\r\n @Input() container?: Container;\r\n /**\r\n * Place header in non-static positions.\r\n */\r\n @Input() position?: Positions;\r\n /**\r\n * Default role for header. [docs]\r\n * @type string\r\n * @default 'header'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'header';\r\n\r\n @HostBinding('class')\r\n get getClasses(): any {\r\n return !!this.container ? this.containerClasses : this.headerClasses;\r\n }\r\n\r\n get headerClasses(): any {\r\n return {\r\n header: true,\r\n [`header-${this.position}`]: !!this.position,\r\n };\r\n }\r\n\r\n get containerClasses(): any {\r\n return {\r\n container: this.container === true,\r\n [`container-${this.container}`]: typeof this.container === 'string'\r\n };\r\n }\r\n}\r\n","<div [class]=\"headerClasses\" *ngIf=\"!!container; else elseBlock\">\r\n <ng-content></ng-content>\r\n</div>\r\n<ng-template #elseBlock>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n\r\n\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-header-brand',\r\n template: `<ng-content></ng-content>`\r\n})\r\nexport class HeaderBrandComponent {\r\n /**\r\n * Default role for header-brand. [docs]\r\n * @type string\r\n * @default 'button'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'button';\r\n\r\n @HostBinding('class.header-brand') headerBrandClass = true;\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-header-divider, [cHeaderDivider]',\r\n template: ``\r\n})\r\nexport class HeaderDividerComponent {\r\n\r\n @HostBinding('class.header-divider') headerDividerClass = true;\r\n\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-header-nav',\r\n template: `<ng-content></ng-content>`,\r\n styleUrls: ['./header-nav.component.scss']\r\n})\r\nexport class HeaderNavComponent {\r\n /**\r\n * Default role for header-nav. [docs]\r\n * @type string\r\n * @default 'navigation'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'navigation';\r\n\r\n @HostBinding('class.header-nav') headerNavClass = true;\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-header-text, [cHeaderText]',\r\n template: `<ng-content></ng-content>`,\r\n})\r\nexport class HeaderTextComponent {\r\n @HostBinding('class.header-text') headerTextClass = true;\r\n}\r\n","import { AfterContentInit, Directive, ElementRef, HostBinding, Input, Renderer2 } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cHeaderToggler]'\r\n})\r\nexport class HeaderTogglerDirective implements AfterContentInit {\r\n\r\n @HostBinding('class.header-toggler') headerToggler = true;\r\n /**\r\n * Default role for header-toggler. [docs]\r\n * @type string\r\n * @default 'button'\r\n */\r\n @HostBinding('attr.type')\r\n @Input() type = 'button';\r\n /**\r\n * Default aria-label attr for header-toggler. [docs]\r\n * @type string\r\n * @default 'Toggle navigation'\r\n */\r\n @HostBinding('attr.aria-label')\r\n @Input() ariaLabel = 'Toggle navigation';\r\n\r\n private hasContent!: boolean;\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef\r\n ) { }\r\n\r\n addDefaultIcon(): void {\r\n const span = this.renderer.createElement('span');\r\n this.renderer.addClass(span, 'header-toggler-icon');\r\n this.renderer.appendChild(this.hostElement.nativeElement, span);\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.hasContent = this.hostElement.nativeElement.childNodes.length > 0;\r\n if (!this.hasContent) {\r\n this.addDefaultIcon();\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { HeaderComponent } from './header/header.component';\r\nimport { HeaderBrandComponent } from './header-brand/header-brand.component';\r\nimport { HeaderDividerComponent } from './header-divider/header-divider.component';\r\nimport { HeaderNavComponent } from './header-nav/header-nav.component';\r\nimport { HeaderTextComponent } from './header-text/header-text.component';\r\nimport { HeaderTogglerDirective } from './header-toggler/header-toggler.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n HeaderComponent,\r\n HeaderBrandComponent,\r\n HeaderDividerComponent,\r\n HeaderNavComponent,\r\n HeaderTextComponent,\r\n HeaderTogglerDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n HeaderComponent,\r\n HeaderBrandComponent,\r\n HeaderDividerComponent,\r\n HeaderNavComponent,\r\n HeaderTextComponent,\r\n HeaderTogglerDirective\r\n ]\r\n})\r\nexport class HeaderModule { }\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: '[cImg]'\r\n})\r\nexport class ImgDirective {\r\n static ngAcceptInputType_fluid: BooleanInput;\r\n static ngAcceptInputType_rounded: BooleanInput;\r\n static ngAcceptInputType_thumbnail: BooleanInput;\r\n\r\n /**\r\n * Set the horizontal aligment.\r\n * @type {'' | 'start' | 'end' | 'center'}\r\n */\r\n @Input() align: '' | 'start' | 'end' | 'center' = '';\r\n\r\n /**\r\n * Make image responsive.\r\n * @type boolean\r\n */\r\n @Input()\r\n set fluid(value: boolean) {\r\n this._fluid = coerceBooleanProperty(value);\r\n };\r\n get fluid() {\r\n return this._fluid;\r\n }\r\n private _fluid = false;\r\n\r\n /**\r\n * Make image rounded.\r\n * @type boolean\r\n */\r\n @Input()\r\n set rounded(value: boolean){\r\n this._rounded = coerceBooleanProperty(value);\r\n };\r\n get rounded() {\r\n return this._rounded;\r\n }\r\n private _rounded = false;\r\n\r\n /**\r\n * Give an image a rounded 1px border appearance.\r\n * @type boolean\r\n */\r\n @Input()\r\n set thumbnail(value: boolean) {\r\n this._thumbnail = coerceBooleanProperty(value);\r\n };\r\n get thumbnail() {\r\n return this._thumbnail;\r\n }\r\n private _thumbnail = false;\r\n\r\n /**\r\n * Color for image placeholder.\r\n */\r\n @Input() placeholderColor = 'transparent';\r\n\r\n @HostBinding('style')\r\n get getStyles(): any {\r\n return {backgroundColor: this.placeholderColor};\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n const align = this.align;\r\n return {\r\n [`float-${align}`]: align === 'start' || align === 'end',\r\n 'd-block': align === 'center',\r\n 'mx-auto': align === 'center',\r\n 'img-fluid': this.fluid,\r\n 'rounded': this.rounded,\r\n 'img-thumbnail': this.thumbnail,\r\n };\r\n }\r\n\r\n constructor() {}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ImgDirective } from './img.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n ImgDirective\r\n ],\r\n declarations: [\r\n ImgDirective\r\n ],\r\n})\r\nexport class ImgModule { }\r\n","import {Directive, HostBinding, Input} from '@angular/core';\r\nimport { Sizes } from '../coreui.types';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: '[cListGroup]'\r\n})\r\nexport class ListGroupDirective {\r\n static ngAcceptInputType_flush: BooleanInput;\r\n\r\n /**\r\n * Remove some borders and rounded corners to render list group items edge-to-edge in a parent component (e.g., `<CCard>`).\r\n * @type boolean\r\n */\r\n @Input()\r\n set flush(value: boolean) {\r\n this._flush = coerceBooleanProperty(value);\r\n };\r\n get flush() {\r\n return this._flush;\r\n }\r\n private _flush = false;\r\n /**\r\n * Specify horizontal layout type.\r\n */\r\n @Input() horizontal?: boolean | Sizes;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n const classes = {\r\n 'list-group': true,\r\n 'list-group-horizontal': this.horizontal === true || this.horizontal === '',\r\n [`list-group-horizontal-${this.horizontal}`]: !!this.horizontal && typeof this.horizontal !== 'boolean',\r\n 'list-group-flush': this.flush,\r\n };\r\n return classes;\r\n }\r\n\r\n constructor( ) { }\r\n\r\n}\r\n\r\n","import { Directive, ElementRef, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { Colors } from '../coreui.types';\r\n\r\n@Directive({\r\n selector: '[cListGroupItem], c-list-group-item',\r\n exportAs: 'cListGroupItem'\r\n})\r\nexport class ListGroupItemDirective {\r\n\r\n static ngAcceptInputType_disabled: BooleanInput;\r\n\r\n /**\r\n * Toggle the active state for the component.\r\n * @type boolean\r\n */\r\n @Input() active?: boolean;\r\n\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n\r\n /**\r\n * Set disabled attr for the host element. [docs]\r\n * @type boolean\r\n */\r\n @Input()\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n private _disabled = false;\r\n\r\n @HostBinding('attr.aria-disabled')\r\n get isDisabled(): boolean | null {\r\n return this.disabled || null;\r\n }\r\n\r\n @HostBinding('attr.disabled')\r\n get attrDisabled() {\r\n return this.disabled ? '' : null;\r\n };\r\n\r\n @HostBinding('attr.tabindex')\r\n get getTabindex(): string | null {\r\n return this.disabled ? '-1' : null;\r\n }\r\n\r\n @HostBinding('attr.aria-current') get ariaCurrent(): boolean {\r\n return !!this.active;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n const host: HTMLElement = this.hostElement.nativeElement;\r\n return {\r\n 'list-group-item': true,\r\n 'list-group-item-action': host.nodeName === 'A' || host.nodeName === 'BUTTON',\r\n active: !!this.active,\r\n disabled: this.isDisabled,\r\n [`list-group-item-${this.color}`]: !!this.color\r\n };\r\n }\r\n\r\n constructor(\r\n private hostElement: ElementRef\r\n ) { }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ListGroupDirective } from './list-group.directive';\r\nimport { ListGroupItemDirective } from './list-group-item.directive';\r\n\r\n@NgModule({\r\n declarations: [ListGroupDirective, ListGroupItemDirective],\r\n exports: [\r\n ListGroupDirective,\r\n ListGroupItemDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class ListGroupModule { }\r\n","import { Component, EventEmitter, HostBinding, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\r\nimport { ButtonDirective } from '../button';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'button[cLoadingButton], a[cLoadingButton]',\r\n templateUrl: './loading-button.component.html',\r\n styleUrls: ['./loading-button.component.scss'],\r\n exportAs: 'cLoadingButton'\r\n})\r\nexport class LoadingButtonComponent extends ButtonDirective implements OnChanges {\r\n\r\n static ngAcceptInputType_disabledOnLoading: BooleanInput;\r\n\r\n /**\r\n * Makes button disabled when loading.\r\n * @type boolean\r\n */\r\n @Input()\r\n set disabledOnLoading(value: boolean) {\r\n this._disabledOnLoading = coerceBooleanProperty(value);\r\n };\r\n get disabledOnLoading() {\r\n return this._disabledOnLoading;\r\n }\r\n _disabledOnLoading = false;\r\n\r\n /**\r\n * Loading state (set to true to start animation).\r\n * @type boolean\r\n */\r\n @Input()\r\n set loading(value: boolean) {\r\n const newValue = coerceBooleanProperty(value);\r\n if (this._loading !== newValue) {\r\n this._loading = newValue;\r\n this.loadingChange.emit(newValue);\r\n }\r\n };\r\n get loading() {\r\n return this._loading;\r\n }\r\n _loading = false;\r\n\r\n /**\r\n * Sets type of spinner.\r\n * @type {'border' | 'grow'}\r\n */\r\n @Input() spinnerType: 'border' | 'grow' = 'border';\r\n\r\n /**\r\n * Event emitted on loading change\r\n * @type boolean\r\n */\r\n @Output() loadingChange: EventEmitter<boolean> = new EventEmitter();\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n @HostBinding('class')\r\n override get hostClasses() {\r\n return {\r\n 'btn-loading': true,\r\n 'is-loading': this.loading,\r\n disabled: this.disabledOnLoading && this.loading,\r\n btn: true,\r\n [`btn-${this.color}`]: !!this.color && !this.variant,\r\n [`btn-${this.variant}`]: !!this.variant && !this.color,\r\n [`btn-${this.variant}-${this.color}`]: !!this.variant && !!this.color,\r\n [`btn-${this.size}`]: !!this.size,\r\n active: this.active\r\n };\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['loading'] && !changes['loading']?.isFirstChange()) {\r\n this.disabled = this.disabledOnLoading && changes['loading'].currentValue;\r\n }\r\n }\r\n}\r\n","<c-spinner [variant]=\"spinnerType\" size=\"sm\" class=\"btn-loading-spinner\"></c-spinner>\r\n<ng-content></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LoadingButtonComponent } from './loading-button.component';\r\nimport { SpinnerModule } from '../spinner';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n LoadingButtonComponent\r\n ],\r\n exports: [\r\n LoadingButtonComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n SpinnerModule\r\n ]\r\n})\r\nexport class LoadingButtonModule { }\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-multi-select-optgroup-label',\r\n templateUrl: './multi-select-optgroup-label.component.html',\r\n styleUrls: ['./multi-select-optgroup-label.component.scss']\r\n})\r\nexport class MultiSelectOptgroupLabelComponent {\r\n\r\n constructor() { }\r\n\r\n @HostBinding('class') get hostClasses() {\r\n return {\r\n 'form-multi-select-optgroup-label': true\r\n };\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class MultiSelectService {\r\n constructor() {}\r\n\r\n private multiSelectState = new BehaviorSubject<any>({});\r\n multiSelectState$ = this.multiSelectState.asObservable();\r\n\r\n private multiSelectVisible = new BehaviorSubject<boolean>(false);\r\n multiSelectVisible$ = this.multiSelectVisible.asObservable();\r\n\r\n toggleOption(option: any): void {\r\n this.multiSelectState.next(option);\r\n }\r\n\r\n toggleVisible(visible: boolean): void {\r\n this.multiSelectVisible.next(visible);\r\n }\r\n}\r\n\r\n","import {\r\n AfterContentInit,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n Renderer2,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { FocusableOption, FocusMonitor, FocusOrigin } from '@angular/cdk/a11y';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { MultiSelectService } from '../multi-select.service';\r\n\r\n@Component({\r\n selector: 'c-multi-select-option',\r\n templateUrl: './multi-select-option.component.html',\r\n styleUrls: ['./multi-select-option.component.scss']\r\n})\r\nexport class MultiSelectOptionComponent implements AfterContentInit, FocusableOption, OnInit, OnDestroy {\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private focusMonitor: FocusMonitor,\r\n private multiSelectService: MultiSelectService\r\n ) { }\r\n\r\n static ngAcceptInputType_disabled: BooleanInput;\r\n static ngAcceptInputType_selected: BooleanInput;\r\n\r\n @Input() optionsStyle: ('checkbox' | 'text') = 'checkbox';\r\n @Input() label?: string;\r\n @Input() value?: string;\r\n @Input() visible: boolean = true;\r\n @Output() selectedChange = new EventEmitter<boolean>();\r\n\r\n @ViewChild('contentDiv') content?: ElementRef;\r\n\r\n public hasContent = true;\r\n\r\n private multiselectVisibleSubscription!: Subscription;\r\n private dropdownVisible = false;\r\n\r\n @Input()\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n get disabled() {\r\n return this._disabled;\r\n }\r\n private _disabled = false;\r\n\r\n @Input()\r\n set selected(value: (boolean | undefined)) {\r\n const newValue = coerceBooleanProperty(value);\r\n if (this._selected !== newValue) {\r\n this._selected = newValue;\r\n this.selectedChange.emit(newValue);\r\n this.multiSelectService.toggleOption(this);\r\n }\r\n }\r\n get selected() {\r\n return this._selected;\r\n }\r\n private _selected = false;\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n 'form-multi-select-option': true,\r\n 'form-multi-selected': this.selected,\r\n [`form-multi-select-option-with-${this.optionsStyle}`]: !!this.optionsStyle,\r\n disabled: this.disabled,\r\n 'd-none': !this.visible\r\n };\r\n }\r\n\r\n @HostBinding('attr.tabindex')\r\n private get tabIndex() {\r\n return this.disabled ? '-1' : '0';\r\n }\r\n\r\n @HostBinding('attr.disabled')\r\n @HostBinding('attr.aria-disabled')\r\n private get ariaDisabled() {\r\n return this.disabled || null;\r\n }\r\n\r\n @HostBinding('attr.aria-selected')\r\n private get ariaSelected() {\r\n return this.selected;\r\n }\r\n\r\n @HostListener('keydown', ['$event'])\r\n onKeyDown($event: KeyboardEvent): void {\r\n if (['Enter', ' '].includes($event.key)) {\r\n $event.preventDefault();\r\n this.selected = this.disabled ? this.selected : !this.selected;\r\n this.focus('keyboard');\r\n }\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n private onClick(): void {\r\n this.selected = this.disabled ? this.selected : !this.selected;\r\n this.focus('mouse');\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n setTimeout(() => {\r\n this.hasContent = !!this.content?.nativeElement.childNodes.length;\r\n });\r\n if (!this.label) {\r\n this.label = this.elementRef.nativeElement.innerText || this.value;\r\n }\r\n if (this.value === undefined) {\r\n this.value = this.elementRef.nativeElement.innerText || this.label;\r\n }\r\n }\r\n\r\n getLabel(): string {\r\n return <string>(this.label ?? this.value);\r\n }\r\n\r\n focus(origin?: FocusOrigin): void {\r\n if (this.dropdownVisible) {\r\n this.focusMonitor.focusVia(this.elementRef, origin ?? 'program', {preventScroll: false});\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.multiselectVisibleSubscription.unsubscribe();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.multiselectVisibleSubscription = this.multiSelectService.multiSelectVisible$.subscribe(visible => {\r\n this.dropdownVisible = visible;\r\n });\r\n }\r\n}\r\n","<div #contentDiv><ng-content></ng-content></div>\r\n<div *ngIf=\"!hasContent\">\r\n {{label ?? value}}\r\n</div>\r\n\r\n","import {\r\n AfterContentInit,\r\n Component,\r\n ContentChildren,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n QueryList,\r\n SimpleChanges\r\n} from '@angular/core';\r\n\r\nimport { MultiSelectOptionComponent } from '../multi-select-option/multi-select-option.component';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-multi-select-optgroup',\r\n templateUrl: './multi-select-optgroup.component.html',\r\n styleUrls: ['./multi-select-optgroup.component.scss']\r\n})\r\nexport class MultiSelectOptgroupComponent implements AfterContentInit, OnChanges {\r\n\r\n static ngAcceptInputType_disabled: BooleanInput;\r\n\r\n @Input() label?: string;\r\n @Input()\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n private _disabled: boolean = false;\r\n\r\n @ContentChildren(MultiSelectOptionComponent, { descendants: true }) multiSelectOptions!: QueryList<MultiSelectOptionComponent>;\r\n\r\n @HostBinding('class') get hostClasses() {\r\n return {\r\n 'form-multi-select-options': true\r\n };\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.updateMultiSelectOptions();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['disabled']) {\r\n this.updateMultiSelectOptions();\r\n }\r\n }\r\n\r\n private updateMultiSelectOptions() {\r\n this.multiSelectOptions?.forEach((option) => {\r\n option.disabled = this.disabled;\r\n });\r\n }\r\n}\r\n","<c-multi-select-optgroup-label *ngIf=\"label\">{{label}}</c-multi-select-optgroup-label>\r\n<ng-content></ng-content>\r\n","import { Component, EventEmitter, HostBinding, HostListener, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { IOption } from '../multi-select.type';\r\nimport { MultiSelectService } from '../multi-select.service';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'c-multi-select-tag',\r\n templateUrl: './multi-select-tag.component.html',\r\n styleUrls: ['./multi-select-tag.component.scss']\r\n})\r\nexport class MultiSelectTagComponent implements OnDestroy, OnInit {\r\n\r\n constructor(\r\n private multiSelectService: MultiSelectService\r\n ) { }\r\n\r\n private multiselectVisibleSubscription!: Subscription;\r\n public multiselectVisible: boolean = false;\r\n\r\n @Input() option?: IOption;\r\n\r\n @Output() remove = new EventEmitter<IOption>();\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n 'form-multi-select-tag': true\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.multiselectSubscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.multiselectSubscribe(false);\r\n }\r\n\r\n handleRemove($event: any): void {\r\n if (this.option) {\r\n this.option.selected = false;\r\n this.remove.emit(this.option as IOption);\r\n }\r\n }\r\n\r\n private multiselectSubscribe(subscribe: boolean = true) {\r\n if (subscribe) {\r\n this.multiselectVisibleSubscription =\r\n this.multiSelectService.multiSelectVisible$.subscribe((visible) => {\r\n setTimeout(() => {\r\n this.multiselectVisible = visible;\r\n })\r\n });\r\n } else {\r\n this.multiselectVisibleSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n}\r\n","<ng-template [ngIfElse]=\"elseContent\"\r\n [ngIf]=\"!!option\">{{option.label ?? option.value ?? 'undefined'}}</ng-template>\r\n<ng-template #elseContent>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n<button (click)=\"handleRemove($event)\" *ngIf=\"!option?.disabled\" [disabled]=\"!multiselectVisible\" aria-label=\"Clear\"\r\n cButtonClose class=\"form-multi-select-tag-delete close btn btn-xs\" type=\"button\">\r\n <span aria-hidden=\"true\" class=\"visually-hidden\">x</span>\r\n</button>\r\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-multi-select-native-select',\r\n templateUrl: './multi-select-native-select.component.html',\r\n styleUrls: ['./multi-select-native-select.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class MultiSelectNativeSelectComponent {\r\n\r\n @Input() form?: string = '';\r\n @Input() id?: string = '';\r\n @Input() multiple?: boolean;\r\n @Input() name?: string;\r\n @Input() options?: any;\r\n @Input() disabled?: boolean;\r\n\r\n constructor(\r\n public changeDetectorRef: ChangeDetectorRef\r\n ) { }\r\n}\r\n","<select [multiple]=\"multiple\" [name]=\"name\" style=\"display: none\" tabindex=\"-1\" [id]=\"id\" [disabled]=\"disabled\">\r\n <option\r\n *ngFor=\"let option of options\"\r\n [label]=\"option.label\"\r\n [attr.selected]=\"option.selected ? '' : null\"\r\n [value]=\"option.value\"\r\n [disabled]=\"disabled\"\r\n tabindex=\"-1\"\r\n ></option>\r\n</select>\r\n\r\n","import {\r\n AfterContentInit,\r\n AfterViewInit,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChildren,\r\n ElementRef,\r\n EventEmitter,\r\n forwardRef,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n QueryList,\r\n Renderer2,\r\n ViewChild,\r\n ViewContainerRef\r\n} from '@angular/core';\r\nimport { FocusKeyManager, FocusMonitor, FocusOrigin } from '@angular/cdk/a11y';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\n\r\n// import { ListenersService } from '../../services/listeners.service';\r\nimport { IMultiSelect, IOption } from '../multi-select.type';\r\nimport { MultiSelectService } from '../multi-select.service';\r\nimport { MultiSelectOptionComponent } from '../multi-select-option/multi-select-option.component';\r\nimport { MultiSelectNativeSelectComponent } from '../multi-select-native-select/multi-select-native-select.component';\r\n\r\n// const flattenArray = (options: IOption[]): IOption[] => {\r\n// return options.reduce((acc: IOption[], val: IOption) => {\r\n// return acc.concat(Array.isArray(val.options) ? flattenArray(val.options) : val);\r\n// }, []);\r\n// };\r\n//\r\n// const getSelectedOptions = (options: IOption[]) => {\r\n// return flattenArray(options).filter((option: IOption) => {\r\n// if (option.selected) {\r\n// return option;\r\n// }\r\n// return;\r\n// });\r\n// };\r\n\r\ninterface IPluralMap {\r\n [k: string]: string;\r\n}\r\n\r\n@Component({\r\n selector: 'c-multi-select',\r\n templateUrl: './multi-select.component.html',\r\n styleUrls: ['./multi-select.component.scss'],\r\n exportAs: 'cMultiSelect',\r\n providers: [\r\n MultiSelectService,\r\n // ListenersService,\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MultiSelectComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class MultiSelectComponent\r\n implements IMultiSelect, ControlValueAccessor, AfterContentInit, AfterViewInit, OnDestroy, OnInit {\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private ngZone: NgZone,\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private viewContainerRef: ViewContainerRef,\r\n private focusMonitor: FocusMonitor,\r\n private multiSelectService: MultiSelectService\r\n // private listenersService: ListenersService\r\n ) {}\r\n\r\n static ngAcceptInputType_multiple: BooleanInput;\r\n static ngAcceptInputType_disabled: BooleanInput;\r\n\r\n onChange: any = (value: any) => {};\r\n\r\n writeValue(value: (string | string[])): void {\r\n if (value !== null) {\r\n this.value = value;\r\n }\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n\r\n @Input() cleaner = true;\r\n\r\n @Input()\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n private _disabled = false;\r\n\r\n @Input()\r\n set multiple(value: boolean) {\r\n this._multiple = coerceBooleanProperty(value);\r\n }\r\n get multiple(): boolean {\r\n return this._multiple;\r\n }\r\n private _multiple = false;\r\n\r\n @Input() nativeName = '';\r\n @Input() nativeId = '';\r\n // @Input() options = [];\r\n @Input() optionsMaxHeight = 'auto';\r\n @Input() optionsStyle: 'checkbox' | 'text' = 'checkbox';\r\n @Input() placeholder = 'Select...';\r\n @Input() search = true;\r\n @Input() searchNoResultsLabel = 'no items';\r\n @Input() selectAll = true;\r\n @Input() selectAllLabel = 'Select all options';\r\n @Input() selectionType: 'counter' | 'tags' | 'text' = 'tags';\r\n @Input() selectionTypeCounterText: string = 'item(s) selected';\r\n @Input() selectionTypeCounterTextPluralMap?: IPluralMap = { '=1': 'item selected', 'other': 'items selected' };\r\n\r\n @Input()\r\n set value(value: string | string[]) {\r\n const newValue = Array.isArray(value) ? [...value] : [value ?? ''];\r\n if (this._value.toString() !== newValue.toString()) {\r\n this._value = newValue;\r\n this.onChange(newValue);\r\n this.updateNativeSelect();\r\n this.valueChange.emit(this.value);\r\n }\r\n }\r\n get value() {\r\n return this.multiple ? [...this._value] : this._value[0]?.toString() ?? '';\r\n }\r\n private _value: string[] = [''];\r\n\r\n @Output() readonly valueChange = new EventEmitter<string | string[]>();\r\n\r\n @Input()\r\n set visible(value: boolean) {\r\n const newValue = coerceBooleanProperty(value);\r\n if (newValue !== this._visible) {\r\n this._visible = newValue;\r\n this.multiSelectService.toggleVisible(newValue);\r\n if (newValue) {\r\n this.listKeyManager.setFirstItemActive();\r\n }\r\n }\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible = false;\r\n\r\n @Output() readonly visibleChange = new EventEmitter<boolean>();\r\n\r\n isDropdownVisible = false;\r\n\r\n set selectedOptions(value) {\r\n this._selectedOptions = value;\r\n this.value = this.selectedOptions.map(item => item.value);\r\n this.inputElementSize();\r\n }\r\n get selectedOptions() {\r\n return this._selectedOptions;\r\n }\r\n private _selectedOptions: any[] = [];\r\n\r\n get selectedOptionsText() {\r\n return this.selectedOptions.map((option) => option.label).join(', ');\r\n }\r\n\r\n get counterText() {\r\n return `${this.selectedOptions.length} ${this.selectionTypeCounterText}`;\r\n }\r\n\r\n get counterTextType(): string {\r\n return typeof this.selectionTypeCounterTextPluralMap ?? typeof this.selectionTypeCounterText;\r\n };\r\n\r\n private multiselectStateSubscription!: Subscription;\r\n private multiselectVisibleSubscription!: Subscription;\r\n private multiSelectOptionsSubscription!: Subscription;\r\n private focusMonitorSubscription!: Subscription;\r\n\r\n @ContentChildren(MultiSelectOptionComponent, { descendants: true }) multiSelectOptions!: QueryList<MultiSelectOptionComponent>;\r\n\r\n private listKeyManager!: FocusKeyManager<MultiSelectOptionComponent>;\r\n\r\n @ViewChild('inputElement') inputElement!: ElementRef;\r\n @ViewChild('dropdownElement') dropdownElement!: ElementRef;\r\n\r\n @HostBinding('class') get hostClasses() {\r\n return {\r\n 'form-multi-select': true,\r\n 'form-multi-select-selection-tags': this.selectionType === 'tags',\r\n show: this.visible,\r\n disabled: this.disabled\r\n };\r\n }\r\n\r\n @HostBinding('attr.tabindex')\r\n private get tabIndex() {\r\n return this._tabIndex;\r\n }\r\n private set tabIndex(value) {\r\n setTimeout(() => {\r\n this._tabIndex = this.disabled || this.search ? '-1' : value === null ? null : '0';\r\n });\r\n }\r\n private _tabIndex: string | null = '-1';\r\n\r\n @HostListener('keyup', ['$event']) onKeyUp($event: KeyboardEvent): void {\r\n if (this.disabled) return;\r\n\r\n if ($event.key === 'Escape') {\r\n this.visible = false;\r\n this.searchValue = '';\r\n this.setFocus();\r\n return;\r\n }\r\n if (['Enter', ' ', 'ArrowDown'].includes($event.key) && [this.inputElement?.nativeElement ?? this.elementRef.nativeElement].includes($event.target)) {\r\n this.visible = true;\r\n if (!this.search) {\r\n this.setFocus();\r\n }\r\n return;\r\n }\r\n if ($event.key === 'Tab' && $event.target === this.elementRef.nativeElement) {\r\n this.visible = true;\r\n if (!this.search) {\r\n this.setFocus();\r\n }\r\n return;\r\n }\r\n }\r\n\r\n @HostListener('keydown', ['$event']) onKeyDown($event: KeyboardEvent) {\r\n if (this.disabled) return;\r\n this.listKeyManager.onKeydown($event);\r\n }\r\n\r\n @HostListener('click', ['$event']) onClick($event: MouseEvent): void {\r\n if (this.disabled) return;\r\n if (!this.visible) {\r\n this.visible = true;\r\n }\r\n }\r\n\r\n public visibleOptions = 0;\r\n\r\n set searchValue(value) {\r\n this._searchValue = value.trim();\r\n this.visible = !!this.searchValue.length || this.visible;\r\n this.filterOptions(this.searchValue);\r\n this.inputElementSize();\r\n }\r\n get searchValue() {\r\n return this._searchValue;\r\n }\r\n private _searchValue: string = '';\r\n\r\n get subtreeFocused() {\r\n return this._subtreeFocused;\r\n }\r\n set subtreeFocused(value: boolean) {\r\n this._subtreeFocused = this.disabled ? false : value;\r\n this.visible = value === false ? false : this.visible;\r\n }\r\n private _subtreeFocused = this.focusOrigin(null);\r\n\r\n private nativeSelectRef!: any;\r\n\r\n focusOrigin(origin: FocusOrigin): boolean {\r\n const focused = !!origin;\r\n this.searchValue = focused ? this.searchValue : '';\r\n return focused;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.tabIndex = '0';\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.multiselectSubscribe(false);\r\n // this.clearListeners();\r\n this.focusMonitor.stopMonitoring(this.elementRef);\r\n this.focusMonitorSubscription?.unsubscribe();\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.visibleOptions = this.multiSelectOptions.length;\r\n this.multiSelectOptions.forEach((option, index) => {\r\n option.optionsStyle = this.optionsStyle;\r\n option.selected = option.value !== undefined ? this.value.includes(option.value) || option.selected : option.selected;\r\n });\r\n this.selectedOptionsUpdate();\r\n this.inputElementSize();\r\n\r\n this.listKeyManager = new FocusKeyManager(this.multiSelectOptions).withHomeAndEnd().withTypeAhead();\r\n this.listKeyManager.skipPredicate(item => (!item.visible || item.disabled));\r\n this.listKeyManager.setFirstItemActive();\r\n this.multiselectSubscribe();\r\n this.createNativeSelect();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n // this.setListeners();\r\n this.focusMonitorSubscription = this.focusMonitor.monitor(this.elementRef, true).subscribe((origin) =>\r\n this.ngZone.run(() => {\r\n if (!this.disabled) {\r\n this.subtreeFocused = this.focusOrigin(origin);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n })\r\n );\r\n this.inputElementSize();\r\n }\r\n\r\n private multiselectSubscribe(subscribe: boolean = true) {\r\n if (subscribe) {\r\n this.multiselectVisibleSubscription = this.multiSelectService.multiSelectVisible$.subscribe(\r\n (visible) => {\r\n this.isDropdownVisible = visible;\r\n this.visibleChange.emit(visible);\r\n }\r\n );\r\n\r\n this.multiselectStateSubscription = this.multiSelectService.multiSelectState$.subscribe(\r\n (option) => {\r\n if (option.selected === true && !this.multiple) {\r\n const selectedOptions = this.multiSelectOptions.toArray().filter((item) => item.selected);\r\n selectedOptions.reverse().forEach((item) => {\r\n if (item !== option) {\r\n item.selected = false;\r\n }\r\n });\r\n }\r\n this.selectedOptionsUpdate();\r\n }\r\n );\r\n } else {\r\n this.multiselectVisibleSubscription?.unsubscribe();\r\n this.multiSelectOptionsSubscription?.unsubscribe();\r\n this.multiselectStateSubscription?.unsubscribe();\r\n }\r\n }\r\n\r\n clearAllOptions($event: MouseEvent) {\r\n this.selectedOptions.forEach((option) => {\r\n if (!option._disabled) option.selected = false;\r\n });\r\n this.setFocus();\r\n }\r\n\r\n selectAllOptions() {\r\n this.multiSelectOptions.forEach((option, index) => {\r\n if (!option.disabled) option.selected = true;\r\n });\r\n }\r\n\r\n // private setListeners() {\r\n // if (this.search) {\r\n // const configForInput: IListenersConfig = {\r\n // hostElement: this.inputElement ?? this.elementRef,\r\n // trigger: ['focus', 'click'],\r\n // callbackOn: () => {\r\n // console.log('focus input');\r\n // this.tabIndex = null;\r\n // // this.visible = true;\r\n // }\r\n // };\r\n // this.listenersService.setListeners(configForInput);\r\n // }\r\n //\r\n // const configForHost: IListenersConfig = {\r\n // hostElement: this.elementRef,\r\n // trigger: ['focus'],\r\n // callbackOn: () => {\r\n // console.log('focus');\r\n // if (this.inputElement) {\r\n // this.setFocus()\r\n // }\r\n // // this.inputElement?.nativeElement.focus();\r\n // },\r\n // callbackOff: () => {\r\n // console.log('blur');\r\n // }\r\n // };\r\n // this.listenersService.setListeners(configForHost);\r\n // }\r\n\r\n // private clearListeners() {\r\n // this.listenersService.clearListeners();\r\n // }\r\n\r\n handleTagRemove($event: IOption) {\r\n this.setFocus();\r\n }\r\n\r\n setFocus() {\r\n if (this.disabled) return;\r\n this.focusMonitor.focusVia(this.inputElement ?? this.elementRef, 'program');\r\n }\r\n\r\n // setFirstSelectedOptionActive() {\r\n // const firstSelectedOption = this.selectedOptions.find((item) => item.selected) ??\r\n // this.multiSelectOptions.find((item, index) => index === 0);\r\n // if (firstSelectedOption && this.isDropdownVisible) {\r\n // // this.listKeyManager.setFocusOrigin('keyboard');\r\n // this.listKeyManager.setActiveItem(firstSelectedOption);\r\n // this.changeDetectorRef.markForCheck();\r\n // } else {\r\n // // this.listKeyManager.setFocusOrigin('keyboard');\r\n // this.listKeyManager.setFirstItemActive();\r\n // this.changeDetectorRef.markForCheck();\r\n // }\r\n // }\r\n\r\n filterOptions(value: string) {\r\n const searchString = value.toLowerCase() ?? '';\r\n this.multiSelectOptions?.forEach((item, index) => {\r\n if (!!searchString) {\r\n item.visible = item.label?.toLowerCase().includes(searchString) ?? true;\r\n } else {\r\n item.visible = true;\r\n }\r\n });\r\n this.visibleOptions = this.multiSelectOptions?.filter((item) => item.visible).length;\r\n }\r\n\r\n createNativeSelect() {\r\n this.viewContainerRef.clear();\r\n this.nativeSelectRef = this.viewContainerRef.createComponent(MultiSelectNativeSelectComponent);\r\n this.updateNativeSelect();\r\n }\r\n\r\n updateNativeSelect() {\r\n if (!this.nativeSelectRef) return;\r\n\r\n const options = this.selectedOptions.map(item => {\r\n const { selected, value, label } = item;\r\n return { selected, value, label };\r\n });\r\n\r\n this.nativeSelectRef.instance.multiple = this.multiple;\r\n this.nativeSelectRef.instance.name = this.nativeName;\r\n this.nativeSelectRef.instance.form = this.nativeId;\r\n this.nativeSelectRef.instance.options = [...options];\r\n this.nativeSelectRef.instance.disabled = this.disabled;\r\n this.nativeSelectRef.instance.changeDetectorRef.detectChanges();\r\n }\r\n\r\n inputElementSize() {\r\n if (this.inputElement) {\r\n if (this.selectedOptions.length > 0 || this.selectionType === 'counter') {\r\n this.renderer.setAttribute(this.inputElement.nativeElement, 'size', (this.searchValue.length + 2).toString());\r\n } else {\r\n this.renderer.removeAttribute(this.inputElement.nativeElement, 'size');\r\n }\r\n }\r\n }\r\n\r\n handleSearchKeyDown($event: KeyboardEvent) {\r\n if (this.searchValue.length || this.selectedOptions.length === 0) return;\r\n\r\n if (['Backspace', 'Delete'].includes($event.key)) {\r\n $event.stopPropagation();\r\n const last = this.selectedOptions.filter(option => !option.disabled).pop();\r\n this.selectOption(last, false);\r\n }\r\n }\r\n\r\n private selectOption(option: MultiSelectOptionComponent, selected: boolean) {\r\n this.multiSelectOptions.forEach(item => {\r\n if (item === option) {\r\n option.selected = selected;\r\n }\r\n });\r\n this.selectedOptionsUpdate();\r\n }\r\n\r\n private selectedOptionsUpdate() {\r\n setTimeout(() => {\r\n this.selectedOptions = this.multiSelectOptions.filter((option) => !!option.selected);\r\n this.changeDetectorRef.markForCheck();\r\n })\r\n }\r\n}\r\n","<div class=\"form-multi-select-selection\">\r\n <ng-template [ngIf]=\"selectionType === 'tags'\">\r\n <c-multi-select-tag *ngFor=\"let option of selectedOptions; index as i\"\r\n (remove)=\"handleTagRemove($event)\"\r\n [option]=\"option\"\r\n tabindex=\"-1\">\r\n </c-multi-select-tag>\r\n </ng-template>\r\n <ng-template [ngIf]=\"selectionType === 'text' && !!selectedOptionsText\">\r\n <span>{{ selectedOptionsText }}</span>\r\n </ng-template>\r\n <ng-template [ngIf]=\"selectionType === 'counter'\">\r\n <span *ngIf=\"counterTextType === 'string'; else pluralMap\">{{ counterText }}</span>\r\n <ng-template #pluralMap>\r\n <span>{{selectedOptions.length}} {{ selectedOptions.length | i18nPlural: selectionTypeCounterTextPluralMap ?? { other: counterText } }}</span>\r\n </ng-template>\r\n </ng-template>\r\n <ng-template [ngIf]=\"!search && selectedOptions.length === 0 && selectionType !== 'counter'\">\r\n <span>{{ placeholder }}</span>\r\n </ng-template>\r\n</div>\r\n\r\n<input\r\n #inputElement\r\n (keydown)=\"handleSearchKeyDown($event)\"\r\n *ngIf=\"search && !disabled\"\r\n [(ngModel)]=\"searchValue\"\r\n [disabled]=\"disabled || !search\"\r\n [ngClass]=\"{ 'form-multi-select-search': true, disabled: disabled }\"\r\n [placeholder]=\"selectedOptions.length === 0 && selectionType !== 'counter' ? placeholder : ''\"\r\n autocomplete=\"off\"\r\n tabindex=\"{{ disabled ? '-1' : '0' }}\"\r\n type=\"text\"\r\n>\r\n\r\n<button\r\n (click)=\"clearAllOptions($event)\"\r\n *ngIf=\"cleaner && selectedOptions.length > 0 && !disabled\"\r\n [disabled]=\"disabled || !isDropdownVisible\"\r\n aria-label=\"Clear all\"\r\n cButtonClose\r\n class=\"form-multi-select-selection-cleaner\"\r\n size=\"sm\"\r\n></button>\r\n\r\n<div #dropdownElement *ngIf=\"!disabled\" class=\"form-multi-select-dropdown\">\r\n <ng-template [ngIfElse]=\"optionsEmpty\" [ngIf]=\"visibleOptions > 0\">\r\n <button (click)=\"selectAllOptions()\" *ngIf=\"selectAll && multiple\" class=\"form-multi-select-all\">\r\n {{ selectAllLabel }}\r\n </button>\r\n <div #multiselectOptionsDiv\r\n [ngStyle]=\"optionsMaxHeight !== 'auto' ? { 'maxHeight.px': optionsMaxHeight, overflow: 'scroll' } : {}\"\r\n class=\"form-multi-select-options\"\r\n >\r\n <ng-content></ng-content>\r\n </div>\r\n </ng-template>\r\n <ng-template #optionsEmpty>\r\n <div class=\"form-multi-select-options-empty\">{{ searchNoResultsLabel }}</div>\r\n </ng-template>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\n\r\nimport { ButtonModule } from '../button';\r\n\r\nimport { MultiSelectService } from './multi-select.service';\r\nimport { MultiSelectComponent } from './multi-select/multi-select.component';\r\nimport { MultiSelectOptionComponent } from './multi-select-option/multi-select-option.component';\r\nimport { MultiSelectTagComponent } from './multi-select-tag/multi-select-tag.component';\r\nimport { MultiSelectOptgroupComponent } from './multi-select-optgroup/multi-select-optgroup.component';\r\nimport { MultiSelectOptgroupLabelComponent } from './multi-select-optgroup/multi-select-optgroup-label.component';\r\nimport { MultiSelectNativeSelectComponent } from './multi-select-native-select/multi-select-native-select.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n MultiSelectComponent,\r\n MultiSelectOptionComponent,\r\n MultiSelectOptgroupComponent,\r\n MultiSelectOptgroupLabelComponent,\r\n MultiSelectTagComponent,\r\n MultiSelectNativeSelectComponent\r\n ],\r\n imports: [CommonModule, A11yModule, ButtonModule, FormsModule],\r\n exports: [\r\n MultiSelectComponent,\r\n MultiSelectOptionComponent,\r\n MultiSelectOptgroupComponent,\r\n MultiSelectOptgroupLabelComponent,\r\n MultiSelectTagComponent\r\n ],\r\n providers: [MultiSelectService]\r\n})\r\nexport class MultiSelectModule {\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: '[cNavLink]'\r\n})\r\nexport class NavLinkDirective {\r\n\r\n static ngAcceptInputType_cNavLink: BooleanInput;\r\n static ngAcceptInputType_disabled: BooleanInput;\r\n\r\n /**\r\n * Sets .nav-link class to the host. [docs]\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input()\r\n set cNavLink(value: boolean) {\r\n this._cNavLink = coerceBooleanProperty(value);\r\n };\r\n get cNavLink() {\r\n return this._cNavLink;\r\n }\r\n private _cNavLink = true\r\n\r\n /**\r\n * Toggle the active state for the component. [docs]\r\n * @type boolean\r\n */\r\n @Input() active?: boolean;\r\n /**\r\n * Set disabled attr for the host element. [docs]\r\n * @type boolean\r\n */\r\n @Input()\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n private _disabled = false;\r\n\r\n @HostBinding('attr.aria-current')\r\n get ariaCurrent(): string | null {\r\n return this.active ? 'page' : null;\r\n }\r\n\r\n @HostBinding('attr.aria-disabled')\r\n get isDisabled(): boolean | null {\r\n return this.disabled || null;\r\n }\r\n\r\n @HostBinding('attr.disabled')\r\n get attrDisabled () {\r\n return this.disabled ? '' : null;\r\n };\r\n\r\n @HostBinding('attr.tabindex')\r\n get getTabindex(): string | null {\r\n return this.disabled ? '-1' : null;\r\n }\r\n\r\n @HostBinding('style.cursor')\r\n get getCursorStyle(): string | null {\r\n return this.disabled ? null : 'pointer';\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'nav-link': this.cNavLink,\r\n disabled: this.disabled,\r\n active: this.active\r\n };\r\n }\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-nav-item',\r\n templateUrl: './nav-item.component.html',\r\n styleUrls: ['./nav-item.component.scss']\r\n})\r\nexport class NavItemComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'nav-item': true\r\n };\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { Component, HostBinding, Input } from '@angular/core';\n\n@Component({\n selector: 'c-nav',\n template: `\n <ng-content></ng-content>`,\n styleUrls: ['./nav.component.scss']\n})\nexport class NavComponent {\n /**\n * Specify a layout type for component.\n * @type {'fill' | 'justified'}\n */\n @Input() layout?: 'fill' | 'justified';\n /**\n * Set the nav variant to tabs or pills.\n * @type {'tabs' | 'pills' | 'underline'}\n */\n @Input() variant?: '' | 'tabs' | 'pills' | 'underline';\n\n @HostBinding('class')\n get hostClasses(): any {\n return {\n nav: true,\n [`nav-${this.layout}`]: !!this.layout,\n [`nav-${this.variant}`]: !!this.variant\n };\n }\n}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NavComponent } from './nav.component';\r\nimport { NavItemComponent } from './nav-item.component';\r\nimport { NavLinkDirective } from './nav-link.directive';\r\n\r\n@NgModule({\r\n declarations: [NavComponent, NavItemComponent, NavLinkDirective],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [NavComponent, NavItemComponent, NavLinkDirective]\r\n})\r\nexport class NavModule { }\r\n","import { AfterContentInit, Component, ContentChild, ElementRef, HostBinding, Input } from '@angular/core';\r\n\r\nimport { BreakpointObserver } from '@angular/cdk/layout';\r\n\r\nimport { CollapseDirective } from '../collapse';\r\nimport { Colors } from '../coreui.types';\r\n\r\n// todo: fix container prop issue not rendering children\r\n// todo: workaroud - use <c-container> component directly in template\r\n\r\n@Component({\r\n selector: 'c-navbar',\r\n templateUrl: './navbar.component.html',\r\n styleUrls: ['./navbar.component.scss']\r\n})\r\nexport class NavbarComponent implements AfterContentInit {\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Sets if the color of text should be colored for a light or dark dark background.\r\n */\r\n @Input() colorScheme?: 'dark' | 'light' = 'light';\r\n /**\r\n * Defines optional container wrapping children elements.\r\n */\r\n @Input() container?: boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | 'fluid';\r\n /**\r\n * Defines the responsive breakpoint to determine when content collapses.\r\n */\r\n @Input() expand?: boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';\r\n /**\r\n * Place component in non-static positions.\r\n */\r\n @Input() placement?: 'fixed-top' | 'fixed-bottom' | 'sticky-top';\r\n\r\n @ContentChild(CollapseDirective) collapse!: CollapseDirective;\r\n\r\n @HostBinding('attr.role')\r\n @Input() role = 'navigation';\r\n\r\n constructor(\r\n private hostElement: ElementRef,\r\n private breakpointObserver: BreakpointObserver\r\n ) {}\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n const expandClassSuffix: string = this.expand === true ? '' : `-${this.expand}`;\r\n return {\r\n navbar: true,\r\n 'navbar-light': this.colorScheme === 'light',\r\n 'navbar-dark': this.colorScheme === 'dark',\r\n [`navbar-expand${expandClassSuffix}`]: !!this.expand,\r\n [`bg-${this.color}`]: !!this.color,\r\n [`${this.placement}`]: !!this.placement\r\n };\r\n }\r\n\r\n get containerClass(): string {\r\n return `container${this.container !== true ? '-' + this.container : ''}`;\r\n }\r\n\r\n get breakpoint(): string | boolean {\r\n if (typeof this.expand === 'string') {\r\n return getComputedStyle(this.hostElement.nativeElement).getPropertyValue(`--cui-breakpoint-${this.expand}`);\r\n }\r\n return false;\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n if (this.breakpoint) {\r\n const onBreakpoint = `(min-width: ${this.breakpoint})`;\r\n this.breakpointObserver.observe([onBreakpoint]).subscribe(result => {\r\n if (this.collapse) {\r\n const animate = this.collapse.animate;\r\n this.collapse.toggle(false);\r\n this.collapse.animate = false;\r\n setTimeout(() => {\r\n this.collapse.toggle(result.matches);\r\n setTimeout(() => {\r\n this.collapse.animate = animate;\r\n });\r\n });\r\n }\r\n });\r\n }\r\n }\r\n}\r\n","<ng-container *ngTemplateOutlet=\"container ? withContainerTemplate : noContainerTemplate\"></ng-container>\r\n\r\n<ng-template #withContainerTemplate>\r\n <div [ngClass]=\"containerClass\">\r\n <ng-content></ng-content>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #noContainerTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cNavbarBrand]'\r\n})\r\nexport class NavbarBrandDirective {\r\n\r\n @HostBinding('class.navbar-brand') navbarBrand = true;\r\n @HostBinding('attr.role') role = 'button';\r\n\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-navbar-nav',\r\n template: '<ng-content></ng-content>',\r\n})\r\nexport class NavbarNavComponent {\r\n\r\n static ngAcceptInputType_scroll: BooleanInput;\r\n\r\n /**\r\n * Enable vertical scrolling of a collapsed navbar toggleable contents.\r\n * @type boolean\r\n */\r\n @Input()\r\n set scroll(value: boolean) {\r\n this._scroll = coerceBooleanProperty(value);\r\n };\r\n get scroll() {\r\n return this._scroll;\r\n }\r\n private _scroll = false;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'navbar-nav': true,\r\n 'navbar-nav-scroll': this.scroll\r\n };\r\n }\r\n\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-navbar-text',\r\n template: '<ng-content></ng-content>',\r\n})\r\nexport class NavbarTextComponent {\r\n\r\n @HostBinding('class.navbar-text') navbarTextClass = true;\r\n\r\n}\r\n","import { AfterContentInit, Directive, ElementRef, HostBinding, HostListener, Input, Renderer2 } from '@angular/core';\r\nimport { CollapseDirective } from '../../collapse';\r\n\r\n@Directive({\r\n selector: '[cNavbarToggler]'\r\n})\r\nexport class NavbarTogglerDirective implements AfterContentInit {\r\n /**\r\n * Reference to navbar collapse element (via # template variable) . [docs]\r\n * @type string\r\n * @default 'button'\r\n */\r\n @Input('cNavbarToggler') collapseRef?: CollapseDirective;\r\n @HostBinding('class.navbar-toggler') navbarToggler = true;\r\n /**\r\n * Default type for navbar-toggler. [docs]\r\n * @type string\r\n * @default 'button'\r\n */\r\n @HostBinding('attr.type')\r\n @Input() type = 'button';\r\n /**\r\n * Default aria-label attr for navbar-toggler. [docs]\r\n * @type string\r\n * @default 'Toggle navigation'\r\n */\r\n @HostBinding('attr.aria-label')\r\n @Input() ariaLabel = 'Toggle navigation';\r\n\r\n private hasContent!: boolean;\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef\r\n ) { }\r\n\r\n @HostListener('click', ['$event'])\r\n handleClick() {\r\n this.collapseRef?.toggle(!this.collapseRef?.visible);\r\n }\r\n\r\n addDefaultIcon(): void {\r\n const span = this.renderer.createElement('span');\r\n this.renderer.addClass(span, 'navbar-toggler-icon');\r\n this.renderer.appendChild(this.hostElement.nativeElement, span);\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.hasContent = this.hostElement.nativeElement.childNodes.length as boolean;\r\n if (!this.hasContent) {\r\n this.addDefaultIcon();\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { NavbarComponent } from './navbar.component';\r\nimport { NavbarBrandDirective } from './navbar-brand/navbar-brand.directive';\r\nimport { NavbarNavComponent } from './navbar-nav/navbar-nav.component';\r\nimport { NavbarTextComponent } from './navbar-text/navbar-text.component';\r\nimport { NavbarTogglerDirective } from './navbar-toggler/navbar-toggler.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n NavbarComponent,\r\n NavbarNavComponent,\r\n NavbarTextComponent,\r\n NavbarBrandDirective,\r\n NavbarTogglerDirective\r\n ],\r\n exports: [\r\n NavbarComponent,\r\n NavbarNavComponent,\r\n NavbarTextComponent,\r\n NavbarBrandDirective,\r\n NavbarTogglerDirective\r\n ],\r\n imports: [\r\n CommonModule,\r\n RouterModule\r\n ]\r\n})\r\nexport class NavbarModule { }\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-modal-body',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./modal-body.component.scss']\r\n})\r\nexport class ModalBodyComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'modal-body': true,\r\n };\r\n }\r\n}\r\n","import { Component, ElementRef, HostBinding, HostListener } from '@angular/core';\r\nimport { InteractivityChecker } from '@angular/cdk/a11y';\r\n\r\n@Component({\r\n selector: 'c-modal-content',\r\n template: '<ng-content></ng-content>'\r\n})\r\nexport class ModalContentComponent {\r\n\r\n constructor(\r\n private hostElement: ElementRef,\r\n private interactivityChecker: InteractivityChecker\r\n ) { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'modal-content': true\r\n };\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n public onClickHandler($event: MouseEvent): boolean {\r\n $event.stopPropagation();\r\n const targetElement = $event.target;\r\n return this.hostElement?.nativeElement?.contains(targetElement) &&\r\n this.interactivityChecker.isFocusable((targetElement as HTMLElement));\r\n }\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-modal-dialog',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./modal-dialog.component.scss'],\r\n})\r\nexport class ModalDialogComponent {\r\n /**\r\n * Align the modal in the center or top of the screen.\r\n * @type {'top' | 'center'}\r\n */\r\n @Input() alignment?: 'top' | 'center';\r\n /**\r\n * Set modal to covers the entire user viewport.\r\n * @type {boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'}\r\n */\r\n @Input() fullscreen?: boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';\r\n /**\r\n * Does the modal dialog itself scroll, or does the whole dialog scroll within the window.\r\n * @type boolean\r\n */\r\n @Input() scrollable?: boolean;\r\n /**\r\n * Size the component small, large, or extra large.\r\n */\r\n @Input() size?: 'sm' | 'lg' | 'xl';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'modal-dialog': true,\r\n 'modal-dialog-centered': this.alignment === 'center',\r\n 'modal-fullscreen': this.fullscreen === true,\r\n [`modal-fullscreen-${this.fullscreen}-down`]: this.fullscreen,\r\n 'modal-dialog-scrollable': this.scrollable,\r\n [`modal-${this.size}`]: this.size\r\n };\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { ModalComponent } from './modal/modal.component';\r\n\r\nexport interface IModalAction {\r\n show?: boolean | 'toggle';\r\n modal?: ModalComponent;\r\n id?: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ModalService {\r\n\r\n private modalState = new Subject<any>();\r\n modalState$ = this.modalState.asObservable();\r\n\r\n constructor() {}\r\n\r\n toggle(action: IModalAction): void {\r\n this.modalState.next(action);\r\n }\r\n}\r\n","import { Directive, HostListener, Input } from '@angular/core';\r\n\r\nimport { ModalService } from '../modal.service';\r\n\r\n@Directive({\r\n selector: '[cModalToggle]'\r\n})\r\nexport class ModalToggleDirective {\r\n /**\r\n * Html id attr of modal to dismiss.\r\n */\r\n @Input('cModalToggle') id: string | undefined;\r\n\r\n constructor(\r\n private modalService: ModalService\r\n ) { }\r\n\r\n @HostListener('click', ['$event'])\r\n dismiss($event: any): void {\r\n $event.preventDefault();\r\n this.modalService.toggle({show: 'toggle', id: this.id});\r\n }\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-modal-footer',\r\n template: '<ng-content></ng-content>',\r\n})\r\nexport class ModalFooterComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'modal-footer': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-modal-header',\r\n template: `\r\n <ng-content></ng-content>`,\r\n})\r\nexport class ModalHeaderComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'modal-header': true\r\n };\r\n }\r\n\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cModalTitle]'\r\n})\r\nexport class ModalTitleDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'modal-title': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Inject, Injectable, Renderer2, RendererFactory2 } from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BackdropService {\r\n\r\n private backdropClick = new Subject<boolean>();\r\n backdropClick$ = this.backdropClick.asObservable();\r\n\r\n private renderer: Renderer2;\r\n private unListen!: () => void;\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n private rendererFactory: RendererFactory2\r\n ) {\r\n this.renderer = rendererFactory.createRenderer(null, null);\r\n }\r\n\r\n setBackdrop(type: string = 'modal'): any {\r\n const backdropElement = this.renderer.createElement('div');\r\n this.renderer.addClass(backdropElement, `${type}-backdrop`);\r\n this.renderer.addClass(backdropElement, 'fade');\r\n this.renderer.appendChild(this.document.body, backdropElement);\r\n this.unListen = this.renderer.listen(backdropElement, 'click', (e): void => {\r\n this.onClickHandler();\r\n });\r\n setTimeout(() => {\r\n this.renderer.addClass(backdropElement, 'show');\r\n });\r\n return backdropElement;\r\n }\r\n\r\n clearBackdrop(backdrop: any): any {\r\n if (backdrop) {\r\n this.unListen();\r\n this.renderer.removeClass(backdrop, 'show');\r\n setTimeout(() => {\r\n this.renderer.removeChild(this.document.body, backdrop);\r\n backdrop = undefined;\r\n }, 300);\r\n }\r\n return backdrop;\r\n }\r\n\r\n onClickHandler(): void {\r\n this.backdropClick.next(true);\r\n }\r\n}\r\n","import {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Inject,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n Renderer2,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { animate, AnimationEvent, state, style, transition, trigger } from '@angular/animations';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { ModalService } from '../modal.service';\r\nimport { BackdropService } from '../../backdrop/backdrop.service';\r\nimport { ModalContentComponent } from '../modal-content/modal-content.component';\r\n\r\n@Component({\r\n selector: 'c-modal',\r\n animations: [\r\n trigger('showHide', [\r\n state(\r\n 'visible',\r\n style({\r\n display: 'block'\r\n })\r\n ),\r\n state(\r\n 'hidden',\r\n style({\r\n display: 'none'\r\n })\r\n ),\r\n transition('visible <=> *', [animate('300ms')],)\r\n ])\r\n ],\r\n templateUrl: './modal.component.html',\r\n styleUrls: ['./modal.component.scss'],\r\n exportAs: 'cModal'\r\n})\r\nexport class ModalComponent implements OnInit, OnDestroy {\r\n\r\n static ngAcceptInputType_scrollable: BooleanInput;\r\n static ngAcceptInputType_visible: BooleanInput;\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef,\r\n private modalService: ModalService,\r\n private backdropService: BackdropService\r\n ) { }\r\n\r\n /**\r\n * Align the modal in the center or top of the screen.\r\n * @type {'top' | 'center'}\r\n * @default 'top'\r\n */\r\n @Input() alignment?: 'top' | 'center' = 'top';\r\n /**\r\n * Apply a backdrop on body while modal is open.\r\n * @type boolean | 'static'\r\n * @default true\r\n */\r\n @Input() backdrop: boolean | 'static' = true;\r\n /**\r\n * Set modal to cover the entire user viewport.\r\n * @type {boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'}\r\n * @default undefined\r\n */\r\n @Input() fullscreen?: boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';\r\n /**\r\n * Closes the modal when escape key is pressed.\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input() keyboard = true;\r\n @Input() id?: string;\r\n /**\r\n * Size the component small, large, or extra large.\r\n */\r\n @Input() size?: 'sm' | 'lg' | 'xl';\r\n /**\r\n * Remove animation to create modal that simply appear rather than fade in to view.\r\n */\r\n @Input() transition = true;\r\n /**\r\n * Default role for modal. [docs]\r\n * @type string\r\n * @default 'dialog'\r\n */\r\n @Input() @HostBinding('attr.role') role = 'dialog';\r\n /**\r\n * Set aria-modal html attr for modal. [docs]\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input() @HostBinding('attr.aria-modal') ariaModal = true;\r\n\r\n /**\r\n * Create a scrollable modal that allows scrolling the modal body.\r\n * @type boolean\r\n */\r\n @Input()\r\n set scrollable(value: boolean) {\r\n this._scrollable = coerceBooleanProperty(value);\r\n }\r\n get scrollable(): boolean {\r\n return this._scrollable;\r\n }\r\n private _scrollable = false;\r\n\r\n /**\r\n * Toggle the visibility of modal component.\r\n * @type boolean\r\n */\r\n @Input()\r\n set visible(value: boolean) {\r\n const newValue = coerceBooleanProperty(value);\r\n if(this._visible !== newValue) {\r\n this._visible = newValue;\r\n this.setBackdrop(this.backdrop !== false && newValue);\r\n this.setBodyStyles(newValue);\r\n this.visibleChange.emit(newValue);\r\n }\r\n }\r\n get visible(): boolean {\r\n return this._visible;\r\n }\r\n private _visible!: boolean;\r\n\r\n /**\r\n * Event triggered on modal dismiss.\r\n */\r\n @Output() visibleChange = new EventEmitter<boolean>();\r\n\r\n @ViewChild(ModalContentComponent, {read: ElementRef}) modalContent!: ElementRef;\r\n private activeBackdrop!: any;\r\n private stateToggleSubscription!: Subscription;\r\n private inBoundingClientRect!: boolean;\r\n\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n modal: true,\r\n fade: this.transition,\r\n show: this.show,\r\n };\r\n }\r\n\r\n @HostBinding('attr.aria-hidden')\r\n get ariaHidden(): boolean | null {\r\n return this.visible ? null : true;\r\n };\r\n\r\n @HostBinding('attr.tabindex')\r\n get tabIndex(): string | null {\r\n return '-1';\r\n }\r\n\r\n @HostBinding('@showHide')\r\n get animateTrigger(): string {\r\n return this.visible ? 'visible' : 'hidden';\r\n }\r\n\r\n private _show = true;\r\n get show(): boolean {\r\n return this.visible && this._show;\r\n }\r\n set show(value: boolean) {\r\n this._show = value;\r\n }\r\n\r\n private get scrollbarWidth() {\r\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\r\n const documentWidth = this.document.documentElement.clientWidth;\r\n const scrollbarWidth = Math.abs((window?.innerWidth ?? documentWidth) - documentWidth);\r\n return `${scrollbarWidth}px`;\r\n }\r\n\r\n @HostListener('@showHide.start', ['$event'])\r\n animateStart(event: AnimationEvent) {\r\n this.renderer.setStyle(this.hostElement.nativeElement, 'overflow-y', 'hidden');\r\n this.show = this.visible;\r\n }\r\n\r\n @HostListener('@showHide.done', ['$event'])\r\n animateDone(event: AnimationEvent) {\r\n const scrollbarWidth = this.scrollbarWidth;\r\n setTimeout(() => {\r\n if (event.toState === 'visible') {\r\n this.inBoundingClientRect = this.modalContent?.nativeElement?.getBoundingClientRect().height <= this.document?.documentElement.clientHeight;\r\n if (!this.inBoundingClientRect) {\r\n this.renderer.setStyle(this.document.body, 'overflow-y', 'hidden');\r\n this.renderer.setStyle(this.document.body, 'padding-right', scrollbarWidth);\r\n } else {\r\n this.renderer.removeStyle(this.document.body, 'overflow-y');\r\n this.renderer.removeStyle(this.document.body, 'padding-right');\r\n }\r\n if (this.fullscreen === true) {\r\n this.renderer.setStyle(this.document.body, 'overflow-y', 'hidden');\r\n }\r\n this.renderer.removeStyle(this.hostElement.nativeElement, 'overflow-y');\r\n }\r\n });\r\n }\r\n\r\n @HostListener('document:keydown', ['$event'])\r\n onKeyDownHandler(event: KeyboardEvent): void {\r\n if (event.key === 'Escape' && this.keyboard && this.visible) {\r\n if (this.backdrop === 'static') {\r\n this.setStaticBackdrop();\r\n } else {\r\n this.modalService.toggle({show: false, modal: this});\r\n }\r\n }\r\n }\r\n\r\n private mouseDownTarget: EventTarget | null = null;\r\n\r\n @HostListener('mousedown', ['$event'])\r\n public onMouseDownHandler($event: MouseEvent): void {\r\n this.mouseDownTarget = $event.target;\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n public onClickHandler($event: MouseEvent): void {\r\n $event.stopPropagation();\r\n if (this.mouseDownTarget !== $event.target) {\r\n this.mouseDownTarget = null;\r\n return;\r\n }\r\n if (this.backdrop === 'static') {\r\n this.setStaticBackdrop();\r\n return;\r\n }\r\n this.modalService.toggle({show: false, modal: this});\r\n }\r\n\r\n ngOnInit(): void {\r\n this.stateToggleSubscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.modalService.toggle({show: false, modal: this});\r\n this.stateToggleSubscribe(false);\r\n }\r\n\r\n private stateToggleSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.stateToggleSubscription = this.modalService.modalState$.subscribe(\r\n (action) => {\r\n if (this === action.modal || this.id === action.id) {\r\n if ('show' in action) {\r\n this.visible = action?.show === 'toggle' ? !this.visible : action.show;\r\n }\r\n } else {\r\n if (this.visible) {\r\n this.visible = false;\r\n }\r\n }\r\n }\r\n );\r\n } else {\r\n this.stateToggleSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n private setBackdrop(setBackdrop: boolean): void {\r\n if (setBackdrop) {\r\n this.activeBackdrop = this.backdropService.setBackdrop('modal');\r\n } else {\r\n this.activeBackdrop = this.backdropService.clearBackdrop(this.activeBackdrop);\r\n }\r\n }\r\n\r\n private setBodyStyles(open: boolean): void {\r\n if (open) {\r\n if (this.fullscreen === true) {\r\n this.renderer.setStyle(this.document.body, 'overflow-y', 'hidden');\r\n }\r\n if (this.backdrop === true) {\r\n this.renderer.addClass(this.document.body, 'modal-open');\r\n }\r\n } else {\r\n this.renderer.removeClass(this.document.body, 'modal-open');\r\n this.renderer.removeStyle(this.document.body, 'overflow-y');\r\n this.renderer.removeStyle(this.document.body, 'padding-right');\r\n }\r\n }\r\n\r\n private setStaticBackdrop(): void {\r\n if (this.transition) {\r\n this.renderer.addClass(this.hostElement.nativeElement, 'modal-static');\r\n this.renderer.setStyle(this.hostElement.nativeElement, 'overflow-y', 'hidden');\r\n setTimeout(() => {\r\n this.renderer.removeClass(this.hostElement.nativeElement, 'modal-static');\r\n this.renderer.removeStyle(this.hostElement.nativeElement, 'overflow-y');\r\n }, 400);\r\n }\r\n }\r\n}\r\n","<c-modal-dialog\r\n [alignment]=\"alignment\"\r\n [fullscreen]=\"fullscreen\"\r\n [scrollable]=\"scrollable\"\r\n [size]=\"size\">\r\n <c-modal-content>\r\n <div [cdkTrapFocus]=\"visible\" [cdkTrapFocusAutoCapture]=\"visible\" style=\"display: contents;\">\r\n <ng-content></ng-content>\r\n </div>\r\n </c-modal-content>\r\n</c-modal-dialog>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\n\r\nimport { ModalBodyComponent } from './modal-body/modal-body.component';\r\nimport { ModalContentComponent } from './modal-content/modal-content.component';\r\nimport { ModalDialogComponent } from './modal-dialog/modal-dialog.component';\r\nimport { ModalToggleDirective } from './modal-dismiss/modal-toggle.directive';\r\nimport { ModalFooterComponent } from './modal-footer/modal-footer.component';\r\nimport { ModalHeaderComponent } from './modal-header/modal-header.component';\r\nimport { ModalTitleDirective } from './modal-title/modal-title.directive';\r\nimport { ModalComponent } from './modal/modal.component';\r\nimport { ModalService } from './modal.service';\r\n\r\n@NgModule({\r\n declarations: [\r\n ModalBodyComponent,\r\n ModalContentComponent,\r\n ModalDialogComponent,\r\n ModalToggleDirective,\r\n ModalFooterComponent,\r\n ModalHeaderComponent,\r\n ModalTitleDirective,\r\n ModalComponent,\r\n ],\r\n exports: [\r\n ModalBodyComponent,\r\n ModalContentComponent,\r\n ModalDialogComponent,\r\n ModalToggleDirective,\r\n ModalFooterComponent,\r\n ModalHeaderComponent,\r\n ModalTitleDirective,\r\n ModalComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n A11yModule\r\n ],\r\n providers: [\r\n ModalService\r\n ]\r\n})\r\nexport class ModalModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { OffcanvasComponent } from './offcanvas/offcanvas.component';\r\n\r\nexport interface IOffcanvasAction {\r\n show?: boolean | 'toggle';\r\n offcanvas?: OffcanvasComponent;\r\n id?: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OffcanvasService {\r\n\r\n private offcanvasState = new Subject<any>();\r\n offcanvasState$ = this.offcanvasState.asObservable();\r\n\r\n constructor() { }\r\n\r\n toggle(action: IOffcanvasAction): void {\r\n this.offcanvasState.next(action);\r\n }\r\n}\r\n","import {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Inject,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n PLATFORM_ID,\r\n Renderer2,\r\n SimpleChanges,\r\n} from '@angular/core';\r\nimport { animate, state, style, transition, trigger, } from '@angular/animations';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { OffcanvasService } from '../offcanvas.service';\r\nimport { BackdropService } from '../../backdrop/backdrop.service';\r\nimport { DOCUMENT, isPlatformBrowser } from '@angular/common';\r\n\r\nlet nextId = 0;\r\n\r\n@Component({\r\n selector: 'c-offcanvas',\r\n animations: [\r\n trigger('showHide', [\r\n state(\r\n 'true',\r\n style({\r\n visibility: 'visible',\r\n })\r\n ),\r\n state(\r\n 'false',\r\n style({\r\n visibility: 'hidden',\r\n })\r\n ),\r\n transition('true => false', [animate('300ms')]),\r\n ]),\r\n ],\r\n templateUrl: './offcanvas.component.html',\r\n styleUrls: ['./offcanvas.component.scss'],\r\n exportAs: 'cOffcanvas',\r\n})\r\nexport class OffcanvasComponent implements OnChanges, OnInit, OnDestroy {\r\n\r\n static ngAcceptInputType_scroll: BooleanInput;\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n @Inject(PLATFORM_ID) private platformId: any,\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef,\r\n private offcanvasService: OffcanvasService,\r\n private backdropService: BackdropService\r\n ) { }\r\n\r\n /**\r\n * Apply a backdrop on body while offcanvas is open.\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input() backdrop = true;\r\n\r\n /**\r\n * Closes the offcanvas when escape key is pressed [docs]\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input() keyboard = true;\r\n\r\n /**\r\n * Components placement, there’s no default placement.\r\n * @type {'start' | 'end' | 'top' | 'bottom'}\r\n * @default 'start'\r\n */\r\n @Input() placement: string | 'start' | 'end' | 'top' | 'bottom' = 'start';\r\n\r\n /**\r\n * Allow body scrolling while offcanvas is visible.\r\n * @type boolean\r\n */\r\n @Input()\r\n set scroll(value: boolean) {\r\n this._scroll = coerceBooleanProperty(value);\r\n };\r\n get scroll() {\r\n return this._scroll;\r\n }\r\n private _scroll = false;\r\n\r\n @Input() id = `offcanvas-${this.placement}-${nextId++}`;\r\n /**\r\n * Default role for offcanvas. [docs]\r\n * @type string\r\n * @default 'dialog'\r\n */\r\n @Input() @HostBinding('attr.role') role = 'dialog';\r\n\r\n /**\r\n * Set aria-modal html attr for offcanvas. [docs]\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input() @HostBinding('attr.aria-modal') ariaModal = true;\r\n\r\n /**\r\n * Toggle the visibility of offcanvas component.\r\n * @type boolean\r\n */\r\n @Input()\r\n set visible(value: boolean) {\r\n this._visible = coerceBooleanProperty(value);\r\n if (value) {\r\n this.setBackdrop(this.backdrop);\r\n this.setFocus();\r\n } else {\r\n this.setBackdrop(false);\r\n }\r\n this.setScroll();\r\n this.visibleChange.emit(value);\r\n }\r\n get visible(): boolean {\r\n return this._visible;\r\n }\r\n private _visible!: boolean;\r\n\r\n /**\r\n * Event triggered on visible change.\r\n */\r\n @Output() visibleChange = new EventEmitter<boolean>();\r\n\r\n private activeBackdrop!: any;\r\n\r\n private stateToggleSubscription!: Subscription;\r\n private backdropClickSubscription!: Subscription;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n offcanvas: true,\r\n [`offcanvas-${this.placement}`]: !!this.placement,\r\n show: this.visible,\r\n };\r\n }\r\n\r\n @HostBinding('attr.aria-hidden')\r\n get ariaHidden(): boolean | null {\r\n return this.visible ? null : true;\r\n };\r\n\r\n @HostBinding('attr.tabindex')\r\n get tabIndex(): string | null {\r\n return '-1';\r\n }\r\n\r\n @HostBinding('@showHide')\r\n get animateType(): boolean {\r\n return this.visible;\r\n }\r\n\r\n @HostListener('document:keydown', ['$event'])\r\n onKeyDownHandler(event: KeyboardEvent): void {\r\n if (event.key === 'Escape' && this.keyboard && this.visible) {\r\n this.offcanvasService.toggle({ show: false, id: this.id });\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setScroll();\r\n this.stateToggleSubscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.offcanvasService.toggle({ show: false, id: this.id });\r\n this.stateToggleSubscribe(false);\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['scroll']) {\r\n this.setScroll();\r\n }\r\n }\r\n\r\n private stateToggleSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.stateToggleSubscription = this.offcanvasService.offcanvasState$.subscribe(\r\n (action) => {\r\n if (this === action.offcanvas || this.id === action.id) {\r\n if ('show' in action) {\r\n this.visible = action?.show === 'toggle' ? !this.visible : action.show;\r\n }\r\n }\r\n }\r\n );\r\n } else {\r\n this.stateToggleSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n private backdropClickSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.backdropClickSubscription = this.backdropService.backdropClick$.subscribe(\r\n (clicked) => {\r\n this.offcanvasService.toggle({ show: !clicked, id: this.id });\r\n }\r\n );\r\n } else {\r\n this.backdropClickSubscription?.unsubscribe();\r\n }\r\n }\r\n\r\n private setBackdrop(setBackdrop: boolean): void {\r\n if (setBackdrop) {\r\n this.activeBackdrop = this.backdropService.setBackdrop('offcanvas');\r\n this.backdropClickSubscribe();\r\n } else {\r\n this.activeBackdrop = this.backdropService.clearBackdrop(this.activeBackdrop);\r\n this.backdropClickSubscribe(false);\r\n }\r\n }\r\n\r\n setFocus(): void {\r\n if (isPlatformBrowser(this.platformId)) {\r\n setTimeout(() => this.hostElement.nativeElement.focus());\r\n }\r\n }\r\n\r\n setScroll() {\r\n if (this.visible) {\r\n if (!this.scroll) {\r\n this.renderer.setStyle(this.document.body, 'overflow', 'hidden');\r\n this.renderer.setStyle(this.document.body, 'paddingRight.px', '0');\r\n }\r\n return;\r\n }\r\n if (!this.scroll) {\r\n this.renderer.removeStyle(this.document.body, 'overflow');\r\n this.renderer.removeStyle(this.document.body, 'paddingRight');\r\n }\r\n }\r\n}\r\n","<div cdkTrapFocus cdkTrapFocusAutoCapture>\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-offcanvas-body',\r\n template: `<ng-content></ng-content>`,\r\n styleUrls: ['./offcanvas-body.component.scss']\r\n})\r\nexport class OffcanvasBodyComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'offcanvas-body': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-offcanvas-header',\r\n template: `<ng-content></ng-content>`,\r\n styleUrls: ['./offcanvas-header.component.scss']\r\n})\r\nexport class OffcanvasHeaderComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'offcanvas-header': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cOffcanvasTitle]'\r\n})\r\nexport class OffcanvasTitleDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'offcanvas-title': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Directive, HostListener, Input } from '@angular/core';\r\n\r\nimport { OffcanvasService } from '../offcanvas.service';\r\n\r\n@Directive({\r\n selector: '[cOffcanvasToggle]'\r\n})\r\nexport class OffcanvasToggleDirective {\r\n\r\n /**\r\n * Html id attr of offcanvas to toggle.\r\n * @type string\r\n */\r\n @Input('cOffcanvasToggle') id?: string;\r\n\r\n constructor(\r\n private offcanvasService: OffcanvasService\r\n ) {}\r\n\r\n @HostListener('click', ['$event'])\r\n toggleOpen($event: any): void {\r\n $event.preventDefault();\r\n this.offcanvasService.toggle({ show: 'toggle', id: this.id });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\n\r\nimport { OffcanvasComponent } from './offcanvas/offcanvas.component';\r\nimport { OffcanvasBodyComponent } from './offcanvas-body/offcanvas-body.component';\r\nimport { OffcanvasHeaderComponent } from './offcanvas-header/offcanvas-header.component';\r\nimport { OffcanvasTitleDirective } from './offcanvas-title/offcanvas-title.directive';\r\nimport { OffcanvasToggleDirective } from './offcanvas-toggle/offcanvas-toggle.directive';\r\nimport { OffcanvasService } from './offcanvas.service';\r\nimport { BackdropService } from '../backdrop/backdrop.service';\r\n\r\n@NgModule({\r\n declarations: [\r\n OffcanvasComponent,\r\n OffcanvasBodyComponent,\r\n OffcanvasHeaderComponent,\r\n OffcanvasTitleDirective,\r\n OffcanvasToggleDirective\r\n ],\r\n exports: [\r\n OffcanvasComponent,\r\n OffcanvasBodyComponent,\r\n OffcanvasHeaderComponent,\r\n OffcanvasTitleDirective,\r\n OffcanvasToggleDirective\r\n ],\r\n imports: [\r\n CommonModule,\r\n A11yModule\r\n ],\r\n providers: [\r\n OffcanvasService,\r\n BackdropService\r\n ],\r\n})\r\nexport class OffcanvasModule { }\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cPageLink]'\r\n})\r\nexport class PageLinkDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'page-link': true,\r\n };\r\n }\r\n}\r\n","import {\r\n AfterContentInit,\r\n ContentChild,\r\n Directive,\r\n ElementRef,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n Renderer2, SimpleChanges\r\n} from '@angular/core';\r\n\r\nimport { PageLinkDirective } from '../page-link/page-link.directive';\r\n\r\n@Directive({\r\n selector: '[cPageItem]'\r\n})\r\nexport class PageItemDirective implements AfterContentInit, OnChanges {\r\n\r\n /**\r\n * Toggle the active state for the component.\r\n * @type boolean\r\n */\r\n @Input() active?: boolean;\r\n /**\r\n * Toggle the disabled state for the component.\r\n * @type boolean\r\n */\r\n @Input() disabled?: boolean;\r\n\r\n @HostBinding('attr.aria-current')\r\n get ariaCurrent(): string | null {\r\n return this.active ? 'page' : null;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'page-item': true,\r\n disabled: this.disabled,\r\n active: this.active,\r\n };\r\n }\r\n\r\n @ContentChild(PageLinkDirective, { read: ElementRef }) pageLinkElementRef!: ElementRef;\r\n\r\n constructor(\r\n private renderer: Renderer2\r\n ) { }\r\n\r\n ngAfterContentInit(): void {\r\n this.setAttributes();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['disabled']) {\r\n this.setAttributes();\r\n }\r\n }\r\n\r\n setAttributes(): void {\r\n if (!this.pageLinkElementRef) {\r\n return\r\n }\r\n const pageLinkElement = this.pageLinkElementRef.nativeElement;\r\n\r\n if (this.disabled) {\r\n this.renderer.setAttribute(pageLinkElement, 'aria-disabled', 'true');\r\n this.renderer.setAttribute(pageLinkElement, 'tabindex', '-1');\r\n } else {\r\n this.renderer.removeAttribute(pageLinkElement, 'aria-disabled');\r\n this.renderer.removeAttribute(pageLinkElement, 'tabindex');\r\n }\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { PageItemDirective } from './page-item.directive';\r\n\r\n@Component({\r\n selector: 'c-page-item',\r\n template: `<ng-content></ng-content>`,\r\n styleUrls: ['./page-item.component.scss']\r\n})\r\nexport class PageItemComponent extends PageItemDirective { }\r\n\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-pagination',\r\n templateUrl: './pagination.component.html',\r\n styleUrls: ['./pagination.component.scss']\r\n})\r\nexport class PaginationComponent {\r\n\r\n /**\r\n * Set the alignment of pagination components.\r\n * @values 'start', 'center', 'end'\r\n */\r\n @Input() align: 'start' | 'center' | 'end' | '' = '';\r\n /**\r\n * Size the component small or large.\r\n * @values 'sm', 'lg'\r\n */\r\n @Input() size?: 'sm' | 'lg';\r\n /**\r\n * Default role for pagination. [docs]\r\n * @type string\r\n * @default 'navigation'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'navigation';\r\n\r\n get paginationClass(): any {\r\n return {\r\n pagination: true,\r\n [`pagination-${this.size}`]: !!this.size,\r\n [`justify-content-${this.align}`]: !!this.align\r\n };\r\n }\r\n\r\n}\r\n","<ul [ngClass]=\"paginationClass\">\r\n <ng-content></ng-content>\r\n</ul>\r\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PaginationComponent } from './pagination/pagination.component';\nimport { PageItemComponent } from './page-item/page-item.component';\nimport { PageItemDirective } from './page-item/page-item.directive';\nimport { PageLinkDirective } from './page-link/page-link.directive';\n\n@NgModule({\n declarations: [\n PaginationComponent,\n PageItemComponent,\n PageItemDirective,\n PageLinkDirective\n ],\n exports: [\n PaginationComponent,\n PageItemComponent,\n PageItemDirective,\n PageLinkDirective\n ],\n imports: [\n CommonModule\n ]\n})\nexport class PaginationModule {}\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: '[cPlaceholder]',\r\n exportAs: 'cPlaceholder'\r\n})\r\nexport class PlaceholderDirective {\r\n\r\n static ngAcceptInputType_visible: BooleanInput;\r\n\r\n constructor() { }\r\n\r\n /**\r\n * placeholder toggler\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input('cPlaceholder')\r\n set visible(value: boolean) {\r\n this._visible = coerceBooleanProperty(value);\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible: boolean = false;\r\n\r\n /**\r\n * Size the placeholder extra small, small, large.\r\n */\r\n @Input('cPlaceholderSize') size?: 'xs' | 'sm' | 'lg';\r\n\r\n @HostBinding('attr.aria-hidden')\r\n get ariaHidden(): boolean | null {\r\n return this.visible ? null : true;\r\n };\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'placeholder': this.visible,\r\n [`placeholder-${this.size}`]: !!this.size\r\n };\r\n }\r\n}\r\n","import { AfterContentInit, ContentChild, Directive, HostBinding, Input } from '@angular/core';\r\nimport { PlaceholderDirective } from './placeholder.directive';\r\n\r\n@Directive({\r\n selector: '[cPlaceholderAnimation]'\r\n})\r\nexport class PlaceholderAnimationDirective implements AfterContentInit {\r\n\r\n constructor() { }\r\n\r\n /**\r\n * Animation type for placeholder\r\n * @type 'glow' | 'wave'\r\n * @default undefined\r\n */\r\n @Input('cPlaceholderAnimation') animation?: 'glow' | 'wave';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n [`placeholder-${this.animation}`]: this.animate && !!this.animation\r\n };\r\n }\r\n\r\n @ContentChild(PlaceholderDirective) placeholder!: PlaceholderDirective;\r\n private animate: boolean = false;\r\n\r\n ngAfterContentInit() {\r\n this.animate = this.placeholder?.visible;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PlaceholderDirective } from './placeholder.directive';\r\nimport { PlaceholderAnimationDirective } from './placeholder-animation.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n PlaceholderDirective,\r\n PlaceholderAnimationDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n PlaceholderDirective,\r\n PlaceholderAnimationDirective\r\n ]\r\n})\r\nexport class PlaceholderModule {\r\n}\r\n","import {\r\n AfterViewInit,\r\n Component,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n Renderer2,\r\n SimpleChanges,\r\n TemplateRef,\r\n ViewChild,\r\n ViewContainerRef\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-popover',\r\n templateUrl: './popover.component.html',\r\n})\r\nexport class PopoverComponent implements AfterViewInit, OnChanges, OnDestroy {\r\n\r\n /**\r\n * Content of popover\r\n * @type {string | TemplateRef}\r\n */\r\n @Input() content: string | TemplateRef<any> = '';\r\n /**\r\n * Toggle the visibility of popover component.\r\n * @type boolean\r\n */\r\n @Input() visible = false;\r\n @Input() @HostBinding('attr.id') id?: string;\r\n @Input() @HostBinding('attr.role') role = 'tooltip';\r\n\r\n @ViewChild('popoverTemplate', { read: ViewContainerRef }) viewContainerRef!: ViewContainerRef;\r\n private textNode!: Text;\r\n\r\n constructor(\r\n private renderer: Renderer2\r\n ) { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): { [klass: string]: any; } {\r\n return {\r\n popover: true,\r\n fade: true,\r\n show: this.visible,\r\n 'bs-popover-auto': true\r\n };\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n setTimeout(() => {\r\n this.updateView(this.content);\r\n });\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['content']) {\r\n setTimeout(() => {\r\n this.updateView(this.content);\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.clear();\r\n }\r\n\r\n private clear(): void {\r\n this.viewContainerRef?.clear();\r\n if (!!this.textNode) {\r\n this.renderer.removeChild(this.textNode.parentNode, this.textNode);\r\n }\r\n }\r\n\r\n private updateView(content: string | TemplateRef<any>): void {\r\n this.clear();\r\n\r\n if (!content) {\r\n return;\r\n }\r\n\r\n if (content instanceof TemplateRef) {\r\n this.viewContainerRef.createEmbeddedView(content);\r\n } else {\r\n this.textNode = this.renderer.createText(content);\r\n const popoverBody = this.renderer.createElement('div');\r\n this.renderer.addClass(popoverBody, 'popover-body');\r\n this.renderer.appendChild(popoverBody, this.textNode);\r\n\r\n const element = this.viewContainerRef.element.nativeElement;\r\n this.renderer.appendChild(element.parentNode, popoverBody);\r\n }\r\n }\r\n}\r\n","<ng-container>\r\n <div [ngClass]=\"{'popover-arrow': !!content}\" data-popper-arrow ></div>\r\n <ng-container #popoverTemplate></ng-container>\r\n</ng-container>\r\n","import {\r\n ComponentFactoryResolver,\r\n ComponentRef,\r\n Directive,\r\n ElementRef,\r\n HostBinding,\r\n Inject,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Renderer2,\r\n SimpleChanges,\r\n TemplateRef,\r\n ViewContainerRef\r\n} from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { createPopper, Instance, Options } from '@popperjs/core';\r\n\r\nimport { Triggers } from '../coreui.types';\r\nimport { PopoverComponent } from './popover/popover.component';\r\nimport { IListenersConfig, ListenersService } from '../services/listeners.service';\r\n\r\n@Directive({\r\n selector: '[cPopover]',\r\n exportAs: 'cPopover',\r\n providers: [ListenersService]\r\n})\r\nexport class PopoverDirective implements OnChanges, OnDestroy, OnInit {\r\n\r\n /**\r\n * Content of popover\r\n * @type {string | TemplateRef}\r\n */\r\n @Input('cPopover') content: string | TemplateRef<any> = '';\r\n\r\n /**\r\n * Optional popper Options object, takes precedence over cPopoverPlacement prop\r\n * @type Partial<Options>\r\n */\r\n @Input('cPopoverOptions')\r\n set popperOptions(value: Partial<Options>) {\r\n this._popperOptions = {...this._popperOptions, placement: this.placement, ...value};\r\n };\r\n get popperOptions(): Partial<Options> {\r\n return {placement: this.placement, ...this._popperOptions};\r\n }\r\n\r\n /**\r\n * Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property.\r\n */\r\n @Input('cPopoverPlacement') placement: 'top' | 'bottom' | 'left' | 'right' = 'top';\r\n /**\r\n * Sets which event handlers you’d like provided to your toggle prop. You can specify one trigger or an array of them.\r\n * @type {'hover' | 'focus' | 'click'}\r\n */\r\n @Input('cPopoverTrigger') trigger?: Triggers | Triggers[] = 'hover';\r\n\r\n /**\r\n * Toggle the visibility of popover component.\r\n */\r\n @Input('cPopoverVisible')\r\n set visible(value: boolean) {\r\n this._visible = value;\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible = false;\r\n\r\n private popover!: HTMLDivElement;\r\n private popoverId!: string;\r\n private popoverRef!: ComponentRef<PopoverComponent>;\r\n private popperInstance!: Instance;\r\n\r\n private _popperOptions: Partial<Options> = {\r\n modifiers: [\r\n {\r\n name: 'offset',\r\n options: {\r\n offset: [0, 8],\r\n },\r\n },\r\n ],\r\n };\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef,\r\n private componentFactoryResolver: ComponentFactoryResolver,\r\n private viewContainerRef: ViewContainerRef,\r\n private listenersService: ListenersService\r\n ) {}\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['visible']) {\r\n changes['visible'].currentValue ? this.addPopoverElement() : this.removePopoverElement();\r\n }\r\n }\r\n\r\n @HostBinding('attr.aria-describedby') get ariaDescribedBy(): string | null {\r\n return this.popoverId ? this.popoverId : null;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.clearListeners();\r\n this.destroyPopoverElement();\r\n }\r\n\r\n ngOnInit(): void {\r\n // this.createPopoverElement();\r\n this.setListeners();\r\n }\r\n\r\n private setListeners(): void {\r\n const config: IListenersConfig = {\r\n hostElement: this.hostElement,\r\n trigger: this.trigger,\r\n callbackToggle: () => {\r\n this.visible = !this.visible;\r\n this.visible ? this.addPopoverElement() : this.removePopoverElement();\r\n },\r\n callbackOff: () => {\r\n this.visible = false;\r\n this.removePopoverElement();\r\n },\r\n callbackOn: () => {\r\n this.visible = true;\r\n this.addPopoverElement();\r\n }\r\n }\r\n this.listenersService.setListeners(config);\r\n }\r\n\r\n private clearListeners(): void {\r\n this.listenersService.clearListeners();\r\n }\r\n\r\n private getUID(prefix: string): string {\r\n let uid = prefix ?? 'random-id';\r\n do {\r\n uid = `${prefix}-${Math.floor(Math.random() * 1000000).toString(10)}`;\r\n } while (this.document.getElementById(uid));\r\n\r\n return uid;\r\n }\r\n\r\n private createPopoverElement(): void {\r\n if (!this.popoverRef) {\r\n const popoverComponent =\r\n this.componentFactoryResolver.resolveComponentFactory(PopoverComponent);\r\n this.popoverRef = popoverComponent.create(this.viewContainerRef.injector);\r\n }\r\n }\r\n\r\n private destroyPopoverElement(): void {\r\n this.popover?.remove();\r\n this.popoverRef?.destroy();\r\n // @ts-ignore\r\n this.popoverRef = undefined;\r\n this.popperInstance?.destroy();\r\n this.viewContainerRef.detach();\r\n this.viewContainerRef.clear();\r\n }\r\n\r\n private addPopoverElement(): void {\r\n if (!this.popoverRef) {\r\n this.createPopoverElement();\r\n }\r\n this.popoverRef.instance.content = this.content;\r\n this.popover = this.popoverRef.location.nativeElement;\r\n this.renderer.addClass(this.popover, 'fade');\r\n // this.renderer.setStyle(this.popover, 'visibility', 'hidden')\r\n\r\n setTimeout(() => {\r\n this.popperInstance = createPopper(\r\n this.hostElement.nativeElement,\r\n this.popover,\r\n {...this.popperOptions}\r\n );\r\n this.viewContainerRef.insert(this.popoverRef.hostView);\r\n setTimeout(() => {\r\n this.popoverId = this.getUID('popover');\r\n this.popoverRef.instance.id = this.popoverId;\r\n this.popoverRef.instance.visible = this.visible;\r\n // this.renderer.removeStyle(this.popover, 'visibility');\r\n this.renderer.appendChild(this.document.body, this.popover);\r\n this.popperInstance.forceUpdate();\r\n // this.popoverRef.changeDetectorRef.detectChanges();\r\n }, 100);\r\n })\r\n }\r\n\r\n private removePopoverElement(): void {\r\n if (!this.popoverRef) {\r\n return;\r\n }\r\n this.popoverRef.instance.visible = this.visible;\r\n // this.popoverRef.changeDetectorRef?.detectChanges();\r\n this.popoverRef.instance.id = undefined;\r\n setTimeout(() => {\r\n this.viewContainerRef.detach();\r\n // this.viewContainerRef.remove();\r\n // this.renderer.removeChild(this.document.body, this.popover);\r\n this.popperInstance?.destroy();\r\n this.popoverId = '';\r\n }, 300);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PopoverDirective } from './popover.directive';\r\nimport { PopoverComponent } from './popover/popover.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n PopoverDirective,\r\n PopoverComponent\r\n ],\r\n exports: [\r\n PopoverDirective,\r\n PopoverComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class PopoverModule { }\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty, coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-progress',\r\n template: '<ng-content></ng-content>'\r\n})\r\nexport class ProgressComponent {\r\n\r\n static ngAcceptInputType_height: NumberInput;\r\n static ngAcceptInputType_thin: BooleanInput;\r\n static ngAcceptInputType_white: BooleanInput;\r\n\r\n /**\r\n * Sets the height of the component. If you set that value the inner `<CProgressBar>` will automatically resize accordingly.\r\n * @type number\r\n */\r\n @Input()\r\n set height(value: number) {\r\n this._height = coerceNumberProperty(value);\r\n }\r\n get height() {\r\n return this._height;\r\n }\r\n private _height: number = 0;\r\n\r\n /**\r\n * Displays thin progress.\r\n * @type boolean\r\n */\r\n @Input()\r\n set thin(value: boolean) {\r\n this._thin = coerceBooleanProperty(value);\r\n }\r\n get thin(): boolean {\r\n return this._thin;\r\n }\r\n private _thin = false;\r\n\r\n /**\r\n * Change the default color to white.\r\n * @type boolean\r\n */\r\n @Input()\r\n get white(): boolean {\r\n return this._white;\r\n }\r\n set white(value: boolean) {\r\n this._white = coerceBooleanProperty(value);\r\n }\r\n private _white = false;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n progress: true,\r\n 'progress-thin': this.thin,\r\n 'progress-white': this.white\r\n };\r\n }\r\n\r\n @HostBinding('style.height')\r\n get hostStyle(): any {\r\n return !!this.height ? `${this.height}px` : '';\r\n }\r\n}\r\n","import { Component, ElementRef, HostBinding, Input, OnChanges, OnInit, Renderer2, SimpleChanges } from '@angular/core';\r\nimport { Colors } from '../coreui.types';\r\nimport { BooleanInput, coerceBooleanProperty, coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-progress-bar',\r\n template: '<ng-content></ng-content>'\r\n})\r\nexport class ProgressBarComponent implements OnInit, OnChanges {\r\n\r\n static ngAcceptInputType_animated: BooleanInput;\r\n static ngAcceptInputType_value: NumberInput;\r\n\r\n /**\r\n * Use to animate the stripes right to left via CSS3 animations.\r\n * @type boolean\r\n */\r\n @Input()\r\n set animated(value: boolean) {\r\n this._animated = coerceBooleanProperty(value);\r\n }\r\n get animated() {\r\n return this._animated;\r\n }\r\n private _animated = false;\r\n\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @values 'primary', 'secondary', 'success', 'danger', 'warning', 'info', 'dark', 'light'\r\n */\r\n @Input() color?: Colors;\r\n // TODO: check if this is necessary.\r\n @Input() precision = 0;\r\n /**\r\n * The percent to progress the ProgressBar.\r\n */\r\n @Input()\r\n set value(value: number) {\r\n this._value = coerceNumberProperty(value);\r\n };\r\n get value() {\r\n return this._value;\r\n }\r\n private _value = 0;\r\n /**\r\n * Set the progress bar variant to optional striped.\r\n * @values 'striped'\r\n */\r\n @Input() variant?: 'striped';\r\n\r\n /**\r\n * Set default html role attribute.\r\n * @type string\r\n */\r\n @Input()\r\n @HostBinding('attr.role') role = 'progressbar';\r\n private state = {\r\n percent: 0,\r\n min: 0,\r\n max: 100\r\n };\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef\r\n ) { }\r\n\r\n get min(): number {\r\n return this.state.min;\r\n }\r\n\r\n @Input()\r\n set min(value: number) {\r\n this.state.min = isNaN(value) ? 0 : value;\r\n }\r\n\r\n get max(): number {\r\n return this.state.max;\r\n }\r\n\r\n @Input()\r\n set max(value: number) {\r\n this.state.max = isNaN(value) || value <= 0 || value === this.min ? 100 : value;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'progress-bar': true,\r\n 'progress-bar-animated': this.animated,\r\n [`progress-bar-${this.variant}`]: !!this.variant,\r\n [`bg-${this.color}`]: !!this.color\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setValues();\r\n }\r\n\r\n setPercent(): void {\r\n this.state.percent = +((this.value / (this.max - this.min)) * 100).toFixed(this.precision);\r\n }\r\n\r\n setValues(): void {\r\n this.setPercent();\r\n const host: HTMLElement = this.hostElement.nativeElement;\r\n this.renderer.setStyle(host, 'width', `${this.state.percent}%`);\r\n this.renderer.setAttribute(host, 'aria-valuenow', String(this.value));\r\n this.renderer.setAttribute(host, 'aria-valuemin', String(this.min));\r\n this.renderer.setAttribute(host, 'aria-valuemax', String(this.max));\r\n }\r\n\r\n public ngOnChanges(changes: SimpleChanges): void {\r\n this.setValues();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ProgressComponent } from './progress.component';\r\nimport { ProgressBarComponent } from './progress-bar.component';\r\n\r\n@NgModule({\r\n declarations: [ProgressComponent, ProgressBarComponent],\r\n exports: [\r\n ProgressComponent,\r\n ProgressBarComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class ProgressModule { }\r\n","import { Inject, Injectable, Renderer2, RendererFactory2 } from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ClassToggleService {\r\n\r\n private renderer: Renderer2;\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n private rendererFactory: RendererFactory2\r\n ) {\r\n this.renderer = rendererFactory.createRenderer(null, null);\r\n }\r\n\r\n toggle(selector: any, className: string) {\r\n const element = document.querySelector(selector);\r\n if (element) {\r\n element.classList.contains(className) ?\r\n this.renderer.removeClass(element, className) :\r\n this.renderer.addClass(element, className);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nimport {SidebarComponent} from './sidebar/sidebar.component';\r\n\r\nexport interface ISidebarAction {\r\n unfoldable?: boolean | 'toggle';\r\n visible?: boolean | 'toggle';\r\n toggle?: 'visible' | 'unfoldable';\r\n narrow?: boolean;\r\n mobile?: boolean;\r\n sidebar?: SidebarComponent;\r\n id?: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SidebarService {\r\n\r\n private sidebarState = new BehaviorSubject<ISidebarAction>({});\r\n sidebarState$ = this.sidebarState.asObservable();\r\n\r\n constructor() {}\r\n\r\n toggle(action: ISidebarAction): void {\r\n this.sidebarState.next(action);\r\n }\r\n}\r\n","import { Host, Inject, Injectable, Renderer2 } from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { SidebarService } from '../sidebar.service';\r\nimport { SidebarComponent } from '../sidebar/sidebar.component';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SidebarBackdropService {\r\n\r\n private backdrop!: HTMLElement;\r\n renderer!: Renderer2;\r\n private clickListener = (): void => {};\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n // private rendererFactory: RendererFactory2,\r\n private sidebarService: SidebarService,\r\n ) {\r\n // this.renderer = rendererFactory.createRenderer(null, null);\r\n }\r\n\r\n setBackdrop(sidebar: SidebarComponent): void {\r\n const backdrop = this.document.getElementsByClassName('sidebar-backdrop');\r\n // console.log(`sidebar-${this.id}`, ' setBackdrop', backdrop);\r\n if (backdrop.length === 0) {\r\n this.backdrop = this.renderer.createElement('div');\r\n this.renderer.addClass(this.backdrop, 'sidebar-backdrop');\r\n this.renderer.appendChild(this.document.body, this.backdrop);\r\n this.clickListener = this.renderer.listen(this.backdrop, 'click', (e) => {\r\n // console.log(`sidebar-${this.id}`, ' backdrop click', e);\r\n this.sidebarService.toggle({toggle: 'visible', sidebar});\r\n });\r\n }\r\n // console.log(this.backdrop, sidebar.sidebarState.mobile, sidebar.sidebarState.show);\r\n if (this.backdrop && sidebar.sidebarState.mobile && sidebar.sidebarState.visible) {\r\n this.renderer.addClass(this.backdrop, 'fade');\r\n this.renderer.addClass(this.backdrop, 'show');\r\n // this.renderer.removeClass(this.backdrop, 'd-none');\r\n } else {\r\n this.renderer.removeClass(this.backdrop, 'show');\r\n this.renderer.removeClass(this.backdrop, 'fade');\r\n // this.renderer.addClass(this.backdrop, 'd-none');\r\n }\r\n }\r\n\r\n clearBackdrop(): void {\r\n if (this.backdrop) {\r\n // clear backdrop click Listener\r\n this.clickListener();\r\n // this.renderer.listen(this.backdrop, 'click', (e): void => {} );\r\n this.renderer.removeChild(this.document.body, this.backdrop);\r\n // @ts-ignore\r\n this.backdrop = undefined;\r\n }\r\n }\r\n\r\n}\r\n","import {\r\n Component,\r\n EventEmitter,\r\n HostBinding,\r\n Inject,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n Renderer2,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { ISidebarAction, SidebarService } from '../sidebar.service';\r\nimport { SidebarBackdropService } from '../sidebar-backdrop/sidebar-backdrop.service';\r\n\r\n@Component({\r\n selector: 'c-sidebar',\r\n exportAs: 'cSidebar',\r\n template: '<ng-content></ng-content>',\r\n})\r\nexport class SidebarComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n static ngAcceptInputType_narrow: BooleanInput;\r\n static ngAcceptInputType_overlaid: BooleanInput;\r\n static ngAcceptInputType_unfoldable: BooleanInput;\r\n static ngAcceptInputType_visible: BooleanInput;\r\n\r\n private _narrow = false;\r\n private _overlaid = false;\r\n private _unfoldable = false;\r\n private _visible = false;\r\n private onMobile = false;\r\n private layoutChangeSubscription!: Subscription;\r\n private stateToggleSubscription!: Subscription;\r\n\r\n state: ISidebarAction = {\r\n sidebar: this\r\n };\r\n\r\n /**\r\n * Sets if the color of text should be colored for a light or dark dark background. [docs]\r\n *\r\n * @type 'dark' | 'light'\r\n */\r\n @Input() colorScheme?: 'dark' | 'light';\r\n\r\n /**\r\n * Sets html attribute id. [docs]\r\n *\r\n * @type string\r\n */\r\n @Input() id?: string;\r\n\r\n /**\r\n * Make sidebar narrow. [docs]\r\n * @type boolean\r\n */\r\n @Input()\r\n set narrow(value: boolean) {\r\n this._narrow = coerceBooleanProperty(value);\r\n }\r\n get narrow() {\r\n return this._narrow;\r\n }\r\n\r\n /**\r\n * Set sidebar to overlaid variant.\r\n * @type boolean\r\n */\r\n @Input()\r\n set overlaid(value: boolean) {\r\n this._overlaid = coerceBooleanProperty(value);\r\n }\r\n get overlaid() {\r\n return this._overlaid;\r\n }\r\n\r\n /**\r\n * Components placement, there’s no default placement. [docs]\r\n * @type 'start' | 'end'\r\n */\r\n @Input() placement?: 'start' | 'end';\r\n\r\n /**\r\n * Place sidebar in non-static positions. [docs]\r\n * @default 'fixed'\r\n */\r\n @Input() position: 'fixed' | 'sticky' = 'fixed';\r\n\r\n /**\r\n * Size the component small, large, or extra large. [docs]\r\n */\r\n @Input() size?: 'sm' | 'lg' | 'xl';\r\n\r\n /**\r\n * Expand narrowed sidebar on hover. [docs]\r\n */\r\n @Input()\r\n set unfoldable(value: boolean) {\r\n this._unfoldable = coerceBooleanProperty(value);\r\n }\r\n get unfoldable() {\r\n return this._unfoldable;\r\n }\r\n\r\n /**\r\n * Toggle the visibility of sidebar component. [docs]\r\n */\r\n @Input()\r\n set visible(value: boolean) {\r\n this._visible = coerceBooleanProperty(value);\r\n this.visibleChange.emit(this._visible);\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n\r\n /**\r\n * Event emitted on visibility change. [docs]\r\n * @type boolean\r\n */\r\n @Output() visibleChange = new EventEmitter<boolean>();\r\n\r\n set sidebarState(value: ISidebarAction) {\r\n const newState = value;\r\n if ('toggle' in newState) {\r\n if (newState.toggle === 'visible') {\r\n newState.visible = !this.state.visible;\r\n this.visible = newState.visible && !this.overlaid;\r\n } else if (newState.toggle === 'unfoldable') {\r\n newState.unfoldable = !this.state.unfoldable;\r\n this.unfoldable = newState.unfoldable;\r\n }\r\n }\r\n this.state = {\r\n ...this.state,\r\n ...newState\r\n };\r\n this.state.mobile && this.state.visible ? this.backdropService.setBackdrop(this) : this.backdropService.clearBackdrop();\r\n }\r\n\r\n get sidebarState(): ISidebarAction {\r\n return this.state;\r\n }\r\n\r\n get getMobileBreakpoint(): string {\r\n const element = this.document.firstElementChild;\r\n const mobileBreakpoint = getComputedStyle(element).getPropertyValue('--cui-mobile-breakpoint') || 'md';\r\n const breakpointValue = getComputedStyle(element).getPropertyValue(`--cui-breakpoint-${mobileBreakpoint.trim()}`) || '768px';\r\n return `${parseFloat(breakpointValue.trim()) - .02}px` || '767.98px';\r\n }\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n private renderer: Renderer2,\r\n private breakpointObserver: BreakpointObserver,\r\n private sidebarService: SidebarService,\r\n private backdropService: SidebarBackdropService\r\n ) {\r\n this.backdropService.renderer = renderer;\r\n }\r\n\r\n @HostBinding('class')\r\n get getClasses(): any {\r\n const {mobile, unfoldable, visible} = this.sidebarState;\r\n return {\r\n sidebar: true,\r\n 'sidebar-fixed': this.position === 'fixed' && !mobile,\r\n 'sidebar-narrow': this.narrow && !this.unfoldable,\r\n 'sidebar-narrow-unfoldable': unfoldable,\r\n 'sidebar-overlaid': this.overlaid,\r\n [`sidebar-${this.placement}`]: !!this.placement,\r\n [`sidebar-${this.colorScheme}`]: !!this.colorScheme,\r\n [`sidebar-${this.size}`]: !!this.size,\r\n show: visible && this.onMobile,\r\n hide: !visible && !this.onMobile\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setInitialState();\r\n this.layoutChangeSubscribe();\r\n this.stateToggleSubscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.stateToggleSubscribe(false);\r\n this.layoutChangeSubscribe(false);\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const oldStateMap = new Map(Object.entries(this.state));\r\n const newStateMap = new Map();\r\n newStateMap.set('sidebar', this);\r\n\r\n const propList = ['visible', 'unfoldable', 'narrow'];\r\n\r\n for (const propName in changes) {\r\n if (propList.includes(propName)) {\r\n if (changes[propName] && !changes[propName].firstChange) {\r\n const value = coerceBooleanProperty(changes[propName].currentValue);\r\n if (oldStateMap.get(propName) !== value) {\r\n newStateMap.set(propName, value);\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (newStateMap.size > 1) {\r\n const state = Object.fromEntries(newStateMap.entries());\r\n this.sidebarService.toggle(state);\r\n }\r\n }\r\n\r\n setInitialState(): void {\r\n this.sidebarService.toggle({\r\n narrow: this.narrow,\r\n visible: this.visible,\r\n unfoldable: this.unfoldable,\r\n sidebar: this\r\n });\r\n }\r\n\r\n private stateToggleSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.stateToggleSubscription = this.sidebarService.sidebarState$.subscribe((state) => {\r\n if (this === state.sidebar || this.id === state.id) {\r\n this.sidebarState = state;\r\n }\r\n });\r\n } else {\r\n this.stateToggleSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n layoutChangeSubscribe(subscribe: boolean = true): void {\r\n const onMobile = `(max-width: ${this.getMobileBreakpoint})`;\r\n\r\n if (subscribe) {\r\n const layoutChanges = this.breakpointObserver.observe([onMobile]);\r\n\r\n this.layoutChangeSubscription = layoutChanges.subscribe((result: BreakpointState) => {\r\n const isOnMobile = result.breakpoints[onMobile];\r\n if (this.onMobile !== isOnMobile) {\r\n this.onMobile = isOnMobile;\r\n this.sidebarService.toggle({\r\n mobile: isOnMobile,\r\n unfoldable: isOnMobile ? false : this.unfoldable,\r\n visible: isOnMobile ? false : this.visible,\r\n sidebar: this\r\n });\r\n }\r\n });\r\n } else {\r\n this.layoutChangeSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-sidebar-brand',\r\n templateUrl: './sidebar-brand.component.html'\r\n})\r\nexport class SidebarBrandComponent implements OnInit {\r\n\r\n @Input() brandFull?: any;\r\n @Input() brandNarrow?: any;\r\n @Input() routerLink?: any[] | string;\r\n\r\n @HostBinding('class.sidebar-brand') sidebarBrandClass = true;\r\n\r\n brandImg = false;\r\n\r\n ngOnInit(): void {\r\n this.brandImg = Boolean(this.brandFull || this.brandNarrow);\r\n }\r\n}\r\n","<ng-template [ngIf]=\"brandImg\">\r\n <a [routerLink]=\"routerLink\">\r\n <img *ngIf=\"brandFull\"\r\n [cHtmlAttr]=\"brandFull\"\r\n [ngClass]=\"'sidebar-brand-full'\">\r\n <img *ngIf=\"brandNarrow\"\r\n [cHtmlAttr]=\"brandNarrow\"\r\n [ngClass]=\"'sidebar-brand-narrow'\">\r\n </a>\r\n</ng-template>\r\n<ng-template [ngIf]=\"!brandImg\">\r\n <ng-content></ng-content>\r\n</ng-template>\r\n","import {Directive, HostListener, Input} from '@angular/core';\r\n\r\nimport {SidebarService} from '../sidebar.service';\r\n\r\n/**\r\n * Allows the sidebar to be toggled/folded via click on host element.\r\n */\r\n@Directive({\r\n selector: '[cSidebarToggle]',\r\n exportAs: 'cSidebarToggle'\r\n})\r\nexport class SidebarToggleDirective {\r\n /**\r\n * Id of sidebar for toggle action. [docs]\r\n *\r\n * @type string\r\n */\r\n @Input('cSidebarToggle') id?: string;\r\n /**\r\n * Sidebar property name for toggle action. [docs]\r\n *\r\n * @type 'visible' | 'unfoldable'\r\n * @default 'visible'\r\n */\r\n @Input() toggle: 'visible' | 'unfoldable' = 'visible'\r\n\r\n constructor(\r\n private sidebarService: SidebarService\r\n ) {}\r\n\r\n @HostListener('click', ['$event'])\r\n toggleOpen($event: any): void {\r\n $event.preventDefault();\r\n this.sidebarService.toggle({ toggle: this.toggle, id: this.id });\r\n }\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-sidebar-toggler',\r\n template: ``,\r\n})\r\nexport class SidebarTogglerComponent {\r\n\r\n @HostBinding('attr.role')\r\n @Input() role = 'button';\r\n\r\n @HostBinding('class.sidebar-toggler') sidebarTogglerClass = true;\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-sidebar-header',\r\n templateUrl: './sidebar-header.component.html',\r\n styleUrls: ['./sidebar-header.component.scss']\r\n})\r\nexport class SidebarHeaderComponent {\r\n constructor() {}\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'sidebar-header': true\r\n };\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-sidebar-footer',\r\n templateUrl: './sidebar-footer.component.html',\r\n styleUrls: ['./sidebar-footer.component.scss']\r\n})\r\nexport class SidebarFooterComponent {\r\n\r\n constructor() { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'sidebar-footer': true\r\n };\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { Injectable } from '@angular/core';\r\n\r\nimport { INavData } from './sidebar-nav';\r\n\r\n@Injectable()\r\nexport abstract class SidebarNavService {\r\n /**\r\n * Returns a sidebar-nav items config NavData\r\n */\r\n abstract getSidebarNavItemsConfig(): INavData[];\r\n}\r\n\r\n@Injectable()\r\nexport class SidebarNavHelper {\r\n\r\n itemType(item: INavData): string {\r\n if (item.divider) {\r\n return 'divider';\r\n } else if (item.title) {\r\n return 'title';\r\n } else if (item.children && item.children.length > 0 ) {\r\n return 'group';\r\n } else if (item.label) {\r\n return 'label';\r\n } else if (!Object.keys(item).length) {\r\n return 'empty';\r\n } else {\r\n return 'link';\r\n }\r\n }\r\n\r\n public isActive(router: any, item: INavData): boolean {\r\n return router.isActive(item.url, false);\r\n }\r\n\r\n public hasBadge = (item: INavData) => Boolean(item.badge);\r\n public hasIcon = (item: INavData) => Boolean(item.icon) || item.icon === '';\r\n public hasIconComponent = (item: INavData) => Boolean(item.iconComponent);\r\n\r\n public getIconClass(item: INavData): any {\r\n const classes = {\r\n 'nav-icon': true\r\n };\r\n const icon = item.icon;\r\n // @ts-ignore\r\n classes[icon] = this.hasIcon(item);\r\n return classes;\r\n }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-sidebar-nav-divider',\r\n template: ``\r\n})\r\nexport class SidebarNavDividerComponent {\r\n @Input() item: any;\r\n\r\n constructor() {\r\n }\r\n\r\n}\r\n","import {Component, ElementRef, Input, OnInit, Renderer2} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-sidebar-nav-title',\r\n template: '',\r\n})\r\nexport class SidebarNavTitleComponent implements OnInit {\r\n @Input() item: any;\r\n\r\n constructor(\r\n private el: ElementRef,\r\n private renderer: Renderer2,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n const nativeElement: HTMLElement = this.el.nativeElement;\r\n const name = this.renderer.createText(this.item.name);\r\n\r\n if ( this.item.class ) {\r\n const classes = this.item.class;\r\n this.renderer.addClass(nativeElement, classes);\r\n }\r\n\r\n if ( this.item.wrapper ) {\r\n const wrapper = this.renderer.createElement(this.item.wrapper.element);\r\n this.addAttribs(this.item.wrapper.attributes, wrapper);\r\n this.renderer.appendChild(wrapper, name);\r\n this.renderer.appendChild(nativeElement, wrapper);\r\n } else {\r\n this.renderer.appendChild(nativeElement, name);\r\n }\r\n }\r\n\r\n private addAttribs(attribs: { [x: string]: any; }, element: any): void {\r\n if (attribs) {\r\n for (const attr in attribs) {\r\n if (attr === 'style' && typeof(attribs[attr]) === 'object' ) {\r\n this.setStyle(attribs[attr], element);\r\n } else if (attr === 'class') {\r\n this.addClass(attribs[attr], element);\r\n } else {\r\n this.setAttrib(attr, attribs[attr], element);\r\n }\r\n }\r\n }\r\n }\r\n\r\n private setStyle(styles: { [x: string]: any; }, el: any): void {\r\n for (const style in styles) {\r\n if (style) {\r\n this.renderer.setStyle(el, style, styles[style]);\r\n }\r\n }\r\n }\r\n\r\n private addClass(classes: string | Array<string>, el: any): void {\r\n const classArray = (Array.isArray(classes) ? classes : classes.split(' '));\r\n classArray.filter((element) => element.length > 0).forEach(element => {\r\n this.renderer.addClass(el, element );\r\n });\r\n }\r\n\r\n private setAttrib(key: string, value: string, el: any): void {\r\n this.renderer.setAttribute(el, key, value );\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'cSidebarNavBadge'\r\n})\r\nexport class SidebarNavBadgePipe implements PipeTransform {\r\n\r\n transform(item: any, args?: any): any {\r\n const badge = item.badge;\r\n return {\r\n badge: true,\r\n 'ms-auto': true,\r\n 'badge-sm': !badge.size,\r\n [`badge-${badge.size}`]: !!badge.size,\r\n [`bg-${badge.color}`]: !!badge.color,\r\n [`${badge.class}`]: !!badge.class\r\n };\r\n }\r\n\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {SidebarNavHelper} from './sidebar-nav.service';\r\n\r\n@Component({\r\n selector: 'c-sidebar-nav-label',\r\n templateUrl: './sidebar-nav-label.component.html'\r\n})\r\nexport class SidebarNavLabelComponent implements OnInit {\r\n @Input() item: any;\r\n\r\n private classes = {\r\n 'c-nav-label': true,\r\n 'c-active': true\r\n };\r\n private iconClasses = {};\r\n\r\n constructor(\r\n public helper: SidebarNavHelper\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.iconClasses = this.helper.getIconClass(this.item);\r\n }\r\n\r\n getItemClass() {\r\n const itemClass = this.item.class;\r\n // @ts-ignore\r\n this.classes[itemClass] = !!itemClass;\r\n return this.classes;\r\n }\r\n getLabelIconClass() {\r\n const variant = `text-${this.item.label.variant}`;\r\n // @ts-ignore\r\n this.iconClasses[variant] = !!this.item.label.variant;\r\n const labelClass = this.item.label.class;\r\n // @ts-ignore\r\n this.iconClasses[labelClass] = !!labelClass;\r\n return this.iconClasses;\r\n }\r\n}\r\n","<a [ngClass]=\"getItemClass()\"\r\n href=\"{{item.url}}\"\r\n [cHtmlAttr]=\"item.attributes\">\r\n <i *ngIf=\"helper.hasIcon(item)\" [ngClass]=\"getLabelIconClass()\"></i>\r\n <ng-container>{{ item.name }}</ng-container>\r\n <span *ngIf=\"helper.hasBadge(item)\" [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge.text }}</span>\r\n</a>\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'cSidebarNavLink'\r\n})\r\nexport class SidebarNavLinkPipe implements PipeTransform {\r\n\r\n transform(item: any): any {\r\n\r\n const disabled = item?.attributes?.disabled;\r\n\r\n const classes = {\r\n 'nav-link': true,\r\n disabled,\r\n 'btn-link': disabled,\r\n [`nav-link-${item.variant}`]: !!item.variant\r\n };\r\n return classes;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'cSidebarNavIcon'\r\n})\r\nexport class SidebarNavIconPipe implements PipeTransform {\r\n\r\n transform(item: any, args?: any): any {\r\n const icon = item.icon;\r\n const classes = {\r\n 'nav-icon': true,\r\n [`${icon}`]: !!icon\r\n };\r\n return classes;\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\r\nimport {NavigationEnd, Router} from '@angular/router';\r\nimport {Observable, Subscription} from 'rxjs';\r\nimport {filter} from 'rxjs/operators';\r\n\r\nimport {SidebarNavHelper} from './sidebar-nav.service';\r\n// import {SidebarService} from '../sidebar.service';\r\nimport { INavData } from './sidebar-nav';\r\n\r\n@Component({\r\n selector: 'c-sidebar-nav-link-content',\r\n template: `\r\n <ng-container *ngIf=\"true\">\r\n <ng-container>{{item?.name ?? ''}}</ng-container>\r\n </ng-container>\r\n `,\r\n providers: [ SidebarNavHelper ]\r\n})\r\nexport class SidebarNavLinkContentComponent {\r\n @Input() item?: INavData;\r\n\r\n constructor(\r\n public helper: SidebarNavHelper\r\n ) { }\r\n}\r\n\r\n@Component({\r\n selector: 'c-sidebar-nav-link',\r\n templateUrl: './sidebar-nav-link.component.html',\r\n providers: [ SidebarNavHelper ]\r\n})\r\nexport class SidebarNavLinkComponent implements OnInit, OnDestroy {\r\n\r\n // tslint:disable-next-line:variable-name\r\n protected _item: INavData = {};\r\n\r\n @Input()\r\n set item(item: INavData) {\r\n this._item = JSON.parse(JSON.stringify(item));\r\n }\r\n get item(): INavData {\r\n return this._item;\r\n }\r\n\r\n @Output() linkClick = new EventEmitter();\r\n\r\n // @ts-ignore\r\n public linkType: string;\r\n // @ts-ignore\r\n public href: string;\r\n // @ts-ignore\r\n public linkActive: boolean;\r\n // @ts-ignore\r\n private url: string;\r\n\r\n private navigationEndObservable: Observable<NavigationEnd>;\r\n // @ts-ignore\r\n private navSubscription: Subscription;\r\n\r\n constructor(\r\n public router: Router,\r\n // private renderer: Renderer2,\r\n // private hostElement: ElementRef,\r\n // private sidebarService: SidebarService\r\n ) {\r\n this.navigationEndObservable = router.events.pipe(\r\n filter(event => {\r\n return event instanceof NavigationEnd;\r\n })\r\n ) as Observable<NavigationEnd>;\r\n }\r\n\r\n ngOnInit(): void {\r\n // @ts-ignore\r\n this.url = typeof this.item.url === 'string' ? this.item.url : this.router.serializeUrl(this.router.createUrlTree(this.item.url)) ;\r\n this.linkType = this.getLinkType();\r\n this.href = this.isDisabled() ? '' : (this.item.href || this.url);\r\n this.linkActive = this.router.url.split(/[?#(;]/)[0] === this.href.split(/[?#(;]/)[0];\r\n this.navSubscription = this.navigationEndObservable.subscribe(event => {\r\n const itemUrlArray = this.href.split(/[?#(;]/)[0].split('/');\r\n const urlArray = event.urlAfterRedirects.split(/[?#(;]/)[0].split('/');\r\n this.linkActive = itemUrlArray.every((value, index) => value === urlArray[index]);\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.navSubscription.unsubscribe();\r\n }\r\n\r\n public getLinkType(): string {\r\n return this.isDisabled() ? 'disabled' : this.isExternalLink() ? 'external' : 'link';\r\n }\r\n\r\n public isDisabled(): boolean {\r\n return this.item?.attributes?.['disabled'];\r\n }\r\n\r\n public isExternalLink(): boolean {\r\n const linkPath = Array.isArray(this.item.url) ? this.item.url[0] : this.item.url;\r\n return !!this.item.href || linkPath.substring(0, 4) === 'http';\r\n }\r\n\r\n linkClicked(): void {\r\n this.linkClick.emit();\r\n }\r\n\r\n // public hideMobile() {\r\n // // todo: proper scrollIntoView() after NavigationEnd\r\n // setTimeout(() => {\r\n // console.log('scroll')\r\n // this.hostElement.nativeElement.scrollIntoView();\r\n // }, 1000)\r\n // this.sidebarService.toggle({open: false, breakpoint: ''});\r\n // }\r\n}\r\n","<ng-container [ngSwitch]=\"linkType\">\r\n <a *ngSwitchCase=\"'disabled'\"\r\n [ngClass]=\"item | cSidebarNavLink\"\r\n [cHtmlAttr]=\"item.attributes ?? {}\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"iconTemplate; context: {$implicit: item}\"></ng-container>\r\n <c-sidebar-nav-link-content [item]=\"item\"></c-sidebar-nav-link-content>\r\n <span *ngIf=\"item.badge\" [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge?.text }}</span>\r\n </a>\r\n <a *ngSwitchCase=\"'external'\"\r\n [ngClass]=\"item | cSidebarNavLink\"\r\n [href]=\"href\"\r\n [cHtmlAttr]=\"item.attributes ?? {}\"\r\n (click)=\"linkClicked()\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"iconTemplate; context: {$implicit: item}\"></ng-container>\r\n <c-sidebar-nav-link-content [item]=\"item\"></c-sidebar-nav-link-content>\r\n <span *ngIf=\"item.badge\" [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge?.text }}</span>\r\n </a>\r\n <a *ngSwitchDefault\r\n [ngClass]=\"item | cSidebarNavLink\"\r\n [cHtmlAttr]=\"item.attributes ?? {}\"\r\n [target]=\"item.attributes?.['target']\"\r\n [queryParams]=\"item.linkProps?.queryParams ?? null\"\r\n [fragment]=\"item.linkProps?.fragment\"\r\n [queryParamsHandling]=\"item.linkProps?.queryParamsHandling\"\r\n [preserveFragment]=\"item.linkProps?.preserveFragment ?? false\"\r\n [skipLocationChange]=\"item.linkProps?.skipLocationChange ?? false\"\r\n [replaceUrl]=\"item.linkProps?.replaceUrl ?? false\"\r\n [state]=\"item.linkProps?.state ?? {}\"\r\n [routerLink]=\"item.url\"\r\n routerLinkActive=\"active\"\r\n (click)=\"linkClicked()\"\r\n >\r\n<!-- [class.active]=\"linkActive\"-->\r\n <ng-container *ngTemplateOutlet=\"iconTemplate ; context: {$implicit: item}\"></ng-container>\r\n <c-sidebar-nav-link-content [item]=\"item\"></c-sidebar-nav-link-content>\r\n <span *ngIf=\"item.badge\" [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge?.text }}</span>\r\n </a>\r\n</ng-container>\r\n\r\n<ng-template #iconTemplate let-item>\r\n <i *ngIf=\"item?.icon\" [ngClass]=\"item | cSidebarNavIcon\"></i>\r\n <ng-template [ngIf]=\"item?.iconComponent\">\r\n <svg\r\n [cIcon]=\"item.iconComponent?.content\"\r\n [name]=\"item.iconComponent?.name\"\r\n [customClasses]=\"item | cSidebarNavIcon\"\r\n ></svg>\r\n </ng-template>\r\n <span *ngIf=\"!item?.icon && !item?.iconComponent\" [ngClass]=\"item | cSidebarNavIcon\"></span>\r\n</ng-template>\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\nimport {SidebarNavHelper} from './sidebar-nav.service';\r\n\r\n@Pipe({\r\n name: 'cSidebarNavItemClass'\r\n})\r\nexport class SidebarNavItemClassPipe implements PipeTransform {\r\n\r\n constructor(\r\n public helper: SidebarNavHelper\r\n ) {}\r\n\r\n // transform(item: any, ...args: any[]): any {\r\n transform(item: any, args?: any[]): any {\r\n const itemType = this.helper.itemType(item);\r\n let itemClass;\r\n if (['divider', 'title'].includes(itemType)) {\r\n itemClass = `nav-${itemType}`;\r\n } else if (itemType === 'group') {\r\n // itemClass = 'c-sidebar-nav-group' ;\r\n itemClass = '' ;\r\n } else {\r\n itemClass = 'nav-item';\r\n }\r\n return item.class ? `${itemClass} ${item.class}` : itemClass;\r\n }\r\n}\r\n","import {\r\n Component,\r\n ElementRef,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Optional,\r\n Renderer2,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\n\r\nimport { INavData } from './sidebar-nav';\r\nimport { SidebarNavHelper } from './sidebar-nav.service';\r\nimport { SidebarService } from '../sidebar.service';\r\nimport { SidebarComponent } from '../sidebar/sidebar.component';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { filter } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'c-sidebar-nav',\r\n templateUrl: './sidebar-nav.component.html',\r\n styleUrls: ['./sidebar-nav.component.scss']\r\n })\r\nexport class SidebarNavComponent implements OnChanges {\r\n @Input() navItems?: INavData[] = [];\r\n @Input() dropdownMode?: 'closeInactive' | 'noAction' | 'openActive' = 'closeInactive';\r\n @Input() groupItems?: boolean;\r\n @Input() compact?: boolean;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'sidebar-nav': !this.groupItems,\r\n compact: !this.groupItems && !!this.compact\r\n };\r\n }\r\n\r\n @HostBinding('class.nav-group-items')\r\n get sidebarNavGroupItemsClass(): boolean {\r\n return !!this.groupItems;\r\n }\r\n\r\n @HostBinding('attr.role') role = 'nav';\r\n\r\n public navItemsArray: INavData[] = [];\r\n\r\n constructor(\r\n @Optional() public sidebar: SidebarComponent,\r\n public helper: SidebarNavHelper,\r\n public router: Router,\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef,\r\n private sidebarService: SidebarService\r\n ) { }\r\n\r\n public ngOnChanges(changes: SimpleChanges): void {\r\n this.navItemsArray = Array.isArray(this.navItems) ? this.navItems.slice() : [];\r\n }\r\n\r\n public hideMobile(): void {\r\n // todo: proper scrollIntoView() after NavigationEnd\r\n if (this.sidebar && this.sidebar.sidebarState.mobile) {\r\n this.sidebarService.toggle({toggle: 'visible', sidebar: this.sidebar});\r\n }\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'c-sidebar-nav-group',\r\n templateUrl: './sidebar-nav-group.component.html',\r\n styleUrls: ['./sidebar-nav-group.component.scss'],\r\n providers: [ SidebarNavHelper ]\r\n})\r\nexport class SidebarNavGroupComponent implements OnInit, OnDestroy {\r\n @Input() item: any;\r\n @Input() dropdownMode: 'closeInactive' | 'noAction' | 'openActive' = 'closeInactive';\r\n // @ts-ignore\r\n @Input() show: boolean;\r\n\r\n @HostBinding('class')\r\n // tslint:disable-next-line:typedef\r\n get hostClasses(): any {\r\n return {\r\n 'nav-group': true,\r\n show: this.open,\r\n };\r\n }\r\n\r\n // todo: dropdownMode\r\n\r\n navigationEndObservable: Observable<NavigationEnd>;\r\n // @ts-ignore\r\n navSubscription: Subscription;\r\n\r\n // @ts-ignore\r\n private open: boolean;\r\n public navItems: INavData[] = [];\r\n\r\n constructor(\r\n private router: Router,\r\n public helper: SidebarNavHelper,\r\n private hostElement: ElementRef\r\n ) {\r\n this.navigationEndObservable = router.events.pipe(\r\n filter((event: any) => event instanceof NavigationEnd)\r\n ) as Observable<NavigationEnd>;\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.navItems = [...this.item.children];\r\n\r\n this.navSubscription = this.navigationEndObservable.subscribe((event: NavigationEnd) => {\r\n const samePath = this.samePath(event.url);\r\n this.openGroup(samePath);\r\n });\r\n\r\n if (this.samePath(this.router.routerState.snapshot.url)) {\r\n this.openGroup(true);\r\n }\r\n }\r\n\r\n samePath(url: string): boolean {\r\n // console.log('item:', this.item.name, this.item.url, 'url:', url);\r\n const itemArray = this.item.url?.split('/');\r\n const urlArray = url.split('/');\r\n return itemArray?.every((value: string, index: number) => {\r\n // console.log(value === urlArray[index], 'value:', value, 'index:', index, urlArray[index], url);\r\n return value === urlArray[index];\r\n });\r\n }\r\n\r\n openGroup(open: boolean): void {\r\n this.open = open;\r\n }\r\n\r\n toggleGroup($event: any): void {\r\n $event.preventDefault();\r\n this.open = !this.open;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.navSubscription.unsubscribe();\r\n }\r\n}\r\n","<ng-container *ngFor=\"let item of navItemsArray\">\r\n <ng-container [ngSwitch]=\"helper.itemType(item)\">\r\n <c-sidebar-nav-group\r\n *ngSwitchCase=\"'group'\"\r\n [item]=\"item\"\r\n [ngClass]=\"item | cSidebarNavItemClass\"\r\n routerLinkActive=\"show\"\r\n #rla=\"routerLinkActive\"\r\n [routerLinkActiveOptions]=\"{exact: true}\"\r\n >\r\n </c-sidebar-nav-group>\r\n <c-sidebar-nav-divider\r\n *ngSwitchCase=\"'divider'\"\r\n [item]=\"item\"\r\n [ngClass]=\"item | cSidebarNavItemClass\"\r\n [cHtmlAttr]=\"item.attributes ?? {}\">\r\n </c-sidebar-nav-divider>\r\n <c-sidebar-nav-title\r\n *ngSwitchCase=\"'title'\"\r\n [item]=\"item\"\r\n [ngClass]=\"item | cSidebarNavItemClass\"\r\n [cHtmlAttr]=\"item.attributes ?? {}\">\r\n </c-sidebar-nav-title>\r\n <c-sidebar-nav-label\r\n *ngSwitchCase=\"'label'\"\r\n [item]=\"item\"\r\n [ngClass]=\"item | cSidebarNavItemClass\">\r\n </c-sidebar-nav-label>\r\n <ng-container\r\n *ngSwitchCase=\"'empty'\">\r\n </ng-container>\r\n <c-sidebar-nav-link\r\n *ngSwitchDefault\r\n [item]=\"item\"\r\n [ngClass]=\"item | cSidebarNavItemClass\"\r\n (linkClick)=\"hideMobile()\"\r\n >\r\n </c-sidebar-nav-link>\r\n </ng-container>\r\n</ng-container>\r\n<ng-content></ng-content>\r\n","<a class=\"nav-link nav-group-toggle\"\r\n (click)=\"toggleGroup($event)\"\r\n [cHtmlAttr]=\"item.attributes\">\r\n <ng-container *ngTemplateOutlet=\"iconTemplate ; context: {$implicit: item}\"></ng-container>\r\n <ng-container>{{ item.name }}</ng-container>\r\n <span *ngIf=\"helper.hasBadge(item)\" [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge.text }}</span>\r\n</a>\r\n<c-sidebar-nav\r\n [groupItems]=\"true\"\r\n [navItems]=\"navItems\">\r\n</c-sidebar-nav>\r\n\r\n<ng-template #iconTemplate let-item>\r\n <i *ngIf=\"item?.icon\" [ngClass]=\"item | cSidebarNavIcon\"></i>\r\n <ng-template [ngIf]=\"item?.iconComponent\">\r\n <svg\r\n [cIcon]=\"item.iconComponent?.content\"\r\n [name]=\"item.iconComponent?.name\"\r\n [customClasses]=\"item | cSidebarNavIcon\"\r\n ></svg>\r\n </ng-template>\r\n <span *ngIf=\"!item?.icon && !item?.iconComponent\" [ngClass]=\"item | cSidebarNavIcon\"></span>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { IconModule } from '@coreui/icons-angular';\r\n\r\nimport { SidebarComponent } from './sidebar/sidebar.component';\r\nimport { SidebarService } from './sidebar.service';\r\nimport { SidebarBrandComponent } from './sidebar-brand/sidebar-brand.component';\r\nimport { SidebarToggleDirective } from './sidebar-toggle/sidebar-toggle.directive';\r\nimport { SidebarTogglerComponent } from './sidebar-toggler/sidebar-toggler.component';\r\nimport { SidebarHeaderComponent } from './sidebar-header/sidebar-header.component';\r\nimport { SidebarFooterComponent } from './sidebar-footer/sidebar-footer.component';\r\n\r\nimport { SharedModule } from '../shared';\r\n\r\nimport {\r\n SidebarNavBadgePipe,\r\n SidebarNavComponent,\r\n SidebarNavDividerComponent,\r\n SidebarNavGroupComponent,\r\n SidebarNavHelper,\r\n SidebarNavIconPipe,\r\n SidebarNavItemClassPipe,\r\n SidebarNavLabelComponent,\r\n SidebarNavLinkComponent,\r\n SidebarNavLinkContentComponent,\r\n SidebarNavLinkPipe,\r\n SidebarNavTitleComponent\r\n} from './sidebar-nav';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n SidebarComponent,\r\n SidebarTogglerComponent,\r\n SidebarToggleDirective,\r\n SidebarBrandComponent,\r\n SidebarNavBadgePipe,\r\n SidebarNavComponent,\r\n SidebarNavDividerComponent,\r\n SidebarNavGroupComponent,\r\n // SidebarNavGroupToggleDirective,\r\n SidebarNavIconPipe,\r\n SidebarNavItemClassPipe,\r\n SidebarNavLabelComponent,\r\n SidebarNavLinkComponent,\r\n SidebarNavLinkContentComponent,\r\n SidebarNavLinkPipe,\r\n SidebarNavTitleComponent,\r\n SidebarHeaderComponent,\r\n SidebarFooterComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n SharedModule,\r\n IconModule\r\n ],\r\n exports: [\r\n SidebarComponent,\r\n SidebarToggleDirective,\r\n SidebarTogglerComponent,\r\n SidebarBrandComponent,\r\n SidebarNavComponent,\r\n SidebarHeaderComponent,\r\n SidebarFooterComponent,\r\n ],\r\n providers: [\r\n SidebarService,\r\n SidebarNavHelper\r\n ],\r\n})\r\nexport class SidebarModule { }\r\n","import { Component, EventEmitter, HostBinding, Input, Output, TemplateRef } from '@angular/core';\r\nimport { ISmartPagination } from './smart-pagination.type';\r\nimport { coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-smart-pagination',\r\n templateUrl: './smart-pagination.component.html',\r\n exportAs: 'cSmartPagination'\r\n})\r\nexport class SmartPaginationComponent implements ISmartPagination {\r\n\r\n static ngAcceptInputType_activePage: NumberInput;\r\n static ngAcceptInputType_pages: NumberInput;\r\n static ngAcceptInputType_limit: NumberInput;\r\n\r\n constructor() { }\r\n\r\n /**\r\n * Current page number. [docs]\r\n * @default 1\r\n * @type number\r\n */\r\n @Input()\r\n set activePage(value: number) {\r\n this._activePage = coerceNumberProperty(value);\r\n }\r\n get activePage(): number {\r\n return this._activePage;\r\n }\r\n private _activePage: number = 1;\r\n\r\n /**\r\n * Event triggered on activePage change.\r\n * @type EventEmitter<number>\r\n */\r\n @Output() activePageChange: EventEmitter<number> = new EventEmitter<number>();\r\n\r\n /**\r\n * Show/hide arrows\r\n * @default true\r\n * @type boolean\r\n */\r\n @Input() arrows: boolean = true;\r\n\r\n /**\r\n * Show double arrows buttons\r\n * @default true\r\n * @type boolean\r\n */\r\n @Input() doubleArrows: boolean = true;\r\n\r\n /**\r\n * Show/hide dots. [docs]\r\n * @default true\r\n */\r\n @Input() dots: boolean = true;\r\n\r\n /**\r\n * Maximum items number. [docs]\r\n * @default 5\r\n * @type number\r\n */\r\n @Input()\r\n set limit(value: number) {\r\n this._limit = coerceNumberProperty(value);\r\n }\r\n get limit(): number {\r\n return this._limit;\r\n }\r\n private _limit: number = 5;\r\n\r\n /**\r\n * Number of pages. [docs]\r\n * @type number\r\n */\r\n @Input()\r\n set pages(value: number) {\r\n this._pages = coerceNumberProperty(value);\r\n }\r\n get pages(): number {\r\n return this._pages;\r\n }\r\n private _pages: number = 1;\r\n\r\n /**\r\n * The content of 'firstButton' button. [docs]\r\n * @default '«'\r\n * todo TemplateRef\r\n */\r\n @Input() firstButton?: string | TemplateRef<any> = '«';\r\n // firstButton?: string | TemplateRef<any> = '«'\r\n\r\n /**\r\n * The content of 'lastButton' button. [docs]\r\n * @default '»'\r\n * todo TemplateRef\r\n */\r\n @Input() lastButton?: string | TemplateRef<any> = '»';\r\n // lastButton?: string | TemplateRef<any> = '»'\r\n\r\n /**\r\n * The content of 'nextButton' button. [docs]\r\n * @default '&lsaquo'\r\n * todo TemplateRef\r\n */\r\n @Input() nextButton?: string | TemplateRef<any> = '›';\r\n\r\n /**\r\n * The content of 'previousButton' button. [docs]\r\n * @default '&rsaquo'\r\n * todo TemplateRef\r\n */\r\n @Input() previousButton?: string | TemplateRef<any> = '‹';\r\n\r\n /**\r\n * Set the alignment of pagination components.\r\n * @values 'start', 'center', 'end'\r\n */\r\n @Input() align?: 'start' | 'center' | 'end' | '' = 'start';\r\n\r\n /**\r\n * Size the component small or large.\r\n * @values 'sm', 'lg'\r\n */\r\n @Input() size?: 'sm' | 'lg';\r\n\r\n /**\r\n * Default role for pagination. [docs]\r\n * @type string\r\n * @default 'navigation'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'navigation';\r\n\r\n get paginationClass(): any {\r\n return {\r\n pagination: true,\r\n [`pagination-${this.size}`]: !!this.size,\r\n [`justify-content-${this.align}`]: !!this.align\r\n };\r\n }\r\n\r\n get maxPrevItems() {\r\n return Math.floor((this._limit - 1) / 2);\r\n }\r\n\r\n get maxNextItems() {\r\n return Math.ceil((this._limit - 1) / 2);\r\n }\r\n\r\n get range(): number {\r\n return this.activePage + this.maxNextItems;\r\n }\r\n\r\n get lastItem(): number {\r\n return this.range >= this._pages ? this._pages : this.range - (this.afterDots ? 1 : 0);\r\n }\r\n\r\n get computedLimit(): number {\r\n return this._limit - (this.afterDots ? 1 : 0) - (this.beforeDots ? 1 : 0);\r\n }\r\n\r\n get itemsLimit(): number {\r\n return this._pages < this.computedLimit ? this._pages : this.computedLimit;\r\n }\r\n\r\n get showDots(): boolean {\r\n return this.dots && this._limit > 4 && this._limit < this._pages;\r\n }\r\n\r\n get beforeDots(): boolean {\r\n return this.showDots && this.activePage > this.maxPrevItems + 1;\r\n }\r\n\r\n get afterDots(): boolean {\r\n return this.showDots && this.activePage < this._pages - this.maxNextItems;\r\n }\r\n\r\n get items() {\r\n if (this.activePage - this.maxPrevItems <= 1) {\r\n return Array.from(\r\n {\r\n length: this.itemsLimit\r\n },\r\n (_item, i) => i + 1\r\n );\r\n } else {\r\n return Array.from(\r\n {\r\n length: this.itemsLimit\r\n },\r\n (_item, i) => {\r\n return this.lastItem - i;\r\n }\r\n ).reverse();\r\n }\r\n }\r\n\r\n setPage(page: number) {\r\n if (page !== this.activePage) {\r\n this.activePage = page;\r\n this.activePageChange.emit(page);\r\n }\r\n }\r\n}\r\n","<ul [ngClass]=\"paginationClass\">\r\n <li *ngIf=\"doubleArrows\" cPageItem>\r\n <button\r\n (click)=\"setPage(1)\"\r\n [disabled]=\"activePage === 1\"\r\n aria-label=\"First page\"\r\n cPageLink\r\n >\r\n <span aria-hidden=\"true\">{{firstButton}}</span>\r\n </button>\r\n </li>\r\n <li *ngIf=\"arrows\" cPageItem>\r\n <button\r\n (click)=\"setPage(activePage - 1)\"\r\n [disabled]=\"activePage === 1\"\r\n aria-label=\"Previous page\"\r\n cPageLink\r\n >\r\n <span aria-hidden=\"true\">{{previousButton}}</span>\r\n </button>\r\n </li>\r\n <li *ngIf=\"beforeDots\" cPageItem>\r\n <a cPageLink disabled role=\"separator\">\r\n ...\r\n </a>\r\n </li>\r\n <li *ngFor=\"let item of items; index as i\" [active]=\"activePage === item\" cPageItem>\r\n <button\r\n (click)=\"setPage(item)\"\r\n [title]=\"(activePage === item ? 'Current page ' : 'Go to page ') + (item).toString()\"\r\n cPageLink\r\n >\r\n {{item}}\r\n </button>\r\n </li>\r\n <li *ngIf=\"afterDots\" cPageItem>\r\n <a cPageLink disabled role=\"separator\">\r\n ...\r\n </a>\r\n </li>\r\n <li *ngIf=\"arrows\" cPageItem>\r\n <button\r\n (click)=\"setPage(activePage + 1)\"\r\n [disabled]=\"activePage === pages\"\r\n aria-label=\"Next page\"\r\n cPageLink\r\n >\r\n <span aria-hidden=\"true\">{{nextButton}}</span>\r\n </button>\r\n </li>\r\n <li *ngIf=\"doubleArrows\" cPageItem>\r\n <button\r\n (click)=\"setPage(pages)\"\r\n [disabled]=\"activePage === pages\"\r\n aria-label=\"Last page\"\r\n cPageLink\r\n >\r\n <span aria-hidden=\"true\">{{lastButton}}</span>\r\n </button>\r\n </li>\r\n</ul>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PaginationModule } from '../pagination';\r\nimport { SmartPaginationComponent } from './smart-pagination.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n SmartPaginationComponent\r\n ],\r\n exports: [\r\n SmartPaginationComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n PaginationModule\r\n ]\r\n})\r\nexport class SmartPaginationModule {\r\n}\r\n","import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-smart-table-filter',\r\n templateUrl: './smart-table-filter.component.html',\r\n styleUrls: ['./smart-table-filter.component.scss']\r\n})\r\nexport class SmartTableFilterComponent {\r\n\r\n constructor() { }\r\n\r\n @Input() filterLabel: string = 'Filter:';\r\n @Input() filterPlaceholder: string = 'Filter';\r\n\r\n @Input()\r\n set value(value: string) {\r\n if (this._value != value) {\r\n this._value = value;\r\n this.valueChange.emit(value);\r\n }\r\n }\r\n get value() {\r\n return this._value;\r\n }\r\n private _value = '';\r\n\r\n @Output() valueChange: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n row: true,\r\n 'mb-2': true\r\n };\r\n }\r\n\r\n onKey($event: KeyboardEvent) {\r\n this.value = ($event.target as HTMLInputElement).value;\r\n }\r\n}\r\n","<label cLabel=\"col\" class=\"col-sm-auto\">{{filterLabel}}</label>\r\n<div class=\"col-sm-auto\">\r\n <input [value]=\"value\" [placeholder]=\"filterPlaceholder\" cFormControl (keyup)=\"onKey($event)\" />\r\n</div>\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { Colors } from '../coreui.types';\r\n\r\n@Directive({\r\n selector: '[cTableColor]'\r\n})\r\nexport class TableColorDirective {\r\n\r\n /**\r\n * Use contextual color for tables, table rows or individual cells.\r\n * @type Colors\r\n */\r\n @Input('cTableColor') color?: Colors;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n [`table-${this.color}`]: !!this.color,\r\n };\r\n }\r\n}\r\n","import { Component, EventEmitter, HostBinding, Input, OnInit, Output } from '@angular/core';\r\nimport { IColumn, IColumnFilter, IColumnFilterValue, ISorter, ISorterValue } from '../smart-table.type';\r\n\r\n@Component({\r\n selector: 'c-smart-table-head',\r\n templateUrl: './smart-table-head.component.html',\r\n styleUrls: ['./smart-table-head.component.scss']\r\n})\r\nexport class SmartTableHeadComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n @Input() columnFilter?: boolean | IColumnFilter;\r\n @Input() columnFilterState: IColumnFilterValue = {};\r\n @Input() columnSorter?: boolean | ISorter = true;\r\n @Input() component?: string = 'thead';\r\n @Input() columns?: (IColumn | string)[];\r\n @Input() selectable?: boolean;\r\n @Input() selectAll?: boolean | string;\r\n @Input() sorterValue?: ISorterValue;\r\n\r\n // todo\r\n // @Input() sortingIcon?: string | TemplateRef<any>;\r\n // @Input() sortingIconAscending?: string | TemplateRef<any>;\r\n // @Input() sortingIconDescending?: string | TemplateRef<any>;\r\n\r\n @Output() columnFilterStateChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() sorterStateChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() selectAllChange: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n thead: this.component === 'thead',\r\n tfoot: this.component === 'tfoot'\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.columns?.forEach((column, index) => {\r\n const columnKey = this.columnKey(column);\r\n this.columnFilterState[columnKey] = this.columnFilterState[columnKey] ?? '';\r\n });\r\n }\r\n\r\n tableHeaderCellProps (column: IColumn | string) {\r\n if (typeof column === 'object' && column._props) {\r\n const { color, ...props } = { ...column._props }\r\n return props\r\n }\r\n return {}\r\n }\r\n\r\n tableHeaderCellColor (column: IColumn | string) {\r\n if (typeof column === 'object' && column._props) {\r\n const { color } = { ...column._props }\r\n return color\r\n }\r\n return ''\r\n }\r\n\r\n tableHeaderCellStyles(column: IColumn | string) {\r\n const style = { verticalAlign: 'middle', overflow: 'hidden', cursor: '' };\r\n if (\r\n this.columnSorter &&\r\n (typeof column !== 'object' ||\r\n (typeof column === 'object' && (typeof column.sorter === 'undefined' || column.sorter)))\r\n ) {\r\n style.cursor = 'pointer';\r\n }\r\n\r\n if (typeof column === 'object' && column._style) {\r\n return { ...style, ...column._style };\r\n }\r\n return style;\r\n }\r\n\r\n columnLabel(column: IColumn | string) {\r\n return typeof column === 'object' ? column.label !== undefined ? column.label : this.prettifyName(column.key) : this.prettifyName(column);\r\n }\r\n\r\n columnKey(column: IColumn | string) {\r\n return typeof column === 'object' ? column.key : column;\r\n }\r\n\r\n getColumnSorterState(column: IColumn | string) {\r\n const columnKey = this.columnKey(column);\r\n if (this.sorterValue?.column === columnKey) {\r\n if (this.sorterValue.state) {\r\n return this.sorterValue.state;\r\n }\r\n return 0;\r\n }\r\n return 0;\r\n }\r\n\r\n prettifyName(name: string) {\r\n return name\r\n .replace(/[-_.]/g, ' ')\r\n .replace(/ +/g, ' ')\r\n .replace(/([a-z0-9])([A-Z])/g, '$1 $2')\r\n .split(' ')\r\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1))\r\n .join(' ');\r\n }\r\n\r\n handleSortClick(column: IColumn | string, i: number) {\r\n if (this.columnSorterEnabled(column)) {\r\n const columnKey = this.columnKey(column);\r\n this.sorterStateChange.emit({ columnKey, index: i });\r\n }\r\n }\r\n\r\n columnFilterEnabled(column: IColumn | string) {\r\n return typeof column !== 'object' ? true : typeof column.filter === 'undefined' ? true : column.filter;\r\n }\r\n\r\n columnSorterEnabled(column: IColumn | string) {\r\n return typeof column !== 'object' ? true : typeof column.sorter === 'undefined' ? true : column.sorter;\r\n }\r\n\r\n handleColumnFilterValueChange($event: Event, column: IColumn | string) {\r\n const columnKey = this.columnKey(column);\r\n const columnFilterValue = ($event.target as HTMLInputElement).value;\r\n this.columnFilterState[this.columnKey(column)] = columnFilterValue;\r\n this.columnFilterStateChange.emit({ column: columnKey, value: columnFilterValue });\r\n }\r\n\r\n handleSelectAllChecked($event: Event) {\r\n const selectAll = ($event.target as HTMLInputElement).checked;\r\n this.selectAllChange.emit(selectAll);\r\n }\r\n}\r\n","<tr>\r\n <th *ngIf=\"selectable\">\r\n <input (change)=\"handleSelectAllChecked($event)\"\r\n [checked]=\"selectAll === true\"\r\n [indeterminate]=\"selectAll === 'indeterminate'\"\r\n cFormCheckInput>\r\n </th>\r\n <th\r\n (click)=\"handleSortClick(column, i)\"\r\n *ngFor=\"let column of columns; let i = index\"\r\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\r\n [cTableColor]=\"tableHeaderCellColor(column)\"\r\n [ngStyle]=\"tableHeaderCellStyles(column)\"\r\n >\r\n <div class=\"d-inline\">{{ columnLabel(column) }}</div>\r\n <ng-template [ngIf]=\"columnSorter && columnSorterEnabled(column)\">\r\n <ng-container\r\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\r\n ></ng-container>\r\n </ng-template>\r\n </th>\r\n</tr>\r\n<tr *ngIf=\"columnFilter\">\r\n <th *ngIf=\"selectable\"></th>\r\n <th *ngFor=\"let column of columns; let i = index\"\r\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\r\n [cTableColor]=\"tableHeaderCellColor(column)\"\r\n [ngStyle]=\"tableHeaderCellStyles(column)\"\r\n >\r\n <input\r\n (change)=\"handleColumnFilterValueChange($event, column)\"\r\n (input)=\"handleColumnFilterValueChange($event, column)\"\r\n *ngIf=\"columnFilterEnabled(column)\"\r\n [value]=\"columnFilterState[columnKey(column)] ?? ''\"\r\n cFormControl\r\n sizing=\"sm\"\r\n />\r\n </th>\r\n</tr>\r\n\r\n<ng-template #columnSorterIconTemplate let-columnSorterState>\r\n <ng-container [ngSwitch]=\"columnSorterState\">\r\n <span *ngSwitchCase=\"'asc'\" class=\"float-end me-1\">\r\n <ng-container *ngTemplateOutlet=\"sortingIconAscendingTemplate\"></ng-container>\r\n </span>\r\n <span *ngSwitchCase=\"'desc'\" class=\"float-end me-1\">\r\n <ng-container *ngTemplateOutlet=\"sortingIconDescendingTemplate\"></ng-container>\r\n </span>\r\n <span *ngSwitchDefault class=\"opacity-25 float-end me-1\">\r\n <ng-container *ngTemplateOutlet=\"sortingIconTemplate\"></ng-container>\r\n </span>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<!--todo: sortingIconCustom Templates-->\r\n<ng-template #sortingIconTemplate>\r\n <svg\r\n class=\"icon icon-custom-size\"\r\n role=\"img\"\r\n viewBox=\"0 0 512 512\"\r\n width=\"18\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373\"\r\n ></polygon>\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372\"\r\n ></polygon>\r\n </svg>\r\n</ng-template>\r\n\r\n<ng-template #sortingIconAscendingTemplate>\r\n <svg\r\n class=\"icon icon-custom-size\"\r\n role=\"img\"\r\n viewBox=\"0 0 512 512\"\r\n width=\"18\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625\"\r\n ></polygon>\r\n </svg>\r\n</ng-template>\r\n\r\n<ng-template #sortingIconDescendingTemplate>\r\n <svg\r\n class=\"icon icon-custom-size\"\r\n role=\"img\"\r\n viewBox=\"0 0 512 512\"\r\n width=\"18\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75\"\r\n ></polygon>\r\n </svg>\r\n</ng-template>\r\n","import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-smart-table-items-per-page-selector',\r\n templateUrl: './smart-table-items-per-page-selector.component.html',\r\n styleUrls: ['./smart-table-items-per-page-selector.component.scss']\r\n})\r\nexport class SmartTableItemsPerPageSelectorComponent {\r\n\r\n constructor() { }\r\n\r\n @Input()\r\n set itemsPerPage(value: number) {\r\n if (this._itemsPerPage != value) {\r\n this._itemsPerPage = value;\r\n this.itemsPerPageChange.emit(value);\r\n }\r\n }\r\n get itemsPerPage() {\r\n return this._itemsPerPage;\r\n }\r\n private _itemsPerPage = 5;\r\n\r\n @Input() itemsPerPageLabel: string = 'Items per page:';\r\n @Input() itemsPerPageOptions: number[] = [5, 10, 20, 50];\r\n @Output() itemsPerPageChange: EventEmitter<number> = new EventEmitter<number>();\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n row: true\r\n };\r\n }\r\n}\r\n","<label cLabel=\"col\" class=\"col-sm-auto\">{{itemsPerPageLabel}}</label>\r\n<div class=\"col-auto\">\r\n <select [(ngModel)]=\"itemsPerPage\" cSelect name=\"itemsPerPageSelector\">\r\n <option *ngFor=\"let option of itemsPerPageOptions; let i = index\" [ngValue]=\"option\">{{option}}</option>\r\n </select>\r\n</div>\r\n","import { Directive, ElementRef, HostBinding, Input, OnInit, Renderer2 } from '@angular/core';\r\nimport { Breakpoints, Colors } from '../coreui.types';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { ITable } from './table.type';\r\n\r\n@Directive({\r\n selector: 'table[cTable]'\r\n})\r\nexport class TableDirective implements ITable, OnInit {\r\n static ngAcceptInputType_bordered: BooleanInput;\r\n static ngAcceptInputType_borderless: BooleanInput;\r\n static ngAcceptInputType_hover: BooleanInput;\r\n static ngAcceptInputType_small: BooleanInput;\r\n static ngAcceptInputType_striped: BooleanInput;\r\n\r\n /**\r\n * Set the vertical alignment.\r\n * @type string\r\n * @values 'bottom' | 'middle' | 'top'\r\n */\r\n @Input() align?: 'bottom' | 'middle' | 'top';\r\n /**\r\n * Sets the border color of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() borderColor?: Colors;\r\n /**\r\n * Add borders on all sides of the table and cells.\r\n * @type boolean\r\n */\r\n @Input()\r\n set bordered(value: boolean) {\r\n this._bordered = coerceBooleanProperty(value);\r\n };\r\n get bordered() {\r\n return this._bordered;\r\n }\r\n private _bordered = false;\r\n /**\r\n * Remove borders on all sides of the table and cells.\r\n * @type boolean\r\n */\r\n @Input()\r\n set borderless(value: boolean) {\r\n this._borderless = coerceBooleanProperty(value);\r\n };\r\n get borderless() {\r\n return this._borderless;\r\n }\r\n private _borderless = false;\r\n /**\r\n * Put the `<caption>` on the top of the table.\r\n * @values 'top'\r\n */\r\n @Input() caption?: 'top';\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Enable a hover state on table rows within table body.\r\n * @type boolean\r\n */\r\n @Input()\r\n set hover(value: boolean) {\r\n this._hover = coerceBooleanProperty(value);\r\n };\r\n get hover() {\r\n return this._hover;\r\n }\r\n private _hover = false;\r\n /**\r\n * Make table responsive across all viewports or pick a maximum breakpoint with which to have a responsive table up to.\r\n * @type: {boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'}\r\n */\r\n @Input() responsive?: boolean | Omit<Breakpoints, 'xs'>;\r\n /**\r\n * Make table more compact by cutting all cell `padding` in half.\r\n * @type boolean\r\n */\r\n @Input()\r\n set small(value: boolean) {\r\n this._small = coerceBooleanProperty(value);\r\n };\r\n get small() {\r\n return this._small;\r\n }\r\n private _small = false;\r\n /**\r\n * Add zebra-striping to any table row within the table body`.\r\n * @type boolean\r\n */\r\n @Input()\r\n set striped(value: boolean) {\r\n this._striped = coerceBooleanProperty(value);\r\n };\r\n get striped() {\r\n return this._striped;\r\n }\r\n private _striped = false;\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef\r\n ) { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n table: true,\r\n [`align-${this.align}`]: !!this.align,\r\n [`caption-${this.caption}`]: !!this.caption,\r\n [`border-${this.borderColor}`]: !!this.borderColor,\r\n 'table-bordered': this.bordered,\r\n 'table-borderless': this.borderless,\r\n [`table-${this.color}`]: !!this.color,\r\n 'table-hover': this.hover,\r\n 'table-sm': this.small,\r\n 'table-striped': this.striped\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setResponsiveWrapper();\r\n }\r\n\r\n // todo\r\n setResponsiveWrapper(): void {\r\n if (!!this.responsive) {\r\n const nativeElement: HTMLElement = this.hostElement.nativeElement;\r\n const wrapper = this.renderer.createElement('div');\r\n const className = this.responsive === true ? 'table-responsive' : `table-responsive-${this.responsive}`;\r\n this.renderer.addClass(wrapper, className);\r\n const parentNode = this.renderer.parentNode(nativeElement);\r\n this.renderer.appendChild(parentNode, wrapper);\r\n this.renderer.insertBefore(parentNode, wrapper, nativeElement);\r\n this.renderer.appendChild(wrapper, nativeElement);\r\n }\r\n }\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { Alignment } from '../coreui.types';\r\n\r\n@Directive({\r\n selector: '[cAlign]'\r\n})\r\nexport class AlignDirective {\r\n /**\r\n * Set vertical alignment of inline, inline-block, inline-table, and table cell elements\r\n * @type Alignment\r\n */\r\n @Input('cAlign') align?: Alignment;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n [`align-${this.align}`]: !!this.align,\r\n };\r\n }\r\n\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: '[cTableActive]'\r\n})\r\nexport class TableActiveDirective {\r\n\r\n static ngAcceptInputType_active: BooleanInput;\r\n\r\n /**\r\n * Highlight a table row or cell\r\n * @type boolean\r\n */\r\n @Input('cTableActive')\r\n set active(value: boolean) {\r\n this._active = coerceBooleanProperty(value);\r\n };\r\n get active() {\r\n return this._active;\r\n };\r\n\r\n private _active = false;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'table-active': this.active,\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import {\r\n AfterContentInit,\r\n Component,\r\n ContentChildren,\r\n EventEmitter,\r\n Input,\r\n IterableDiffer,\r\n IterableDiffers,\r\n Output,\r\n QueryList,\r\n TemplateRef,\r\n Type\r\n} from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty, coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\r\n\r\nimport { ITable } from '../../table/table.type';\r\nimport {\r\n IColumn,\r\n IColumnFilter,\r\n IColumnFilterValue,\r\n IItem,\r\n IItemInternal,\r\n ISmartTable,\r\n ISorter,\r\n ISorterValue,\r\n ITableFilter,\r\n ITableGroupProps,\r\n ItemsPerPageSelect\r\n} from '../smart-table.type';\r\nimport { TemplateIdDirective } from '../../shared';\r\n\r\n@Component({\r\n selector: 'c-smart-table',\r\n templateUrl: './smart-table.component.html',\r\n styleUrls: ['./smart-table.component.scss'],\r\n exportAs: 'cSmartTable'\r\n})\r\nexport class SmartTableComponent implements ISmartTable, AfterContentInit {\r\n\r\n static ngAcceptInputType_activePage: NumberInput;\r\n static ngAcceptInputType_cleaner: BooleanInput;\r\n static ngAcceptInputType_clickableRows: BooleanInput;\r\n static ngAcceptInputType_footer: BooleanInput;\r\n static ngAcceptInputType_header: BooleanInput;\r\n static ngAcceptInputType_itemsPerPage: NumberInput;\r\n static ngAcceptInputType_pagination: BooleanInput;\r\n static ngAcceptInputType_selectable: BooleanInput;\r\n\r\n constructor(\r\n private iterable: IterableDiffers\r\n ) {\r\n this.iterableDiffer = this.iterable.find(this.items).create();\r\n }\r\n\r\n private iterableDiffer: IterableDiffer<any> | null;\r\n\r\n @Input()\r\n set activePage(value: number) {\r\n this._activePage = coerceNumberProperty(value) || 1;\r\n this.activePageChange.emit(this._activePage);\r\n }\r\n get activePage(): number {\r\n return this._activePage;\r\n }\r\n private _activePage = 1;\r\n\r\n @Input()\r\n set cleaner(value: boolean) {\r\n this._cleaner = coerceBooleanProperty(value);\r\n }\r\n get cleaner(): boolean {\r\n return this._cleaner;\r\n }\r\n private _cleaner: boolean = false;\r\n\r\n @Input()\r\n set clickableRows(value: boolean) {\r\n this._clickableRows = coerceBooleanProperty(value);\r\n }\r\n get clickableRows(): boolean {\r\n return this._clickableRows;\r\n }\r\n private _clickableRows: boolean = false;\r\n\r\n @Input()\r\n set columns(value) {\r\n this._columns = value;\r\n }\r\n get columns() {\r\n return this._columns || this.rawColumnNames;\r\n }\r\n private _columns?: (string | IColumn)[];\r\n\r\n @Input() columnFilter?: boolean | IColumnFilter;\r\n\r\n @Input()\r\n set columnFilterValue(value: IColumnFilterValue) {\r\n this._columnFilterValue = value;\r\n this.columnFilterValueChange.emit({ ...value });\r\n this.tableFiltered; // emits tableFiltered change\r\n }\r\n get columnFilterValue(): IColumnFilterValue {\r\n return this._columnFilterValue;\r\n }\r\n private _columnFilterValue: IColumnFilterValue = {};\r\n\r\n @Input() columnSorter?: boolean | ISorter;\r\n\r\n @Input()\r\n set footer(value: boolean) {\r\n this._footer = coerceBooleanProperty(value);\r\n }\r\n get footer(): boolean {\r\n return this._footer;\r\n }\r\n private _footer: boolean = false;\r\n\r\n @Input()\r\n set header(value: boolean) {\r\n this._header = coerceBooleanProperty(value);\r\n }\r\n get header(): boolean {\r\n return this._header;\r\n }\r\n private _header: boolean = false;\r\n\r\n @Input()\r\n set items(value: IItem[]) {\r\n this._items = this.setItems(value) as Array<Type<IItemInternal>>;\r\n }\r\n get items() {\r\n return this._items;\r\n }\r\n private _items: IItemInternal[] = [] as Array<Type<IItemInternal>>;\r\n\r\n @Input()\r\n set itemsPerPage(value: number) {\r\n this._itemsPerPage = coerceNumberProperty(value);\r\n }\r\n get itemsPerPage(): number {\r\n return this._itemsPerPage;\r\n }\r\n private _itemsPerPage: number = 10;\r\n\r\n @Input() itemsPerPageLabel: string = 'Items per page:';\r\n @Input() itemsPerPageOptions: number[] = [5, 10, 20, 50];\r\n @Input() itemsPerPageSelect?: boolean | ItemsPerPageSelect;\r\n @Input() loading?: boolean;\r\n @Input() noItemsLabel: string | TemplateRef<any> = 'No items found';\r\n\r\n @Input()\r\n set pagination(value: boolean) {\r\n this._pagination = coerceBooleanProperty(value);\r\n }\r\n get pagination(): boolean {\r\n return this._pagination;\r\n }\r\n private _pagination: boolean = false;\r\n\r\n @Input()\r\n set selectable(value: boolean) {\r\n this._selectable = coerceBooleanProperty(value);\r\n }\r\n get selectable(): boolean {\r\n return this._selectable;\r\n }\r\n private _selectable: boolean = false;\r\n\r\n @Input()\r\n set sorterValue(value: ISorterValue) {\r\n this._sorterValue = value;\r\n this.sorterValueChange.emit({ ...value });\r\n }\r\n get sorterValue(): ISorterValue {\r\n return this._sorterValue;\r\n }\r\n private _sorterValue: ISorterValue = {};\r\n\r\n @Input() tableFilter?: boolean | ITableFilter;\r\n @Input() tableFilterLabel = 'Filter:';\r\n @Input() tableFilterPlaceholder = 'type string...';\r\n\r\n @Input()\r\n set tableFilterValue(value: string) {\r\n this._tableFilterValue = value;\r\n this.tableFilterValueChange.emit(value);\r\n this.tableFiltered; // emits tableFiltered change\r\n }\r\n get tableFilterValue(): string {\r\n return this._tableFilterValue;\r\n }\r\n private _tableFilterValue: string = '';\r\n\r\n @Input() tableBodyProps?: ITableGroupProps = {};\r\n @Input() tableFootProps?: ITableGroupProps = {};\r\n @Input() tableHeadProps?: ITableGroupProps = {};\r\n @Input() tableProps?: ITable = {};\r\n\r\n @Output() selectedItemsChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() sorterValueChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() activePageChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() itemsPerPageChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() rowClick: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() columnFilterValueChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() filteredItemsChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() tableFilterValueChange: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n @ContentChildren(TemplateIdDirective) columnTemplates!: QueryList<TemplateIdDirective>;\r\n templates: { [key: string]: (TemplateRef<any> | null) } = { tableDetails: null, tableData: null };\r\n\r\n ngAfterContentInit(): void {\r\n this.columnTemplates.forEach((child: TemplateIdDirective) => {\r\n this.templates[child.id] = child.templateRef;\r\n });\r\n }\r\n\r\n get selectedAll() {\r\n const selected = this.items.filter((item) => item._selected === true);\r\n return selected.length === 0 ? false : selected.length === this.items.length ? true : 'indeterminate';\r\n // return this._selectedAll;\r\n }\r\n set selectedAll(value) {\r\n const selected = this.items.filter((item) => item._selected === true);\r\n this.selectedItemsChange.emit(selected);\r\n this._selectedAll = selected.length === 0 ? false : selected.length === this.items.length ? true : 'indeterminate';\r\n }\r\n private _selectedAll: (boolean | string) = false;\r\n\r\n get tableFilterState() {\r\n return this.tableFilterValue ? this.tableFilterValue : '';\r\n }\r\n\r\n get columnFilterState() {\r\n return this.columnFilterValue ? this.columnFilterValue : {};\r\n }\r\n\r\n get numberOfPages(): number {\r\n return this._itemsPerPage ? Math.ceil(this.sortedItems.length / this._itemsPerPage) : 1;\r\n }\r\n\r\n get colspan(): number {\r\n return this._selectable ? this.rawColumnNames.length + 1 : this.rawColumnNames.length;\r\n }\r\n\r\n get firstItemOnActivePageIndex(): number {\r\n return this._activePage ? (this._activePage - 1) * this._itemsPerPage : 0;\r\n }\r\n\r\n get itemsOnActivePage(): IItemInternal[] {\r\n return this.sortedItems.slice(\r\n this.firstItemOnActivePageIndex,\r\n this.firstItemOnActivePageIndex + this._itemsPerPage\r\n );\r\n }\r\n\r\n get currentItems(): IItemInternal[] {\r\n return this._activePage ? this.itemsOnActivePage : this.sortedItems ?? [];\r\n // return this.items ?? [];\r\n }\r\n\r\n get genCols() {\r\n return Object.keys(this._items ? this._items[0] ?? {} : {}).filter((el) => el.charAt(0) !== '_');\r\n }\r\n\r\n get rawColumnNames() {\r\n return this._columns\r\n ? this._columns.map((column: any) => {\r\n if (typeof column === 'object') return column.key;\r\n else return column;\r\n })\r\n : this.genCols;\r\n }\r\n\r\n get itemsDataColumns() {\r\n return this.rawColumnNames.filter((name) => this.genCols.includes(name));\r\n }\r\n\r\n get sortedItems(): IItemInternal[] {\r\n const col = this.sorterValue.column;\r\n if (\r\n !col ||\r\n !this.itemsDataColumns.includes(col) ||\r\n (this.columnSorter &&\r\n typeof this.columnSorter === 'object' &&\r\n this.columnSorter.external)\r\n ) {\r\n return this.tableFiltered;\r\n }\r\n //if values in column are to be sorted by numeric value they all have to be type number\r\n // const flip = sorterState.asc ? 1 : -1\r\n const flip = this.sorterValue.state === 'asc' ? 1 : this.sorterValue.state === 'desc' ? -1 : 0;\r\n // @ts-ignore\r\n const sorted = this.tableFiltered.slice().sort((item: { [x: string]: any; }, item2: { [x: string]: any; }) => {\r\n const value = item[col];\r\n const value2 = item2[col];\r\n const a = typeof value === 'number' ? value : String(value).toLowerCase();\r\n const b = typeof value2 === 'number' ? value2 : String(value2).toLowerCase();\r\n return a > b ? 1 * flip : b > a ? -1 * flip : 0;\r\n });\r\n return sorted;\r\n }\r\n\r\n get columnFiltered(): IItemInternal[] {\r\n let _items = this._items;\r\n if (\r\n this.columnFilter &&\r\n typeof this.columnFilter === 'object' &&\r\n this.columnFilter.external\r\n ) {\r\n // @ts-ignore\r\n return _items;\r\n }\r\n Object.entries(this.columnFilterState).forEach(([key, value]) => {\r\n const columnFilter = String(value).toLowerCase();\r\n if (columnFilter && this.itemsDataColumns.includes(key)) {\r\n // @ts-ignore\r\n _items = _items.filter((item) => {\r\n return String(item[key]).toLowerCase().includes(columnFilter);\r\n });\r\n }\r\n });\r\n // @ts-ignore\r\n return _items;\r\n }\r\n\r\n get tableFiltered(): IItemInternal[] {\r\n let items = this.columnFiltered;\r\n if (\r\n !this.tableFilterState ||\r\n (this.tableFilter && typeof this.tableFilter === 'object' && this.tableFilter.external)\r\n ) {\r\n this.filteredItemsChange.emit(items);\r\n return items;\r\n }\r\n const filter = this.tableFilterState.toLowerCase();\r\n const valueContainFilter = (val: any) => String(val).toLowerCase().includes(filter);\r\n // @ts-ignore\r\n items = items.filter((item: { [x: string]: any; }) => {\r\n return !!this.itemsDataColumns.find((key) => valueContainFilter(item[key]));\r\n });\r\n this.filteredItemsChange.emit(items);\r\n return items;\r\n }\r\n\r\n get isFiltered() {\r\n return this.tableFilterState || this.sorterValue?.column || Object.values(this.columnFilterState).join('');\r\n }\r\n\r\n private setItems(items: IItem[]) {\r\n if (Array.isArray(items)) {\r\n return items.map((item: IItem, index: number) => {\r\n return { ...item, _id: index };\r\n });\r\n }\r\n return <IItemInternal>[];\r\n }\r\n\r\n handleSortChange($event: { columnKey: string; index: number; }) {\r\n this.handleSorterChange($event.columnKey, $event.index);\r\n }\r\n\r\n isSortable(i: number): boolean | undefined {\r\n const isDataColumn = this.itemsDataColumns.includes(this.rawColumnNames[i]);\r\n let column;\r\n if (this.columns) column = this.columns[i];\r\n return (\r\n this.columnSorter &&\r\n (!this.columns ||\r\n typeof column !== 'object' ||\r\n (typeof column === 'object' &&\r\n (typeof column.sorter === 'undefined' || column.sorter))) &&\r\n isDataColumn\r\n );\r\n }\r\n\r\n handleSorterChange(column: string, index: number): void {\r\n if (!this.isSortable(index)) {\r\n return;\r\n }\r\n //if column changed or sort was descending change asc to true\r\n const state = { ...this.sorterValue };\r\n\r\n if (state.column === column) {\r\n if (state.state === 0) {\r\n state.state = 'asc';\r\n } else if (state.state === 'asc') {\r\n state.state = 'desc';\r\n } else {\r\n if (typeof this.columnSorter === 'object' && !this.columnSorter.resetable) {\r\n state.state = 'asc';\r\n } else {\r\n state.state = 0;\r\n }\r\n }\r\n } else {\r\n state.column = column;\r\n state.state = 'asc';\r\n }\r\n this.sorterValue = { ...state };\r\n }\r\n\r\n setActivePage($event: number) {\r\n this.activePage = $event;\r\n }\r\n\r\n handleColumnFilterChange($event: any) {\r\n const { column, value } = $event;\r\n const isLazy = this.columnFilter && typeof this.columnFilter === 'object' && this.columnFilter.lazy === true;\r\n // if ((isLazy && type === 'input') || (!isLazy && type === 'change')) {\r\n if (isLazy) {\r\n return;\r\n }\r\n this.setActivePage(1);\r\n this.columnFilterValue = { ...this.columnFilterValue, [`${column}`]: value };\r\n }\r\n\r\n handleTableFilterChange($event: string) {\r\n const isLazy = this.tableFilter && typeof this.tableFilter === 'object' && this.tableFilter.lazy === true;\r\n // if ((isLazy && type === 'input') || (!isLazy && type === 'change')) {\r\n if (isLazy) {\r\n return;\r\n }\r\n this.setActivePage(1);\r\n this.tableFilterValue = $event;\r\n }\r\n\r\n clean($event: MouseEvent) {\r\n this.columnFilterValue = {};\r\n this.tableFilterValue = '';\r\n this.sorterValue = {};\r\n this.tableFiltered; //emits tableFiltered change\r\n }\r\n\r\n handleItemsPerPageChange(value: number) {\r\n if (value !== this._itemsPerPage) {\r\n this.setActivePage(1);\r\n this._itemsPerPage = value;\r\n this.itemsPerPageChange.emit(value);\r\n }\r\n }\r\n\r\n handleRowChecked($event: Event, item: IItemInternal) {\r\n item._selected = ($event.target as HTMLInputElement).checked;\r\n const selected = this.items.filter((item) => item._selected === true);\r\n this.selectedItemsChange.emit(selected);\r\n }\r\n\r\n handleSelectAllChange($event: any) {\r\n this._items = this.items.map((item: IItemInternal) => {\r\n return { ...item, _selected: $event };\r\n });\r\n this.selectedAll = $event;\r\n }\r\n\r\n tableDataCellProps(item: IItem, colName: string) {\r\n const props = item['_cellProps'] && {\r\n ...(item['_cellProps']['_all'] && { ...item['_cellProps']['_all'] }),\r\n ...(item['_cellProps'][colName] && { ...item['_cellProps'][colName] }),\r\n }\r\n return props\r\n }\r\n\r\n tableDataCellClasses(item: IItem, colName: string) {\r\n const column = this.columns.filter((column: IColumn) => column['key'] === colName);\r\n return column[0]?._classes;\r\n }\r\n\r\n getColumnName($event: MouseEvent): string {\r\n const target = $event.target as HTMLTextAreaElement;\r\n const closest = target.closest('tr');\r\n const children = closest ? Array.from(closest.children) : [];\r\n const clickedCell = children.filter((child) => child.contains(target))[0];\r\n return this.rawColumnNames[children.indexOf(clickedCell) - (this._selectable ? 1 : 0)];\r\n }\r\n\r\n handleRowClick(param: { $event: MouseEvent; item: IItemInternal; i: number }) {\r\n const { $event, item, i } = { ...param };\r\n const columnName = this.getColumnName(param.$event);\r\n this.rowClick.emit({ item: item, index: i + this.firstItemOnActivePageIndex, columnName, event: $event });\r\n }\r\n}\r\n","<div *ngIf=\"itemsPerPageSelect || tableFilter || cleaner\" class=\"row my-2 mx-0\">\r\n <ng-template [ngIf]=\"tableFilter || cleaner\">\r\n <div class=\"col-auto p-0\">\r\n <c-smart-table-filter\r\n (valueChange)=\"handleTableFilterChange($event)\"\r\n *ngIf=\"tableFilter\"\r\n [filterLabel]=\"tableFilterLabel\"\r\n [filterPlaceholder]=\"tableFilterPlaceholder\"\r\n [value]=\"tableFilterState\"\r\n >\r\n </c-smart-table-filter>\r\n </div>\r\n <div class=\"col-auto p-0\">\r\n <button\r\n (click)=\"clean($event)\"\r\n *ngIf=\"cleaner\"\r\n [disabled]=\"!isFiltered\"\r\n [ngClass]=\"{'ms-1': tableFilter}\"\r\n [tabindex]=\"0\"\r\n cButton\r\n color=\"transparent\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"filterIconTemplate\"></ng-container>\r\n </button>\r\n </div>\r\n </ng-template>\r\n</div>\r\n<div class=\"position-relative\">\r\n <table [align]=\"tableProps?.align\"\r\n [borderColor]=\"tableProps?.borderColor\"\r\n [bordered]=\"tableProps?.bordered\"\r\n [borderless]=\"tableProps?.borderless\"\r\n [caption]=\"tableProps?.caption\"\r\n [color]=\"tableProps?.color\"\r\n [hover]=\"tableProps?.hover\"\r\n [responsive]=\"tableProps?.responsive\"\r\n [small]=\"tableProps?.small\"\r\n [striped]=\"tableProps?.striped\"\r\n [cHtmlAttr]=\"tableProps?.attributes ?? {}\"\r\n [cTableColor]=\"tableProps?.color\"\r\n cTable\r\n >\r\n <c-smart-table-head\r\n (columnFilterStateChange)=\"handleColumnFilterChange($event)\"\r\n (selectAllChange)=\"handleSelectAllChange($event)\"\r\n (sorterStateChange)=\"handleSortChange($event)\"\r\n *ngIf=\"header\"\r\n [columnFilterState]=\"columnFilterState\"\r\n [columnFilter]=\"columnFilter\"\r\n [columns]=\"columns\"\r\n [selectAll]=\"selectedAll\"\r\n [selectable]=\"selectable\"\r\n [sorterValue]=\"sorterValue\"\r\n [cHtmlAttr]=\"tableHeadProps?.attributes ?? {}\"\r\n [cTableColor]=\"tableHeadProps?.color\"\r\n [cAlign]=\"tableHeadProps?.align\"\r\n ></c-smart-table-head>\r\n\r\n <ng-container *ngTemplateOutlet=\"tbodyDefaultTemplate\"></ng-container>\r\n\r\n <c-smart-table-head\r\n (selectAllChange)=\"handleSelectAllChange($event)\"\r\n (sorterStateChange)=\"handleSortChange($event)\"\r\n *ngIf=\"footer\"\r\n [columns]=\"columns\"\r\n [selectAll]=\"selectedAll\"\r\n [selectable]=\"selectable\"\r\n [sorterValue]=\"sorterValue\"\r\n [cHtmlAttr]=\"tableFootProps?.attributes ?? {}\"\r\n [cTableColor]=\"tableFootProps?.color\"\r\n [cAlign]=\"tableFootProps?.align\"\r\n component=\"tfoot\"\r\n ></c-smart-table-head>\r\n\r\n </table>\r\n <c-element-cover\r\n *ngIf=\"loading\"\r\n [boundaries]=\"[\r\n { sides: ['top'], query: 'td' },\r\n { sides: ['bottom'], query: 'tbody' }\r\n ]\"\r\n ></c-element-cover>\r\n</div>\r\n<ng-template [ngIf]=\"pagination || itemsPerPageSelect\">\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <c-smart-pagination\r\n (activePageChange)=\"setActivePage($event)\"\r\n *ngIf=\"pagination && numberOfPages > 1\"\r\n [activePage]=\"activePage\"\r\n [pages]=\"numberOfPages\">\r\n </c-smart-pagination>\r\n </div>\r\n <div class=\"col-auto ms-auto\">\r\n <c-smart-table-items-per-page-selector\r\n (itemsPerPageChange)=\"handleItemsPerPageChange($event)\"\r\n *ngIf=\"itemsPerPageSelect\"\r\n [itemsPerPageLabel]=\"itemsPerPageLabel\"\r\n [itemsPerPageOptions]=\"itemsPerPageOptions\"\r\n [itemsPerPage]=\"itemsPerPage\"\r\n >\r\n </c-smart-table-items-per-page-selector>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #tbodyDefaultTemplate>\r\n <tbody [cHtmlAttr]=\"tableBodyProps?.attributes ?? {}\"\r\n [cTableColor]=\"tableBodyProps?.color\"\r\n [cAlign]=\"tableBodyProps?.align\"\r\n >\r\n <ng-template ngFor let-item [ngForOf]=\"currentItems\" let-cnt=\"count\" let-i=\"index\" let-isEven=\"even\" let-isOdd=\"odd\">\r\n <tr [tabindex]=\"clickableRows ? 0 : -1\"\r\n [ngStyle]=\"{cursor: clickableRows ? 'pointer' : 'auto'}\"\r\n (click)=\"handleRowClick({$event, item, i})\"\r\n [cTableActive]=\"item._props?.active\"\r\n [cTableColor]=\"item._props?.color\"\r\n [cAlign]=\"item._props?.align\"\r\n >\r\n <td *ngIf=\"selectable\"\r\n [cTableActive]=\"item?.['_cellProps']?._all?.active\"\r\n [cTableColor]=\"item?.['_cellProps']?._all?.color\"\r\n [cAlign]=\"item?.['_cellProps']?._all?.align\"\r\n >\r\n <input (change)=\"handleRowChecked($event, item)\" [checked]=\"item._selected ?? false\" cFormCheckInput>\r\n </td>\r\n <ng-template ngFor let-columnName [ngForOf]=\"rawColumnNames\" let-i=\"index\" >\r\n <ng-container *ngTemplateOutlet=\"templates['tableData'] || columnDefaultTemplate; context: {item, columnName, tdContent: item[columnName] }\"></ng-container>\r\n </ng-template>\r\n </tr>\r\n <ng-template [ngIf]=\"templates['tableDetails']\">\r\n <!-- <ng-container *ngTemplateOutlet=\"rowDetailsDefaultTemplate\"></ng-container>-->\r\n <tr><td [colSpan]=\"colspan\" class=\"p-0\" tabindex=\"-1\" [ngStyle]=\"{borderBottomWidth: 0}\"></td></tr>\r\n <tr class=\"p-0\">\r\n <td [colSpan]=\"colspan\" class=\"p-0\" [ngStyle]=\"{border: 0}\">\r\n <ng-container *ngTemplateOutlet=\"templates['tableDetails']; context: {item, index: i}\"></ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </ng-template>\r\n <ng-container *ngTemplateOutlet=\"noItemsDefaultTemplate\"></ng-container>\r\n </tbody>\r\n</ng-template>\r\n\r\n<ng-template #columnDefaultTemplate let-item=\"item\" let-columnName=\"columnName\" let-tdContent=\"tdContent\">\r\n <td\r\n [cTableActive]=\"tableDataCellProps(item, columnName)?.['active']\"\r\n [cTableColor]=\"tableDataCellProps(item, columnName)?.color\"\r\n [cAlign]=\"tableDataCellProps(item, columnName)?.align\"\r\n [ngClass]=\"tableDataCellClasses(item, columnName)\"\r\n >\r\n {{tdContent}}\r\n </td>\r\n</ng-template>\r\n\r\n<!--<ng-template #rowDetailsDefaultTemplate let-item let-index>-->\r\n<!-- <tr><td [colSpan]=\"colspan\" class=\"p-0\" tabindex=\"-1\" [ngStyle]=\"{borderBottomWidth: 0}\"></td></tr>-->\r\n<!-- <tr class=\"p-0\">-->\r\n<!-- <td [colSpan]=\"colspan\" class=\"p-0\" [ngStyle]=\"{border: 0}\">-->\r\n<!-- <ng-container *ngTemplateOutlet=\"templates?.tableDetails\"></ng-container>-->\r\n<!-- </td>-->\r\n<!-- </tr>-->\r\n<!--</ng-template>-->\r\n\r\n<ng-template #noItemsDefaultTemplate>\r\n <tr *ngIf=\"!currentItems.length\">\r\n <td [colSpan]=\"colspan\" class=\"justify-content-center\">{{noItemsLabel}}</td>\r\n </tr>\r\n</ng-template>\r\n\r\n<!--todo: filterIconCustomTemplate-->\r\n<ng-template #filterIconTemplate>\r\n <svg class=\"icon icon-custom-size\" role=\"img\" viewBox=\"0 0 512 512\" width=\"18\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <polygon class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"40 16 40 53.828 109.024 136 150.815 136 76.896 48 459.51 48 304 242.388 304 401.373 241.373 464 240 464 240 368 208 368 208 496 254.627 496 336 414.627 336 253.612 496 53.612 496 16 40 16\"></polygon>\r\n <polygon class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"166.403 248.225 226.864 187.763 204.237 165.135 143.775 225.597 83.313 165.135 60.687 187.763 121.148 248.225 60.687 308.687 83.313 331.314 143.775 270.852 204.237 331.314 226.864 308.687 166.403 248.225\"></polygon>\r\n </svg>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TableDirective } from './table.directive';\r\nimport { TableColorDirective } from './table-color.directive';\r\nimport { TableActiveDirective } from './table-active.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n TableDirective,\r\n TableColorDirective,\r\n TableActiveDirective\r\n ],\r\n exports: [\r\n TableDirective,\r\n TableColorDirective,\r\n TableActiveDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class TableModule { }\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BackgroundColors } from '../coreui.types';\r\n\r\n@Directive({\r\n selector: '[cBgColor]'\r\n})\r\nexport class BgColorDirective {\r\n\r\n /**\r\n * Set the background of an element to any contextual class\r\n */\r\n @Input('cBgColor') color: BackgroundColors = '';\r\n /**\r\n * Add linear gradient as background image to the backgrounds.\r\n * @type boolean\r\n */\r\n @Input() gradient?: boolean;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n [`bg-${this.color}`]: !!this.color,\r\n 'bg-gradient': this.gradient,\r\n };\r\n }\r\n\r\n constructor() { }\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { Border, BorderColor, IBorderElement, BorderWidth } from './border.type';\r\n\r\n@Directive({\r\n selector: '[cBorder]'\r\n})\r\nexport class BorderDirective {\r\n /**\r\n * Add or remove an element’s borders\r\n * @type Border\r\n */\r\n @Input('cBorder') border: Border = true;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n if ( typeof this.border === 'boolean' ) {\r\n return { border: true };\r\n }\r\n if ( typeof this.border === 'number' || typeof this.border === 'string' ) {\r\n return {\r\n border: true,\r\n [`border-${this.border}`]: true\r\n };\r\n }\r\n if ( typeof this.border === 'object' ) {\r\n const borderObj = { top: undefined, end: undefined, bottom: undefined, start: undefined, color: undefined, ...this.border };\r\n // @ts-ignore\r\n const keys = Object.keys(borderObj).filter(key => borderObj[key] !== undefined);\r\n const classes = {};\r\n keys.forEach(key => {\r\n // @ts-ignore\r\n const val = borderObj[key];\r\n if ( typeof val === 'boolean') {\r\n // @ts-ignore\r\n classes[`border-${key}`] = true;\r\n } else if ( typeof val === 'number' || typeof val === 'string' ) {\r\n // @ts-ignore\r\n classes[`border-${key}-${val}`] = true;\r\n } else if ( typeof val === 'object' ) {\r\n if ('color' in val) {\r\n // @ts-ignore\r\n classes[`border-${key}-${val.color}`] = true;\r\n }\r\n if ('width' in val) {\r\n // @ts-ignore\r\n classes[`border-${key}-${val.width}`] = true;\r\n }\r\n }\r\n });\r\n return Object.entries(classes).length === 0 ? {border: false} : classes;\r\n }\r\n }\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { TextColors } from '../coreui.types';\r\n\r\n@Directive({\r\n selector: '[cTextColor]'\r\n})\r\nexport class TextColorDirective {\r\n\r\n /**\r\n * Set text-color of element\r\n * @type TextColors\r\n */\r\n @Input('cTextColor') color: TextColors = '';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n const color = this.color;\r\n return {\r\n [`text-${color}`]: !!color\r\n };\r\n }\r\n\r\n constructor() {}\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { Rounded, RoundedSize } from './rounded.type';\r\n\r\n@Directive({\r\n selector: '[cRounded]'\r\n})\r\nexport class RoundedDirective {\r\n\r\n /**\r\n * Set border radius variant and radius size\r\n * @type Rounded\r\n */\r\n @Input('cRounded') rounded: Rounded = true;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n if ( typeof this.rounded === 'boolean' ) {\r\n return { rounded: true };\r\n }\r\n if ( typeof this.rounded === 'number' || typeof this.rounded === 'string' ) {\r\n return {\r\n [`rounded-${this.rounded}`]: true\r\n };\r\n }\r\n if ( typeof this.rounded === 'object' ) {\r\n const roundedObj = {\r\n top: undefined,\r\n end: undefined,\r\n bottom: undefined,\r\n start: undefined,\r\n circle: undefined,\r\n pill: undefined,\r\n size: undefined,\r\n ...this.rounded,\r\n };\r\n // @ts-ignore\r\n const keys = Object.keys(roundedObj).filter(key => roundedObj[key] !== undefined );\r\n const classes = {};\r\n keys.forEach(key => {\r\n // @ts-ignore\r\n const val = roundedObj[key];\r\n if (typeof val === 'boolean') {\r\n // @ts-ignore\r\n classes[`rounded-${key}`] = val;\r\n } else {\r\n // @ts-ignore\r\n classes[`rounded-${val}`] = true;\r\n }\r\n });\r\n console.log('rounded keys', keys, classes);\r\n return Object.entries(classes).length === 0 ? {rounded: false} : classes;\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BgColorDirective } from './bg-color.directive';\r\nimport { BorderDirective } from './border.directive';\r\nimport { RoundedDirective } from './rounded.directive';\r\nimport { TextColorDirective } from './text-color.directive';\r\nimport { AlignDirective } from './align.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n BgColorDirective,\r\n BorderDirective,\r\n RoundedDirective,\r\n TextColorDirective,\r\n AlignDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n BgColorDirective,\r\n BorderDirective,\r\n RoundedDirective,\r\n TextColorDirective,\r\n AlignDirective\r\n ]\r\n})\r\nexport class UtilitiesModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { SharedModule } from '../shared';\r\nimport { ElementCoverModule } from '../element-cover';\r\nimport { TableModule } from '../table';\r\nimport { PaginationModule } from '../pagination';\r\nimport { FormModule } from '../form';\r\nimport { ButtonModule } from '../button';\r\nimport { SmartPaginationModule } from '../smart-pagination';\r\nimport { SmartTableComponent } from './smart-table/smart-table.component';\r\nimport { SmartTableFilterComponent } from './smart-table-filter/smart-table-filter.component';\r\nimport { SmartTableItemsPerPageSelectorComponent } from './smart-table-items-per-page-selector/smart-table-items-per-page-selector.component';\r\nimport { SmartTableHeadComponent } from './smart-table-head/smart-table-head.component';\r\nimport { UtilitiesModule } from '../utilities';\r\n\r\n@NgModule({\r\n declarations: [\r\n SmartTableComponent,\r\n SmartTableFilterComponent,\r\n SmartTableItemsPerPageSelectorComponent,\r\n SmartTableHeadComponent,\r\n ],\r\n exports: [SmartTableComponent],\r\n imports: [\r\n CommonModule,\r\n ElementCoverModule,\r\n TableModule,\r\n PaginationModule,\r\n SmartPaginationModule,\r\n FormModule,\r\n FormsModule,\r\n ButtonModule,\r\n SharedModule,\r\n ReactiveFormsModule,\r\n UtilitiesModule\r\n ]\r\n})\r\nexport class SmartTableModule {}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { TabContentComponent } from './tab-content/tab-content.component';\r\n\r\nexport interface ITabContentState {\r\n activeIdx: number,\r\n tabContent: TabContentComponent\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TabService {\r\n\r\n private activeTabPaneIdx = new Subject<ITabContentState>();\r\n activeTabPaneIdx$ = this.activeTabPaneIdx.asObservable();\r\n\r\n constructor() { }\r\n\r\n setActiveTabIdx(tabContentState: ITabContentState) {\r\n this.activeTabPaneIdx.next(tabContentState);\r\n }\r\n}\r\n","import { ChangeDetectorRef, Component, HostBinding, OnDestroy, OnInit } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { TabContentComponent } from '../tab-content/tab-content.component';\r\nimport { ITabContentState, TabService } from '../tab.service';\r\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-tab-pane',\r\n templateUrl: './tab-pane.component.html',\r\n styleUrls: ['./tab-pane.component.scss'],\r\n exportAs: 'cTabPane'\r\n})\r\nexport class TabPaneComponent implements OnDestroy, OnInit {\r\n\r\n constructor(\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private tabService: TabService\r\n ) { }\r\n\r\n public tabPaneIdx!: number;\r\n public tabContent!: TabContentComponent;\r\n private tabServiceSubscription!: Subscription;\r\n\r\n set active(value: boolean) {\r\n const newValue = coerceBooleanProperty(value);\r\n if (this._active !== newValue) {\r\n this._active = newValue;\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n }\r\n get active(): boolean {\r\n return this._active;\r\n }\r\n private _active: boolean = false;\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n 'tab-pane': true,\r\n fade: true,\r\n show: this.active,\r\n active: this.active\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.subscribeTabService();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscribeTabService(false);\r\n }\r\n\r\n subscribeTabService(subscribe: boolean = true) {\r\n if (subscribe) {\r\n this.tabServiceSubscription = this.tabService.activeTabPaneIdx$.subscribe((tabContentState: ITabContentState) => {\r\n if (tabContentState.tabContent === this.tabContent) {\r\n this.active = (tabContentState.activeIdx === this.tabPaneIdx);\r\n }\r\n });\r\n } else {\r\n this.tabServiceSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import {\r\n AfterContentChecked,\r\n AfterContentInit,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChildren,\r\n EventEmitter,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n Output,\r\n QueryList,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { coerceNumberProperty } from '@angular/cdk/coercion';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { TabPaneComponent } from '../tab-pane/tab-pane.component';\r\nimport { TabService } from '../tab.service';\r\n\r\n@Component({\r\n selector: 'c-tab-content',\r\n templateUrl: './tab-content.component.html',\r\n styleUrls: ['./tab-content.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n exportAs: 'cTabContent'\r\n})\r\nexport class TabContentComponent implements AfterContentChecked, AfterContentInit, OnChanges, OnDestroy {\r\n\r\n /**\r\n * Set active tabPane index\r\n * @type number\r\n */\r\n @Input()\r\n set activeTabPaneIdx(value: number) {\r\n const newValue = coerceNumberProperty(value);\r\n if (this._activeTabPaneIdx != newValue) {\r\n this._activeTabPaneIdx = newValue;\r\n this.activeTabPaneIdxChange.emit(newValue);\r\n this.changeDetectorRef.markForCheck();\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n };\r\n get activeTabPaneIdx() {\r\n return this._activeTabPaneIdx;\r\n }\r\n private _activeTabPaneIdx = -1;\r\n\r\n /**\r\n * Event emited on the active tab pane index change.\r\n */\r\n @Output() activeTabPaneIdxChange: EventEmitter<number> = new EventEmitter<number>();\r\n\r\n @ContentChildren(TabPaneComponent) public panes!: QueryList<TabPaneComponent>;\r\n private tabServiceSubscription!: Subscription;\r\n\r\n constructor(\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private tabService: TabService\r\n ) { }\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n 'tab-content': true\r\n };\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.subscribeTabService();\r\n }\r\n\r\n ngAfterContentChecked(): void {\r\n this.panes?.forEach((tabPane, index) => {\r\n tabPane.tabContent = this;\r\n tabPane.tabPaneIdx = index;\r\n });\r\n this.refreshTabPaneActive(this.activeTabPaneIdx);\r\n this.tabService.setActiveTabIdx({ tabContent: this, activeIdx: this.activeTabPaneIdx });\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['activeTabPaneIdx']?.currentValue) {\r\n this.tabService.setActiveTabIdx({ tabContent: this, activeIdx: changes['activeTabPaneIdx'].currentValue });\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscribeTabService(false);\r\n }\r\n\r\n subscribeTabService(subscribe: boolean = true) {\r\n if (subscribe) {\r\n this.tabServiceSubscription = this.tabService.activeTabPaneIdx$.subscribe((tabContentState) => {\r\n if (this === tabContentState.tabContent) {\r\n this.activeTabPaneIdx = tabContentState.activeIdx;\r\n }\r\n });\r\n } else {\r\n this.tabServiceSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n refreshTabPaneActive(idx: number) {\r\n // hack for active state pane refresh todo?\r\n this.panes?.forEach((tabPane, index) => {\r\n tabPane.active = idx === index;\r\n });\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import {\r\n ChangeDetectorRef,\r\n Directive,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { TabService } from './tab.service';\r\n\r\n@Directive({\r\n selector: '[cTabContent]',\r\n})\r\nexport class TabContentRefDirective implements OnChanges, OnDestroy, OnInit {\r\n\r\n constructor(\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private tabService: TabService\r\n ) { }\r\n\r\n static ngAcceptInputType_disabled: BooleanInput;\r\n private tabServiceSubscription!: Subscription;\r\n\r\n /**\r\n * Template Ref\r\n * @type TemplateRef\r\n */\r\n @Input('cTabContent') tabContentRef!: any;\r\n\r\n /**\r\n * Set active state of tab content\r\n * @type boolean\r\n */\r\n @Input()\r\n set active(value: boolean) {\r\n const newValue = coerceBooleanProperty(value);\r\n if (this._active !== newValue) {\r\n this._active = newValue;\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n }\r\n get active() {\r\n return this._active;\r\n }\r\n private _active = false;\r\n\r\n /**\r\n * Set disabled state of tab content\r\n * @type boolean\r\n */\r\n @Input()\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n get disabled(): boolean {\r\n return this._disabled || this.tabPaneIdx >= this.tabContentRef?.panes?.length;\r\n }\r\n private _disabled = false;\r\n\r\n /**\r\n * c-tab-pane index respectively\r\n * @type number\r\n */\r\n @Input() tabPaneIdx = -1;\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n active: this.active,\r\n disabled: this.disabled\r\n };\r\n }\r\n\r\n @HostBinding('attr.aria-disabled')\r\n get isDisabled(): boolean | null {\r\n return this.disabled || null;\r\n }\r\n\r\n @HostBinding('attr.disabled')\r\n get attrDisabled() {\r\n return this.disabled ? '' : null;\r\n };\r\n\r\n @HostBinding('attr.tabindex')\r\n get getTabindex(): string | null {\r\n return this.disabled ? '-1' : null;\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['active']?.currentValue) {\r\n this.setActiveTabPane();\r\n }\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n toggleOpen($event: any): void {\r\n $event.preventDefault();\r\n this.setActiveTabPane();\r\n }\r\n\r\n setActiveTabPane() {\r\n setTimeout(() => {\r\n if (this.tabPaneIdx < this.tabContentRef.panes.length) {\r\n this.active = true;\r\n this.tabService.setActiveTabIdx({ tabContent: this.tabContentRef, activeIdx: this.tabPaneIdx });\r\n } else {\r\n this.active = false;\r\n }\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.subscribeTabService();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscribeTabService(false);\r\n }\r\n\r\n subscribeTabService(subscribe: boolean = true) {\r\n if (subscribe) {\r\n this.tabServiceSubscription = this.tabService.activeTabPaneIdx$.subscribe((tabContentState) => {\r\n if (tabContentState.tabContent === this.tabContentRef) {\r\n this.active = (tabContentState.activeIdx === this.tabPaneIdx);\r\n }\r\n });\r\n } else {\r\n this.tabServiceSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TabContentComponent } from './tab-content/tab-content.component';\r\nimport { TabPaneComponent } from './tab-pane/tab-pane.component';\r\nimport { TabService } from './tab.service';\r\nimport { TabContentRefDirective } from './tab-content-ref.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n TabContentComponent,\r\n TabPaneComponent,\r\n TabContentRefDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n TabContentComponent,\r\n TabPaneComponent,\r\n TabContentRefDirective\r\n ],\r\n providers: [\r\n TabService\r\n ]\r\n})\r\nexport class TabsModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nimport { TToasterPlacement } from './toaster.component';\r\nimport { ToastComponent } from '../toast/toast.component';\r\n\r\nexport interface IToasterAction {\r\n placement?: TToasterPlacement;\r\n toast?: ToastComponent;\r\n show?: boolean;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ToasterService {\r\n\r\n private toasterState = new BehaviorSubject<IToasterAction>({});\r\n toasterState$ = this.toasterState.asObservable();\r\n\r\n constructor() {}\r\n\r\n setState(state: IToasterAction): void {\r\n this.toasterState.next({ ...state });\r\n }\r\n}\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n Renderer2,\r\n} from '@angular/core';\r\n\r\nimport { animate, AnimationEvent, state, style, transition, trigger } from '@angular/animations';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { ToasterService } from '../toaster/toaster.service';\r\nimport { TToasterPlacement } from '../toaster/toaster.component';\r\nimport { Colors } from '../../coreui.types';\r\n\r\ntype AnimateType = ('hide' | 'show');\r\n\r\n@Component({\r\n selector: 'c-toast',\r\n templateUrl: './toast.component.html',\r\n styleUrls: ['./toast.component.scss'],\r\n exportAs: 'cToast',\r\n animations: [\r\n trigger('fadeInOut', [\r\n state('show', style({opacity: 1, height: '*', padding: '*', border: '*', margin: '*', overflow: 'hidden'})),\r\n state('hide', style({opacity: 0, height: 0, padding: 0, border: 0, margin: 0, overflow: 'hidden'})),\r\n state('void', style({opacity: 0, height: 0, padding: 0, border: 0, margin: 0, overflow: 'hidden'})),\r\n transition('show => hide', [\r\n animate('{{ time }} {{ easing }}'),\r\n ], {\r\n params: {time: '300ms', easing: 'ease-out'}\r\n }),\r\n transition('hide => show', [animate('{{ time }} {{ easing }}')], {\r\n params: {time: '300ms', easing: 'ease-in'},\r\n }),\r\n transition('show => void', [animate('{{ time }} {{ easing }}')], {\r\n params: {time: '300ms', easing: 'ease-out'},\r\n }),\r\n transition('void => show', [animate('{{ time }} {{ easing }}')], {\r\n params: {time: '300ms', easing: 'ease-in'},\r\n }),\r\n ]),\r\n ],\r\n})\r\nexport class ToastComponent implements OnInit, OnDestroy {\r\n\r\n static ngAcceptInputType_visible: BooleanInput;\r\n\r\n public dynamic!: boolean;\r\n public placement!: TToasterPlacement;\r\n public hide!: boolean;\r\n\r\n /**\r\n * Auto hide the toast.\r\n * @type boolean\r\n */\r\n @Input() autohide = true;\r\n\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors = '';\r\n\r\n /**\r\n * Delay hiding the toast (ms).\r\n * @type number\r\n */\r\n @Input() delay = 5000;\r\n\r\n /**\r\n * Apply fade transition to the toast.\r\n * @type boolean\r\n */\r\n @Input() fade = true;\r\n\r\n /**\r\n * Toggle the visibility of component.\r\n * @type boolean\r\n */\r\n @Input()\r\n set visible(value: boolean) {\r\n const newValue = coerceBooleanProperty(value);\r\n if (this._visible !== newValue) {\r\n this._visible = newValue;\r\n newValue ? this.setTimer() : this.clearTimer();\r\n this.visibleChange.emit(newValue);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible = false;\r\n\r\n /**\r\n * @ignore\r\n */\r\n @Input() index?: number;\r\n\r\n /**\r\n * Event emitted on visibility change. [docs]\r\n * @type boolean\r\n */\r\n @Output() visibleChange = new EventEmitter<boolean>();\r\n\r\n /**\r\n * Event emitted on timer tick. [docs]\r\n * @type number\r\n */\r\n @Output() timer: EventEmitter<number> = new EventEmitter();\r\n\r\n private timerId: any;\r\n private clockId: any;\r\n private clockTimerId: any;\r\n\r\n constructor(\r\n public hostElement: ElementRef,\r\n public renderer: Renderer2,\r\n public toasterService: ToasterService,\r\n public changeDetectorRef: ChangeDetectorRef\r\n ) {}\r\n\r\n private _clock!: number;\r\n\r\n get clock(): number {\r\n return this._clock;\r\n }\r\n\r\n set clock(value) {\r\n this._clock = value;\r\n this.timer.emit(this._clock);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n @HostBinding('@.disabled')\r\n get animationDisabled(): boolean {\r\n return !this.fade;\r\n }\r\n\r\n @HostBinding('@fadeInOut')\r\n get animateType(): AnimateType {\r\n return this.visible ? 'show' : 'hide';\r\n }\r\n\r\n @HostListener('@fadeInOut.start', ['$event'])\r\n onAnimationStart($event: AnimationEvent): void {\r\n this.onAnimationEvent($event);\r\n }\r\n\r\n @HostListener('@fadeInOut.done', ['$event'])\r\n onAnimationDone($event: AnimationEvent): void {\r\n this.onAnimationEvent($event);\r\n }\r\n\r\n @HostListener('mouseover') onMouseOver(): void {\r\n this.clearTimer();\r\n }\r\n\r\n @HostListener('mouseout') onMouseOut(): void {\r\n this.setTimer();\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n toast: true,\r\n fade: this.fade,\r\n show: !this.hide,\r\n [`bg-${this.color}`]: !!this.color,\r\n 'border-0': !!this.color\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.visible) {\r\n this.toasterService.setState({\r\n toast: this,\r\n show: this.visible,\r\n placement: this.placement,\r\n });\r\n this.clearTimer();\r\n this.setTimer();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.clearTimer();\r\n }\r\n\r\n setTimer(): void {\r\n this.clearTimer();\r\n if (this.autohide && this.visible) {\r\n this.timerId = this.delay > 0 ? setTimeout(() => this.onClose(), this.delay) : null;\r\n this.setClock();\r\n }\r\n }\r\n\r\n clearTimer(): void {\r\n this.clearClock();\r\n clearTimeout(this.timerId);\r\n this.timerId = null;\r\n }\r\n\r\n onClose(): void {\r\n this.clearTimer();\r\n this.toasterService.setState({\r\n toast: this,\r\n show: false,\r\n placement: this.placement,\r\n });\r\n }\r\n\r\n setClock(): void {\r\n this.clearClock();\r\n this.clock = 0;\r\n this.clockId = setInterval(() => {\r\n this.clock += 1;\r\n this.changeDetectorRef.markForCheck();\r\n }, 1000);\r\n this.clockTimerId = setTimeout(() => {\r\n this.clearClock();\r\n }, this.delay);\r\n }\r\n\r\n clearClock(): void {\r\n clearTimeout(this.clockTimerId);\r\n clearInterval(this.clockId);\r\n this.clockId = null;\r\n }\r\n\r\n onAnimationEvent(event: AnimationEvent): void {\r\n this.hide = event.phaseName === 'start' && event.toState === 'show';\r\n if (event.phaseName === 'done') {\r\n this.hide = (event.toState === 'hide' || event.toState === 'void');\r\n if (event.toState === 'show') {\r\n this.hide = false;\r\n }\r\n }\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { Component, HostBinding, Optional } from '@angular/core';\r\nimport { ToastComponent } from '../toast/toast.component';\r\n\r\n@Component({\r\n selector: 'c-toast-body',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./toast-body.component.scss'],\r\n exportAs: 'cToastBody'\r\n})\r\nexport class ToastBodyComponent {\r\n\r\n @HostBinding('class.toast-body') toastBodyClass = true;\r\n\r\n constructor(\r\n @Optional() public toast?: ToastComponent\r\n ) { }\r\n\r\n}\r\n","import { Directive, HostListener, Input } from '@angular/core';\r\nimport { ToasterService } from './toaster/toaster.service';\r\n\r\n@Directive({\r\n selector: '[cToastClose]',\r\n exportAs: 'cToastClose'\r\n})\r\nexport class ToastCloseDirective {\r\n\r\n @Input('cToastClose') toast: any;\r\n\r\n constructor(private toasterService: ToasterService) { }\r\n\r\n @HostListener('click', ['$event'])\r\n toggleOpen($event: any): void {\r\n $event.preventDefault();\r\n this.toasterService.setState({ show: false, toast: this.toast });\r\n }\r\n\r\n}\r\n","import { Component, HostBinding, Input, Optional } from '@angular/core';\r\nimport { ToastComponent } from '../toast/toast.component';\r\n\r\n@Component({\r\n selector: 'c-toast-header',\r\n templateUrl: './toast-header.component.html',\r\n styleUrls: ['./toast-header.component.scss'],\r\n exportAs: 'cToastHeader'\r\n})\r\nexport class ToastHeaderComponent {\r\n\r\n /**\r\n * Add close button to a toast header\r\n * @type boolean\r\n */\r\n @Input() closeButton = true;\r\n\r\n @HostBinding('class.toast-header') toastHeaderClass = true;\r\n\r\n constructor(\r\n @Optional() public toast?: ToastComponent\r\n ) { }\r\n\r\n}\r\n","<ng-container>\r\n <ng-content></ng-content>\r\n <button *ngIf=\"closeButton\" [cToastClose]=\"toast\" [style]=\"{outline: 0}\" aria-label=\"close\" cButtonClose class=\"ms-auto\"></button>\r\n</ng-container>\r\n","import { Directive, ViewContainerRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cToasterHost]',\r\n exportAs: 'cToasterHost'\r\n})\r\nexport class ToasterHostDirective {\r\n\r\n constructor(\r\n public viewContainerRef: ViewContainerRef\r\n ) { }\r\n}\r\n","import {\r\n AfterContentChecked,\r\n Component,\r\n ComponentFactoryResolver,\r\n ComponentRef,\r\n ContentChildren,\r\n ElementRef,\r\n HostBinding,\r\n Injector,\r\n Input,\r\n NgModuleRef,\r\n OnDestroy,\r\n OnInit,\r\n QueryList,\r\n Renderer2,\r\n VERSION,\r\n ViewChild,\r\n ViewContainerRef\r\n} from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { IToasterAction, ToasterService } from './toaster.service';\r\nimport { ToasterHostDirective } from './toaster-host.directive';\r\nimport { ToastComponent } from '../toast/toast.component';\r\n\r\nexport enum ToasterPlacement {\r\n Static = 'static',\r\n TopStart = 'top-start',\r\n TopCenter = 'top-center',\r\n TopEnd = 'top-end',\r\n MiddleStart = 'middle-start',\r\n MiddleCenter = 'middle-center',\r\n MiddleEnd = 'middle-end',\r\n BottomStart = 'bottom-start',\r\n BottomCenter = 'bottom-center',\r\n BottomEnd = 'bottom-end',\r\n}\r\n\r\nexport type TToasterPlacement =\r\n | ToasterPlacement.Static\r\n | ToasterPlacement.TopStart\r\n | ToasterPlacement.TopCenter\r\n | ToasterPlacement.TopEnd\r\n | ToasterPlacement.MiddleStart\r\n | ToasterPlacement.MiddleCenter\r\n | ToasterPlacement.MiddleEnd\r\n | ToasterPlacement.BottomStart\r\n | ToasterPlacement.BottomCenter\r\n | ToasterPlacement.BottomEnd\r\n | string;\r\n\r\n@Component({\r\n selector: 'c-toaster',\r\n templateUrl: './toaster.component.html',\r\n exportAs: 'cToaster'\r\n})\r\nexport class ToasterComponent implements OnDestroy, OnInit, AfterContentChecked {\r\n\r\n stateToasterSubscription!: Subscription;\r\n placements = Object.values(ToasterPlacement);\r\n toasts!: QueryList<ViewContainerRef>;\r\n toastsDynamic: any[] = [];\r\n\r\n /**\r\n * Toaster placement\r\n * @type TToasterPlacement\r\n */\r\n @Input() placement: TToasterPlacement = ToasterPlacement.TopEnd;\r\n\r\n /**\r\n * Toaster position\r\n * @type (string | 'absolute' | 'fixed' | 'static')\r\n */\r\n @Input() position: (string | 'absolute' | 'fixed' | 'static') = 'absolute';\r\n\r\n @ViewChild(ToasterHostDirective, {static: true}) toasterHost!: ToasterHostDirective;\r\n @ContentChildren(ToastComponent, {read: ViewContainerRef}) contentToasts!: QueryList<ViewContainerRef>;\r\n\r\n constructor(\r\n private componentFactoryResolver: ComponentFactoryResolver,\r\n private hostElement: ElementRef,\r\n private renderer: Renderer2,\r\n private toasterService: ToasterService\r\n ) { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n toaster: true,\r\n 'toast-container': true,\r\n [`position-${this.position}`]: !!this.position,\r\n 'top-0': this.placement.includes('top'),\r\n 'top-50': this.placement.includes('middle'),\r\n 'bottom-0': this.placement.includes('bottom'),\r\n 'start-0': this.placement.includes('start'),\r\n 'start-50': this.placement.includes('center'),\r\n 'end-0': this.placement.includes('end'),\r\n 'translate-middle-x': this.placement.includes('center') && !this.placement.includes('middle'),\r\n 'translate-middle-y': this.placement.includes('middle') && !this.placement.includes('center'),\r\n 'translate-middle': this.placement.includes('middle') && this.placement.includes('center'),\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.stateToasterSubscribe(true);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.stateToasterSubscribe(false);\r\n }\r\n\r\n ngAfterContentChecked(): void {\r\n this.toasts = this.contentToasts;\r\n }\r\n\r\n addToast(toast: any, props: any, options?: { index?: number; injector?: Injector; ngModuleRef?: NgModuleRef<unknown>; projectableNodes?: Node[][]; }): ComponentRef<any> {\r\n let componentRef: ComponentRef<any>;\r\n if (parseInt(VERSION.major) < 13) {\r\n const factory = this.componentFactoryResolver.resolveComponentFactory(toast);\r\n componentRef = this.toasterHost.viewContainerRef.createComponent(factory, options?.index, options?.injector, options?.projectableNodes, options?.ngModuleRef);\r\n } else {\r\n // @ts-ignore\r\n componentRef = this.toasterHost.viewContainerRef.createComponent(toast, options);\r\n }\r\n this.toastsDynamic.push(componentRef);\r\n const index = this.toastsDynamic.indexOf(componentRef);\r\n for (const [key, value] of Object.entries(props)) {\r\n componentRef.instance[key] = value;\r\n }\r\n componentRef.instance['placement'] = this.placement;\r\n componentRef.instance['dynamic'] = true;\r\n componentRef.instance['index'] = index;\r\n componentRef.instance['visible'] = true;\r\n componentRef.instance['visibleChange'].emit(true);\r\n componentRef.changeDetectorRef?.detectChanges();\r\n return componentRef;\r\n }\r\n\r\n removeToast(state: IToasterAction): void {\r\n this.toastsDynamic?.forEach(item => {\r\n if (state.toast?.dynamic && (item.instance === state.toast)) {\r\n item.instance.visible = false;\r\n item.instance['visibleChange'].emit(false);\r\n setTimeout(() => {\r\n item.destroy();\r\n }, 300);\r\n }\r\n });\r\n\r\n this.toasts?.forEach(item => {\r\n if (item.element.nativeElement === state.toast?.hostElement.nativeElement) {\r\n if (!state.toast?.dynamic) {\r\n // @ts-ignore\r\n state.toast.visible = false;\r\n }\r\n }\r\n });\r\n }\r\n\r\n private stateToasterSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.stateToasterSubscription = this.toasterService.toasterState$.subscribe((state) => {\r\n if (state.show === false) {\r\n this.removeToast(state);\r\n }\r\n if (state.show === true && state.toast?.dynamic === undefined) {\r\n }\r\n });\r\n } else {\r\n this.stateToasterSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","<ng-template cToasterHost></ng-template>\r\n<ng-content cToasterHost></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ButtonModule } from '../button';\r\nimport { ToastComponent } from './toast/toast.component';\r\nimport { ToastHeaderComponent } from './toast-header/toast-header.component';\r\nimport { ToastBodyComponent } from './toast-body/toast-body.component';\r\nimport { ToasterComponent } from './toaster/toaster.component';\r\nimport { ToasterService } from './toaster/toaster.service';\r\nimport { ToasterHostDirective } from './toaster/toaster-host.directive';\r\nimport { ToastCloseDirective } from './toast-close.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n ToastComponent,\r\n ToastHeaderComponent,\r\n ToastBodyComponent,\r\n ToasterComponent,\r\n ToasterHostDirective,\r\n ToastCloseDirective\r\n ],\r\n imports: [CommonModule, ButtonModule],\r\n providers: [ToasterService],\r\n exports: [\r\n ToastComponent,\r\n ToastHeaderComponent,\r\n ToastBodyComponent,\r\n ToasterComponent,\r\n ToasterHostDirective,\r\n ToastCloseDirective\r\n ]\r\n})\r\nexport class ToastModule {\r\n}\r\n","import {\r\n AfterViewInit,\r\n Component,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n Renderer2,\r\n SimpleChanges,\r\n TemplateRef,\r\n ViewChild,\r\n ViewContainerRef\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-tooltip',\r\n templateUrl: './tooltip.component.html',\r\n})\r\nexport class TooltipComponent implements AfterViewInit, OnChanges, OnDestroy {\r\n\r\n /**\r\n * Content of tooltip\r\n * @type {string | TemplateRef}\r\n */\r\n @Input() content: string | TemplateRef<any> = '';\r\n /**\r\n * Toggle the visibility of popover component.\r\n * @type boolean\r\n */\r\n @Input() visible = false;\r\n @Input() @HostBinding('attr.id') id?: string;\r\n @Input() @HostBinding('attr.role') role = 'tooltip';\r\n\r\n @ViewChild('tooltipTemplate', {read: ViewContainerRef}) viewContainerRef!: ViewContainerRef;\r\n private textNode!: Text;\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n ) { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): { [klass: string]: any; } {\r\n return {\r\n tooltip: true,\r\n fade: true,\r\n show: this.visible,\r\n 'bs-tooltip-auto': true\r\n };\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n setTimeout(() => {\r\n this.updateView(this.content);\r\n });\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['content']) {\r\n setTimeout(() => {\r\n this.updateView(this.content);\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.clear();\r\n }\r\n\r\n private clear(): void {\r\n this.viewContainerRef?.clear();\r\n if (!!this.textNode) {\r\n this.renderer.removeChild(this.textNode.parentNode, this.textNode);\r\n }\r\n }\r\n\r\n private updateView(content: string | TemplateRef<any>): void {\r\n this.clear();\r\n\r\n if (!content) {\r\n return;\r\n }\r\n\r\n if (content instanceof TemplateRef) {\r\n this.viewContainerRef.createEmbeddedView(content);\r\n } else {\r\n this.textNode = this.renderer.createText(content);\r\n\r\n const element = this.viewContainerRef.element.nativeElement;\r\n this.renderer.appendChild(element.parentNode, this.textNode);\r\n }\r\n }\r\n}\r\n","<div class=\"tooltip-arrow\" data-popper-arrow></div>\r\n<div class=\"tooltip-inner\">\r\n <ng-container #tooltipTemplate></ng-container>\r\n</div>\r\n","import {\r\n ComponentFactoryResolver,\r\n ComponentRef,\r\n Directive,\r\n ElementRef,\r\n HostBinding,\r\n Inject,\r\n Input, OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Renderer2,\r\n SimpleChanges,\r\n TemplateRef,\r\n ViewContainerRef\r\n} from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { createPopper, Instance, Options } from '@popperjs/core';\r\n\r\nimport { Triggers } from '../coreui.types';\r\nimport { TooltipComponent } from './tooltip/tooltip.component';\r\nimport { IListenersConfig, ListenersService } from '../services/listeners.service';\r\n\r\n@Directive({\r\n selector: '[cTooltip]',\r\n exportAs: 'cTooltip',\r\n providers: [ListenersService]\r\n})\r\nexport class TooltipDirective implements OnChanges, OnDestroy, OnInit {\r\n\r\n /**\r\n * Content of tooltip\r\n * @type {string | TemplateRef}\r\n */\r\n @Input('cTooltip') content: string | TemplateRef<any> = '';\r\n\r\n /**\r\n * Optional popper Options object, takes precedence over cPopoverPlacement prop\r\n * @type Partial<Options>\r\n */\r\n @Input('cTooltipOptions')\r\n set popperOptions(value: Partial<Options>) {\r\n this._popperOptions = {...this._popperOptions, placement: this.placement, ...value};\r\n };\r\n get popperOptions(): Partial<Options> {\r\n return {placement: this.placement, ...this._popperOptions};\r\n }\r\n\r\n /**\r\n * Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property.\r\n */\r\n @Input('cTooltipPlacement') placement: 'top' | 'bottom' | 'left' | 'right' = 'top';\r\n /**\r\n * Sets which event handlers you’d like provided to your toggle prop. You can specify one trigger or an array of them.\r\n * @type {'hover' | 'focus' | 'click'}\r\n */\r\n @Input('cTooltipTrigger') trigger: Triggers | Triggers[] = 'hover';\r\n\r\n /**\r\n * Toggle the visibility of tooltip component.\r\n */\r\n @Input('cTooltipVisible')\r\n set visible(value: boolean) {\r\n this._visible = value;\r\n value ? this.addTooltipElement() : this.removeTooltipElement();\r\n this.tooltipRef?.changeDetectorRef.markForCheck();\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible = false;\r\n\r\n @HostBinding('attr.aria-describedby') get ariaDescribedBy(): string | null {\r\n return this.tooltipId ? this.tooltipId : null;\r\n }\r\n\r\n private tooltip!: HTMLDivElement;\r\n private tooltipId!: string;\r\n private tooltipRef!: ComponentRef<TooltipComponent>;\r\n private popperInstance!: Instance;\r\n\r\n private _popperOptions: Partial<Options> = {\r\n modifiers: [\r\n {\r\n name: 'offset',\r\n options: {\r\n offset: [0, 0],\r\n },\r\n },\r\n ],\r\n };\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef,\r\n private componentFactoryResolver: ComponentFactoryResolver,\r\n private viewContainerRef: ViewContainerRef,\r\n private listenersService: ListenersService\r\n ) {}\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['visible']) {\r\n changes['visible'].currentValue ? this.addTooltipElement() : this.removeTooltipElement();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.clearListeners();\r\n this.destroyTooltipElement();\r\n }\r\n\r\n ngOnInit(): void {\r\n // this.createTooltipElement();\r\n this.setListeners();\r\n }\r\n\r\n private setListeners(): void {\r\n const config: IListenersConfig = {\r\n hostElement: this.hostElement,\r\n trigger: this.trigger,\r\n callbackToggle: () => {\r\n this.visible = !this.visible;\r\n },\r\n callbackOff: () => {\r\n this.visible = false;\r\n },\r\n callbackOn: () => {\r\n this.visible = true;\r\n }\r\n }\r\n this.listenersService.setListeners(config)\r\n }\r\n\r\n private clearListeners(): void {\r\n this.listenersService.clearListeners();\r\n }\r\n\r\n private getUID(prefix: string): string {\r\n let uid = prefix ?? 'random-id';\r\n do {\r\n uid = `${prefix}-${Math.floor(Math.random() * 1000000).toString(10)}`;\r\n } while (this.document.getElementById(uid));\r\n\r\n return uid;\r\n }\r\n\r\n private createTooltipElement(): void {\r\n if (!this.tooltipRef) {\r\n const tooltipComponent = this.componentFactoryResolver.resolveComponentFactory(TooltipComponent);\r\n this.tooltipRef = this.viewContainerRef.createComponent(tooltipComponent);\r\n }\r\n }\r\n\r\n private destroyTooltipElement(): void {\r\n this.tooltip?.remove();\r\n this.tooltipRef?.destroy();\r\n // @ts-ignore\r\n this.tooltipRef = undefined;\r\n this.popperInstance?.destroy();\r\n this.viewContainerRef.detach();\r\n this.viewContainerRef.clear();\r\n }\r\n\r\n private addTooltipElement(): void {\r\n if (!this.tooltipRef) {\r\n this.createTooltipElement();\r\n }\r\n this.tooltipRef.instance.content = this.content;\r\n this.tooltip = this.tooltipRef.location.nativeElement;\r\n\r\n setTimeout(() => {\r\n this.popperInstance = createPopper(\r\n this.hostElement.nativeElement,\r\n this.tooltip,\r\n { ...this.popperOptions }\r\n );\r\n setTimeout(() => {\r\n this.tooltipId = this.getUID('tooltip');\r\n this.tooltipRef.instance.id = this.tooltipId;\r\n this.tooltipRef.instance.visible = this.visible;\r\n this.renderer.appendChild(this.document.body, this.tooltip);\r\n this.popperInstance.forceUpdate();\r\n this.tooltipRef.changeDetectorRef.markForCheck();\r\n // this.tooltipRef.changeDetectorRef.detectChanges();\r\n }, 100);\r\n })\r\n }\r\n\r\n private removeTooltipElement(): void {\r\n if (!this.tooltipRef) {\r\n return\r\n }\r\n this.tooltipRef.instance.visible = this.visible;\r\n setTimeout(() => {\r\n // this.tooltipRef.changeDetectorRef.detectChanges();\r\n this.tooltipRef.instance.id = undefined;\r\n this.renderer.removeChild(this.document.body, this.tooltip);\r\n this.popperInstance?.destroy();\r\n this.tooltipId = '';\r\n }, 300);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TooltipComponent } from './tooltip/tooltip.component';\r\nimport { TooltipDirective } from './tooltip.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n TooltipComponent,\r\n TooltipDirective,\r\n ],\r\n exports: [\r\n TooltipComponent,\r\n TooltipDirective,\r\n ],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class TooltipModule { }\r\n","import { AfterContentInit, Component, ContentChildren, HostBinding, Input, QueryList } from '@angular/core';\r\n\r\nimport { Colors } from '../../coreui.types';\r\nimport { TemplateIdDirective } from '../../shared';\r\n\r\n@Component({\r\n selector: 'c-widget-stat-a',\r\n templateUrl: './widget-stat-a.component.html',\r\n styleUrls: ['./widget-stat-a.component.scss'],\r\n exportAs: 'cWidgetStatA'\r\n})\r\nexport class WidgetStatAComponent implements AfterContentInit {\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Title of the widget to display\r\n * @type string\r\n */\r\n @Input() title?: string;\r\n /**\r\n * Value for your widget to display\r\n * @type string\r\n */\r\n @Input() value?: string;\r\n\r\n templates: any = {};\r\n\r\n @ContentChildren(TemplateIdDirective, {descendants: true}) contentTemplates!: QueryList<TemplateIdDirective>;\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n 'card': true,\r\n [`bg-${this.color}`]: !!this.color,\r\n 'text-high-emphasis-inverse': !!this.color\r\n }\r\n }\r\n\r\n get bodyClasses() {\r\n return {\r\n 'pb-0': true,\r\n 'd-flex': true,\r\n 'justify-content-between': true,\r\n 'align-items-start': true,\r\n }\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.contentTemplates.forEach((child: TemplateIdDirective) => {\r\n this.templates[child.id] = child.templateRef;\r\n });\r\n }\r\n}\r\n","<ng-container>\r\n <c-card-body [ngClass]=\"bodyClasses\">\r\n <div>\r\n <div *ngIf=\"!!value || templates?.widgetValueTemplate\" class=\"fs-4 fw-semibold\">\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetValueTemplate || defaultWidgetValueTemplate\"></ng-container>\r\n </div>\r\n <div *ngIf=\"!!title || templates?.widgetTitleTemplate\">\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetTitleTemplate || defaultWidgetTitleTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetActionTemplate || defaultWidgetActionTemplate\"></ng-container>\r\n </c-card-body>\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetChartTemplate || defaultWidgetChartTemplate\"></ng-container>\r\n</ng-container>\r\n\r\n<ng-template #defaultWidgetTitleTemplate>\r\n {{title}}\r\n</ng-template>\r\n\r\n<ng-template #defaultWidgetValueTemplate>\r\n {{value}}\r\n</ng-template>\r\n\r\n<ng-template #defaultWidgetChartTemplate>\r\n <ng-content select=\".chart-wrapper\"></ng-content>\r\n</ng-template>\r\n\r\n<ng-template #defaultWidgetActionTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { Colors } from '../../coreui.types';\r\nimport { CardComponent } from '../../card';\r\n\r\n@Component({\r\n selector: 'c-widget-stat-b',\r\n templateUrl: './widget-stat-b.component.html',\r\n styleUrls: ['./widget-stat-b.component.scss'],\r\n exportAs: 'cWidgetStatB'\r\n})\r\nexport class WidgetStatBComponent extends CardComponent {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n static ngAcceptInputType_inverse: BooleanInput;\r\n\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() override color?: Colors;\r\n /**\r\n * Sets the text-color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() override textColor?: Colors | 'white' | 'muted';\r\n /**\r\n * Title of the widget to display\r\n * @type string\r\n */\r\n @Input() title?: string;\r\n /**\r\n * Helper text for your widget.\r\n * @type string\r\n */\r\n @Input() text?: string;\r\n /**\r\n * Value for your widget to display\r\n * @type string\r\n */\r\n @Input() value?: string;\r\n /**\r\n * Invert colors from their default dark shade.\r\n * @type boolean\r\n */\r\n @Input()\r\n get inverse(): boolean {\r\n return this._inverse;\r\n }\r\n set inverse(value: boolean) {\r\n this._inverse = coerceBooleanProperty(value);\r\n }\r\n private _inverse = false;\r\n\r\n @HostBinding('class')\r\n override get hostClasses() {\r\n return {\r\n 'card': true,\r\n [`bg-${this.color}`]: !!this.color,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n 'text-high-emphasis-inverse': !!this.color\r\n }\r\n }\r\n\r\n}\r\n","<c-card-body>\r\n <div *ngIf=\"!!value\" class=\"fs-4 fw-semibold\">{{value}}</div>\r\n <div *ngIf=\"!!title\">{{title}}</div>\r\n <ng-content></ng-content>\r\n <small *ngIf=\"text\" [ngClass]=\"inverse ? 'text-medium-emphasis-inverse' : 'text-medium-emphasis'\">\r\n {{text}}\r\n </small>\r\n</c-card-body>\r\n","import { AfterContentInit, Component, ContentChildren, HostBinding, Input, QueryList } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { CardComponent } from '../../card';\r\nimport { TemplateIdDirective } from '../../shared';\r\n\r\n@Component({\r\n selector: 'c-widget-stat-c',\r\n templateUrl: './widget-stat-c.component.html',\r\n styleUrls: ['./widget-stat-c.component.scss'],\r\n exportAs: 'cWidgetStatC'\r\n})\r\nexport class WidgetStatCComponent extends CardComponent implements AfterContentInit {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n static ngAcceptInputType_inverse: BooleanInput;\r\n\r\n /**\r\n * Icon for your component.\r\n * @type string\r\n */\r\n @Input() icon?: string;\r\n /**\r\n * Title of the widget to display\r\n * @type string\r\n */\r\n @Input() title?: string;\r\n /**\r\n * Value for your widget to display\r\n * @type string\r\n */\r\n @Input() value?: string | number;\r\n /**\r\n * Invert colors from their default dark shade.\r\n * @type boolean\r\n */\r\n @Input()\r\n get inverse(): boolean {\r\n return this._inverse;\r\n }\r\n set inverse(value: boolean) {\r\n this._inverse = coerceBooleanProperty(value);\r\n }\r\n private _inverse = false;\r\n\r\n templates: any = {};\r\n @ContentChildren(TemplateIdDirective, {descendants: true}) contentTemplates!: QueryList<TemplateIdDirective>;\r\n\r\n @HostBinding('class')\r\n get hostExtendedClass() {\r\n return {\r\n 'high-emphasis-inverse': this.inverse\r\n }\r\n }\r\n\r\n get iconClasses() {\r\n return {\r\n 'mb-4': !this.textColor,\r\n 'text-end': true,\r\n 'text-medium-emphasis': !this.inverse,\r\n 'text-medium-emphasis-inverse': this.inverse,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n }\r\n }\r\n\r\n get titleClasses() {\r\n return {\r\n 'text-medium-emphasis': !this.inverse,\r\n 'text-medium-emphasis-inverse': this.inverse,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n }\r\n }\r\n\r\n get valueClasses() {\r\n return {\r\n 'fs-4': !this.textColor,\r\n 'fw-semibold': true,\r\n 'text-high-emphasis': !this.inverse,\r\n 'text-high-emphasis-inverse': this.inverse,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n }\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.contentTemplates.forEach((child: TemplateIdDirective) => {\r\n this.templates[child.id] = child.templateRef;\r\n });\r\n }\r\n}\r\n","<c-card-body>\r\n <div *ngIf=\"icon || templates?.widgetIconTemplate\" [ngClass]=\"iconClasses\">\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetIconTemplate || defaultWidgetIconTemplate\"></ng-container>\r\n </div>\r\n <div *ngIf=\"!!value\" [ngClass]=\"valueClasses\">\r\n {{value}}\r\n </div>\r\n <div *ngIf=\"!!title\" [ngClass]=\"titleClasses\">\r\n {{title}}\r\n </div>\r\n <ng-container *ngIf=\"templates?.widgetProgressTemplate\">\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetProgressTemplate || defaultWidgetProgressTemplate\"></ng-container>\r\n </ng-container>\r\n</c-card-body>\r\n\r\n<ng-template #defaultWidgetIconTemplate>\r\n {{icon}}\r\n</ng-template>\r\n\r\n<ng-template #defaultWidgetProgressTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\r\nimport { Colors } from '../../coreui.types';\r\n\r\nexport type WidgetStatDValue = {\r\n title?: string,\r\n value?: number | string,\r\n}\r\n\r\n@Component({\r\n selector: 'c-widget-stat-d',\r\n templateUrl: './widget-stat-d.component.html',\r\n styleUrls: ['./widget-stat-d.component.scss'],\r\n exportAs: 'cWidgetStatD'\r\n})\r\nexport class WidgetStatDComponent {\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Values and subtitles for your component.\r\n * @type WidgetStatDValue\r\n */\r\n @Input() values?: WidgetStatDValue[];\r\n\r\n constructor() {\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n 'card': true\r\n }\r\n }\r\n\r\n get headerClasses() {\r\n return {\r\n 'position-relative': true,\r\n 'd-flex': true,\r\n 'justify-content-center': true,\r\n 'align-items-center': true,\r\n [`bg-${this.color}`]: this.color,\r\n }\r\n }\r\n\r\n}\r\n","<c-card-header [ngClass]=\"headerClasses\">\r\n <ng-content></ng-content>\r\n</c-card-header>\r\n<c-card-body cRow class=\"text-center\">\r\n <ng-template [ngForOf]=\"values\" let-i=\"index\" let-item ngFor>\r\n <div *ngIf=\"i % 2 !== 0\" class=\"vr\"></div>\r\n <c-col>\r\n <div class=\"fs-5 fw-semibold\">{{item.value}}</div>\r\n <div class=\"text-uppercase text-medium-emphasis small\">{{item.title}}</div>\r\n </c-col>\r\n </ng-template>\r\n</c-card-body>\r\n","import { Component, Input } from '@angular/core';\r\nimport { CardComponent } from '../../card';\r\n\r\n@Component({\r\n selector: 'c-widget-stat-e',\r\n templateUrl: './widget-stat-e.component.html',\r\n styleUrls: ['./widget-stat-e.component.scss'],\r\n exportAs: 'cWidgetStatE'\r\n})\r\nexport class WidgetStatEComponent extends CardComponent {\r\n\r\n constructor() {\r\n super();\r\n }\r\n /**\r\n * Title of the widget to display\r\n * @type string\r\n */\r\n @Input() title?: string;\r\n /**\r\n * Value for your widget to display\r\n * @type string | number\r\n */\r\n @Input() value?: string | number;\r\n\r\n get titleClasses() {\r\n return {\r\n 'text-medium-emphasis': !this.textColor,\r\n 'small': true,\r\n 'text-uppercase': true,\r\n 'fw-semibold': true,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n }\r\n }\r\n\r\n}\r\n","<c-card-body class=\"text-center\">\r\n <div *ngIf=\"!!title\" [ngClass]=\"titleClasses\">{{title}}</div>\r\n <div *ngIf=\"!!value\" class=\"fs-6 fw-semibold py-3\">{{value}}</div>\r\n <ng-content></ng-content>\r\n</c-card-body>\r\n","import { AfterContentInit, Component, ContentChildren, HostBinding, Input, QueryList } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { TemplateIdDirective } from '../../shared';\r\nimport { Colors } from '../../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-widget-stat-f',\r\n templateUrl: './widget-stat-f.component.html',\r\n styleUrls: ['./widget-stat-f.component.scss'],\r\n exportAs: 'cWidgetStatB'\r\n})\r\nexport class WidgetStatFComponent implements AfterContentInit {\r\n\r\n static ngAcceptInputType_padding: BooleanInput;\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Sets the text-color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() textColor?: Colors | 'white' | 'muted';\r\n /**\r\n * Footer for your widget\r\n * @type string\r\n */\r\n @Input() footer?: string;\r\n /**\r\n * Icon for your widget\r\n * @type string\r\n */\r\n @Input() icon?: string;\r\n /**\r\n * Title of the widget to display\r\n * @type string\r\n */\r\n /**\r\n * Set padding of your component.\r\n * @type boolean\r\n */\r\n @Input()\r\n get padding(): boolean {\r\n return this._padding;\r\n }\r\n set padding(value: boolean) {\r\n this._padding = coerceBooleanProperty(value);\r\n }\r\n private _padding = false;\r\n\r\n @Input() title?: string;\r\n /**\r\n * Value for your widget to display\r\n * @type string\r\n */\r\n @Input() value?: string | number;\r\n\r\n templates: any = {};\r\n @ContentChildren(TemplateIdDirective, {descendants: true}) contentTemplates!: QueryList<TemplateIdDirective>;\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n card: true\r\n }\r\n }\r\n\r\n get cardBodyClasses() {\r\n return {\r\n 'd-flex': true,\r\n 'align-items-center': true,\r\n 'p-0': !this.padding,\r\n }\r\n }\r\n\r\n get iconClasses() {\r\n return {\r\n 'me-3': !this.textColor,\r\n 'text-white': true,\r\n [`bg-${this.color}`]: !!this.color,\r\n 'p-3': this.padding,\r\n 'p-4': !this.padding,\r\n }\r\n }\r\n\r\n get titleClasses() {\r\n return {\r\n 'text-medium-emphasis': !this.textColor,\r\n 'small': true,\r\n 'text-uppercase': true,\r\n 'fw-semibold': true,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n }\r\n }\r\n\r\n get valueClasses() {\r\n return {\r\n 'fs-6': !this.textColor,\r\n 'fw-semibold': true,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n }\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.contentTemplates.forEach((child: TemplateIdDirective) => {\r\n this.templates[child.id] = child.templateRef;\r\n });\r\n }\r\n}\r\n","<ng-container>\r\n <c-card-body [ngClass]=\"cardBodyClasses\">\r\n <div [ngClass]=\"iconClasses\">\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetIconTemplate || defaultWidgetIconTemplate\"></ng-container>\r\n </div>\r\n <div>\r\n <div [ngClass]=\"valueClasses\">{{value}}</div>\r\n <div [ngClass]=\"titleClasses\">{{title}}</div>\r\n </div>\r\n </c-card-body>\r\n <c-card-footer *ngIf=\"footer || templates?.widgetFooterTemplate\">\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetFooterTemplate || defaultFooterIconTemplate\"></ng-container>\r\n </c-card-footer>\r\n</ng-container>\r\n\r\n<ng-template #defaultWidgetIconTemplate>\r\n <span>{{icon}}</span>\r\n</ng-template>\r\n\r\n<ng-template #defaultFooterIconTemplate>\r\n <span>{{footer}}</span>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { CardModule } from '../card';\r\nimport { GridModule } from '../grid';\r\n\r\nimport { WidgetStatAComponent } from './widget-stat-a/widget-stat-a.component';\r\nimport { WidgetStatBComponent } from './widget-stat-b/widget-stat-b.component';\r\nimport { WidgetStatCComponent } from './widget-stat-c/widget-stat-c.component';\r\nimport { WidgetStatDComponent } from './widget-stat-d/widget-stat-d.component';\r\nimport { WidgetStatEComponent } from './widget-stat-e/widget-stat-e.component';\r\nimport { WidgetStatFComponent } from './widget-stat-f/widget-stat-f.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n WidgetStatAComponent,\r\n WidgetStatBComponent,\r\n WidgetStatCComponent,\r\n WidgetStatDComponent,\r\n WidgetStatEComponent,\r\n WidgetStatFComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n CardModule,\r\n GridModule,\r\n ],\r\n exports: [\r\n WidgetStatAComponent,\r\n WidgetStatBComponent,\r\n WidgetStatCComponent,\r\n WidgetStatDComponent,\r\n WidgetStatEComponent,\r\n WidgetStatFComponent\r\n ]\r\n})\r\nexport class WidgetModule {\r\n}\r\n","/*\r\n * Public API Surface of coreui-angular\r\n */\r\n\r\nexport * from './lib/coreui.types';\r\nexport * from './lib/shared';\r\nexport * from './lib/accordion';\r\nexport * from './lib/alert';\r\nexport * from './lib/avatar';\r\nexport * from './lib/badge';\r\nexport * from './lib/breadcrumb';\r\nexport * from './lib/button';\r\nexport * from './lib/button-group';\r\nexport * from './lib/callout';\r\nexport * from './lib/card';\r\nexport * from './lib/carousel';\r\nexport * from './lib/collapse';\r\nexport * from './lib/dropdown';\r\nexport * from './lib/element-cover';\r\nexport * from './lib/footer';\r\nexport * from './lib/form';\r\nexport * from './lib/grid';\r\nexport * from './lib/header';\r\nexport * from './lib/image';\r\nexport * from './lib/list-group';\r\nexport * from './lib/loading-button';\r\nexport * from './lib/multi-select';\r\nexport * from './lib/nav';\r\nexport * from './lib/navbar';\r\nexport * from './lib/modal';\r\nexport * from './lib/offcanvas';\r\nexport * from './lib/pagination';\r\nexport * from './lib/placeholder';\r\nexport * from './lib/popover';\r\nexport * from './lib/progress';\r\nexport * from './lib/services';\r\nexport * from './lib/sidebar';\r\nexport * from './lib/smart-pagination';\r\nexport * from './lib/smart-table';\r\nexport * from './lib/spinner';\r\nexport * from './lib/table';\r\nexport * from './lib/tabs';\r\nexport * from './lib/toast';\r\nexport * from './lib/tooltip';\r\nexport * from './lib/utilities';\r\nexport * from './lib/widget';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.AccordionService","nextId","i3.CollapseDirective","i4.AccordionButtonDirective","i1","i2.ButtonCloseDirective","i2","i3.HtmlAttributesDirective","i1.BreadcrumbRouterService","i2.BreadcrumbComponent","i3.BreadcrumbItemComponent","i4","i1.CarouselService","i2.CarouselState","i3.IntersectionService","i4.ListenersService","i1.CarouselState","i3","i1.DropdownService","i2.DropdownComponent","i1.SpinnerComponent","i2.MultiSelectService","i1.MultiSelectOptgroupLabelComponent","i1.MultiSelectService","i3.ButtonCloseDirective","i3.MultiSelectTagComponent","i5","i6.ButtonCloseDirective","i1.ModalService","i2.BackdropService","i3.ModalDialogComponent","i4.ModalContentComponent","i1.OffcanvasService","i1.ListenersService","i1.SidebarService","i2.SidebarService","i3.SidebarBackdropService","i1.SidebarNavHelper","i4.SidebarNavBadgePipe","i4.HtmlAttributesDirective","i6.SidebarNavLinkPipe","i7.SidebarNavBadgePipe","i8.SidebarNavIconPipe","i1.SidebarComponent","i2.SidebarNavHelper","i4.SidebarService","i5.SidebarNavDividerComponent","i6.SidebarNavTitleComponent","i7.SidebarNavLabelComponent","i8.SidebarNavLinkComponent","i9","i10.HtmlAttributesDirective","i11.SidebarNavItemClassPipe","i12","i13.SidebarNavBadgePipe","i14.SidebarNavIconPipe","i2.PageItemDirective","i3.PageLinkDirective","i1.FormLabelDirective","i2.FormControlDirective","i2.FormCheckInputDirective","i4.TableColorDirective","i5.FormControlDirective","i2.FormSelectDirective","i1.SmartTableFilterComponent","i2.SmartTableHeadComponent","i3.ElementCoverComponent","i4.SmartPaginationComponent","i5.SmartTableItemsPerPageSelectorComponent","i6","i7.ButtonDirective","i8.TableDirective","i9.HtmlAttributesDirective","i10.TableColorDirective","i11.AlignDirective","i12.TableActiveDirective","i13.FormCheckInputDirective","i1.TabService","i1.ToasterService","i1.ToastComponent","i4.ToastCloseDirective","i2.ToasterHostDirective","i1.CardBodyComponent","i1.CardHeaderComponent","i2.CardBodyComponent","i3.ColComponent","i5.RowDirective","i2.CardFooterComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;IAAY,gBAOX;AAPD,CAAA,UAAY,eAAe,EAAA;AACzB,IAAA,eAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;AACT,IAAA,eAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;AACT,IAAA,eAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;AACT,IAAA,eAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;AACT,IAAA,eAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;AACT,IAAA,eAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;AACb,CAAC,EAPW,eAAe,KAAf,eAAe,GAO1B,EAAA,CAAA,CAAA;;MCDY,uBAAuB,CAAA;IAKlC,WACU,CAAA,QAAmB,EACnB,EAAc,EAAA;QADd,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAE,CAAA,EAAA,GAAF,EAAE,CAAY;KACpB;IAEJ,QAAQ,GAAA;AACN,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;AAC/B,QAAA,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE;AAC1B,YAAA,IAAI,IAAI,KAAK,OAAO,IAAI,QAAO,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,QAAQ,EAAG;gBAC3D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AAC9B,aAAA;iBAAM,IAAI,IAAI,KAAK,OAAO,EAAE;gBAC3B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AAC9B,aAAA;AAAM,iBAAA;gBACL,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AACrC,aAAA;AACF,SAAA;KACF;AAEO,IAAA,QAAQ,CAAC,MAA6B,EAAA;AAC5C,QAAA,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;AAC1B,YAAA,IAAI,KAAK,EAAE;AACT,gBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AACrE,aAAA;AACF,SAAA;KACF;AAEO,IAAA,QAAQ,CAAC,OAAe,EAAA;QAC9B,MAAM,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3E,QAAA,UAAU,CAAC,MAAM,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,IAAG;AACnE,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,OAAO,CAAE,CAAC;AAC1D,SAAC,CAAC,CAAC;KACJ;IAEO,SAAS,CAAC,GAAW,EAAE,KAAoB,EAAA;QACjD,KAAK,KAAK,IAAI;AACZ,YAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE,KAAK,CAAE;AAC9D,YAAA,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;KAC7D;;oHA1CU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;wGAAvB,uBAAuB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAJnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;AACvB,oBAAA,QAAQ,EAAE,WAAW;AACtB,iBAAA,CAAA;yHAIU,SAAS,EAAA,CAAA;sBAAjB,KAAK;;;MCJK,mBAAmB,CAAA;AAG9B,IAAA,WAAA,CACS,WAA6B,EAAA;QAA7B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAkB;KACjC;;gHALM,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;oGAAnB,mBAAmB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,CAAA,aAAA,EAAA,IAAA,CAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAH/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;AAC1B,iBAAA,CAAA;kGAEuB,EAAE,EAAA,CAAA;sBAAvB,KAAK;uBAAC,aAAa,CAAA;;;MCkBT,YAAY,CAAA;AAEvB,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,YAAY;;;;SAIvB,CAAC;KACH;;yGATU,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;0GAAZ,YAAY,EAAA,YAAA,EAAA;;QAVrB,uBAAuB;AACvB,QAAA,mBAAmB,aALnB,YAAY,CAAA,EAAA,OAAA,EAAA;;QASZ,uBAAuB;QACvB,mBAAmB,CAAA,EAAA,CAAA,CAAA;0GAIV,YAAY,EAAA,SAAA,EAFZ,EAAE,EAbJ,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAaU,YAAY,EAAA,UAAA,EAAA,CAAA;kBAhBxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,YAAY,EAAE;;wBAEZ,uBAAuB;wBACvB,mBAAmB;AACpB,qBAAA;AACD,oBAAA,OAAO,EAAE;;wBAEP,uBAAuB;wBACvB,mBAAmB;AACpB,qBAAA;AACD,oBAAA,SAAS,EAAE,EAAE;AACd,iBAAA,CAAA;;;MClBY,wBAAwB,CAAA;AAHrC,IAAA,WAAA,GAAA;AAWE;;;;AAIG;QAEM,IAAI,CAAA,IAAA,GAAG,QAAQ,CAAC;AAa1B,KAAA;AAXC,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,kBAAkB,EAAE,IAAI;YACxB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;KACH;AAED,IAAA,IAAuC,YAAY,GAAA;AACjD,QAAA,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;KACxB;;qHA1BU,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;yGAAxB,wBAAwB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,WAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;AAC/B,iBAAA,CAAA;8BAOU,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAQG,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAQmB,YAAY,EAAA,CAAA;sBAAlD,WAAW;uBAAC,oBAAoB,CAAA;;;MCzBtB,gBAAgB,CAAA;AAK3B,IAAA,WAAA,GAAA;QAHA,IAAK,CAAA,KAAA,GAA6B,EAAE,CAAC;QACrC,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;KAEF;AAEjB,IAAA,OAAO,CAAC,IAA4B,EAAA;AAClC,QAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACvB;AAED,IAAA,UAAU,CAAC,IAA4B,EAAA;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACvC,QAAA,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAC7B,SAAA;KACF;AAED,IAAA,UAAU,CAAC,IAA4B,EAAA;AACrC,QAAA,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;AAC7B,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;KAC5B;AAED,IAAA,eAAe,CAAC,QAAgC,EAAA;AAC9C,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAA4B,KAAI;gBAClD,IAAI,IAAI,KAAK,QAAQ,EAAE;AACrB,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;AACtB,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;;6GA/BU,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;iHAAhB,gBAAgB,EAAA,CAAA,CAAA;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAD5B,UAAU;;;MCSE,kBAAkB,CAAA;AA6B7B,IAAA,WAAA,CACU,gBAAkC,EAAA;QAAlC,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;KACxC;AAtBJ;;;AAGG;IACH,IACI,UAAU,CAAC,KAAc,EAAA;QAC3B,IAAI,CAAC,gBAAgB,CAAC,UAAU,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KACjE;AACD,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC;KACzC;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;SAChC,CAAC;KACH;;+GA3BU,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,EAFlB,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,SAAA,EAAA,CAAC,gBAAgB,CAAC,wDAHnB,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,CAAA;2FAK1B,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAP9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAa,YACb,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAE3B,gBAAgB,EACf,SAAA,EAAA,CAAC,gBAAgB,CAAC,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;oGAUpB,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAMF,UAAU,EAAA,CAAA;sBADb,KAAK;gBASF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;AC/Bf,MAAM,eAAe,GAAG,SAAS,CAAC;IACvC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;IAC/F,OAAO,CAAC,yBAAyB,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CACpI;AACD,IAAA,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAC,CAAC,CAAC;AAC5D,CAAA,CAAC,CAAC;AAEI,MAAM,iBAAiB,GAAG,SAAS,CAAC;IACzC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;AACtH,IAAA,OAAO,CACL,yBAAyB,EACzB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAC1H;AACF,CAAA,CAAC,CAAC;AAEI,MAAM,yBAAyB,GAAG,SAAS,CAAC;AACjD,IAAA,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;IAC1E,OAAO,CAAC,yBAAyB,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAClI;IACD,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,GAAG,EAAC,CAAC,CAAC;AAC7C,CAAA,CAAC,CAAC;AAEI,MAAM,2BAA2B,GAAG,SAAS,CAAC;IACnD,KAAK,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;AAChG,IAAA,OAAO,CACL,yBAAyB,EACzB,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CACpG;AACF,CAAA,CAAC;;ACLF;AACA;MAKa,iBAAiB,CAAA;AAyE5B,IAAA,WAAA,CACU,WAAuB,EACvB,QAAmB,EACnB,gBAAkC,EAAA;QAFlC,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QACvB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;QA7DpC,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;QAYhB,IAAW,CAAA,WAAA,GAAY,KAAK,CAAC;QAY7B,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QAYjB,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;AAExB;;AAEG;QACM,IAAQ,CAAA,QAAA,GAAG,OAAO,CAAC;AAC5B;;AAEG;QACM,IAAU,CAAA,UAAA,GAAG,MAAM,CAAC;AAC7B;;;AAGG;AACO,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,YAAY,EAAU,CAAC;QAM9C,IAAU,CAAA,UAAA,GAAY,KAAK,CAAC;QAOlC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;AAC3C,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;KACtD;AA3ED;;AAEG;IACH,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;KACvB;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAGD;;AAEG;IACH,IACI,UAAU,CAAC,KAAc,EAAA;AAC3B,QAAA,IAAI,CAAC,WAAW,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KACjD;AACD,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAGD;;AAEG;IACH,IACI,OAAO,CAAC,KAAK,EAAA;AACf,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;KACvB;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAGD;;AAEG;IACH,IACI,MAAM,CAAC,KAAc,EAAA;AACvB,QAAA,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC7C;;AACD,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAgCD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;YACL,iBAAiB,EAAE,IAAI,CAAC,MAAM;YAC9B,IAAI,EAAE,IAAI,CAAC,OAAO;YAClB,qBAAqB,EAAE,IAAI,CAAC,UAAU;YACtC,UAAU,EAAE,IAAI,CAAC,UAAU;;SAE5B,CAAC;KACH;IAED,eAAe,GAAA;QACb,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,MAAM,EAAE,CAAC;AACf,SAAA;KACF;IAED,WAAW,GAAA;QACT,IAAI,CAAC,aAAa,EAAE,CAAC;KACtB;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE;AACtB,YAAA,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,YAAY,EAAE;gBACvE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;AAC9C,aAAA;AACF,SAAA;KACF;IAED,SAAS,GAAA;AACP,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,OAAO,EAAE;YAClC,IAAI,CAAC,MAAM,EAAE,CAAC;AACf,SAAA;KACF;AAED,IAAA,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,EAAA;AAC3B,QAAA,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;AAC3B,QAAA,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;KACrB;IAED,aAAa,GAAA;AACX,QAAA,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;KACxB;AAED,IAAA,YAAY,CAAC,OAAA,GAAmB,IAAI,CAAC,OAAO,EAAA;AAC1C,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE;YAC7B,IAAI,CAAC,aAAa,EAAE,CAAC;AACtB,SAAA;AAED,QAAA,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AACjD,SAAA;AAED,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;AAEtD,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,GAAG,yBAAyB,GAAG,eAAe,CAAC;AAC7E,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,GAAG,2BAA2B,GAAG,iBAAiB,CAAC;AAEnF,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAClD,YAAY,CAAC,OAAO,GAAG,MAAM,GAAG,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC,CACnG,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjD,QAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAK;YACvB,IAAI,CAAC,UAAU,EAAE,CAAC;AAClB,YAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;AACvB,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;AACvB,YAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,GAAG,SAAS,GAAG,YAAY,CAAC,CAAC;AAC/D,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAK;AACtB,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AACxB,YAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,GAAG,MAAM,GAAG,WAAW,CAAC,CAAC;AAC3D,SAAC,CAAC,CAAC;KACJ;IAED,UAAU,GAAA;QACR,UAAU,CAAC,MAAK;YACd,IAAI,IAAI,CAAC,UAAU,EAAE;gBACnB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;gBACzC,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,CAAA,EAAG,IAAI,CAAC,WAAW,CAAI,EAAA,CAAA,CAAC,CAAC;;;;AAIhG,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;;8GAvKU,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAjB,iBAAiB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,UAAA,EAAA,YAAA,EAAA,OAAA,EAAA,SAAA,EAAA,MAAA,EAAA,QAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,OAAA,EAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;AACvB,oBAAA,QAAQ,EAAE,WAAW;AACtB,iBAAA,CAAA;wJAUK,OAAO,EAAA,CAAA;sBADV,KAAK;gBAaF,UAAU,EAAA,CAAA;sBADb,KAAK;gBAaF,OAAO,EAAA,CAAA;sBADV,KAAK;gBAaF,MAAM,EAAA,CAAA;sBADT,KAAK;gBAYG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAIG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAKI,cAAc,EAAA,CAAA;sBAAvB,MAAM;gBAkBH,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;ACnGtB,IAAIC,QAAM,GAAG,CAAC,CAAC;MAQF,sBAAsB,CAAA;AAuCjC,IAAA,WAAA,CACU,gBAAkC,EAAA;QAAlC,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;QAxBpC,IAAQ,CAAA,QAAA,GAAY,KAAK,CAAC;AAiBlC,QAAA,IAAA,CAAA,SAAS,GAAG,CAAA,eAAA,EAAkBA,QAAM,EAAE,EAAE,CAAC;QACzC,IAAW,CAAA,WAAA,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QAC1C,IAAS,CAAA,SAAA,GAAQ,EAAE,CAAC;KAMf;AArCL;;;;AAIG;IACH,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC9C;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;IAGD,IACI,IAAI,CAAC,KAAc,EAAA;AACrB,QAAA,OAAO,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAA;QACxF,IAAI,CAAC,OAAO,GAAG,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC;KACtC;AACD,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,gBAAgB,EAAE,IAAI;SACvB,CAAC;KACH;IAWD,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KACrC;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;KACxC;IAED,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;KACxC;IAED,kBAAkB,GAAA;QAChB,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAA0B,KAAI;YAC3D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC;AAC/C,SAAC,CAAC,CAAC;KACJ;;mHA3DU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAD,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;uGAAtB,sBAAsB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,SAAA,EAqChB,mBAAmB,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC3DtC,g3CAgCA,EAAA,MAAA,EAAA,CAAA,wCAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAE,iBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,YAAA,EAAA,SAAA,EAAA,QAAA,EAAA,UAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,wBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDVa,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBANlC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,YAGlB,gBAAgB,EAAA,QAAA,EAAA,g3CAAA,EAAA,MAAA,EAAA,CAAA,wCAAA,CAAA,EAAA,CAAA;oGAYtB,OAAO,EAAA,CAAA;sBADV,KAAK;gBAUF,IAAI,EAAA,CAAA;sBADP,KAAK;gBAUF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAUuC,gBAAgB,EAAA,CAAA;sBAA1E,eAAe;AAAC,gBAAA,IAAA,EAAA,CAAA,mBAAmB,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC,CAAA;;;MEhD9C,cAAc,CAAA;AACzB,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;KACpD;;2GAHU,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,EANV,YAAA,EAAA,CAAA,iBAAiB,CAG9B,EAAA,OAAA,EAAA,CAAA,YAAY,aAFJ,iBAAiB,CAAA,EAAA,CAAA,CAAA;AAKhB,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,EAJhB,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAEU,cAAc,EAAA,UAAA,EAAA,CAAA;kBAP1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,iBAAiB,CAAC;oBACjC,OAAO,EAAE,CAAC,iBAAiB,CAAC;AAC5B,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;MCmBY,eAAe,CAAA;;4GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,iBAlBxB,kBAAkB;QAClB,wBAAwB;AACxB,QAAA,sBAAsB,aAGtB,YAAY;QACZ,cAAc;AACd,QAAA,YAAY,aAGZ,kBAAkB;QAClB,wBAAwB;QACxB,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAMb,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EAJf,SAAA,EAAA;QACT,gBAAgB;KACjB,EAZQ,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,cAAc;YACd,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAUU,eAAe,EAAA,UAAA,EAAA,CAAA;kBApB3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,kBAAkB;wBAClB,wBAAwB;wBACxB,sBAAsB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,cAAc;wBACd,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,kBAAkB;wBAClB,wBAAwB;wBACxB,sBAAsB;AACvB,qBAAA;AACD,oBAAA,SAAS,EAAE;wBACT,gBAAgB;AACjB,qBAAA;AACF,iBAAA,CAAA;;;MCvBY,qBAAqB,CAAA;AAUhC,IAAA,WAAA,GAAA,GAAiB;AARjB,IAAA,IACI,WAAW,GAAA;QAEb,OAAO;AACL,YAAA,eAAe,EAAE,IAAI;SACtB,CAAC;KACH;;kHARU,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;sGAArB,qBAAqB,EAAA,QAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAHjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC5B,iBAAA,CAAA;0EAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCFT,kBAAkB,CAAA;AAU7B,IAAA,WAAA,GAAA,GAAiB;AARjB,IAAA,IACI,WAAW,GAAA;QAEb,OAAO;AACL,YAAA,YAAY,EAAE,IAAI;SACnB,CAAC;KACH;;+GARU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAlB,kBAAkB,EAAA,QAAA,EAAA,cAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,cAAc;AACzB,iBAAA,CAAA;0EAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCET,eAAe,CAAA;AAE1B,IAAA,WAAA,GAAA;QAGQ,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;QAEhB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;AAc1B;;;AAGG;QACM,IAAK,CAAA,KAAA,GAAY,SAAS,CAAC;AAiBpC;;;AAGG;QACM,IAAI,CAAA,IAAA,GAAsB,EAAE,CAAC;AACtC;;;AAGG;QAEM,IAAI,CAAA,IAAA,GAAe,QAAQ,CAAC;KAlDrB;AAOhB;;;AAGG;AACH,IAAA,IACI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IACD,IAAI,MAAM,CAAC,KAAc,EAAA;AACvB,QAAA,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC7C;AAOD;;;AAGG;AACH,IAAA,IACI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IACD,IAAI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC/C;AAuBD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,GAAG,EAAE,IAAI;AACT,YAAA,CAAC,OAAO,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO;AACpD,YAAA,CAAC,OAAO,IAAI,CAAC,OAAO,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK;YACtD,CAAC,CAAA,IAAA,EAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAE,CAAA,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK;YACrE,CAAC,CAAA,IAAA,EAAO,IAAI,CAAC,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI;YACjC,CAAC,CAAA,EAAG,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;YAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;KACH;AAED,IAAA,IACI,YAAY,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;KAC9B;;AAED,IAAA,IACI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC;KAC5B;AAED,IAAA,IACI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC;KAClC;;AAED,IAAA,IACI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC;KACpC;;4GA3FU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;gGAAf,eAAe,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,WAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,eAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,eAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,WAAW;AACrB,oBAAA,QAAQ,EAAE,SAAS;AACpB,iBAAA,CAAA;0EAeK,MAAM,EAAA,CAAA;sBADT,KAAK;gBAYG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAMF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAWG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAMG,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAKG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAehB,YAAY,EAAA,CAAA;sBADf,WAAW;uBAAC,oBAAoB,CAAA;gBAM7B,QAAQ,EAAA,CAAA;sBADX,WAAW;uBAAC,mBAAmB,CAAA;gBAM5B,YAAY,EAAA,CAAA;sBADf,WAAW;uBAAC,eAAe,CAAA;gBAMxB,QAAQ,EAAA,CAAA;sBADX,WAAW;uBAAC,eAAe,CAAA;;;AC1FxB,MAAO,oBAAqB,SAAQ,eAAe,CAAA;AAHzD,IAAA,WAAA,GAAA;;QAMU,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC;AAuBxB,KAAA;AAtBC;;;AAGG;AACH,IAAA,IACI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IACD,IAAI,KAAK,CAAC,KAAc,EAAA;AACtB,QAAA,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC5C;AAED,IAAA,IACa,WAAW,GAAA;QACtB,OAAO;AACL,YAAA,WAAW,EAAE,IAAI;YACjB,iBAAiB,EAAE,IAAI,CAAC,KAAK;YAC7B,CAAC,CAAA,IAAA,EAAO,IAAI,CAAC,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI;YACjC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;KACH;;iHAzBU,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAApB,oBAAoB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC3B,iBAAA,CAAA;8BAUK,KAAK,EAAA,CAAA;sBADR,KAAK;gBASO,WAAW,EAAA,CAAA;sBADvB,WAAW;uBAAC,OAAO,CAAA;;;MCqBT,cAAc,CAAA;AAzB3B,IAAA,WAAA,GAAA;AAgCE;;;;;AAKG;QACM,IAAK,CAAA,KAAA,GAAW,SAAS,CAAC;QAa3B,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;QAarB,IAAK,CAAA,KAAA,GAAG,KAAK,CAAC;AAEtB;;;;AAIG;QAEM,IAAI,CAAA,IAAA,GAAG,OAAO,CAAC;QAsBhB,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;AAExB;;AAEG;AACO,QAAA,IAAA,CAAA,aAAa,GAA0B,IAAI,YAAY,EAAE,CAAC;QAEpE,IAAS,CAAA,SAAA,GAAQ,EAAE,CAAC;AAmDrB,KAAA;AAhHC;;;AAGG;AACH,IAAA,IACI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IACD,IAAI,WAAW,CAAC,KAAc,EAAA;AAC5B,QAAA,IAAI,CAAC,YAAY,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAClD;AAGD;;;AAGG;AACH,IAAA,IACI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;IACD,IAAI,IAAI,CAAC,KAAc,EAAA;AACrB,QAAA,IAAI,CAAC,KAAK,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC3C;AAiBD;;;AAGG;IACH,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE;AAC3B,YAAA,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC7C,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChC,SAAA;KACF;;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAWD,IAAA,IACI,iBAAiB,GAAA;AACnB,QAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;KACnB;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;KACvC;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,KAAK,EAAE,IAAI;YACX,mBAAmB,EAAE,IAAI,CAAC,WAAW;YACrC,IAAI,EAAE,IAAI,CAAC,IAAI;AACf,YAAA,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI;AAChB,YAAA,CAAC,SAAS,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO;AACjE,YAAA,CAAC,MAAM,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO;YAC9D,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO;SACvD,CAAC;KACH;AAGD,IAAA,gBAAgB,CAAC,MAAsB,EAAA;AACrC,QAAA,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;KAC/B;AAGD,IAAA,eAAe,CAAC,MAAsB,EAAA;AACpC,QAAA,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;KAC/B;IAED,kBAAkB,GAAA;QAChB,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAA0B,KAAI;YAC3D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC;AAC/C,SAAC,CAAC,CAAC;KACJ;AAED,IAAA,gBAAgB,CAAC,KAAqB,EAAA;AACpC,QAAA,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,SAAS,KAAK,OAAO,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC;AACpE,QAAA,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM,EAAE;AAC9B,YAAA,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC;AACnE,YAAA,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE;AAC5B,gBAAA,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;AACnB,aAAA;AACF,SAAA;KACF;;2GA9HU,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,EA6ER,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,WAAA,EAAA,aAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,kBAAA,EAAA,0BAAA,EAAA,iBAAA,EAAA,yBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,WAAA,EAAA,YAAA,EAAA,wBAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,SAAA,EAAA,mBAAmB,ECzHtC,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,ocAWA,EDac,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,oBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA;QACV,OAAO,CAAC,WAAW,EAAE;AACnB,YAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;AAC3G,YAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;AACnG,YAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;YACnG,UAAU,CAAC,cAAc,EAAE;gBACzB,OAAO,CAAC,cAAc,CAAC;aACxB,CAAC;YACF,UAAU,CAAC,cAAc,EAAE;gBACzB,OAAO,CAAC,aAAa,CAAC;aACvB,CAAC;YACF,UAAU,CAAC,cAAc,EAAE;gBACzB,OAAO,CAAC,cAAc,CAAC;aACxB,CAAC;YACF,UAAU,CAAC,cAAc,EAAE;gBACzB,OAAO,CAAC,aAAa,CAAC;aACvB,CAAC;SACH,CAAC;AACH,KAAA,EAAA,CAAA,CAAA;2FAEU,cAAc,EAAA,UAAA,EAAA,CAAA;kBAzB1B,SAAS;+BACE,SAAS,EAAA,QAAA,EAGT,QAAQ,EACN,UAAA,EAAA;wBACV,OAAO,CAAC,WAAW,EAAE;AACnB,4BAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;AAC3G,4BAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;AACnG,4BAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;4BACnG,UAAU,CAAC,cAAc,EAAE;gCACzB,OAAO,CAAC,cAAc,CAAC;6BACxB,CAAC;4BACF,UAAU,CAAC,cAAc,EAAE;gCACzB,OAAO,CAAC,aAAa,CAAC;6BACvB,CAAC;4BACF,UAAU,CAAC,cAAc,EAAE;gCACzB,OAAO,CAAC,cAAc,CAAC;6BACxB,CAAC;4BACF,UAAU,CAAC,cAAc,EAAE;gCACzB,OAAO,CAAC,aAAa,CAAC;6BACvB,CAAC;yBACH,CAAC;AACH,qBAAA,EAAA,QAAA,EAAA,ocAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;8BAeQ,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAOF,WAAW,EAAA,CAAA;sBADd,KAAK;gBAcF,IAAI,EAAA,CAAA;sBADP,KAAK;gBAeG,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAMG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAOF,OAAO,EAAA,CAAA;sBADV,KAAK;gBAeI,aAAa,EAAA,CAAA;sBAAtB,MAAM;gBAGoD,gBAAgB,EAAA,CAAA;sBAA1E,eAAe;AAAC,gBAAA,IAAA,EAAA,CAAA,mBAAmB,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC,CAAA;gBAGrD,iBAAiB,EAAA,CAAA;sBADpB,WAAW;uBAAC,YAAY,CAAA;gBAMrB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,YAAY,CAAA;gBAMrB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAcpB,gBAAgB,EAAA,CAAA;sBADf,YAAY;uBAAC,kBAAkB,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAM5C,eAAe,EAAA,CAAA;sBADd,YAAY;uBAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MEpIhC,YAAY,CAAA;;yGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,iBAXrB,eAAe;QACf,oBAAoB,CAAA,EAAA,OAAA,EAAA,CAGpB,YAAY,CAAA,EAAA,OAAA,EAAA,CAGZ,eAAe;QACf,oBAAoB,CAAA,EAAA,CAAA,CAAA;AAGX,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EARd,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAMU,YAAY,EAAA,UAAA,EAAA,CAAA;kBAbxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,eAAe;wBACf,oBAAoB;AACrB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,eAAe;wBACf,oBAAoB;AACrB,qBAAA;AACF,iBAAA,CAAA;;;MCMY,WAAW,CAAA;;wGAAX,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAX,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,iBALpB,cAAc;QACd,qBAAqB;AACrB,QAAA,kBAAkB,aAXlB,YAAY;AACZ,QAAA,YAAY,aAGZ,cAAc;QACd,qBAAqB;QACrB,kBAAkB,CAAA,EAAA,CAAA,CAAA;AAQT,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,EAfb,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAYU,WAAW,EAAA,UAAA,EAAA,CAAA;kBAhBvB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,cAAc;wBACd,qBAAqB;wBACrB,kBAAkB;AACnB,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACZ,cAAc;wBACd,qBAAqB;wBACrB,kBAAkB;AACnB,qBAAA;AACF,iBAAA,CAAA;;;MCfY,eAAe,CAAA;AAiC1B,IAAA,WAAA,GAAA;AAtBA;;;AAGG;QACM,IAAI,CAAA,IAAA,GAAwB,IAAI,CAAC;KAkBzB;AAEjB,IAAA,IAAI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,eAAe,EAAE,IAAI;YACrB,CAAC,CAAA,GAAA,EAAM,IAAI,CAAC,MAAM,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM;SACrC,CAAC;KACH;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,MAAM,EAAE,IAAI;YACZ,CAAC,CAAA,OAAA,EAAU,IAAI,CAAC,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI;YACpC,CAAC,CAAA,GAAA,EAAM,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;YAClC,CAAC,CAAA,EAAG,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;YAC/B,CAAC,CAAA,KAAA,EAAQ,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;SAC7C,CAAC;KACH;;4GAnDU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,uNCR5B,2ZAWA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAD,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDHa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,SAAS;+BACE,UAAU,EAAA,QAAA,EAAA,2ZAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;0EASX,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAKG,GAAG,EAAA,CAAA;sBAAX,KAAK;gBAKG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAMG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAYF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MElCT,YAAY,CAAA;;yGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EATrB,YAAA,EAAA,CAAA,eAAe,CAGf,EAAA,OAAA,EAAA,CAAA,YAAY,aAGZ,eAAe,CAAA,EAAA,CAAA,CAAA;AAGN,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EAPd,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAKU,YAAY,EAAA,UAAA,EAAA,CAAA;kBAXxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,eAAe;AAChB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,eAAe;AAChB,qBAAA;AACF,iBAAA,CAAA;;;MCPY,cAAc,CAAA;AA0BzB,IAAA,WAAA,GAAA,GAAgB;AAEhB,IAAA,IACI,WAAW,GAAA;AACb,QAAA,MAAM,eAAe,GAAG;AACtB,YAAA,mBAAmB,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ;AACpC,YAAA,kBAAkB,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ;YACnC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC;YACvC,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC;YAC5C,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC;YAC3C,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC;SAC5C,CAAC;QAEF,OAAO,MAAM,CAAC,MAAM,CAAC;AACjB,YAAA,KAAK,EAAE,IAAI;YACX,CAAC,CAAA,GAAA,EAAM,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;YAClC,CAAC,CAAA,KAAA,EAAQ,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;YAC5C,CAAC,CAAA,MAAA,EAAS,IAAI,CAAC,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI;YACnC,CAAC,CAAA,EAAG,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;AAChC,SAAA,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,eAAe,GAAG,EAAE,CAC1C,CAAC;KACH;;2GA/CU,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,8MCR3B,+BACA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDOa,cAAc,EAAA,UAAA,EAAA,CAAA;kBAL1B,SAAS;+BACE,SAAS,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;0EASV,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAKG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAIG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAKG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAKF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MErBT,WAAW,CAAA;;wGAAX,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAX,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,EATpB,YAAA,EAAA,CAAA,cAAc,CAGd,EAAA,OAAA,EAAA,CAAA,YAAY,aAGZ,cAAc,CAAA,EAAA,CAAA,CAAA;AAGL,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,EAPb,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAKU,WAAW,EAAA,UAAA,EAAA,CAAA;kBAXvB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,cAAc;AACf,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,cAAc;AACf,qBAAA;AACF,iBAAA,CAAA;;;MCNY,uBAAuB,CAAA;AAuBlC,IAAA,IAAsC,WAAW,GAAA;QAC/C,OAAO,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;KACpC;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,iBAAiB,EAAE,IAAI;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;KACH;;oHAjCU,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,qPCRpC,28BAwBA,EAAA,MAAA,EAAA,CAAA,oFAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAE,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAH,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDhBa,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,SAAS;+BACE,mBAAmB,EAAA,QAAA,EAAA,28BAAA,EAAA,MAAA,EAAA,CAAA,oFAAA,CAAA,EAAA,CAAA;8BAUpB,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAKG,GAAG,EAAA,CAAA;sBAAX,KAAK;gBAKG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAKG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEgC,WAAW,EAAA,CAAA;sBAAhD,WAAW;uBAAC,mBAAmB,CAAA;gBAK5B,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;ME5BT,mBAAmB,CAAA;AAwB9B,IAAA,WAAA,GAAA;AAvBA;;;;AAIG;QAEM,IAAS,CAAA,SAAA,GAAG,YAAY,CAAC;AAElC;;;;AAIG;QAEM,IAAI,CAAA,IAAA,GAAG,YAAY,CAAC;KASZ;AAPjB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,UAAU,EAAE,IAAI;SACjB,CAAA;KACF;;gHAtBU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,4NCPhC,mCAEA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDKa,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,SAAS;+BACE,cAAc,EAAA,QAAA,EAAA,mCAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;0EAWf,SAAS,EAAA,CAAA;sBADjB,WAAW;uBAAC,iBAAiB,CAAA;;sBAC7B,KAAK;gBAQG,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MEfT,uBAAuB,CAAA;IAMlC,WAAoB,CAAA,MAAc,EAAU,KAAqB,EAAA;QAA7C,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QAAU,IAAK,CAAA,KAAA,GAAL,KAAK,CAAgB;QAL1D,IAAM,CAAA,MAAA,GAAG,SAAS,CAAC;QAMxB,IAAI,CAAC,0BAA0B,GAAG,IAAI,eAAe,CACnD,IAAI,KAAK,EAAmB,CAC7B,CAAC;QAEF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,0BAA0B,CAAC,YAAY,EAAE,CAAC;QAEnE,IAAI,CAAC,MAAM,CAAC,MAAM;AACf,aAAA,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,aAAa,CAAC,CAAC;AACvD,aAAA,SAAS,CAAC,CAAC,KAAK,KAAI;YACnB,MAAM,WAAW,GAAU,EAAE,CAAC;AAC9B,YAAA,IAAI,YAAY,GAA0B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YAC1D,IAAI,GAAG,GAAG,EAAE,CAAC;YACb,GAAG;AACD,gBAAA,MAAM,cAAc,GAAqB,YAAY,CAAC,QAAQ,CAAC;gBAC/D,YAAY,GAAG,IAAI,CAAC;AACpB,gBAAA,cAAc,CAAC,OAAO,CAAC,CAAC,UAAU,KAAI;;AAEpC,oBAAA,IAAI,UAAU,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE;AACrC,wBAAA,MAAM,aAAa,GAAG,UAAU,CAAC,QAAQ,CAAC;wBAC1C,GAAG;4BACD,GAAG;AACH,gCAAA,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBAC7D,WAAW,CAAC,IAAI,CAAC;4BACf,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;4BAC9C,GAAG;4BACH,WAAW,EAAE,aAAa,CAAC,WAAW;AACvC,yBAAA,CAAC,CAAC;wBACH,YAAY,GAAG,UAAU,CAAC;AAC3B,qBAAA;AACH,iBAAC,CAAC,CAAC;AACJ,aAAA,QAAQ,YAAY,EAAE;AAEvB,YAAA,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;;AAGrE,YAAA,OAAO,WAAW,CAAC;AACrB,SAAC,CAAC,CAAC;KACN;;oHA5CU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,cAFtB,MAAM,EAAA,CAAA,CAAA;2FAEP,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAHnC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCGY,yBAAyB,CAAA;AASpC,IAAA,WAAA,CACS,OAAgC,EAAA;QAAhC,IAAO,CAAA,OAAA,GAAP,OAAO,CAAyB;KACpC;IAEL,QAAQ,GAAA;QACN,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;KAC9C;AAEM,IAAA,WAAW,CAAC,OAAsB,EAAA;AACvC,QAAA,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;YACpB,IAAI,CAAC,KAAK,EAAE,CAAC;AACd,SAAA;KACF;IAED,KAAK,GAAA;QACH,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACvC,IAAI,CAAC,WAAW,GAAG,IAAI,UAAU,CAAoB,CAAC,QAAqC,KAAI;gBAC7F,IAAI,IAAI,CAAC,KAAK,EAAE;AACd,oBAAA,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC3B,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;KAC9B;;sHAnCU,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAI,uBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yBAAyB,iICXtC,4iBAcA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,mBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,KAAA,EAAA,YAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,OAAA,EAAAA,EAAA,CAAA,SAAA,EAAA,EAAA,CAAA,CAAA;2FDHa,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBALrC,SAAS;+BACE,0CAA0C,EAAA,QAAA,EAAA,4iBAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;2GAS3C,KAAK,EAAA,CAAA;sBAAb,KAAK;;;MESK,gBAAgB,CAAA;;6GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,iBANzB,yBAAyB;QACzB,uBAAuB;AACvB,QAAA,mBAAmB,aATX,YAAY,EAAE,YAAY,EAAE,YAAY,aAEhD,mBAAmB;QACnB,uBAAuB;QACvB,yBAAyB,CAAA,EAAA,CAAA,CAAA;8GAShB,gBAAgB,EAAA,SAAA,EAFhB,CAAC,uBAAuB,CAAC,EAAA,OAAA,EAAA,CAX3B,CAAC,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC,CAAA,EAAA,CAAA,CAAA;2FAaxC,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAd5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC;AACnD,oBAAA,OAAO,EAAE;wBACP,mBAAmB;wBACnB,uBAAuB;wBACvB,yBAAyB;AAC1B,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACZ,yBAAyB;wBACzB,uBAAuB;wBACvB,mBAAmB;AACpB,qBAAA;oBACD,SAAS,EAAE,CAAC,uBAAuB,CAAC;AACrC,iBAAA,CAAA;;;MClBY,oBAAoB,CAAA;AA8B/B,IAAA,WAAA,GAAA;AAlBA;;;;AAIG;QAEM,IAAI,CAAA,IAAA,GAAG,OAAO,CAAC;KAYP;AAVjB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,WAAW,EAAE,CAAC,IAAI,CAAC,QAAQ;YAC3B,oBAAoB,EAAE,IAAI,CAAC,QAAQ;YACnC,CAAC,CAAA,UAAA,EAAa,IAAI,CAAC,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI;SACxC,CAAC;KACH;;iHA3BU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,qMAFrB,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,QAAQ,EAAE,CAA2B,yBAAA,CAAA;AACtC,iBAAA,CAAA;0EAOU,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAKG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAOG,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCpBT,sBAAsB,CAAA;AAgBjC,IAAA,WAAA,GAAA;AAfA;;;;AAIG;QAEM,IAAI,CAAA,IAAA,GAAG,SAAS,CAAC;KAST;AAPjB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,aAAa,EAAE,IAAI;SACpB,CAAC;KACH;;mHAdU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,mKAFvB,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,QAAQ,EAAE,CAA2B,yBAAA,CAAA;AACtC,iBAAA,CAAA;0EAQU,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCGT,iBAAiB,CAAA;;8GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,iBAX1B,oBAAoB;QACpB,sBAAsB,CAAA,EAAA,OAAA,EAAA,CAGtB,YAAY,CAAA,EAAA,OAAA,EAAA,CAGZ,oBAAoB;QACpB,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAGb,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,EARnB,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAMU,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAb7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,oBAAoB;wBACpB,sBAAsB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,oBAAoB;wBACpB,sBAAsB;AACvB,qBAAA;AACF,iBAAA,CAAA;;;MCTY,gBAAgB,CAAA;AAiB3B,IAAA,WAAA,GAAA,GAAiB;AATjB,IAAA,IACI,WAAW,GAAA;QAEb,OAAO;AACL,YAAA,OAAO,EAAE,IAAI;YACb,CAAC,CAAA,QAAA,EAAW,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;SACxC,CAAC;KACH;;6GAfU,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,gJAHjB,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,CAAA;2FAG1B,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,YACvB,CAA2B,yBAAA,CAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;0EAS5B,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCJT,aAAa,CAAA;;0GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAb,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,EANT,YAAA,EAAA,CAAA,gBAAgB,CAG7B,EAAA,OAAA,EAAA,CAAA,YAAY,aAFJ,gBAAgB,CAAA,EAAA,CAAA,CAAA;AAKf,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,EAJf,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAEU,aAAa,EAAA,UAAA,EAAA,CAAA;kBAPzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,gBAAgB,CAAC;oBAChC,OAAO,EAAE,CAAC,gBAAgB,CAAC;AAC3B,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;MCJY,aAAa,CAAA;AAsBxB,IAAA,WAAA,GAAA,GAAiB;AATjB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,IAAI,EAAE,IAAI;YACV,CAAC,CAAA,GAAA,EAAM,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;YAClC,CAAC,CAAA,KAAA,EAAQ,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;SAC7C,CAAC;KACH;;0GApBU,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAb,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,mKAFd,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,aAAa,EAAA,UAAA,EAAA,CAAA;kBAJzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,QAAQ,EAAE,CAA2B,yBAAA,CAAA;AACtC,iBAAA,CAAA;0EAOU,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCdT,iBAAiB,CAAA;AAE5B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,WAAW,EAAE,IAAI;SAClB,CAAC;KACH;;8GAPU,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,yHAFlB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,4BAA4B;AACtC,oBAAA,QAAQ,EAAE,2BAA2B;AACtC,iBAAA,CAAA;8BAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCFT,mBAAmB,CAAA;AAE9B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,aAAa,EAAE,IAAI;SACpB,CAAC;KACH;;gHAPU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,6HAFpB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gCAAgC;AAC1C,oBAAA,QAAQ,EAAE,2BAA2B;AACtC,iBAAA,CAAA;8BAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCFT,kBAAkB,CAAA;AAE7B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,YAAY,EAAE,IAAI;SACnB,CAAC;KACH;;+GAPU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,2HAFnB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAJ9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,8BAA8B;AACxC,oBAAA,QAAQ,EAAE,2BAA2B;AACtC,iBAAA,CAAA;8BAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCFT,mBAAmB,CAAA;AAE9B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,aAAa,EAAE,IAAI;SACpB,CAAC;KACH;;gHAPU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,6HAFpB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gCAAgC;AAC1C,oBAAA,QAAQ,EAAE,2BAA2B;AACtC,iBAAA,CAAA;8BAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCFT,0BAA0B,CAAA;AAJvC,IAAA,WAAA,GAAA;QAM4C,IAAiB,CAAA,iBAAA,GAAG,IAAI,CAAC;AAEpE,KAAA;;uHAJY,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,uKAF3B,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAJtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gDAAgD;AAC1D,oBAAA,QAAQ,EAAE,2BAA2B;AACtC,iBAAA,CAAA;8BAG2C,iBAAiB,EAAA,CAAA;sBAA1D,WAAW;uBAAC,2BAA2B,CAAA;;;MCH7B,gBAAgB,CAAA;AAO3B,IAAA,IACI,WAAW,GAAA;AACb,QAAA,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,GAAG,CAAI,CAAA,EAAA,IAAI,CAAC,WAAW,CAAA,CAAE,GAAG,EAAE,CAAC;QAChE,OAAO;AACL,YAAA,CAAC,CAAW,QAAA,EAAA,MAAM,CAAE,CAAA,GAAG,IAAI;SAC5B,CAAC;KACH;;6GAbU,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;iGAAhB,gBAAgB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,CAAA,UAAA,EAAA,aAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAH5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,YAAY;AACvB,iBAAA,CAAA;8BAMoB,WAAW,EAAA,CAAA;sBAA7B,KAAK;uBAAC,UAAU,CAAA;gBAGb,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCLT,uBAAuB,CAAA;AAElC,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,kBAAkB,EAAE,IAAI;SACzB,CAAC;KACH;;oHAPU,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,iHCPpC,+BACA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,CAAA;2FDMa,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,SAAS;+BACE,oBAAoB,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;8BAO1B,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MEJT,iBAAiB,CAAA;AAE5B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,WAAW,EAAE,IAAI;SAClB,CAAC;KACH;;8GAPU,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAjB,iBAAiB,EAAA,QAAA,EAAA,aAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAH7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;AACxB,iBAAA,CAAA;8BAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCFT,qBAAqB,CAAA;AAEhC,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,eAAe,EAAE,IAAI;SACtB,CAAC;KACH;;kHAPU,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;sGAArB,qBAAqB,EAAA,QAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAHjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC5B,iBAAA,CAAA;8BAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCFT,iBAAiB,CAAA;AAE5B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,WAAW,EAAE,IAAI;SAClB,CAAC;KACH;;8GAPU,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAjB,iBAAiB,EAAA,QAAA,EAAA,aAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAH7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;AACxB,iBAAA,CAAA;8BAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCFT,kBAAkB,CAAA;AAE7B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,YAAY,EAAE,IAAI;SACnB,CAAC;KACH;;+GAPU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAlB,kBAAkB,EAAA,QAAA,EAAA,cAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,cAAc;AACzB,iBAAA,CAAA;8BAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MC0CT,UAAU,CAAA;;uGAAV,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAV,UAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAU,iBA/BnB,aAAa;QACb,iBAAiB;QACjB,mBAAmB;QACnB,kBAAkB;QAClB,mBAAmB;QACnB,0BAA0B;QAC1B,gBAAgB;QAChB,uBAAuB;QACvB,iBAAiB;QACjB,qBAAqB;QACrB,iBAAiB;QACjB,kBAAkB,CAAA,EAAA,OAAA,EAAA,CAGlB,YAAY,CAAA,EAAA,OAAA,EAAA,CAGZ,aAAa;QACb,iBAAiB;QACjB,mBAAmB;QACnB,kBAAkB;QAClB,mBAAmB;QACnB,0BAA0B;QAC1B,gBAAgB;QAChB,uBAAuB;QACvB,iBAAiB;QACjB,qBAAqB;QACrB,iBAAiB;QACjB,kBAAkB,CAAA,EAAA,CAAA,CAAA;AAGT,UAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAU,EAlBZ,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAgBU,UAAU,EAAA,UAAA,EAAA,CAAA;kBAjCtB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,aAAa;wBACb,iBAAiB;wBACjB,mBAAmB;wBACnB,kBAAkB;wBAClB,mBAAmB;wBACnB,0BAA0B;wBAC1B,gBAAgB;wBAChB,uBAAuB;wBACvB,iBAAiB;wBACjB,qBAAqB;wBACrB,iBAAiB;wBACjB,kBAAkB;AACnB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,aAAa;wBACb,iBAAiB;wBACjB,mBAAmB;wBACnB,kBAAkB;wBAClB,mBAAmB;wBACnB,0BAA0B;wBAC1B,gBAAgB;wBAChB,uBAAuB;wBACvB,iBAAiB;wBACjB,qBAAqB;wBACrB,iBAAiB;wBACjB,kBAAkB;AACnB,qBAAA;AACF,iBAAA,CAAA;;;MCtCY,mBAAmB,CAAA;AAE9B,IAAA,WAAA,GAAA;AAEQ,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;AAC3D,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;AAKzC,QAAA,IAAA,CAAA,sBAAsB,GAA8B;AAC1D,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,UAAU,EAAE,KAAK;AACjB,YAAA,SAAS,EAAE,GAAG;SACf,CAAC;KAZe;AAcjB,IAAA,0BAA0B,CAAC,WAAwC,EAAE,eAAe,GAAG,IAAI,CAAC,sBAAsB,EAAA;QAEhH,MAAM,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,sBAAsB,EAAE,GAAG,eAAe,EAAE,CAAA;AAEtE,QAAA,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;AAE/B,QAAA,MAAM,eAAe,GAAG,CAAC,OAAc,EAAE,QAAa,KAAI;AACxD,YAAA,OAAO,CAAC,OAAO,CAAC,CAAC,KAAU,KAAI;gBAC7B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;AAC/C,aAAC,CAAC,CAAC;AACL,SAAC,CAAC;QAEF,IAAI,CAAC,oBAAoB,GAAG,IAAI,oBAAoB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAC/E,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;KAC9D;IAED,WAAW,GAAA;QACT,IAAI,CAAC,oBAAoB,EAAE,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;KACvE;;gHAlCU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;oHAAnB,mBAAmB,EAAA,CAAA,CAAA;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAD/B,UAAU;;;MCGE,gBAAgB,CAAA;AAI3B,IAAA,WAAA,CACU,QAAmB,EAAA;QAAnB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;AAHrB,QAAA,IAAA,CAAA,SAAS,GAA4B,IAAI,GAAG,EAAE,CAAC;KAInD;IAEJ,YAAY,CAAC,EAAC,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAmB,EAAA;AAC5F,QAAA,MAAM,IAAI,GAAG,WAAW,CAAC,aAAa,CAAC;AACvC,QAAA,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;AACrC,cAAE,OAAO;cACP,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;AAE9B,QAAA,IAAI,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC/B,OAAO,cAAc,KAAK,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CACxD,OAAO,EACP,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,CACpD,CAAC;AACH,SAAA;AACD,QAAA,IAAI,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC/B,OAAO,UAAU,KAAK,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CACpD,OAAO,EACP,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAChD,CAAC;AACH,SAAA;AACD,QAAA,IAAI,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC9D,OAAO,WAAW,KAAK,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CACrD,MAAM,EACN,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,CAChD,CAAC;AACH,SAAA;AACD,QAAA,IAAI,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC/B,OAAO,UAAU,KAAK,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CACpD,YAAY,EACZ,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,UAAU,CAAC,CACrD,CAAC;YACF,OAAO,WAAW,KAAK,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CACrD,YAAY,EACZ,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,WAAW,CAAC,CACtD,CAAC;AACH,SAAA;KACF;IAED,cAAc,GAAA;QACZ,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,GAAG,KAAI;AACtC,YAAA,QAAQ,EAAE,CAAC;AACd,SAAC,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,GAAG,KAAI;;YAEvC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAChC,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;KACxB;;6GArDU,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;iHAAhB,gBAAgB,EAAA,CAAA,CAAA;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAD5B,UAAU;;;MCDE,eAAe,CAAA;AAI1B,IAAA,WAAA,GAAA;AAHQ,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,eAAe,CAAiB,EAAE,CAAC,CAAC;AAChE,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;KAEnC;AAEhB,IAAA,QAAQ,CAAC,KAAqB,EAAA;AAC5B,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAChC;;4GARU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;gHAAf,eAAe,EAAA,CAAA,CAAA;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,UAAU;;;MCHE,aAAa,CAAA;AASxB,IAAA,WAAA,CAAoB,eAAgC,EAAA;QAAhC,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;AAR5C,QAAA,IAAA,CAAA,MAAM,GAAmB;YAC/B,eAAe,EAAE,CAAC,CAAC;AACnB,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,KAAK,EAAE,EAAE;AACT,YAAA,SAAS,EAAE,MAAM;AACjB,YAAA,UAAU,EAAE,OAAO;SACpB,CAAC;KAEsD;AAExD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IAED,IAAI,KAAK,CAAC,KAAK,EAAA;QACb,MAAM,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;AAC/C,QAAA,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;AACxB,QAAA,IAAI,SAAS,CAAC,eAAe,KAAK,SAAS,CAAC,eAAe,EAAE;YAC3D,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,CAAC;YACxD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC;AAC3F,YAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC;gBAC5B,MAAM,EAAE,SAAS,CAAC,eAAe;AACjC,gBAAA,QAAQ,EAAE,YAAY;gBACtB,aAAa,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC;AAClD,aAAA,CAAC,CAAC;AACJ,SAAA;KACF;AAED,IAAA,QAAQ,CAAC,QAAa,EAAA;QACpB,IAAI,QAAQ,CAAC,MAAM,EAAE;AACnB,YAAA,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtC,UAAU,CAAC,OAAO,CAAC,CAAC,IAA2B,EAAE,CAAS,KAAI;AAC5D,gBAAA,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;AACjB,aAAC,CAAC,CAAC;YACH,IAAI,CAAC,KAAK,GAAG;AACX,gBAAA,KAAK,EAAE,UAAU;aAClB,CAAC;AACH,SAAA;AAAM,aAAA;YACL,IAAI,CAAC,KAAK,EAAE,CAAC;AACd,SAAA;KACF;AAED,IAAA,YAAY,CAAC,SAAc,EAAA;AACzB,QAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;KAC1C;IAED,SAAS,CAAC,YAA6B,MAAM,EAAA;AAC3C,QAAA,IAAI,CAAC,KAAK,GAAG,EAAE,SAAS,EAAE,CAAC;AAC3B,QAAA,MAAM,EAAE,eAAe,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;AACnD,QAAA,MAAM,UAAU,GAAG,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC;QACtC,IAAI,UAAU,GAAG,CAAC,EAAE;AAClB,YAAA,OAAO,SAAS,KAAK,MAAM;AACzB,iBAAC,eAAe,KAAK,UAAU,GAAG,CAAC,GAAG,CAAC,GAAG,eAAe,GAAG,CAAC;AAC7D,iBAAC,eAAe,KAAK,CAAC,GAAG,UAAU,GAAG,CAAC,GAAG,eAAe,GAAG,CAAC,CAAC,CAAC;AAClE,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,CAAC,CAAC;AACV,SAAA;KACF;IAED,KAAK,GAAA;QACH,IAAI,CAAC,KAAK,GAAG;YACX,eAAe,EAAE,CAAC,CAAC;AACnB,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,KAAK,EAAE,EAAE;AACT,YAAA,SAAS,EAAE,MAAM;AACjB,YAAA,UAAU,EAAE,OAAO;SACpB,CAAC;KACH;;0GArEU,aAAa,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,eAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;8GAAb,aAAa,EAAA,CAAA,CAAA;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBADzB,UAAU;;;MCFE,cAAc,CAAA;AAD3B,IAAA,WAAA,GAAA;;QAGE,IAAW,CAAA,WAAA,GAAG,CAAC,CAAC;;QAEhB,IAAO,CAAA,OAAA,GAAG,IAAI,CAAC;;QAEf,IAAI,CAAA,IAAA,GAAI,KAAK,CAAC;;QAEd,IAAS,CAAA,SAAA,GAAoB,MAAM,CAAC;;QAEpC,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;AACjB,KAAA;;2GAXY,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;+GAAd,cAAc,EAAA,CAAA,CAAA;2FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B,UAAU;;;MC0BE,iBAAiB,CAAA;IAiE5B,WACkC,CAAA,MAAsB,EAC9C,WAAuB,EACvB,eAAgC,EAChC,aAA4B,EAC5B,mBAAwC,EACxC,gBAAkC,EAAA;QALV,IAAM,CAAA,MAAA,GAAN,MAAM,CAAgB;QAC9C,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QACvB,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;QAChC,IAAa,CAAA,aAAA,GAAb,aAAa,CAAe;QAC5B,IAAmB,CAAA,mBAAA,GAAnB,mBAAmB,CAAqB;QACxC,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;AAtE5C;;;AAGG;QACM,IAAW,CAAA,WAAA,GAAG,CAAC,CAAC;AACzB;;;AAGG;QACM,IAAO,CAAA,OAAA,GAAG,IAAI,CAAC;AAMxB;;;AAGG;QACM,IAAS,CAAA,SAAA,GAAoB,MAAM,CAAC;AAC7C;;;;AAIG;QACM,IAAQ,CAAA,QAAA,GAAG,CAAC,CAAC;AACtB;;;AAGG;QACM,IAAK,CAAA,KAAA,GAAkC,OAAO,CAAC;AACxD;;;;AAIG;QACM,IAAU,CAAA,UAAA,GAA0B,OAAO,CAAC;AACrD;;;;AAIG;QACM,IAAI,CAAA,IAAA,GAAG,IAAI,CAAC;AACrB;;;AAGG;AACO,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,YAAY,EAAU,CAAC;QAe1C,IAAkB,CAAA,kBAAA,GAAG,CAAC,CAAC;QAsDvB,IAAQ,CAAA,QAAA,GAAY,IAAI,CAAC;AA5C/B,QAAA,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;KAC7B;AAxBD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,KAAK,EAAE,IAAI;AACX,YAAA,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI;AAC5B,YAAA,eAAe,EAAE,IAAI,CAAC,UAAU,KAAK,WAAW;SACjD,CAAC;KACH;IAkBD,QAAQ,GAAA;QACN,IAAI,CAAC,sBAAsB,EAAE,CAAC;KAC/B;IAED,WAAW,GAAA;QACT,IAAI,CAAC,cAAc,EAAE,CAAC;AACtB,QAAA,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;AACnC,QAAA,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC;KAC1C;IAED,kBAAkB,GAAA;QAChB,IAAI,CAAC,mBAAmB,CAAC,0BAA0B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtE,IAAI,CAAC,4BAA4B,EAAE,CAAC;AACpC,QAAA,IAAI,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,eAAe,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QACxF,IAAI,CAAC,YAAY,EAAE,CAAC;KACrB;IAEO,YAAY,GAAA;AAClB,QAAA,MAAM,MAAM,GAAqB;YAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;AAC7B,YAAA,OAAO,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;YACzB,WAAW,EAAE,MAAK;gBAChB,IAAI,CAAC,QAAQ,EAAE,CAAC;aACjB;YACD,UAAU,EAAE,MAAK;gBACf,IAAI,CAAC,UAAU,EAAE,CAAC;aACnB;SACF,CAAC;AACF,QAAA,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;KAC5C;IAEO,cAAc,GAAA;AACpB,QAAA,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAC;KACxC;IAED,IAAI,OAAO,CAAC,KAAK,EAAA;AACf,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;KACvB;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;IAGD,QAAQ,GAAA;AACN,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,QAAQ,GAAG,CAAC,EAAE;AAChB,YAAA,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,MAAK;AAC7B,gBAAA,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC/D,IAAI,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,eAAe,EAAE,SAAS,EAAE,CAAC;aAC3D,EAAE,QAAQ,CAAC,CAAC;AACd,SAAA;KACF;IAED,UAAU,GAAA;AACR,QAAA,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAC5B;IAEO,sBAAsB,CAAC,YAAqB,IAAI,EAAA;AACtD,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,QAAQ,KAAI;gBAC1F,IAAI,QAAQ,IAAI,QAAQ,EAAE;oBACxB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACvC,iBAAA;AACD,gBAAA,IAAI,CAAC,kBAAkB,GAAG,OAAO,QAAQ,CAAC,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;AAC9H,gBAAA,MAAM,UAAU,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,aAAa,KAAK,IAAI,CAAC,SAAS,KAAK,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,KAAK,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC;AACzJ,gBAAA,CAAC,IAAI,CAAC,IAAI,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;AACjE,aAAC,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,yBAAyB,EAAE,WAAW,EAAE,CAAC;AAC/C,SAAA;KACF;IAEO,4BAA4B,CAAC,YAAqB,IAAI,EAAA;AAC5D,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,SAAS,CAAC,cAAc,IAAG;AAChG,gBAAA,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC;AAC9B,gBAAA,cAAc,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;AACvD,aAAC,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,wBAAwB,EAAE,WAAW,EAAE,CAAC;AAC9C,SAAA;KACF;;AA9JU,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,kBAkElB,cAAc,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,eAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,aAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,mBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAlEb,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,EAFjB,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,KAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,SAAA,EAAA,CAAC,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,0BAFxF,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,CAAA;2FAI1B,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAN7B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,EACZ,QAAA,EAAA,2BAA2B,EAE1B,SAAA,EAAA,CAAC,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;;0BAoE/F,MAAM;2BAAC,cAAc,CAAA;oLA7Df,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAKG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAKG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAKG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAMG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAKG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAMG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAMG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAKI,UAAU,EAAA,CAAA;sBAAnB,MAAM;gBAGH,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCvET,wBAAwB,CAAA;AAInC,IAAA,WAAA,GAAA;QAFuC,IAAoB,CAAA,oBAAA,GAAG,IAAI,CAAC;KAElD;;qHAJN,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,2IAHzB,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,CAAA;2FAG1B,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBALpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,oBAAoB,YACpB,CAA2B,yBAAA,CAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;0EAKE,oBAAoB,EAAA,CAAA;sBAA1D,WAAW;uBAAC,wBAAwB,CAAA;;;MCS1B,wBAAwB,CAAA;IAEnC,WACU,CAAA,cAAiC,EACjC,aAA4B,EAAA;QAD5B,IAAc,CAAA,cAAA,GAAd,cAAc,CAAmB;QACjC,IAAa,CAAA,aAAA,GAAb,aAAa,CAAe;AAetC;;;AAGG;QACM,IAAS,CAAA,SAAA,GAAoB,MAAM,CAAC;QAkB7C,IAAU,CAAA,UAAA,GAAG,IAAI,CAAC;KApCd;AAGJ;;;AAGG;IACH,IACI,OAAO,CAAC,KAAK,EAAA;AACf,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;KACvB;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,KAAK,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;KAC1F;AAOD,IAAA,IACI,QAAQ,GAAA;AACV,QAAA,OAAO,QAAQ,CAAC;KACjB;AAED,IAAA,IACI,WAAW,GAAA;AACb,QAAA,OAAO,CAAoB,iBAAA,EAAA,IAAI,CAAC,SAAS,EAAE,CAAC;KAC7C;AAED,IAAA,IAAI,wBAAwB,GAAA;AAC1B,QAAA,OAAO,CAAoB,iBAAA,EAAA,IAAI,CAAC,SAAS,OAAO,CAAC;KAClD;AAOD,IAAA,OAAO,CAAC,MAAqB,EAAA;AAC3B,QAAA,IAAI,MAAM,CAAC,GAAG,KAAK,OAAO,EAAE;YAC1B,IAAI,CAAC,IAAI,EAAE,CAAC;AACb,SAAA;AACD,QAAA,IAAI,MAAM,CAAC,GAAG,KAAK,WAAW,EAAE;AAC9B,YAAA,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACnB,SAAA;AACD,QAAA,IAAI,MAAM,CAAC,GAAG,KAAK,YAAY,EAAE;AAC/B,YAAA,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACnB,SAAA;KACF;AAGM,IAAA,OAAO,CAAC,MAAkB,EAAA;QAC/B,IAAI,CAAC,IAAI,EAAE,CAAC;KACb;IAED,eAAe,GAAA;AACb,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,MAAM,IAAI,KAAK,CAAC;AACzE,QAAA,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC;KACrC;AAEO,IAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,EAAA;QACrC,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC1D,IAAI,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,eAAe,EAAE,SAAS,EAAE,CAAC;KAC3D;;qHArEU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,aAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,kXClBrC,gTAKA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDaa,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBALpC,SAAS;+BACE,oBAAoB,EAAA,QAAA,EAAA,gTAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;iIAiB1B,OAAO,EAAA,CAAA;sBADV,KAAK;gBAWG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAGF,QAAQ,EAAA,CAAA;sBADX,WAAW;uBAAC,WAAW,CAAA;gBAMpB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBASE,OAAO,EAAA,CAAA;sBAA5B,SAAS;uBAAC,SAAS,CAAA;gBAKpB,OAAO,EAAA,CAAA;sBADN,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAc1B,OAAO,EAAA,CAAA;sBADb,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MEhEtB,2BAA2B,CAAA;IAMtC,WACU,CAAA,eAAgC,EAChC,aAA4B,EAAA;QAD5B,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;QAChC,IAAa,CAAA,aAAA,GAAb,aAAa,CAAe;QAPtC,IAAK,CAAA,KAAA,GAA2B,EAAE,CAAC;QACnC,IAAM,CAAA,MAAA,GAAG,CAAC,CAAC;KAOP;IAEJ,QAAQ,GAAA;QACN,IAAI,CAAC,sBAAsB,EAAE,CAAC;KAC/B;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;KACpC;AAED,IAAA,OAAO,CAAC,KAAa,EAAA;AACnB,QAAA,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,EAAE;AACzB,YAAA,MAAM,SAAS,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACxD,YAAA,IAAI,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,SAAS,EAAG,eAAe,EAAE,KAAK,EAAE,CAAC;AACnE,SAAA;KACF;IAEO,sBAAsB,CAAC,YAAqB,IAAI,EAAA;AACtD,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,SAAS,KAAI;gBAC3F,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC7E,IAAI,QAAQ,IAAI,SAAS,EAAE;oBACzB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,IAAI,CAAC,CAAC;AACrC,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,yBAAyB,EAAE,WAAW,EAAE,CAAC;AAC/C,SAAA;KACF;;wHArCU,2BAA2B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAJ,eAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,aAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA3B,2BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,2BAA2B,6DCVxC,8SAKA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAI,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDKa,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBALvC,SAAS;+BACE,uBAAuB,EAAA,QAAA,EAAA,8SAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;;AEInB,SAAA,MAAM,CAAC,SAAc,EAAE,OAAY,EAAA;AACjD,IAAA,OAAO,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC;AAC/B,CAAC;AACe,SAAA,OAAO,CAAC,SAAc,EAAE,OAAY,EAAA;AAClD,IAAA,OAAO,OAAO,CAAC,IAAI,KAAK,KAAK,CAAC;AAChC,CAAC;AAEM,MAAM,cAAc,GAAG,OAAO,CAAC,gBAAgB,EAAE;AACtD,IAAA,KAAK,CACH,GAAG,EACH,KAAK,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CACpE;AACD,IAAA,UAAU,CACR,MAAM,EACN,KAAK,CAAC;QACJ,KAAK,CACH,QAAQ,EACR;AACE,YAAA,OAAO,CACL,kBAAkB,EAClB,KAAK,CAAC;AACJ,gBAAA,SAAS,EAAE,mBAAmB;AAC/B,aAAA,CAAC,CACH;AACF,SAAA,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB;QACD,KAAK,CACH,QAAQ,EACR;AACE,YAAA,KAAK,CAAC;AACJ,gBAAA,SAAS,EAAE,kBAAkB;aAC9B,CAAC;AACF,YAAA,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;AACxC,SAAA,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB;AACF,KAAA,CAAC,CACH;AACD,IAAA,UAAU,CACR,OAAO,EACP,KAAK,CAAC;QACJ,KAAK,CACH,QAAQ,EACR;AACE,YAAA,KAAK,CAAC;AACJ,gBAAA,SAAS,EAAE,mBAAmB;aAC/B,CAAC;AACF,YAAA,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;AACxC,SAAA,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB;QACD,KAAK,CACH,QAAQ,EACR;AACE,YAAA,OAAO,CACL,kBAAkB,EAClB,KAAK,CAAC;AACJ,gBAAA,SAAS,EAAE,kBAAkB;AAC9B,aAAA,CAAC,CACH;AACF,SAAA,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB;AACF,KAAA,CAAC,CACH;AACF,CAAA,CAAC,CAAC;AAEI,MAAM,aAAa,GAAG,OAAO,CAAC,eAAe,EAAE;AACpD,IAAA,KAAK,CACH,GAAG,EACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CACjC;AACD,IAAA,UAAU,CACR,MAAM,EACN,KAAK,CAAC;QACJ,KAAK,CACH,QAAQ,EACR;AACE,YAAA,OAAO,CACL,kBAAkB,EAClB,KAAK,CAAC;AACJ,gBAAA,MAAM,EAAE,CAAC;AACT,gBAAA,OAAO,EAAE,CAAC;AACX,aAAA,CAAC,CACH;AACF,SAAA,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB;QACD,KAAK,CACH,QAAQ,EACR;AACE,YAAA,KAAK,CAAC;AACJ,gBAAA,MAAM,EAAE,CAAC;AACT,gBAAA,OAAO,EAAE,CAAC;aACX,CAAC;AACF,YAAA,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;AACxC,SAAA,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB;AACF,KAAA,CAAC,CACH;AACD,IAAA,UAAU,CACR,OAAO,EACP,KAAK,CAAC;QACJ,KAAK,CACH,QAAQ,EACR;AACE,YAAA,KAAK,CAAC;AACJ,gBAAA,MAAM,EAAE,CAAC;AACT,gBAAA,OAAO,EAAE,CAAC;aACX,CAAC;AACF,YAAA,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;AACxC,SAAA,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB;QACD,KAAK,CACH,QAAQ,EACR;AACE,YAAA,OAAO,CACL,kBAAkB,EAClB,KAAK,CAAC;AACJ,gBAAA,MAAM,EAAE,CAAC;AACT,gBAAA,OAAO,EAAE,CAAC;AACX,aAAA,CAAC,CACH;AACF,SAAA,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB;AACF,KAAA,CAAC,CACH;AACF,CAAA,CAAC;;MCjIW,qBAAqB,CAAA;IAmChC,WACU,CAAA,eAAgC,EAChC,iBAAoC,EAAA;QADpC,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;QAChC,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QAnBtC,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;AAExB;;;;AAIG;QACM,IAAQ,CAAA,QAAA,GAAW,CAAC,CAAC,CAAC;KAa3B;AA/BJ;;AAEG;IACH,IACI,MAAM,CAAC,KAAK,EAAA;AACd,QAAA,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC5C,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;KACvC;AACD,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAUD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,eAAe,EAAE,IAAI;YACrB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;KACH;IAOD,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;KACpC;IAED,eAAe,GAAA;QACb,UAAU,CAAC,MAAK;YACd,IAAI,CAAC,sBAAsB,EAAE,CAAC;AAChC,SAAC,CAAC,CAAC;KACJ;IAEO,sBAAsB,CAAC,YAAqB,IAAI,EAAA;AACtD,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,SAAS,KAAI;gBAC3F,IAAI,QAAQ,IAAI,SAAS,EAAE;oBACzB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC;AAC/C,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,yBAAyB,EAAE,WAAW,EAAE,CAAC;AAC/C,SAAA;KACF;;kHA5DU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAL,eAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,qBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,kKCZlC,gDACA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDWa,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,SAAS;+BACE,iBAAiB,EAAA,QAAA,EAAA,gDAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;mIAevB,MAAM,EAAA,CAAA;sBADT,KAAK;gBAeG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MEnBT,sBAAsB,CAAA;AAUjC,IAAA,WAAA,CAAoB,aAA4B,EAAA;QAA5B,IAAa,CAAA,aAAA,GAAb,aAAa,CAAe;QATX,IAAkB,CAAA,kBAAA,GAAG,IAAI,CAAC;AAM/D,QAAA,IAAA,CAAA,KAAK,GAAG,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC;QACrB,IAAU,CAAA,UAAA,GAAG,OAAO,CAAC;KAE+B;IAEpD,kBAAkB,GAAA;QAChB,IAAI,CAAC,QAAQ,EAAE,CAAC;KACjB;IAED,qBAAqB,GAAA;QACnB,IAAI,CAAC,QAAQ,EAAE,CAAC;AAChB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC;AACxC,QAAA,MAAM,SAAS,GAAG,KAAK,EAAE,eAAe,CAAC;AACzC,QAAA,MAAM,aAAa,GAAG,KAAK,EAAE,SAAS,CAAC;AACvC,QAAA,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE;AAClC,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK,EAAE,OAAO,CAAC;YAC9B,IAAI,CAAC,KAAK,GAAG,EAAC,IAAI,EAAE,aAAa,KAAK,MAAM,EAAC,CAAC;AAC9C,YAAA,IAAI,CAAC,WAAW,GAAG,KAAK,EAAE,eAAe,CAAC;YAC1C,IAAI,CAAC,UAAU,GAAG,KAAK,EAAE,UAAU,IAAI,OAAO,CAAC;AAChD,SAAA;KACF;IAED,QAAQ,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAC,YAAY,EAAE;AAC/C,YAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,YAAY,CAAC;YAC1C,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAChD,SAAA;KACF;;mHAlCU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAI,aAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;uGAAtB,sBAAsB,EAAA,QAAA,EAAA,kBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,sBAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,cAAA,EAAA,SAAA,EAGhB,qBAAqB,ECvBxC,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,sPAOA,kDDWc,CAAE,cAAc,EAAE,aAAa,CAAE,EAAA,CAAA,CAAA;2FAElC,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBANlC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,EAGhB,UAAA,EAAA,CAAE,cAAc,EAAE,aAAa,CAAE,EAAA,QAAA,EAAA,sPAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;iGAGR,kBAAkB,EAAA,CAAA;sBAAtD,WAAW;uBAAC,sBAAsB,CAAA;gBAEa,YAAY,EAAA,CAAA;sBAA3D,eAAe;uBAAC,qBAAqB,CAAA;;;MEU3B,cAAc,CAAA;AACzB,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;KACpD;;2GAHU,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,iBAlBvB,iBAAiB;QACjB,wBAAwB;QACxB,wBAAwB;QACxB,2BAA2B;QAC3B,sBAAsB;QACtB,qBAAqB,CAAA,EAAA,OAAA,EAAA,CAEb,YAAY,CAAA,EAAA,OAAA,EAAA,CAGpB,iBAAiB;QACjB,wBAAwB;QACxB,wBAAwB;QACxB,2BAA2B;QAC3B,sBAAsB;QACtB,qBAAqB,CAAA,EAAA,CAAA,CAAA;4GAGZ,cAAc,EAAA,SAAA,EAVd,CAAC,eAAe,EAAE,aAAa,EAAE,cAAc,CAAC,EAAA,OAAA,EAAA,CADlD,CAAC,YAAY,CAAC,CAAA,EAAA,CAAA,CAAA;2FAWZ,cAAc,EAAA,UAAA,EAAA,CAAA;kBApB1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,iBAAiB;wBACjB,wBAAwB;wBACxB,wBAAwB;wBACxB,2BAA2B;wBAC3B,sBAAsB;wBACtB,qBAAqB;AACtB,qBAAA;oBACD,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,SAAS,EAAE,CAAC,eAAe,EAAE,aAAa,EAAE,cAAc,CAAC;AAC3D,oBAAA,OAAO,EAAE;wBACP,iBAAiB;wBACjB,wBAAwB;wBACxB,wBAAwB;wBACxB,2BAA2B;wBAC3B,sBAAsB;wBACtB,qBAAqB;AACtB,qBAAA;AACF,iBAAA,CAAA;;;MC3BY,wBAAwB,CAAA;AAEnC,IAAA,WAAA,GAAA;KACC;AAED,IAAA,IACI,WAAW,GAAA;QAEb,OAAO;AACL,YAAA,kBAAkB,EAAE,IAAI;SACzB,CAAC;KACH;;qHAXU,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;yGAAxB,wBAAwB,EAAA,QAAA,EAAA,oBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;AAC/B,iBAAA,CAAA;0EAOK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCLT,uBAAuB,CAAA;AAElC,IAAA,WAAA,GAAA;KACC;AAED,IAAA,IACI,WAAW,GAAA;QAEb,OAAO;AACL,YAAA,iBAAiB,EAAE,IAAI;SACxB,CAAC;KACH;;oHAXU,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;wGAAvB,uBAAuB,EAAA,QAAA,EAAA,mBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAHnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC9B,iBAAA,CAAA;0EAOK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCDT,eAAe,CAAA;AAK1B,IAAA,WAAA,GAAA;AAHQ,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,eAAe,CAAM,EAAE,CAAC,CAAC;AACrD,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;KAGlD;AAED,IAAA,MAAM,CAAC,KAAqB,EAAA;AAC1B,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAChC;;4GAVU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;gHAAf,eAAe,EAAA,CAAA,CAAA;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,UAAU;;;MCCE,qBAAqB,CAAA;IAGhC,WACS,CAAA,UAAsB,EACrB,eAAgC,EAAA;QADjC,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;QACrB,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;AAS1C;;AAEG;QACM,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;QAYjB,IAAK,CAAA,KAAA,GAAG,KAAK,CAAC;KAvBlB;AAaJ;;AAEG;AACH,IAAA,IACI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;IACD,IAAI,IAAI,CAAC,KAAc,EAAA;AACrB,QAAA,IAAI,CAAC,KAAK,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC3C;AAKD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,eAAe,EAAE,IAAI;YACrB,oBAAoB,EAAE,IAAI,CAAC,IAAI;YAC/B,CAAC,CAAA,cAAA,EAAiB,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;YACrD,IAAI,EAAE,IAAI,CAAC,OAAO;SACnB,CAAC;KACH;AAED,IAAA,IACI,UAAU,GAAA;;QAEZ,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE;YACpC,OAAO,EAAE,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE;SAClC,CAAC;KACH;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,sBAAsB,EAAE,CAAC;KAC/B;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;KACpC;IAEO,sBAAsB,CAAC,YAAqB,IAAI,EAAA;AACtD,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,yBAAyB;gBAC5B,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,KAAK,KAAI;oBACtD,IAAI,SAAS,IAAI,KAAK,EAAE;AACtB,wBAAA,IAAI,CAAC,OAAO;AACV,4BAAA,KAAK,CAAC,OAAO,KAAK,QAAQ,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;AAC9D,qBAAA;AACH,iBAAC,CAAC,CAAC;AACN,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,CAAC;AAC9C,SAAA;KACF;;kHAxEU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAE,eAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;sGAArB,qBAAqB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE,eAAe;AAC1B,iBAAA,CAAA;4HAaU,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAKG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAMF,IAAI,EAAA,CAAA;sBADP,KAAK;gBAYF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAWhB,UAAU,EAAA,CAAA;sBADb,WAAW;uBAAC,OAAO,CAAA;;;MCrBT,uBAAuB,CAAA;AAwBlC,IAAA,WAAA,CACS,UAAsB,EACrB,eAAgC,EACrB,QAA4B,EAAA;QAFxC,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;QACrB,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;QACrB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAoB;AAtBjD;;;AAGG;QACM,IAAK,CAAA,KAAA,GAAG,IAAI,CAAC;QAad,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC;KAMnB;AAjBJ;;;AAGG;IACH,IACI,KAAK,CAAC,KAAc,EAAA;AACtB,QAAA,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC5C;AACD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AASD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;YACL,iBAAiB,EAAE,IAAI,CAAC,KAAK;YAC7B,uBAAuB,EAAE,IAAI,CAAC,KAAK;SACpC,CAAC;KACH;AAGM,IAAA,OAAO,CAAC,MAAkB,EAAA;QAC/B,MAAM,CAAC,cAAc,EAAE,CAAC;AACxB,QAAA,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAC,CAAC,CAAC;KAC3E;;AA1CU,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,wEA2BF,iBAAiB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;wGA3BtC,uBAAuB,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAJnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,QAAQ,EAAE,iBAAiB;AAC5B,iBAAA,CAAA;8GA4BiC,iBAAiB,EAAA,UAAA,EAAA,CAAA;0BAA9C,QAAQ;4CAlBF,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAOF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAgBF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBASb,OAAO,EAAA,CAAA;sBADb,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;MActB,iBAAiB,CAAA;IA6H5B,WAC4B,CAAA,QAAa,EAC/B,UAAsB,EACtB,QAAmB,EACnB,MAAc,EACd,iBAAoC,EACpC,eAAgC,EAAA;QALd,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAK;QAC/B,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;QACtB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACd,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QACpC,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;QAxHjC,IAAS,CAAA,SAAA,GAAmC,IAAI,CAAC;QAclD,IAAK,CAAA,KAAA,GAAG,KAAK,CAAC;AAQtB;;;AAGG;QACM,IAAS,CAAA,SAAA,GAAc,cAAc,CAAC;QAcvC,IAAO,CAAA,OAAA,GAAG,IAAI,CAAC;AAiCf,QAAA,IAAA,CAAA,cAAc,GAAqB;YACzC,SAAS,EAAE,IAAI,CAAC,SAAS;AACzB,YAAA,SAAS,EAAE,EAAE;AACb,YAAA,QAAQ,EAAE,UAAU;SACrB,CAAC;AAEF;;AAEG;QACM,IAAO,CAAA,OAAA,GAA2D,UAAU,CAAC;QAkB9E,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAEf,QAAA,IAAA,CAAA,aAAa,GAA0B,IAAI,YAAY,EAAW,CAAC;QAE7E,IAAe,CAAA,eAAA,GAAG,EAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAC,CAAC;QAIrC,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;QAIlB,IAAS,CAAA,SAAA,GAAmB,EAAE,CAAC;KASnC;AAvHJ;;;;AAIG;IACH,IACI,IAAI,CAAC,KAAc,EAAA;AACrB,QAAA,IAAI,CAAC,KAAK,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC3C;;AACD,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAeD;;;;AAIG;IACH,IACI,MAAM,CAAC,KAAc,EAAA;AACvB,QAAA,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC7C;AACD,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAGD;;;AAGG;IACH,IACI,aAAa,CAAC,KAAuB,EAAA;AACvC,QAAA,IAAI,CAAC,cAAc,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,KAAK,EAAE,CAAC;KAC5D;;AACD,IAAA,IAAI,aAAa,GAAA;AACf,QAAA,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,QAAQ,IAAI,CAAC,SAAS;YACpB,KAAK,QAAQ,EAAE;gBACb,SAAS,GAAG,WAAW,CAAC;gBACxB,MAAM;AACP,aAAA;YACD,KAAK,SAAS,EAAE;gBACd,SAAS,GAAG,aAAa,CAAC;gBAC1B,MAAM;AACP,aAAA;YACD,KAAK,WAAW,EAAE;gBAChB,SAAS,GAAG,YAAY,CAAC;gBACzB,MAAM;AACP,aAAA;AACF,SAAA;AACD,QAAA,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,EAAE;YAC5B,SAAS,GAAG,YAAY,CAAC;AAC1B,SAAA;AACD,QAAA,IAAI,CAAC,cAAc,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC,cAAc,CAAC;KAC5B;AAaD;;;;AAIG;IACH,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC5C,QAAA,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;AACzB,QAAA,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC;AACvB,QAAA,MAAM,GAAG,IAAI,CAAC,oBAAoB,EAAE,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;AACpE,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACjC;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAwBD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,QAAQ,EACN,CAAC,IAAI,CAAC,OAAO,KAAK,UAAU,IAAI,IAAI,CAAC,OAAO,KAAK,UAAU;gBAC3D,CAAC,IAAI,CAAC,SAAS;YACjB,CAAC,CAAA,EAAG,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;AACvC,YAAA,WAAW,EAAE,IAAI,CAAC,OAAO,KAAK,WAAW;AACzC,YAAA,UAAU,EAAE,IAAI,CAAC,OAAO,KAAK,UAAU;AACvC,YAAA,aAAa,EAAE,IAAI,CAAC,OAAO,KAAK,aAAa;YAC7C,IAAI,EAAE,IAAI,CAAC,OAAO;SACnB,CAAC;KACH;;AAGD,IAAA,IACI,SAAS,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,OAAO,KAAK,aAAa,GAAG,EAAC,OAAO,EAAE,UAAU,EAAC,GAAG,EAAE,CAAC;KACpE;IAED,sBAAsB,CAAC,YAAqB,IAAI,EAAA;AAC9C,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,yBAAyB;gBAC5B,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,KAAK,KAAI;AACtD,oBAAA,IAAI,IAAI,KAAK,KAAK,CAAC,QAAQ,EAAE;wBAC3B,IAAI,SAAS,IAAI,KAAK,EAAE;4BACtB,KAAK,EAAE,OAAO,KAAK,QAAQ;AACzB,kCAAE,IAAI,CAAC,cAAc,EAAE;mCACpB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;AACpC,yBAAA;AACF,qBAAA;AACH,iBAAC,CAAC,CAAC;AACN,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,CAAC;AAC9C,SAAA;KACF;IAED,cAAc,GAAA;AACZ,QAAA,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;KAC9B;AAED,IAAA,OAAO,CAAC,KAAU,EAAA;QAChB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC,EAAE;YACjG,IAAI,CAAC,cAAc,EAAE,CAAC;AACvB,SAAA;KACF;IAED,kBAAkB,GAAA;AAChB,QAAA,IAAI,IAAI,CAAC,OAAO,KAAK,UAAU,EAAE;AAC/B,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;AAC5E,SAAA;KACF;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,sBAAsB,EAAE,CAAC;AAC9B,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACpC;IAED,WAAW,GAAA;QACT,IAAI,CAAC,cAAc,EAAE,CAAC;AACtB,QAAA,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,qBAAqB,EAAE,CAAC;KAC9B;AAED,IAAA,eAAe,CAAC,KAAc,EAAA;AAC5B,QAAA,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;KAC/D;;IAGD,oBAAoB,GAAA;AAClB,QAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,EAAE;AAC/B,YAAA,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAK;;AAEjC,gBAAA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;AAChE,gBAAA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;gBAC5D,IAAI,IAAI,CAAC,MAAM,EAAE;AACf,oBAAA,IAAI,CAAC,cAAc,GAAG,YAAY,CAChC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,EACtC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,EACnC,EAAC,GAAG,IAAI,CAAC,aAAa,EAAC,CACxB,CAAC;AACH,iBAAA;AACD,gBAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAK;oBACnB,IAAI,CAAC,YAAY,EAAE,CAAC;AACpB,oBAAA,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;AACzC,iBAAC,CAAC,CAAC;AACL,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;IAED,qBAAqB,GAAA;QACnB,IAAI,CAAC,cAAc,EAAE,CAAC;AACtB,QAAA,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC;AAC/B,QAAA,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;AAChC,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;KACvC;IAEO,YAAY,GAAA;AAClB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC,KAAK,KAAI;AACrD,YAAA,IAAI,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;gBAClE,OAAO;AACR,aAAA;AACD,YAAA,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE;AAC3B,gBAAA,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;gBAC5B,OAAO;AACR,aAAA;YACD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;AAChC,gBAAA,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE;AAChC,oBAAA,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;oBAC5B,OAAO;AACR,iBAAA;AACF,aAAA;AACD,YAAA,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;AAC9D,gBAAA,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE;AAC/B,oBAAA,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;oBAC5B,OAAO;AACR,iBAAA;AACF,aAAA;SACF,CAAC,CACH,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC,KAAK,KAAI;YACrD,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,EAAE;AACtD,gBAAA,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;AAC7B,aAAA;SACF,CAAC,CACH,CAAC;KACH;IAEO,cAAc,GAAA;QACpB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,KAAI;AAClC,YAAA,QAAQ,EAAE,CAAC;AACb,SAAC,CAAC,CAAC;;AAEH,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAC/B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACrB;;AAhRU,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,kBA8HlB,QAAQ,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,eAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGA9HP,iBAAiB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,SAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,aAAA,EAAA,eAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,SAAA,EAFjB,CAAC,eAAe,CAAC,gEAsHd,uBAAuB,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,OAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EACvB,qBAAqB,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EA1HzB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,4iEAAA,CAAA,EAAA,CAAA,CAAA;2FAK1B,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAP7B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,YACZ,2BAA2B,EAAA,QAAA,EAE3B,WAAW,EACV,SAAA,EAAA,CAAC,eAAe,CAAC,EAAA,MAAA,EAAA,CAAA,4iEAAA,CAAA,EAAA,CAAA;;0BAgIzB,MAAM;2BAAC,QAAQ,CAAA;6KArHT,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAQF,IAAI,EAAA,CAAA;sBADP,KAAK;gBAaG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAMG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAQF,MAAM,EAAA,CAAA;sBADT,KAAK;gBAcF,aAAa,EAAA,CAAA;sBADhB,KAAK;gBAoCG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAQF,OAAO,EAAA,CAAA;sBADV,KAAK;gBAaI,aAAa,EAAA,CAAA;sBAAtB,MAAM;gBAGgC,QAAQ,EAAA,CAAA;sBAA9C,YAAY;uBAAC,uBAAuB,CAAA;gBACA,KAAK,EAAA,CAAA;sBAAzC,YAAY;uBAAC,qBAAqB,CAAA;gBAkB/B,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAgBhB,SAAS,EAAA,CAAA;sBADZ,WAAW;uBAAC,OAAO,CAAA;;;MChOT,qBAAqB,CAAA;IAoBhC,WACU,CAAA,eAAgC,EACrB,QAA4B,EAAA;QADvC,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;QACrB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAoB;AAfjD;;;;AAIG;QACM,IAAS,CAAA,SAAA,GAAY,IAAI,CAAC;QAoC3B,IAAS,CAAA,SAAA,GAA2B,IAAI,CAAC;KAxBhD;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;KACpC;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,eAAe,EAAE,IAAI;YACrB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC;KACH;IAED,IAEI,QAAQ,CAAC,KAA6B,EAAA;AACxC,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB;AACD,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;KAC9C;AAGD,IAAA,IACI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;KAC9B;AAGO,IAAA,OAAO,CAAC,MAAkB,EAAA;QAChC,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC7E,SAAA;KACF;AAGO,IAAA,OAAO,CAAC,MAAqB,EAAA;AACnC,QAAA,IAAI,MAAM,CAAC,GAAG,KAAK,OAAO,EAAE;YAC1B,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,gBAAA,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC1E,aAAA;AACF,SAAA;KACF;;kHArEU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,eAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;sGAArB,qBAAqB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,SAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE,eAAe;AAC1B,iBAAA,CAAA;;0BAuBI,QAAQ;4CAhBF,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAMG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAMG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBASF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,mBAAmB,CAAA;gBAM5B,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAWhB,QAAQ,EAAA,CAAA;sBAFX,WAAW;uBAAC,eAAe,CAAA;;sBAC3B,KAAK;gBAUF,UAAU,EAAA,CAAA;sBADb,WAAW;uBAAC,oBAAoB,CAAA;gBAMzB,OAAO,EAAA,CAAA;sBADd,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAQzB,OAAO,EAAA,CAAA;sBADd,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MCjEtB,0BAA0B,CAAA;AAErC,IAAA,WAAA,GAAA;KACC;AAED,IAAA,IACI,WAAW,GAAA;QAEb,OAAO;AACL,YAAA,oBAAoB,EAAE,IAAI;SAC3B,CAAC;KACH;;uHAXU,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;2GAA1B,0BAA0B,EAAA,QAAA,EAAA,sBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAA1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAHtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sBAAsB;AACjC,iBAAA,CAAA;0EAOK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCFT,sBAAsB,CAAA;IASjC,WACU,CAAA,eAAgC,EACrB,QAA4B,EAAA;QADvC,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;QACrB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAoB;QAkBzC,IAAS,CAAA,SAAA,GAA2B,IAAI,CAAC;KAjB5C;AAEL,IAAA,IACI,WAAW,GAAA;QACb,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC;KACH;IAED,IAEI,QAAQ,CAAC,KAA6B,EAAA;AACxC,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB;AACD,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;KAC9C;AAGD,IAAA,IACI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;KAC9B;AAGO,IAAA,OAAO,CAAC,MAAkB,EAAA;AAChC,QAAA,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;KAC1E;AAGO,IAAA,OAAO,CAAC,MAAqB,EAAA;AACnC,QAAA,IAAI,MAAM,CAAC,GAAG,KAAK,OAAO,EAAE;AAC1B,YAAA,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC1E,SAAA;KACF;;mHA9CU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAD,eAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;uGAAtB,sBAAsB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,QAAQ,EAAE,gBAAgB;AAC3B,iBAAA,CAAA;;0BAYI,QAAQ;4CAJF,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAQF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAShB,QAAQ,EAAA,CAAA;sBAFX,WAAW;uBAAC,eAAe,CAAA;;sBAC3B,KAAK;gBAUF,UAAU,EAAA,CAAA;sBADb,WAAW;uBAAC,oBAAoB,CAAA;gBAMzB,OAAO,EAAA,CAAA;sBADd,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAMzB,OAAO,EAAA,CAAA;sBADd,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MCVtB,cAAc,CAAA;;2GAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,iBA1BvB,iBAAiB;QACjB,wBAAwB;QACxB,uBAAuB;QACvB,qBAAqB;QACrB,0BAA0B;QAC1B,uBAAuB;QACvB,qBAAqB;QACrB,sBAAsB,CAAA,EAAA,OAAA,EAAA,CAGtB,YAAY,CAAA,EAAA,OAAA,EAAA,CAGZ,iBAAiB;QACjB,wBAAwB;QACxB,uBAAuB;QACvB,qBAAqB;QACrB,0BAA0B;QAC1B,uBAAuB;QACvB,qBAAqB;QACrB,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAMb,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,EAJd,SAAA,EAAA;QACT,eAAe;KAChB,EAfQ,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAeU,cAAc,EAAA,UAAA,EAAA,CAAA;kBA5B1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,iBAAiB;wBACjB,wBAAwB;wBACxB,uBAAuB;wBACvB,qBAAqB;wBACrB,0BAA0B;wBAC1B,uBAAuB;wBACvB,qBAAqB;wBACrB,sBAAsB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,iBAAiB;wBACjB,wBAAwB;wBACxB,uBAAuB;wBACvB,qBAAqB;wBACrB,0BAA0B;wBAC1B,uBAAuB;wBACvB,qBAAqB;wBACrB,sBAAsB;AACvB,qBAAA;AACD,oBAAA,SAAS,EAAE;wBACT,eAAe;AAChB,qBAAA;AACF,iBAAA,CAAA;;;MC9BY,gBAAgB,CAAA;AAJ7B,IAAA,WAAA,GAAA;AAWE;;;;AAIG;QACM,IAAK,CAAA,KAAA,GAAW,YAAY,CAAC;AAStC;;;;AAIG;QACM,IAAO,CAAA,OAAA,GAAuB,QAAQ,CAAC;QAGtB,IAAI,CAAA,IAAA,GAAG,QAAQ,CAAC;AAU3C,KAAA;AARC,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,CAAC,WAAW,IAAI,CAAC,OAAO,CAAE,CAAA,GAAG,IAAI;YACjC,CAAC,CAAA,KAAA,EAAQ,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;AACpC,YAAA,CAAC,CAAW,QAAA,EAAA,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI;SACtD,CAAC;KACH;;6GAtCU,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,8NCR7B,sDACA,EAAA,CAAA,CAAA;2FDOa,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,SAAS;+BACE,WAAW,EAAA,QAAA,EAAA,sDAAA,EAAA,CAAA;8BAQZ,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAOG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAOG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAOG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAGoB,IAAI,EAAA,CAAA;sBAD7B,KAAK;;sBACL,WAAW;uBAAC,WAAW,CAAA;gBAGpB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;;MEhCT,qBAAqB,CAAA;IAEhC,WAAoB,CAAA,UAAsB,EAAU,iBAAoC,EAAA;QAApE,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;QAAU,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QAS/E,IAAO,CAAA,OAAA,GAAW,GAAG,CAAC;QAG/B,IAAU,CAAA,UAAA,GAAG,IAAI,CAAC;QAClB,6BAAc,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;KAb8E;AAe5F,IAAA,IAAY,gBAAgB,GAAA;QAC1B,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE;AAChD,YAAA,OAAO,EAAE,CAAC;AACX,SAAA;AACD,QAAA,IAAI,CAAC,sBAAA,CAAA,IAAI,EAAA,6BAAA,EAAA,GAAA,CAAQ,EAAE;AACjB,YAAA,OAAO,EAAE,CAAC;AACX,SAAA;QACD,MAAM,YAAY,GAAG,sBAAA,CAAA,IAAI,qCAAQ,EAAE,qBAAqB,EAAE,CAAC;QAC3D,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAU,KAAI;AACrC,YAAA,MAAM,OAAO,GAAG,sBAAA,CAAA,IAAI,EAAQ,6BAAA,EAAA,GAAA,CAAA,EAAE,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACzD,YAAA,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;gBAC5B,OAAO;AACR,aAAA;AACD,YAAA,MAAM,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAC/C,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAY,KAAI;AACnC,gBAAA,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;;AAE/D,gBAAA,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAG,EAAA,UAAU,IAAI,CAAC;AAC9C,aAAC,CAAC,CAAC;AACL,SAAC,CAAC,CAAC;AACH,QAAA,OAAO,iBAAiB,CAAC;KAC1B;AAED,IAAA,IAAY,eAAe,GAAA;QACzB,OAAO;AACL,YAAA,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,gBAAgB;SAC/D,CAAC;KACH;AAED,IAAA,IACY,WAAW,GAAA;QACrB,OAAO;AACL,YAAA,GAAG,IAAI,CAAC,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,EAAE,CAAA,gBAAA,EAAmB,IAAI,CAAC,OAAO,CAAG,CAAA,CAAA;SACnG,CAAC;KACH;IAED,eAAe,GAAA;QACb,sBAAA,CAAA,IAAI,EAAW,6BAAA,EAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,aAAa,EAAA,GAAA,CAAA,CAAC;AAC3D,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,MAAM,IAAI,KAAK,CAAC;AACzE,QAAA,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;KACxC;;;kHA1DU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,qBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,6RCPlC,6WAQA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,gBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,SAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDDa,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,SAAS;+BACE,kCAAkC,EAAA,QAAA,EAAA,6WAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;iIAcnC,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAEgB,OAAO,EAAA,CAAA;sBAA5B,SAAS;uBAAC,SAAS,CAAA;gBAmCR,WAAW,EAAA,CAAA;sBADtB,WAAW;uBAAC,OAAO,CAAA;;;MEpCT,aAAa,CAAA;;0GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;2GAAb,aAAa,EAAA,YAAA,EAAA,CAVtB,gBAAgB,CAAA,EAAA,OAAA,EAAA,CAMhB,YAAY;AACZ,QAAA,YAAY,aAJZ,gBAAgB,CAAA,EAAA,CAAA,CAAA;AAOP,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,EALf,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAEU,aAAa,EAAA,UAAA,EAAA,CAAA;kBAZzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,gBAAgB;AACjB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,gBAAgB;AACjB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;MCCY,kBAAkB,CAAA;;+GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;gHAAlB,kBAAkB,EAAA,YAAA,EAAA,CAV3B,qBAAqB,CAAA,EAAA,OAAA,EAAA,CAGrB,YAAY;AACZ,QAAA,aAAa,aAGb,qBAAqB,CAAA,EAAA,CAAA,CAAA;AAGZ,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,EARpB,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,aAAa;AACd,SAAA,CAAA,EAAA,CAAA,CAAA;2FAKU,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAZ9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,qBAAqB;AACtB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,aAAa;AACd,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,qBAAqB;AACtB,qBAAA;AACF,iBAAA,CAAA;;;MCTY,eAAe,CAAA;AAJ5B,IAAA,WAAA,GAAA;AAUE;;;;AAIG;QAEuB,IAAI,CAAA,IAAA,GAAG,QAAQ,CAAC;AAS3C,KAAA;AAPC,IAAA,IACI,UAAU,GAAA;QACZ,OAAO;AACL,YAAA,MAAM,EAAE,IAAI;YACZ,CAAC,CAAA,OAAA,EAAU,IAAI,CAAC,QAAQ,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ;SAC7C,CAAC;KACH;;4GApBU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,2LAFhB,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,QAAQ,EAAE,CAA2B,yBAAA,CAAA;AACtC,iBAAA,CAAA;8BAMU,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAOoB,IAAI,EAAA,CAAA;sBAD7B,KAAK;;sBACL,WAAW;uBAAC,WAAW,CAAA;gBAGpB,UAAU,EAAA,CAAA;sBADb,WAAW;uBAAC,OAAO,CAAA;;;MCNT,YAAY,CAAA;;yGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EATrB,YAAA,EAAA,CAAA,eAAe,CAGf,EAAA,OAAA,EAAA,CAAA,YAAY,aAGZ,eAAe,CAAA,EAAA,CAAA,CAAA;AAGN,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EAPd,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAKU,YAAY,EAAA,UAAA,EAAA,CAAA;kBAXxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,eAAe;AAChB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,eAAe;AAChB,qBAAA;AACF,iBAAA,CAAA;;;MCTY,aAAa,CAAA;AAyBxB,IAAA,WAAA,GAAA;QAtBQ,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;KAsBV;AApBjB;;;;AAIG;IACH,IACI,SAAS,CAAC,KAAc,EAAA;AAC1B,QAAA,IAAI,CAAC,UAAU,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAChD;AACD,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO;YACL,eAAe,EAAE,IAAI,CAAC,SAAS;SAChC,CAAC;KACH;;0GAvBU,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;8FAAb,aAAa,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBAHzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;AACxB,iBAAA,CAAA;0EAYK,SAAS,EAAA,CAAA;sBADZ,KAAK;gBASF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCjBT,qBAAqB,CAAA;AAJlC,IAAA,WAAA,GAAA;AAOE;;AAEG;QACK,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAsB1B,KAAA;IArBC,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC9C;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAMD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;YACL,gBAAgB,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO;YACtD,eAAe,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO;YACpD,kBAAkB,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO;YACxD,iBAAiB,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO;SACvD,CAAC;KACH;;kHA3BU,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,qBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,8JAFtB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE,2BAA2B;AACtC,iBAAA,CAAA;8BASK,OAAO,EAAA,CAAA;sBADV,KAAK;gBAUG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MChBT,mBAAmB,CAAA;AAc9B,IAAA,WAAA,GAAA;AAbA;;AAEG;QACM,IAAM,CAAA,MAAA,GAA8B,EAAE,CAAC;KAUhC;AARhB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,aAAa,EAAE,IAAI;YACnB,CAAC,CAAA,YAAA,EAAe,IAAI,CAAC,MAAM,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM;SAC9C,CAAC;KACH;;gHAZU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,0IAFpB,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,QAAQ,EAAE,CAA2B,yBAAA,CAAA;AACtC,iBAAA,CAAA;0EAKU,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCXT,mBAAmB,CAAA;AAsB9B,IAAA,WAAA,GAAA;AArBA;;AAEG;QACM,IAAM,CAAA,MAAA,GAA+B,EAAE,CAAC;KAkBjC;AAVhB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,aAAa,EAAE,IAAI;YACnB,CAAC,CAAA,YAAA,EAAe,IAAI,CAAC,MAAM,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM;AAC7C,YAAA,UAAU,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI;AAC/B,YAAA,YAAY,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK;SACnC,CAAC;KACH;;gHApBU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;oGAAnB,mBAAmB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAH/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC5B,iBAAA,CAAA;0EAKU,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAMG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCZT,kBAAkB,CAAA;AAsB7B,IAAA,WAAA,GAAA;AApBA;;;AAGG;QACc,IAAG,CAAA,GAAA,GAAe,EAAE,CAAC;AACtC;;AAEG;QACM,IAAM,CAAA,MAAA,GAA8B,EAAE,CAAC;KAYhC;AAVhB,IAAA,IACI,WAAW,GAAA;QAEb,OAAO;AACL,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,gBAAgB,EAAE,IAAI,CAAC,GAAG,KAAK,KAAK;AACpC,YAAA,CAAC,kBAAkB,IAAI,CAAC,MAAM,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK;SACvE,CAAC;KACH;;+GApBU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAlB,kBAAkB,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,CAAA,QAAA,EAAA,KAAA,CAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,UAAU;AACrB,iBAAA,CAAA;0EAOkB,GAAG,EAAA,CAAA;sBAAnB,KAAK;uBAAC,QAAQ,CAAA;gBAIN,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCZT,uBAAuB,CAAA;AAElC,IAAA,IACI,WAAW,GAAA;QAEb,OAAO;AACL,YAAA,kBAAkB,EAAE,IAAI;SACzB,CAAC;KACH;;oHARU,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;wGAAvB,uBAAuB,EAAA,QAAA,EAAA,wBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAHnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,wBAAwB;AACnC,iBAAA,CAAA;8BAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCGT,kBAAkB,CAAA;AAL/B,IAAA,WAAA,GAAA;QAUU,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;AAcxB;;;AAGG;QACM,IAAM,CAAA,MAAA,GAAsB,EAAE,CAAC;QAchC,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;QAchB,IAAe,CAAA,eAAA,GAAG,IAAI,CAAC;AAQhC,KAAA;AArDC;;;;AAIG;IACH,IACI,MAAM,CAAC,KAAc,EAAA;AACvB,QAAA,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC7C;AACD,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAQC;;;;AAIC;IACH,IACI,MAAM,CAAC,KAAc,EAAA;AACvB,QAAA,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC7C;AACD,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAGD,IAAA,IACI,WAAW,GAAA;QAEb,OAAO;YACL,YAAY,EAAE,IAAI,CAAC,cAAc;YACjC,aAAa,EAAE,IAAI,CAAC,MAAM;AAC1B,YAAA,CAAC,CAAe,YAAA,EAAA,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM;YAC5D,mBAAmB,EAAE,IAAI,CAAC,MAAM;SACjC,CAAC;KACH;AAID,IAAA,IAAI,cAAc,GAAA;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;KAC7B;IAED,kBAAkB,GAAA;QAChB,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;KAC9C;;+GA1DU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAlB,kBAAkB,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAkDf,uBAAuB,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EArD3B,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAG1B,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAL9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,QAAQ,EAAE,2BAA2B;AACrC,oBAAA,QAAQ,EAAE,YAAY;AACvB,iBAAA,CAAA;8BAaK,MAAM,EAAA,CAAA;sBADT,KAAK;gBAYG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAQF,MAAM,EAAA,CAAA;sBADT,KAAK;gBAUF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAWmB,cAAc,EAAA,CAAA;sBAApD,YAAY;uBAAC,uBAAuB,CAAA;;;MCtD1B,uBAAuB,CAAA;IAgDlC,WACU,CAAA,QAAmB,EACnB,WAAuB,EAAA;QADvB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AA9CjC;;;;AAIG;QAEM,IAAI,CAAA,IAAA,GAA2B,UAAU,CAAC;QAiB3C,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;KAwB1B;AAvCL;;;AAGG;IACH,IACI,aAAa,CAAC,KAAc,EAAA;AAC9B,QAAA,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC9C,QAAA,IAAI,IAAI,CAAC,cAAc,KAAK,QAAQ,EAAE;AACpC,YAAA,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC;AAC/B,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC;AACtF,SAAA;KACF;;AACD,IAAA,IAAI,aAAa,GAAA;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;KAC5B;AASD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,kBAAkB,EAAE,IAAI;AACxB,YAAA,UAAU,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI;AAC/B,YAAA,YAAY,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK;SACnC,CAAC;KACH;AAED,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,OAAO,CAAC;KACjD;;oHA9CU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;wGAAvB,uBAAuB,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,aAAA,EAAA,eAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,WAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAHnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,wBAAwB;AACnC,iBAAA,CAAA;yHAWU,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAOF,aAAa,EAAA,CAAA;sBADhB,KAAK;gBAiBG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCjCT,oBAAoB,CAAA;AAgC/B,IAAA,WAAA,CACU,WAAuB,EAAA;QAAvB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AA9BjC;;;AAGG;QACM,IAAM,CAAA,MAAA,GAA+B,EAAE,CAAC;AAOjD;;AAEG;QAEM,IAAI,CAAA,IAAA,GAA0C,MAAM,CAAC;QAYtD,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;KAIvB;AAdJ;;AAEG;IACH,IACI,SAAS,CAAC,KAAc,EAAA;AAC1B,QAAA,IAAI,CAAC,UAAU,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAChD;AACD,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAOD,IAAA,IACI,WAAW,GAAA;AAEb,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC;QAE1C,OAAO;AACL,YAAA,cAAc,EAAE,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,SAAS;AAC/C,YAAA,wBAAwB,EAAE,CAAC,WAAW,IAAI,IAAI,CAAC,SAAS;AACxD,YAAA,oBAAoB,EAAE,IAAI,CAAC,IAAI,KAAK,OAAO;AAC3C,YAAA,YAAY,EAAE,WAAW;AACzB,YAAA,CAAC,CAAgB,aAAA,EAAA,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW;AAC9D,YAAA,UAAU,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI;AAC/B,YAAA,YAAY,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK;SACnC,CAAC;KACH;AAED,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC;KAC/C;IAED,QAAQ,GAAA;QACN,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;AAC3C,QAAA,IAAI,OAAO,KAAK,OAAO,IAAI,OAAO,KAAK,UAAU,EAAE;AACjD,YAAA,OAAO,CAAC,IAAI,CAAC,2EAA2E,OAAO,CAAA,EAAA,CAAI,CAAC,CAAC;AACtG,SAAA;KACF;;iHA7DU,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAApB,oBAAoB,EAAA,QAAA,EAAA,6CAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,WAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,6CAA6C;AACxD,iBAAA,CAAA;iGAQU,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAKG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAMG,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAMF,SAAS,EAAA,CAAA;sBADZ,KAAK;gBAcF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCvCT,iBAAiB,CAAA;AAS5B,IAAA,WAAA,GAAA,GAAiB;AAPjB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,WAAW,EAAE,IAAI;SAClB,CAAC;KACH;;8GAPU,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAjB,iBAAiB,EAAA,QAAA,EAAA,aAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAH7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;AACxB,iBAAA,CAAA;0EAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCDT,qBAAqB,CAAA;AAwBhC,IAAA,WAAA,GAAA;QATQ,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC;KASR;AApBjB;;;AAGG;AACH,IAAA,IACI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IACD,IAAI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC/C;AAGD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;YACL,eAAe,EAAE,IAAI,CAAC,QAAQ;SAC/B,CAAC;KACH;;kHAtBU,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;sGAArB,qBAAqB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,CAAA,eAAA,EAAA,UAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAHjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC5B,iBAAA,CAAA;0EAUK,QAAQ,EAAA,CAAA;sBADX,KAAK;uBAAC,eAAe,CAAA;gBAUlB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MClBT,uBAAuB,CAAA;AASlC,IAAA,WAAA,GAAA,GAAiB;AAPjB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,kBAAkB,EAAE,IAAI;SACzB,CAAC;KACH;;oHAPU,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;wGAAvB,uBAAuB,EAAA,QAAA,EAAA,mBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAHnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC9B,iBAAA,CAAA;0EAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCuCT,UAAU,CAAA;;uGAAV,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAV,UAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAU,iBA7BnB,aAAa;QACb,kBAAkB;QAClB,oBAAoB;QACpB,qBAAqB;QACrB,qBAAqB;QACrB,kBAAkB;QAClB,mBAAmB;QACnB,iBAAiB;QACjB,mBAAmB;QACnB,uBAAuB;QACvB,uBAAuB;QACvB,uBAAuB,CAAA,EAAA,OAAA,EAAA,CAEf,YAAY,CAAA,EAAA,OAAA,EAAA,CAEpB,aAAa;QACb,kBAAkB;QAClB,oBAAoB;QACpB,qBAAqB;QACrB,qBAAqB;QACrB,kBAAkB;QAClB,mBAAmB;QACnB,iBAAiB;QACjB,mBAAmB;QACnB,uBAAuB;QACvB,uBAAuB;QACvB,uBAAuB,CAAA,EAAA,CAAA,CAAA;wGAGd,UAAU,EAAA,OAAA,EAAA,CAhBZ,CAAC,YAAY,CAAC,CAAA,EAAA,CAAA,CAAA;2FAgBZ,UAAU,EAAA,UAAA,EAAA,CAAA;kBA/BtB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,aAAa;wBACb,kBAAkB;wBAClB,oBAAoB;wBACpB,qBAAqB;wBACrB,qBAAqB;wBACrB,kBAAkB;wBAClB,mBAAmB;wBACnB,iBAAiB;wBACjB,mBAAmB;wBACnB,uBAAuB;wBACvB,uBAAuB;wBACvB,uBAAuB;AACxB,qBAAA;oBACD,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,OAAO,EAAE;wBACP,aAAa;wBACb,kBAAkB;wBAClB,oBAAoB;wBACpB,qBAAqB;wBACrB,qBAAqB;wBACrB,kBAAkB;wBAClB,mBAAmB;wBACnB,iBAAiB;wBACjB,mBAAmB;wBACnB,uBAAuB;wBACvB,uBAAuB;wBACvB,uBAAuB;AACxB,qBAAA;AACF,iBAAA,CAAA;;;MClCY,kBAAkB,CAAA;AAL/B,IAAA,WAAA,GAAA;AASE;;AAEG;QACM,IAAU,CAAA,UAAA,GAA+B,EAAE,CAAC;QAW7C,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC;AAUxB,KAAA;AApBC;;AAEG;IACH,IACI,KAAK,CAAC,KAAc,EAAA;AACtB,QAAA,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC5C;;AACD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAGD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;YACL,SAAS,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,UAAU;YAC1C,iBAAiB,EAAE,IAAI,CAAC,KAAK;YAC7B,CAAC,CAAA,UAAA,EAAa,IAAI,CAAC,UAAU,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU;SACpD,CAAC;KACH;;+GA3BU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,8KAHnB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,CAAA;2FAG1B,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAL9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,2BAA2B,YAC3B,2BAA2B,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;8BAU5B,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAKF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAUF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCtBT,YAAY,CAAA;AAHzB,IAAA,WAAA,GAAA;QA4BU,IAAG,CAAA,GAAA,GAAiC,KAAK,CAAC;QAa1C,IAAG,CAAA,GAAA,GAAiC,KAAK,CAAC;QAa1C,IAAG,CAAA,GAAA,GAAiC,KAAK,CAAC;QAa1C,IAAG,CAAA,GAAA,GAAiC,KAAK,CAAC;QAa1C,IAAG,CAAA,GAAA,GAAiC,KAAK,CAAC;QAa1C,IAAI,CAAA,IAAA,GAAiC,KAAK,CAAC;AA2DpD,KAAA;AA3IC;;;AAGG;IACH,IACI,IAAI,CAAC,KAAmC,EAAA;AAC1C,QAAA,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KAC9C;IACD,IACI,EAAE,CAAC,KAAK,EAAA;QACV,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KACpC;AACD,IAAA,IAAI,EAAE,GAAA;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC;KACjB;AAGD;;;AAGG;IACH,IACI,EAAE,CAAC,KAAK,EAAA;QACV,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KACpC;AACD,IAAA,IAAI,EAAE,GAAA;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC;KACjB;AAGD;;;AAGG;IACH,IACI,EAAE,CAAC,KAAK,EAAA;QACV,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KACpC;AACD,IAAA,IAAI,EAAE,GAAA;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC;KACjB;AAGD;;;AAGG;IACH,IACI,EAAE,CAAC,KAAK,EAAA;QACV,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KACpC;AACD,IAAA,IAAI,EAAE,GAAA;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC;KACjB;AAGD;;;AAGG;IACH,IACI,EAAE,CAAC,KAAK,EAAA;QACV,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KACpC;AACD,IAAA,IAAI,EAAE,GAAA;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC;KACjB;AAGD;;;AAGG;IACH,IACI,GAAG,CAAC,KAAK,EAAA;QACX,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KACrC;AACD,IAAA,IAAI,GAAG,GAAA;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;KAClB;AAMD,IAAA,IACI,WAAW,GAAA;AAEb,QAAA,MAAM,OAAO,GAAQ;AACnB,YAAA,GAAG,EAAE,IAAI;SACV,CAAC;QAEF,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,KAAI;;AAElD,YAAA,MAAM,KAAK,GAA8B,IAAI,CAAC,UAAU,CAAC,CAAC;AAC1D,YAAA,MAAM,KAAK,GAAG,UAAU,KAAK,IAAI,GAAG,EAAE,GAAG,CAAI,CAAA,EAAA,UAAU,EAAE,CAAC;YAC1D,OAAO,CAAC,MAAM,KAAK,CAAA,CAAE,CAAC,GAAG,KAAK,KAAK,IAAI,CAAC;YACxC,OAAO,CAAC,MAAM,KAAK,CAAA,CAAA,EAAI,KAAK,CAAE,CAAA,CAAC,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,MAAM,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;AAC/F,SAAC,CAAC,CAAC;AAEH,QAAA,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;YACnC,MAAM,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAClC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;gBACvC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;AACvC,gBAAA,MAAM,KAAK,GAAG,UAAU,KAAK,IAAI,GAAG,EAAE,GAAG,CAAI,CAAA,EAAA,UAAU,EAAE,CAAC;AAC1D,gBAAA,OAAO,CAAC,CAAA,MAAA,EAAS,KAAK,CAAA,CAAA,EAAI,KAAK,CAAE,CAAA,CAAC,GAAG,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;AACjE,aAAC,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,CAAC,CAAA,OAAA,EAAU,IAAI,CAAC,MAAM,CAAA,CAAE,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;AAC9G,SAAA;AAED,QAAA,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;YAClC,MAAM,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YAChC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;gBACtC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;AACvC,gBAAA,MAAM,KAAK,GAAG,UAAU,KAAK,IAAI,GAAG,EAAE,GAAG,CAAI,CAAA,EAAA,UAAU,EAAE,CAAC;gBAC1D,OAAO,CAAC,QAAQ,KAAK,CAAA,CAAA,EAAI,KAAK,CAAE,CAAA,CAAC,GAAG,KAAK,CAAC;AAC5C,aAAC,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,CAAC,CAAA,MAAA,EAAS,IAAI,CAAC,KAAK,CAAA,CAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;AAC/C,SAAA;;AAGD,QAAA,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC;AACjH,QAAA,OAAO,OAAO,CAAC;KAChB;AAED,IAAA,WAAW,CAAC,KAAmC,EAAA;QAC7C,IAAI,KAAK,KAAK,MAAM,EAAE;AACpB,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;QACD,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;AACzD,YAAA,OAAO,qBAAqB,CAAC,KAAK,CAAC,CAAC;AACrC,SAAA;AACD,QAAA,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE;AAC9B,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;AACD,QAAA,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC;KACpC;;yGApJU,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;6FAAZ,YAAY,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,GAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAHxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,QAAQ;AACnB,iBAAA,CAAA;8BAgBK,IAAI,EAAA,CAAA;sBADP,KAAK;gBAKF,EAAE,EAAA,CAAA;sBADL,KAAK;gBAcF,EAAE,EAAA,CAAA;sBADL,KAAK;gBAcF,EAAE,EAAA,CAAA;sBADL,KAAK;gBAcF,EAAE,EAAA,CAAA;sBADL,KAAK;gBAcF,EAAE,EAAA,CAAA;sBADL,KAAK;gBAcF,GAAG,EAAA,CAAA;sBADN,KAAK;gBASG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;AC/FhB,MAAO,YAAa,SAAQ,YAAY,CAAA;;yGAAjC,YAAY,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAY,oEAHb,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,CAAA;2FAG1B,YAAY,EAAA,UAAA,EAAA,CAAA;kBALxB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,OAAO,YACP,2BAA2B,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;;;MCE1B,YAAY,CAAA;AAgCvB,IAAA,IACI,WAAW,GAAA;AAEb,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;AAErB,QAAA,MAAM,OAAO,GAAQ;AACnB,YAAA,GAAG,EAAE,IAAI;AACT,YAAA,CAAC,YAAY,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI;SAC7B,CAAC;QAEF,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,UAAU,IAAG;;AAEhD,YAAA,MAAM,KAAK,GAAQ,IAAI,CAAC,UAAU,CAAC,CAAC;AACpC,YAAA,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,MAAM,OAAO,KAAK,KAAK,QAAQ,CAAC,EAAE;AAC9D,gBAAA,MAAM,KAAK,GAAW,UAAU,KAAK,IAAI,GAAG,EAAE,GAAG,UAAU,CAAC;gBAC5D,OAAO,CAAC,CAAY,SAAA,EAAA,KAAK,CAAI,CAAA,EAAA,KAAK,CAAE,CAAA,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;AACjD,aAAA;AACH,SAAC,CAAC,CAAC;AAEH,QAAA,OAAO,OAAO,CAAC;KAChB;;yGApDU,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;6FAAZ,YAAY,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,GAAA,EAAA,KAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAHxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,QAAQ;AACnB,iBAAA,CAAA;8BAMU,EAAE,EAAA,CAAA;sBAAV,KAAK;gBAKG,EAAE,EAAA,CAAA;sBAAV,KAAK;gBAKG,EAAE,EAAA,CAAA;sBAAV,KAAK;gBAKG,EAAE,EAAA,CAAA;sBAAV,KAAK;gBAKG,EAAE,EAAA,CAAA;sBAAV,KAAK;gBAKG,GAAG,EAAA,CAAA;sBAAX,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;AC/BhB,MAAO,YAAa,SAAQ,YAAY,CAAA;;yGAAjC,YAAY,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAY,oEAHb,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FAG1B,YAAY,EAAA,UAAA,EAAA,CAAA;kBALxB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,OAAO,YACP,2BAA2B,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;;MCG1B,eAAe,CAAA;AAM1B,IAAA,WAAA,GAAA;AALA;;AAEG;QACM,IAAM,CAAA,MAAA,GAAkD,EAAE,CAAC;KAEnD;AAEjB,IAAA,IACI,WAAW,GAAA;AAEb,QAAA,IAAI,WAAgB,CAAC;AAErB,QAAA,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;AACnC,YAAA,WAAW,GAAG,eAAe,CAAC,gBAAgB,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;AACnE,YAAA,OAAO,WAAW,CAAC;AACpB,SAAA;AAED,QAAA;;AAEE,YAAA,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;AACzC,YAAA,WAAW,GAAG,eAAe,CAAC,gBAAgB,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAC/D,SAAA;QAED,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,GAAG,IAAG;;YAEzC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,SAAS,CAAC;AACtE,YAAA,IAAI,MAAM,EAAE;gBACV,MAAM,OAAO,GAAG,eAAe,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC9D,WAAW,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,EAAE,CAAC;AAC9C,aAAA;AACH,SAAC,CAAC,CAAC;AACH,QAAA,OAAO,WAAW,CAAC;KACpB;AAEO,IAAA,OAAO,gBAAgB,CAAC,MAAqB,EAAE,UAAmB,EAAA;AACxE,QAAA,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;AACpC,QAAA,MAAM,KAAK,GAAG,UAAU,GAAG,CAAI,CAAA,EAAA,UAAU,CAAE,CAAA,GAAG,EAAE,CAAC;QACjD,OAAO;YACL,CAAC,CAAA,CAAA,EAAI,KAAK,CAAA,CAAA,EAAI,CAAC,CAAA,CAAE,GAAG,OAAO,CAAC,KAAK,QAAQ;YACzC,CAAC,CAAA,EAAA,EAAK,KAAK,CAAA,CAAA,EAAI,EAAE,CAAA,CAAE,GAAG,OAAO,EAAE,KAAK,QAAQ;YAC5C,CAAC,CAAA,EAAA,EAAK,KAAK,CAAA,CAAA,EAAI,EAAE,CAAA,CAAE,GAAG,OAAO,EAAE,KAAK,QAAQ;SAC7C,CAAC;KACH;;4GA3CU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;gGAAf,eAAe,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;;AAET,oBAAA,QAAQ,EAAE,UAAU;AACrB,iBAAA,CAAA;0EAKU,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAKF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCaT,UAAU,CAAA;;uGAAV,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAV,UAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAU,iBATnB,kBAAkB;QAClB,YAAY;QACZ,YAAY;QACZ,YAAY;QACZ,YAAY;QACZ,eAAe,CAAA,EAAA,OAAA,EAAA,CAfP,YAAY,CAAA,EAAA,OAAA,EAAA,CAEpB,kBAAkB;QAClB,YAAY;QACZ,YAAY;QACZ,eAAe;QACf,YAAY;QACZ,YAAY,CAAA,EAAA,CAAA,CAAA;AAYH,UAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAU,EAFV,SAAA,EAAA,EAAE,EAjBJ,OAAA,EAAA,CAAA,CAAC,YAAY,CAAC,CAAA,EAAA,CAAA,CAAA;2FAmBZ,UAAU,EAAA,UAAA,EAAA,CAAA;kBApBtB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,OAAO,EAAE;wBACP,kBAAkB;wBAClB,YAAY;wBACZ,YAAY;wBACZ,eAAe;wBACf,YAAY;wBACZ,YAAY;AACb,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACZ,kBAAkB;wBAClB,YAAY;wBACZ,YAAY;wBACZ,YAAY;wBACZ,YAAY;wBACZ,eAAe;AAChB,qBAAA;AACD,oBAAA,SAAS,EAAE,EAAE;AACd,iBAAA,CAAA;;;MCpBY,eAAe,CAAA;AAJ5B,IAAA,WAAA,GAAA;AAaE;;;;AAIG;QAEM,IAAI,CAAA,IAAA,GAAG,QAAQ,CAAC;AAoB1B,KAAA;AAlBC,IAAA,IACI,UAAU,GAAA;AACZ,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC;KACtE;AAED,IAAA,IAAI,aAAa,GAAA;QACf,OAAO;AACL,YAAA,MAAM,EAAE,IAAI;YACZ,CAAC,CAAA,OAAA,EAAU,IAAI,CAAC,QAAQ,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ;SAC7C,CAAC;KACH;AAED,IAAA,IAAI,gBAAgB,GAAA;QAClB,OAAO;AACL,YAAA,SAAS,EAAE,IAAI,CAAC,SAAS,KAAK,IAAI;AAClC,YAAA,CAAC,CAAa,UAAA,EAAA,IAAI,CAAC,SAAS,CAAE,CAAA,GAAG,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ;SACpE,CAAC;KACH;;4GAlCU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,oNCT5B,yMAQA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAhB,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDCa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,SAAS;+BACE,sBAAsB,EAAA,QAAA,EAAA,yMAAA,EAAA,CAAA;8BAOvB,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAIG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAOG,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAGF,UAAU,EAAA,CAAA;sBADb,WAAW;uBAAC,OAAO,CAAA;;;MEpBT,oBAAoB,CAAA;AAJjC,IAAA,WAAA,GAAA;AAKE;;;;AAIG;QAEM,IAAI,CAAA,IAAA,GAAG,QAAQ,CAAC;QAEU,IAAgB,CAAA,gBAAA,GAAG,IAAI,CAAC;AAC5D,KAAA;;iHAVY,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,mLAFrB,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,QAAQ,EAAE,CAA2B,yBAAA,CAAA;AACtC,iBAAA,CAAA;8BAQU,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAE6B,gBAAgB,EAAA,CAAA;sBAAlD,WAAW;uBAAC,oBAAoB,CAAA;;;MCTtB,sBAAsB,CAAA;AAJnC,IAAA,WAAA,GAAA;QAMuC,IAAkB,CAAA,kBAAA,GAAG,IAAI,CAAC;AAEhE,KAAA;;mHAJY,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,uJAFvB,CAAE,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAED,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oCAAoC;AAC9C,oBAAA,QAAQ,EAAE,CAAE,CAAA;AACb,iBAAA,CAAA;8BAGsC,kBAAkB,EAAA,CAAA;sBAAtD,WAAW;uBAAC,sBAAsB,CAAA;;;MCDxB,kBAAkB,CAAA;AAL/B,IAAA,WAAA,GAAA;AAME;;;;AAIG;QAEM,IAAI,CAAA,IAAA,GAAG,YAAY,CAAC;QAEI,IAAc,CAAA,cAAA,GAAG,IAAI,CAAC;AACxD,KAAA;;+GAVY,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,6KAHnB,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FAG1B,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAL9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,YACd,CAA2B,yBAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;8BAU5B,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAE2B,cAAc,EAAA,CAAA;sBAA9C,WAAW;uBAAC,kBAAkB,CAAA;;;MCVpB,mBAAmB,CAAA;AAJhC,IAAA,WAAA,GAAA;QAKoC,IAAe,CAAA,eAAA,GAAG,IAAI,CAAC;AAC1D,KAAA;;gHAFY,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,2IAFpB,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,8BAA8B;AACxC,oBAAA,QAAQ,EAAE,CAA2B,yBAAA,CAAA;AACtC,iBAAA,CAAA;8BAEmC,eAAe,EAAA,CAAA;sBAAhD,WAAW;uBAAC,mBAAmB,CAAA;;;MCFrB,sBAAsB,CAAA;IAoBjC,WACU,CAAA,QAAmB,EACnB,WAAuB,EAAA;QADvB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QApBI,IAAa,CAAA,aAAA,GAAG,IAAI,CAAC;AAC1D;;;;AAIG;QAEM,IAAI,CAAA,IAAA,GAAG,QAAQ,CAAC;AACzB;;;;AAIG;QAEM,IAAS,CAAA,SAAA,GAAG,mBAAmB,CAAC;KAOpC;IAEL,cAAc,GAAA;QACZ,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;AACpD,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;KACjE;IAED,kBAAkB,GAAA;AAChB,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;AACvE,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAI,CAAC,cAAc,EAAE,CAAC;AACvB,SAAA;KACF;;mHApCU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;uGAAtB,sBAAsB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,sBAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,WAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;AAC7B,iBAAA,CAAA;yHAGsC,aAAa,EAAA,CAAA;sBAAjD,WAAW;uBAAC,sBAAsB,CAAA;gBAO1B,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAOG,SAAS,EAAA,CAAA;sBADjB,WAAW;uBAAC,iBAAiB,CAAA;;sBAC7B,KAAK;;;MCUK,YAAY,CAAA;;yGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,iBAnBrB,eAAe;QACf,oBAAoB;QACpB,sBAAsB;QACtB,kBAAkB;QAClB,mBAAmB;QACnB,sBAAsB,CAAA,EAAA,OAAA,EAAA,CAGtB,YAAY,CAAA,EAAA,OAAA,EAAA,CAGZ,eAAe;QACf,oBAAoB;QACpB,sBAAsB;QACtB,kBAAkB;QAClB,mBAAmB;QACnB,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAGb,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EAZd,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAUU,YAAY,EAAA,UAAA,EAAA,CAAA;kBArBxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,eAAe;wBACf,oBAAoB;wBACpB,sBAAsB;wBACtB,kBAAkB;wBAClB,mBAAmB;wBACnB,sBAAsB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,eAAe;wBACf,oBAAoB;wBACpB,sBAAsB;wBACtB,kBAAkB;wBAClB,mBAAmB;wBACnB,sBAAsB;AACvB,qBAAA;AACF,iBAAA,CAAA;;;MCxBY,YAAY,CAAA;AAyEvB,IAAA,WAAA,GAAA;AApEA;;;AAGG;QACM,IAAK,CAAA,KAAA,GAAoC,EAAE,CAAC;QAa7C,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC;QAaf,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QAajB,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;AAE3B;;AAEG;QACM,IAAgB,CAAA,gBAAA,GAAG,aAAa,CAAC;KAoB1B;AA9DhB;;;AAGG;IACH,IACI,KAAK,CAAC,KAAc,EAAA;AACtB,QAAA,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC5C;;AACD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAGD;;;AAGG;IACH,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC9C;;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAGD;;;AAGG;IACH,IACI,SAAS,CAAC,KAAc,EAAA;AAC1B,QAAA,IAAI,CAAC,UAAU,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAChD;;AACD,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAQD,IAAA,IACI,SAAS,GAAA;AACX,QAAA,OAAO,EAAC,eAAe,EAAE,IAAI,CAAC,gBAAgB,EAAC,CAAC;KACjD;AAED,IAAA,IACI,WAAW,GAAA;AACb,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,OAAO;YACL,CAAC,CAAA,MAAA,EAAS,KAAK,CAAA,CAAE,GAAG,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,KAAK;YACxD,SAAS,EAAE,KAAK,KAAK,QAAQ;YAC7B,SAAS,EAAE,KAAK,KAAK,QAAQ;YAC7B,WAAW,EAAE,IAAI,CAAC,KAAK;YACvB,SAAS,EAAE,IAAI,CAAC,OAAO;YACvB,eAAe,EAAE,IAAI,CAAC,SAAS;SAChC,CAAC;KACH;;yGAvEU,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;6FAAZ,YAAY,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,SAAA,EAAA,WAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAHxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,QAAQ;AACnB,iBAAA,CAAA;0EAUU,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAOF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAcF,OAAO,EAAA,CAAA;sBADV,KAAK;gBAcF,SAAS,EAAA,CAAA;sBADZ,KAAK;gBAYG,gBAAgB,EAAA,CAAA;sBAAxB,KAAK;gBAGF,SAAS,EAAA,CAAA;sBADZ,WAAW;uBAAC,OAAO,CAAA;gBAMhB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCnDT,SAAS,CAAA;;sGAAT,SAAS,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAT,SAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAS,EAHlB,YAAA,EAAA,CAAA,YAAY,CANZ,EAAA,OAAA,EAAA,CAAA,YAAY,aAGZ,YAAY,CAAA,EAAA,CAAA,CAAA;AAMH,SAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAS,EAVX,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAQU,SAAS,EAAA,UAAA,EAAA,CAAA;kBAXrB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACZ,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;MCPY,kBAAkB,CAAA;AA+B7B,IAAA,WAAA,GAAA;QAjBQ,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC;KAiBJ;AA5BnB;;;AAGG;IACH,IACI,KAAK,CAAC,KAAc,EAAA;AACtB,QAAA,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC5C;;AACD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAOD,IAAA,IACI,WAAW,GAAA;AACb,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,YAAY,EAAE,IAAI;YAClB,uBAAuB,EAAE,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,EAAE;AAC3E,YAAA,CAAC,yBAAyB,IAAI,CAAC,UAAU,CAAE,CAAA,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,SAAS;YACvG,kBAAkB,EAAE,IAAI,CAAC,KAAK;SAC/B,CAAC;AACF,QAAA,OAAO,OAAO,CAAC;KAChB;;+GA7BU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAlB,kBAAkB,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,cAAc;AACzB,iBAAA,CAAA;0EASK,KAAK,EAAA,CAAA;sBADR,KAAK;gBAWG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCnBT,sBAAsB,CAAA;AA4DjC,IAAA,WAAA,CACU,WAAuB,EAAA;QAAvB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QAlCzB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;KAmCrB;AA9CL;;;AAGG;AACH,IAAA,IACI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IACD,IAAI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC/C;AAGD,IAAA,IACI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;KAC9B;AAED,IAAA,IACI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC;KAClC;;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC;KACpC;AAED,IAAA,IAAsC,WAAW,GAAA;AAC/C,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;KACtB;AAED,IAAA,IACI,WAAW,GAAA;AACb,QAAA,MAAM,IAAI,GAAgB,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;QACzD,OAAO;AACL,YAAA,iBAAiB,EAAE,IAAI;YACvB,wBAAwB,EAAE,IAAI,CAAC,QAAQ,KAAK,GAAG,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ;AAC7E,YAAA,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM;YACrB,QAAQ,EAAE,IAAI,CAAC,UAAU;YACzB,CAAC,CAAA,gBAAA,EAAmB,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;SAChD,CAAC;KACH;;mHA1DU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;uGAAtB,sBAAsB,EAAA,QAAA,EAAA,qCAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,kBAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qCAAqC;AAC/C,oBAAA,QAAQ,EAAE,gBAAgB;AAC3B,iBAAA,CAAA;iGASU,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAMG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAOF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAUF,UAAU,EAAA,CAAA;sBADb,WAAW;uBAAC,oBAAoB,CAAA;gBAM7B,YAAY,EAAA,CAAA;sBADf,WAAW;uBAAC,eAAe,CAAA;gBAMxB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,eAAe,CAAA;gBAKU,WAAW,EAAA,CAAA;sBAAhD,WAAW;uBAAC,mBAAmB,CAAA;gBAK5B,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCxCT,eAAe,CAAA;;4GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,iBATX,kBAAkB,EAAE,sBAAsB,CAMvD,EAAA,OAAA,EAAA,CAAA,YAAY,aAJZ,kBAAkB;QAClB,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAMb,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EAJjB,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAEU,eAAe,EAAA,UAAA,EAAA,CAAA;kBAV3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,CAAC,kBAAkB,EAAE,sBAAsB,CAAC;AAC1D,oBAAA,OAAO,EAAE;wBACP,kBAAkB;wBAClB,sBAAsB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;ACLK,MAAO,sBAAuB,SAAQ,eAAe,CAAA;AA8CzD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE,CAAC;QAhCV,IAAkB,CAAA,kBAAA,GAAG,KAAK,CAAC;QAiB3B,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAEjB;;;AAGG;QACM,IAAW,CAAA,WAAA,GAAsB,QAAQ,CAAC;AAEnD;;;AAGG;AACO,QAAA,IAAA,CAAA,aAAa,GAA0B,IAAI,YAAY,EAAE,CAAC;KAInE;AA5CD;;;AAGG;IACH,IACI,iBAAiB,CAAC,KAAc,EAAA;AAClC,QAAA,IAAI,CAAC,kBAAkB,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KACxD;;AACD,IAAA,IAAI,iBAAiB,GAAA;QACnB,OAAO,IAAI,CAAC,kBAAkB,CAAC;KAChC;AAGD;;;AAGG;IACH,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC9C,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE;AAC9B,YAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;AACzB,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACnC,SAAA;KACF;;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAmBD,IAAA,IACa,WAAW,GAAA;QACtB,OAAO;AACL,YAAA,aAAa,EAAE,IAAI;YACnB,YAAY,EAAE,IAAI,CAAC,OAAO;AAC1B,YAAA,QAAQ,EAAE,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,OAAO;AAChD,YAAA,GAAG,EAAE,IAAI;AACT,YAAA,CAAC,OAAO,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO;AACpD,YAAA,CAAC,OAAO,IAAI,CAAC,OAAO,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK;YACtD,CAAC,CAAA,IAAA,EAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAE,CAAA,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK;YACrE,CAAC,CAAA,IAAA,EAAO,IAAI,CAAC,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI;YACjC,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;KACH;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,EAAE;AAC9D,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC;AAC3E,SAAA;KACF;;mHArEU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,mWCVnC,8HAEA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAgB,gBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,SAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDQa,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBANlC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,2CAA2C,YAG3C,gBAAgB,EAAA,QAAA,EAAA,8HAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;0EAWtB,iBAAiB,EAAA,CAAA;sBADpB,KAAK;gBAcF,OAAO,EAAA,CAAA;sBADV,KAAK;gBAiBG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAMI,aAAa,EAAA,CAAA;sBAAtB,MAAM;gBAOM,WAAW,EAAA,CAAA;sBADvB,WAAW;uBAAC,OAAO,CAAA;;;MEzCT,mBAAmB,CAAA;;gHAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;iHAAnB,mBAAmB,EAAA,YAAA,EAAA,CAV5B,sBAAsB,CAAA,EAAA,OAAA,EAAA,CAMtB,YAAY;AACZ,QAAA,aAAa,aAJb,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAOb,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,EALrB,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,aAAa;AACd,SAAA,CAAA,EAAA,CAAA,CAAA;2FAEU,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAZ/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,sBAAsB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,sBAAsB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,aAAa;AACd,qBAAA;AACF,iBAAA,CAAA;;;MCXY,iCAAiC,CAAA;AAE5C,IAAA,WAAA,GAAA,GAAiB;AAEjB,IAAA,IAA0B,WAAW,GAAA;QACnC,OAAO;AACL,YAAA,kCAAkC,EAAE,IAAI;SACzC,CAAC;KACH;;8HARU,iCAAiC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjC,iCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iCAAiC,4HCP9C,+BACA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,CAAA;2FDMa,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBAL7C,SAAS;+BACE,+BAA+B,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;0EAQf,WAAW,EAAA,CAAA;sBAApC,WAAW;uBAAC,OAAO,CAAA;;;MEPT,kBAAkB,CAAA;AAC7B,IAAA,WAAA,GAAA;AAEQ,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,eAAe,CAAM,EAAE,CAAC,CAAC;AACxD,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;AAEjD,QAAA,IAAA,CAAA,kBAAkB,GAAG,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;AACjE,QAAA,IAAA,CAAA,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;KAN7C;AAQhB,IAAA,YAAY,CAAC,MAAW,EAAA;AACtB,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACpC;AAED,IAAA,aAAa,CAAC,OAAgB,EAAA;AAC5B,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACvC;;+GAfU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAAlB,kBAAkB,EAAA,CAAA,CAAA;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAD9B,UAAU;;;MCuBE,0BAA0B,CAAA;IAErC,WACU,CAAA,UAAsB,EACtB,QAAmB,EACnB,iBAAoC,EACpC,YAA0B,EAC1B,kBAAsC,EAAA;QAJtC,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;QACtB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QACpC,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAc;QAC1B,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAoB;QAMvC,IAAY,CAAA,YAAA,GAA0B,UAAU,CAAC;QAGjD,IAAO,CAAA,OAAA,GAAY,IAAI,CAAC;AACvB,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,YAAY,EAAW,CAAC;QAIhD,IAAU,CAAA,UAAA,GAAG,IAAI,CAAC;QAGjB,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;QASxB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAclB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;KAvCrB;IAkBL,IACI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC/C;AACD,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IAGD,IACI,QAAQ,CAAC,KAA4B,EAAA;AACvC,QAAA,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC9C,QAAA,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE;AAC/B,YAAA,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;AAC1B,YAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACnC,YAAA,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5C,SAAA;KACF;AACD,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAGD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,0BAA0B,EAAE,IAAI;YAChC,qBAAqB,EAAE,IAAI,CAAC,QAAQ;YACpC,CAAC,CAAA,8BAAA,EAAiC,IAAI,CAAC,YAAY,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY;YAC3E,QAAQ,EAAE,IAAI,CAAC,QAAQ;AACvB,YAAA,QAAQ,EAAE,CAAC,IAAI,CAAC,OAAO;SACxB,CAAC;KACH;AAED,IAAA,IACY,QAAQ,GAAA;QAClB,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,GAAG,CAAC;KACnC;AAED,IAAA,IAEY,YAAY,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;KAC9B;AAED,IAAA,IACY,YAAY,GAAA;QACtB,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAGD,IAAA,SAAS,CAAC,MAAqB,EAAA;AAC7B,QAAA,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;YACvC,MAAM,CAAC,cAAc,EAAE,CAAC;AACxB,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC/D,YAAA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;AACxB,SAAA;KACF;IAGO,OAAO,GAAA;AACb,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC/D,QAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;KACrB;IAED,kBAAkB,GAAA;QAChB,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC;AACpE,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;AACf,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC;AACpE,SAAA;AACD,QAAA,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;AAC5B,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC;AACpE,SAAA;KACF;IAED,QAAQ,GAAA;QACN,QAAgB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE;KAC3C;AAED,IAAA,KAAK,CAAC,MAAoB,EAAA;QACxB,IAAI,IAAI,CAAC,eAAe,EAAE;AACxB,YAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,IAAI,SAAS,EAAE,EAAC,aAAa,EAAE,KAAK,EAAC,CAAC,CAAC;AACzF,YAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;AACvC,SAAA;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,CAAC;KACnD;IAED,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,SAAS,CAAC,OAAO,IAAG;AACpG,YAAA,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;AACjC,SAAC,CAAC,CAAC;KACJ;;uHA1HU,0BAA0B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAhB,IAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAAiB,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,6nBC1BvC,2HAKA,EAAA,MAAA,EAAA,CAAA,kEAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAJ,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDqBa,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBALtC,SAAS;+BACE,uBAAuB,EAAA,QAAA,EAAA,2HAAA,EAAA,MAAA,EAAA,CAAA,kEAAA,CAAA,EAAA,CAAA;oNAiBxB,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBACI,cAAc,EAAA,CAAA;sBAAvB,MAAM;gBAEkB,OAAO,EAAA,CAAA;sBAA/B,SAAS;uBAAC,YAAY,CAAA;gBAQnB,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAUF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAeF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAYR,QAAQ,EAAA,CAAA;sBADnB,WAAW;uBAAC,eAAe,CAAA;gBAOhB,YAAY,EAAA,CAAA;sBAFvB,WAAW;uBAAC,eAAe,CAAA;;sBAC3B,WAAW;uBAAC,oBAAoB,CAAA;gBAMrB,YAAY,EAAA,CAAA;sBADvB,WAAW;uBAAC,oBAAoB,CAAA;gBAMjC,SAAS,EAAA,CAAA;sBADR,YAAY;uBAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAU3B,OAAO,EAAA,CAAA;sBADd,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;ME5FtB,4BAA4B,CAAA;AALzC,IAAA,WAAA,GAAA;QAiBU,IAAS,CAAA,SAAA,GAAY,KAAK,CAAC;AAyBpC,KAAA;IAhCC,IACI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC/C;AACD,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAKD,IAAA,IAA0B,WAAW,GAAA;QACnC,OAAO;AACL,YAAA,2BAA2B,EAAE,IAAI;SAClC,CAAC;KACH;IAED,kBAAkB,GAAA;QAChB,IAAI,CAAC,wBAAwB,EAAE,CAAC;KACjC;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE;YACvB,IAAI,CAAC,wBAAwB,EAAE,CAAC;AACjC,SAAA;KACF;IAEO,wBAAwB,GAAA;QAC9B,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC,MAAM,KAAI;AAC1C,YAAA,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;AAClC,SAAC,CAAC,CAAC;KACJ;;yHApCU,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;6GAA5B,4BAA4B,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,SAAA,EActB,0BAA0B,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjC7C,2HAEA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAK,iCAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDiBa,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBALxC,SAAS;+BACE,yBAAyB,EAAA,QAAA,EAAA,2HAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;8BAQ1B,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAS8D,kBAAkB,EAAA,CAAA;sBAArF,eAAe;AAAC,gBAAA,IAAA,EAAA,CAAA,0BAA0B,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAA;gBAExC,WAAW,EAAA,CAAA;sBAApC,WAAW;uBAAC,OAAO,CAAA;;;MEzBT,uBAAuB,CAAA;AAElC,IAAA,WAAA,CACU,kBAAsC,EAAA;QAAtC,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAoB;QAIzC,IAAkB,CAAA,kBAAA,GAAY,KAAK,CAAC;AAIjC,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,YAAY,EAAW,CAAC;KAP1C;AASL,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,uBAAuB,EAAE,IAAI;SAC9B,CAAC;KACH;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,oBAAoB,EAAE,CAAC;KAC7B;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;KAClC;AAED,IAAA,YAAY,CAAC,MAAW,EAAA;QACtB,IAAI,IAAI,CAAC,MAAM,EAAE;AACf,YAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAiB,CAAC,CAAC;AAC1C,SAAA;KACF;IAEO,oBAAoB,CAAC,YAAqB,IAAI,EAAA;AACpD,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,8BAA8B;gBACjC,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,OAAO,KAAI;oBAChE,UAAU,CAAC,MAAK;AACd,wBAAA,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC;AACpC,qBAAC,CAAC,CAAA;AACJ,iBAAC,CAAC,CAAC;AACN,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,CAAC;AACnD,SAAA;KACF;;oHA9CU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,8KCVpC,+gBASA,EAAA,MAAA,EAAA,CAAA,4LAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,oBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDCa,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,SAAS;+BACE,oBAAoB,EAAA,QAAA,EAAA,+gBAAA,EAAA,MAAA,EAAA,CAAA,4LAAA,CAAA,EAAA,CAAA;sGAarB,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAEI,MAAM,EAAA,CAAA;sBAAf,MAAM;gBAGH,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MEfT,gCAAgC,CAAA;AAS3C,IAAA,WAAA,CACS,iBAAoC,EAAA;QAApC,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QARpC,IAAI,CAAA,IAAA,GAAY,EAAE,CAAC;QACnB,IAAE,CAAA,EAAA,GAAY,EAAE,CAAC;KAQrB;;6HAXM,gCAAgC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhC,gCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gCAAgC,sLCR7C,qYAWA,EAAA,MAAA,EAAA,CAAA,uBAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAApB,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAE,IAAA,CAAA,cAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FDHa,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAN5C,SAAS;+BACE,8BAA8B,EAAA,eAAA,EAGvB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,qYAAA,EAAA,MAAA,EAAA,CAAA,uBAAA,CAAA,EAAA,CAAA;wGAItC,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,EAAE,EAAA,CAAA;sBAAV,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;;;MEmDK,oBAAoB,CAAA;AAG/B,IAAA,WAAA,CACU,UAAsB,EACtB,QAAmB,EACnB,MAAc,EACd,iBAAoC,EACpC,gBAAkC,EAClC,YAA0B,EAC1B,kBAAsC;;;QANtC,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;QACtB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACd,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QACpC,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;QAClC,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAc;QAC1B,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAoB;AAOhD,QAAA,IAAA,CAAA,QAAQ,GAAQ,CAAC,KAAU,KAAI,GAAG,CAAC;QAmB1B,IAAO,CAAA,OAAA,GAAG,IAAI,CAAC;QAShB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QASlB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAEjB,IAAU,CAAA,UAAA,GAAG,EAAE,CAAC;QAChB,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC;;QAEd,IAAgB,CAAA,gBAAA,GAAG,MAAM,CAAC;QAC1B,IAAY,CAAA,YAAA,GAAwB,UAAU,CAAC;QAC/C,IAAW,CAAA,WAAA,GAAG,WAAW,CAAC;QAC1B,IAAM,CAAA,MAAA,GAAG,IAAI,CAAC;QACd,IAAoB,CAAA,oBAAA,GAAG,UAAU,CAAC;QAClC,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC;QACjB,IAAc,CAAA,cAAA,GAAG,oBAAoB,CAAC;QACtC,IAAa,CAAA,aAAA,GAAgC,MAAM,CAAC;QACpD,IAAwB,CAAA,wBAAA,GAAW,kBAAkB,CAAC;QACtD,IAAiC,CAAA,iCAAA,GAAgB,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAevG,QAAA,IAAA,CAAA,MAAM,GAAa,CAAC,EAAE,CAAC,CAAC;AAEb,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,YAAY,EAAqB,CAAC;QAgB/D,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAEN,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,YAAY,EAAW,CAAC;QAE/D,IAAiB,CAAA,iBAAA,GAAG,KAAK,CAAC;QAUlB,IAAgB,CAAA,gBAAA,GAAU,EAAE,CAAC;QA4C7B,IAAS,CAAA,SAAA,GAAkB,IAAI,CAAC;QAuCjC,IAAc,CAAA,cAAA,GAAG,CAAC,CAAC;QAWlB,IAAY,CAAA,YAAA,GAAW,EAAE,CAAC;AAS1B,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;KA9M7C;AAOJ,IAAA,UAAU,CAAC,KAA0B,EAAA;QACnC,IAAI,KAAK,KAAK,IAAI,EAAE;AAClB,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACpB,SAAA;KACF;AAED,IAAA,gBAAgB,CAAC,EAAO,EAAA;AACtB,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;KACpB;AAED,IAAA,iBAAiB,CAAC,EAAO,EAAA;KACxB;AAED,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AAClC,QAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;KAC5B;IAID,IACI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC/C;AACD,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IAGD,IACI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC/C;AACD,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IAiBD,IACI,KAAK,CAAC,KAAwB,EAAA;QAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QACnE,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,QAAQ,CAAC,QAAQ,EAAE,EAAE;AAClD,YAAA,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;AACvB,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACxB,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACnC,SAAA;KACF;AACD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;KAC5E;IAKD,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC9C,QAAA,IAAI,QAAQ,KAAK,IAAI,CAAC,QAAQ,EAAE;AAC9B,YAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;AACzB,YAAA,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;AAChD,YAAA,IAAI,QAAQ,EAAE;AACZ,gBAAA,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,CAAC;AAC1C,aAAA;AACF,SAAA;KACF;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;IAOD,IAAI,eAAe,CAAC,KAAK,EAAA;AACvB,QAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;AAC9B,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;AACD,IAAA,IAAI,eAAe,GAAA;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC;KAC9B;AAGD,IAAA,IAAI,mBAAmB,GAAA;QACrB,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACtE;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,CAAA,EAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAA,CAAA,EAAI,IAAI,CAAC,wBAAwB,CAAA,CAAE,CAAC;KAC1E;AAED,IAAA,IAAI,eAAe,GAAA;QACjB,OAAO,OAAO,IAAI,CAAC,iCAAiC,IAAI,OAAO,IAAI,CAAC,wBAAwB,CAAC;KAC9F;;AAcD,IAAA,IAA0B,WAAW,GAAA;QACnC,OAAO;AACL,YAAA,mBAAmB,EAAE,IAAI;AACzB,YAAA,kCAAkC,EAAE,IAAI,CAAC,aAAa,KAAK,MAAM;YACjE,IAAI,EAAE,IAAI,CAAC,OAAO;YAClB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC;KACH;AAED,IAAA,IACY,QAAQ,GAAA;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IACD,IAAY,QAAQ,CAAC,KAAK,EAAA;QACxB,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC;AACrF,SAAC,CAAC,CAAC;KACJ;AAGkC,IAAA,OAAO,CAAC,MAAqB,EAAA;QAC9D,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;AAE1B,QAAA,IAAI,MAAM,CAAC,GAAG,KAAK,QAAQ,EAAE;AAC3B,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;AACrB,YAAA,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;YACtB,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO;AACR,SAAA;AACD,QAAA,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;AACnJ,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,YAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBAChB,IAAI,CAAC,QAAQ,EAAE,CAAC;AACjB,aAAA;YACD,OAAO;AACR,SAAA;AACD,QAAA,IAAI,MAAM,CAAC,GAAG,KAAK,KAAK,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;AAC3E,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,YAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBAChB,IAAI,CAAC,QAAQ,EAAE,CAAC;AACjB,aAAA;YACD,OAAO;AACR,SAAA;KACF;AAEoC,IAAA,SAAS,CAAC,MAAqB,EAAA;QAClE,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;AAC1B,QAAA,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;KACvC;AAEkC,IAAA,OAAO,CAAC,MAAkB,EAAA;QAC3D,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AACjB,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACrB,SAAA;KACF;IAID,IAAI,WAAW,CAAC,KAAK,EAAA;AACnB,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;AACjC,QAAA,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC;AACzD,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;AACD,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;AAGD,IAAA,IAAI,cAAc,GAAA;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;KAC7B;IACD,IAAI,cAAc,CAAC,KAAc,EAAA;AAC/B,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,GAAG,KAAK,GAAG,KAAK,CAAC;AACrD,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK,KAAK,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC;KACvD;AAKD,IAAA,WAAW,CAAC,MAAmB,EAAA;AAC7B,QAAA,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC;AACzB,QAAA,IAAI,CAAC,WAAW,GAAG,OAAO,GAAG,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;AACnD,QAAA,OAAO,OAAO,CAAC;KAChB;IAED,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;KACrB;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;;QAEjC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAClD,QAAA,IAAI,CAAC,wBAAwB,EAAE,WAAW,EAAE,CAAC;KAC9C;IAED,kBAAkB,GAAA;QAChB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;QACrD,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,KAAI;AAChD,YAAA,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;AACxC,YAAA,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,KAAK,KAAK,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AACxH,SAAC,CAAC,CAAC;QACH,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,gBAAgB,EAAE,CAAC;AAExB,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,cAAc,EAAE,CAAC,aAAa,EAAE,CAAC;QACpG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC5E,QAAA,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,CAAC;QACzC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,kBAAkB,EAAE,CAAC;KAC3B;IAED,eAAe,GAAA;;AAEb,QAAA,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,KAChG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAK;AACnB,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAClB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AAC/C,gBAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;AACvC,aAAA;SACF,CAAC,CACH,CAAC;QACF,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;IAEO,oBAAoB,CAAC,YAAqB,IAAI,EAAA;AACpD,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,SAAS,CACzF,CAAC,OAAO,KAAI;AACV,gBAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC;AACjC,gBAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACnC,aAAC,CACF,CAAC;AAEF,YAAA,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,SAAS,CACrF,CAAC,MAAM,KAAI;gBACT,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;oBAC9C,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC1F,eAAe,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;wBACzC,IAAI,IAAI,KAAK,MAAM,EAAE;AACnB,4BAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;AACvB,yBAAA;AACH,qBAAC,CAAC,CAAC;AACJ,iBAAA;gBACD,IAAI,CAAC,qBAAqB,EAAE,CAAC;AAC/B,aAAC,CACF,CAAC;AACH,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,8BAA8B,EAAE,WAAW,EAAE,CAAC;AACnD,YAAA,IAAI,CAAC,8BAA8B,EAAE,WAAW,EAAE,CAAC;AACnD,YAAA,IAAI,CAAC,4BAA4B,EAAE,WAAW,EAAE,CAAC;AAClD,SAAA;KACF;AAED,IAAA,eAAe,CAAC,MAAkB,EAAA;QAChC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,MAAM,KAAI;YACtC,IAAI,CAAC,MAAM,CAAC,SAAS;AAAE,gBAAA,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;AACjD,SAAC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,EAAE,CAAC;KACjB;IAED,gBAAgB,GAAA;QACd,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,KAAI;YAChD,IAAI,CAAC,MAAM,CAAC,QAAQ;AAAE,gBAAA,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;AAC/C,SAAC,CAAC,CAAC;KACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCD,IAAA,eAAe,CAAC,MAAe,EAAA;QAC7B,IAAI,CAAC,QAAQ,EAAE,CAAC;KACjB;IAED,QAAQ,GAAA;QACN,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;AAC1B,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;KAC7E;;;;;;;;;;;;;;AAgBD,IAAA,aAAa,CAAC,KAAa,EAAA;QACzB,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;QAC/C,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,KAAI;YAC/C,IAAI,CAAC,CAAC,YAAY,EAAE;AAClB,gBAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC;AACzE,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACrB,aAAA;AACH,SAAC,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;KACtF;IAED,kBAAkB,GAAA;AAChB,QAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,gCAAgC,CAAC,CAAC;QAC/F,IAAI,CAAC,kBAAkB,EAAE,CAAC;KAC3B;IAED,kBAAkB,GAAA;QAChB,IAAI,CAAC,IAAI,CAAC,eAAe;YAAE,OAAO;QAElC,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,IAAG;YAC9C,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;AACxC,YAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AACpC,SAAC,CAAC,CAAC;QAEH,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACvD,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;QACrD,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC;QACnD,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;QACrD,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACvD,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;KACjE;IAED,gBAAgB,GAAA;QACd,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE;gBACvE,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC/G,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;AACxE,aAAA;AACF,SAAA;KACF;AAED,IAAA,mBAAmB,CAAC,MAAqB,EAAA;AACvC,QAAA,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;AAEzE,QAAA,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;YAChD,MAAM,CAAC,eAAe,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAC;AAC3E,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAChC,SAAA;KACF;IAEO,YAAY,CAAC,MAAkC,EAAE,QAAiB,EAAA;AACxE,QAAA,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,IAAG;YACrC,IAAI,IAAI,KAAK,MAAM,EAAE;AACnB,gBAAA,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC5B,aAAA;AACH,SAAC,CAAC,CAAC;QACH,IAAI,CAAC,qBAAqB,EAAE,CAAC;KAC9B;IAEO,qBAAqB,GAAA;QAC3B,UAAU,CAAC,MAAK;YACd,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACrF,YAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;AACxC,SAAC,CAAC,CAAA;KACH;;iHApbU,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAAF,IAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAAiB,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EAVpB,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,WAAA,EAAA,aAAA,EAAA,MAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,SAAA,EAAA,WAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,wBAAA,EAAA,0BAAA,EAAA,iCAAA,EAAA,mCAAA,EAAA,KAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,mBAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,eAAA,EAAA,EAAA,EAAA,SAAA,EAAA;QACT,kBAAkB;;AAElB,QAAA;AACE,YAAA,OAAO,EAAE,iBAAiB;AAC1B,YAAA,WAAW,EAAE,UAAU,CAAC,MAAM,oBAAoB,CAAC;AACnD,YAAA,KAAK,EAAE,IAAI;AACZ,SAAA;KACF,EAwIgB,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,SAAA,EAAA,0BAA0B,+RCxM7C,oiFA6DA,EAAA,MAAA,EAAA,CAAA,yiBAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAI,uBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAd,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAe,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,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,EAAA,EAAA,IAAA,EAAAf,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAgB,oBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAhB,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,YAAA,EAAAA,EAAA,CAAA,cAAA,EAAA,EAAA,CAAA,CAAA;2FDKa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAfhC,SAAS;+BACE,gBAAgB,EAAA,QAAA,EAGhB,cAAc,EACb,SAAA,EAAA;wBACT,kBAAkB;;AAElB,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,0BAA0B,CAAC;AACnD,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACF,qBAAA,EAAA,QAAA,EAAA,oiFAAA,EAAA,MAAA,EAAA,CAAA,yiBAAA,CAAA,EAAA,CAAA;wQAsCQ,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAGF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAUF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBASG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,gBAAgB,EAAA,CAAA;sBAAxB,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBACG,oBAAoB,EAAA,CAAA;sBAA5B,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,aAAa,EAAA,CAAA;sBAArB,KAAK;gBACG,wBAAwB,EAAA,CAAA;sBAAhC,KAAK;gBACG,iCAAiC,EAAA,CAAA;sBAAzC,KAAK;gBAGF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAea,WAAW,EAAA,CAAA;sBAA7B,MAAM;gBAGH,OAAO,EAAA,CAAA;sBADV,KAAK;gBAgBa,aAAa,EAAA,CAAA;sBAA/B,MAAM;gBA+B6D,kBAAkB,EAAA,CAAA;sBAArF,eAAe;AAAC,gBAAA,IAAA,EAAA,CAAA,0BAA0B,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAA;gBAIvC,YAAY,EAAA,CAAA;sBAAtC,SAAS;uBAAC,cAAc,CAAA;gBACK,eAAe,EAAA,CAAA;sBAA5C,SAAS;uBAAC,iBAAiB,CAAA;gBAEF,WAAW,EAAA,CAAA;sBAApC,WAAW;uBAAC,OAAO,CAAA;gBAUR,QAAQ,EAAA,CAAA;sBADnB,WAAW;uBAAC,eAAe,CAAA;gBAWO,OAAO,EAAA,CAAA;sBAAzC,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAyBI,SAAS,EAAA,CAAA;sBAA7C,YAAY;uBAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAKA,OAAO,EAAA,CAAA;sBAAzC,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;ME/NtB,iBAAiB,CAAA;;8GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,iBAjB1B,oBAAoB;QACpB,0BAA0B;QAC1B,4BAA4B;QAC5B,iCAAiC;QACjC,uBAAuB;QACvB,gCAAgC,CAAA,EAAA,OAAA,EAAA,CAExB,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,CAAA,EAAA,OAAA,EAAA,CAE3D,oBAAoB;QACpB,0BAA0B;QAC1B,4BAA4B;QAC5B,iCAAiC;QACjC,uBAAuB,CAAA,EAAA,CAAA,CAAA;AAId,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,EAFjB,SAAA,EAAA,CAAC,kBAAkB,CAAC,EARtB,OAAA,EAAA,CAAA,CAAC,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,CAAC,CAAA,EAAA,CAAA,CAAA;2FAUnD,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAnB7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,oBAAoB;wBACpB,0BAA0B;wBAC1B,4BAA4B;wBAC5B,iCAAiC;wBACjC,uBAAuB;wBACvB,gCAAgC;AACjC,qBAAA;oBACD,OAAO,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,CAAC;AAC9D,oBAAA,OAAO,EAAE;wBACP,oBAAoB;wBACpB,0BAA0B;wBAC1B,4BAA4B;wBAC5B,iCAAiC;wBACjC,uBAAuB;AACxB,qBAAA;oBACD,SAAS,EAAE,CAAC,kBAAkB,CAAC;AAChC,iBAAA,CAAA;;;MC3BY,gBAAgB,CAAA;AAH7B,IAAA,WAAA,GAAA;QAoBU,IAAS,CAAA,SAAA,GAAG,IAAI,CAAA;QAkBhB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;AAmC3B,KAAA;AAjEC;;;;AAIG;IACH,IACI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC/C;;AACD,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAQD;;;AAGG;AACH,IAAA,IACI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IACD,IAAI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC/C;AAGD,IAAA,IACI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;KACpC;AAED,IAAA,IACI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;KAC9B;AAED,IAAA,IACI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC;KAClC;;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC;KACpC;AAED,IAAA,IACI,cAAc,GAAA;QAChB,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,SAAS,CAAC;KACzC;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,QAAQ;YACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;KACH;;6GArEU,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;iGAAhB,gBAAgB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,kBAAA,EAAA,cAAA,EAAA,qBAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAH5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,YAAY;AACvB,iBAAA,CAAA;8BAYK,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAaG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAMF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAUF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,mBAAmB,CAAA;gBAM5B,UAAU,EAAA,CAAA;sBADb,WAAW;uBAAC,oBAAoB,CAAA;gBAM7B,YAAY,EAAA,CAAA;sBADf,WAAW;uBAAC,eAAe,CAAA;gBAMxB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,eAAe,CAAA;gBAMxB,cAAc,EAAA,CAAA;sBADjB,WAAW;uBAAC,cAAc,CAAA;gBAMvB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MC7DT,gBAAgB,CAAA;AAE3B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,UAAU,EAAE,IAAI;SACjB,CAAC;KACH;;6GAPU,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,yGCP7B,+BACA,EAAA,MAAA,EAAA,CAAA,oFAAA,CAAA,EAAA,CAAA,CAAA;2FDMa,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,SAAS;+BACE,YAAY,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,oFAAA,CAAA,EAAA,CAAA;8BAOlB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MEDT,YAAY,CAAA;AAYvB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,GAAG,EAAE,IAAI;YACT,CAAC,CAAA,IAAA,EAAO,IAAI,CAAC,MAAM,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM;YACrC,CAAC,CAAA,IAAA,EAAO,IAAI,CAAC,OAAO,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO;SACxC,CAAC;KACH;;yGAnBU,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAY,EAJb,QAAA,EAAA,OAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;AACkB,6BAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,oCAAA,CAAA,EAAA,CAAA,CAAA;2FAGjB,YAAY,EAAA,UAAA,EAAA,CAAA;kBANxB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,OAAO,EACP,QAAA,EAAA,CAAA;AACkB,6BAAA,CAAA,EAAA,MAAA,EAAA,CAAA,oCAAA,CAAA,EAAA,CAAA;8BAQnB,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAKG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCPT,SAAS,CAAA;;sGAAT,SAAS,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAT,SAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAS,EANL,YAAA,EAAA,CAAA,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,CAE7D,EAAA,OAAA,EAAA,CAAA,YAAY,CAEJ,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,CAAA,EAAA,CAAA,CAAA;AAE/C,SAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAS,EALX,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAGU,SAAS,EAAA,UAAA,EAAA,CAAA;kBAPrB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,CAAC,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,CAAC;AAChE,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,CAAC;AAC5D,iBAAA,CAAA;;;ACLD;AACA;MAOa,eAAe,CAAA;IA4B1B,WACU,CAAA,WAAuB,EACvB,kBAAsC,EAAA;QADtC,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QACvB,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAoB;AAxBhD;;AAEG;QACM,IAAW,CAAA,WAAA,GAAsB,OAAO,CAAC;QAiBzC,IAAI,CAAA,IAAA,GAAG,YAAY,CAAC;KAKzB;AAEJ,IAAA,IACI,WAAW,GAAA;AACb,QAAA,MAAM,iBAAiB,GAAW,IAAI,CAAC,MAAM,KAAK,IAAI,GAAG,EAAE,GAAG,CAAA,CAAA,EAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChF,OAAO;AACL,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,cAAc,EAAE,IAAI,CAAC,WAAW,KAAK,OAAO;AAC5C,YAAA,aAAa,EAAE,IAAI,CAAC,WAAW,KAAK,MAAM;YAC1C,CAAC,CAAA,aAAA,EAAgB,iBAAiB,CAAE,CAAA,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM;YACpD,CAAC,CAAA,GAAA,EAAM,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;YAClC,CAAC,CAAA,EAAG,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;SACxC,CAAC;KACH;AAED,IAAA,IAAI,cAAc,GAAA;AAChB,QAAA,OAAO,YAAY,IAAI,CAAC,SAAS,KAAK,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC;KAC1E;AAED,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;AACnC,YAAA,OAAO,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,gBAAgB,CAAC,CAAoB,iBAAA,EAAA,IAAI,CAAC,MAAM,CAAA,CAAE,CAAC,CAAC;AAC7G,SAAA;AACD,QAAA,OAAO,KAAK,CAAC;KACd;IAED,kBAAkB,GAAA;QAChB,IAAI,IAAI,CAAC,UAAU,EAAE;AACnB,YAAA,MAAM,YAAY,GAAG,CAAA,YAAA,EAAe,IAAI,CAAC,UAAU,GAAG,CAAC;AACvD,YAAA,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,IAAG;gBACjE,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,oBAAA,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AACtC,oBAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC5B,oBAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;oBAC9B,UAAU,CAAC,MAAK;wBACd,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;wBACrC,UAAU,CAAC,MAAK;AACd,4BAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAC;AAClC,yBAAC,CAAC,CAAC;AACL,qBAAC,CAAC,CAAC;AACJ,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;;4GA1EU,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAP,IAAA,CAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;gGAAf,eAAe,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,SAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,WAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAuBZ,iBAAiB,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECtCjC,+VAWA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDIa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,SAAS;+BACE,UAAU,EAAA,QAAA,EAAA,+VAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;oIASX,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAIG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAIG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAIG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAIG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAE2B,QAAQ,EAAA,CAAA;sBAAxC,YAAY;uBAAC,iBAAiB,CAAA;gBAGtB,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAQF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;ME3CT,oBAAoB,CAAA;AAHjC,IAAA,WAAA,GAAA;QAKqC,IAAW,CAAA,WAAA,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAA,IAAA,GAAG,QAAQ,CAAC;AAE3C,KAAA;;iHALY,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAApB,oBAAoB,EAAA,QAAA,EAAA,gBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,oBAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,WAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC3B,iBAAA,CAAA;8BAGoC,WAAW,EAAA,CAAA;sBAA7C,WAAW;uBAAC,oBAAoB,CAAA;gBACP,IAAI,EAAA,CAAA;sBAA7B,WAAW;uBAAC,WAAW,CAAA;;;MCDb,kBAAkB,CAAA;AAJ/B,IAAA,WAAA,GAAA;QAmBU,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;AAUzB,KAAA;AArBC;;;AAGG;IACH,IACI,MAAM,CAAC,KAAc,EAAA;AACvB,QAAA,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC7C;;AACD,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAGD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,YAAY,EAAE,IAAI;YAClB,mBAAmB,EAAE,IAAI,CAAC,MAAM;SACjC,CAAC;KACH;;+GAvBU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,yIAFnB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAJ9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,QAAQ,EAAE,2BAA2B;AACtC,iBAAA,CAAA;8BAUK,MAAM,EAAA,CAAA;sBADT,KAAK;gBAUF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MClBT,mBAAmB,CAAA;AAJhC,IAAA,WAAA,GAAA;QAMoC,IAAe,CAAA,eAAA,GAAG,IAAI,CAAC;AAE1D,KAAA;;gHAJY,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,4HAFpB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,QAAQ,EAAE,2BAA2B;AACtC,iBAAA,CAAA;8BAGmC,eAAe,EAAA,CAAA;sBAAhD,WAAW;uBAAC,mBAAmB,CAAA;;;MCFrB,sBAAsB,CAAA;IAyBjC,WACU,CAAA,QAAmB,EACnB,WAAuB,EAAA;QADvB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QApBI,IAAa,CAAA,aAAA,GAAG,IAAI,CAAC;AAC1D;;;;AAIG;QAEM,IAAI,CAAA,IAAA,GAAG,QAAQ,CAAC;AACzB;;;;AAIG;QAEM,IAAS,CAAA,SAAA,GAAG,mBAAmB,CAAC;KAOpC;IAGL,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;KACtD;IAED,cAAc,GAAA;QACZ,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;AACpD,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;KACjE;IAED,kBAAkB,GAAA;AAChB,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,CAAC,MAAiB,CAAC;AAC9E,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAI,CAAC,cAAc,EAAE,CAAC;AACvB,SAAA;KACF;;mHA9CU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;uGAAtB,sBAAsB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,CAAA,gBAAA,EAAA,aAAA,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,qBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,sBAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,WAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;AAC7B,iBAAA,CAAA;yHAO0B,WAAW,EAAA,CAAA;sBAAnC,KAAK;uBAAC,gBAAgB,CAAA;gBACc,aAAa,EAAA,CAAA;sBAAjD,WAAW;uBAAC,sBAAsB,CAAA;gBAO1B,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAOG,SAAS,EAAA,CAAA;sBADjB,WAAW;uBAAC,iBAAiB,CAAA;;sBAC7B,KAAK;gBAUN,WAAW,EAAA,CAAA;sBADV,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MCNtB,YAAY,CAAA;;yGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,iBAlBrB,eAAe;QACf,kBAAkB;QAClB,mBAAmB;QACnB,oBAAoB;AACpB,QAAA,sBAAsB,aAUtB,YAAY;AACZ,QAAA,YAAY,aARZ,eAAe;QACf,kBAAkB;QAClB,mBAAmB;QACnB,oBAAoB;QACpB,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAOb,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EALd,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAEU,YAAY,EAAA,UAAA,EAAA,CAAA;kBApBxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,eAAe;wBACf,kBAAkB;wBAClB,mBAAmB;wBACnB,oBAAoB;wBACpB,sBAAsB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,eAAe;wBACf,kBAAkB;wBAClB,mBAAmB;wBACnB,oBAAoB;wBACpB,sBAAsB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;MCtBY,kBAAkB,CAAA;AAE7B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,YAAY,EAAE,IAAI;SACnB,CAAC;KACH;;+GAPU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,2GAHnB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,CAAA;2FAG1B,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAL9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,YACd,2BAA2B,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;8BAMjC,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCFT,qBAAqB,CAAA;IAEhC,WACU,CAAA,WAAuB,EACvB,oBAA0C,EAAA;QAD1C,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QACvB,IAAoB,CAAA,oBAAA,GAApB,oBAAoB,CAAsB;KAC/C;AAEL,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,eAAe,EAAE,IAAI;SACtB,CAAC;KACH;AAGM,IAAA,cAAc,CAAC,MAAkB,EAAA;QACtC,MAAM,CAAC,eAAe,EAAE,CAAC;AACzB,QAAA,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;QACpC,OAAO,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC;AAC7D,YAAA,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAE,aAA6B,CAAC,CAAC;KACzE;;kHApBU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,qBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,gKAFtB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE,2BAA2B;AACtC,iBAAA,CAAA;sIASK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAQb,cAAc,EAAA,CAAA;sBADpB,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MCdtB,oBAAoB,CAAA;AAqB/B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,cAAc,EAAE,IAAI;AACpB,YAAA,uBAAuB,EAAE,IAAI,CAAC,SAAS,KAAK,QAAQ;AACpD,YAAA,kBAAkB,EAAE,IAAI,CAAC,UAAU,KAAK,IAAI;YAC5C,CAAC,CAAA,iBAAA,EAAoB,IAAI,CAAC,UAAU,OAAO,GAAG,IAAI,CAAC,UAAU;YAC7D,yBAAyB,EAAE,IAAI,CAAC,UAAU;YAC1C,CAAC,CAAA,MAAA,EAAS,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI;SAClC,CAAC;KACH;;iHA/BU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,mNAHrB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,iEAAA,CAAA,EAAA,CAAA,CAAA;2FAG1B,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gBAAgB,YAChB,2BAA2B,EAAA,MAAA,EAAA,CAAA,iEAAA,CAAA,EAAA,CAAA;8BAQ5B,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAKG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAKG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAIG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCfT,YAAY,CAAA;AAKvB,IAAA,WAAA,GAAA;AAHQ,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,OAAO,EAAO,CAAC;AACxC,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;KAE7B;AAEhB,IAAA,MAAM,CAAC,MAAoB,EAAA;AACzB,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KAC9B;;yGATU,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,cAFX,MAAM,EAAA,CAAA,CAAA;2FAEP,YAAY,EAAA,UAAA,EAAA,CAAA;kBAHxB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCLY,oBAAoB,CAAA;AAM/B,IAAA,WAAA,CACU,YAA0B,EAAA;QAA1B,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAc;KAC/B;AAGL,IAAA,OAAO,CAAC,MAAW,EAAA;QACjB,MAAM,CAAC,cAAc,EAAE,CAAC;AACxB,QAAA,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAC,CAAC,CAAC;KACzD;;iHAdU,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAwB,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAApB,oBAAoB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,CAAA,cAAA,EAAA,IAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC3B,iBAAA,CAAA;gGAKwB,EAAE,EAAA,CAAA;sBAAxB,KAAK;uBAAC,cAAc,CAAA;gBAOrB,OAAO,EAAA,CAAA;sBADN,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MCXtB,oBAAoB,CAAA;AAE/B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,cAAc,EAAE,IAAI;SACrB,CAAC;KACH;;iHAPU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,6GAFrB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,QAAQ,EAAE,2BAA2B;AACtC,iBAAA,CAAA;8BAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCDT,oBAAoB,CAAA;AAE/B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,cAAc,EAAE,IAAI;SACrB,CAAC;KACH;;iHAPU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EAHrB,QAAA,EAAA,gBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;AACkB,6BAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAEjB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,QAAQ,EAAE,CAAA;AACkB,6BAAA,CAAA;AAC7B,iBAAA,CAAA;8BAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCJT,mBAAmB,CAAA;AAE9B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,aAAa,EAAE,IAAI;SACpB,CAAC;KACH;;gHAPU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;oGAAnB,mBAAmB,EAAA,QAAA,EAAA,eAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAH/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;AAC1B,iBAAA,CAAA;8BAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCAT,eAAe,CAAA;IAQ1B,WAC4B,CAAA,QAAa,EAC/B,eAAiC,EAAA;QADf,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAK;QAC/B,IAAe,CAAA,eAAA,GAAf,eAAe,CAAkB;AARnC,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,OAAO,EAAW,CAAC;AAC/C,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QASjD,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;KAC5D;IAED,WAAW,CAAC,OAAe,OAAO,EAAA;QAChC,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAG,EAAA,IAAI,CAAW,SAAA,CAAA,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;AAChD,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;AAC/D,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC,KAAU;YACzE,IAAI,CAAC,cAAc,EAAE,CAAC;AACxB,SAAC,CAAC,CAAC;QACH,UAAU,CAAC,MAAK;YACd,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;AAClD,SAAC,CAAC,CAAC;AACH,QAAA,OAAO,eAAe,CAAC;KACxB;AAED,IAAA,aAAa,CAAC,QAAa,EAAA;AACzB,QAAA,IAAI,QAAQ,EAAE;YACZ,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC5C,UAAU,CAAC,MAAK;AACd,gBAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACxD,QAAQ,GAAG,SAAS,CAAC;aACtB,EAAE,GAAG,CAAC,CAAC;AACT,SAAA;AACD,QAAA,OAAO,QAAQ,CAAC;KACjB;IAED,cAAc,GAAA;AACZ,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC/B;;AA3CU,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,kBAShB,QAAQ,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AATP,eAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cAFd,MAAM,EAAA,CAAA,CAAA;2FAEP,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;0BAUI,MAAM;2BAAC,QAAQ,CAAA;;;MC8BP,cAAc,CAAA;IAKzB,WAC4B,CAAA,QAAa,EAC/B,QAAmB,EACnB,WAAuB,EACvB,YAA0B,EAC1B,eAAgC,EAAA;QAJd,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAK;QAC/B,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QACvB,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAc;QAC1B,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;AAG1C;;;;AAIG;QACM,IAAS,CAAA,SAAA,GAAsB,KAAK,CAAC;AAC9C;;;;AAIG;QACM,IAAQ,CAAA,QAAA,GAAuB,IAAI,CAAC;AAO7C;;;;AAIG;QACM,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;AAMzB;;AAEG;QACM,IAAU,CAAA,UAAA,GAAG,IAAI,CAAC;AAC3B;;;;AAIG;QACgC,IAAI,CAAA,IAAA,GAAG,QAAQ,CAAC;AACnD;;;;AAIG;QACsC,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC;QAalD,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;AAqB5B;;AAEG;AACO,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,YAAY,EAAW,CAAC;QAgC9C,IAAK,CAAA,KAAA,GAAG,IAAI,CAAC;QAqDb,IAAe,CAAA,eAAA,GAAuB,IAAI,CAAC;KAxK9C;AAgDL;;;AAGG;IACH,IACI,UAAU,CAAC,KAAc,EAAA;AAC3B,QAAA,IAAI,CAAC,WAAW,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KACjD;AACD,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAGD;;;AAGG;IACH,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC9C,QAAA,IAAG,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE;AAC7B,YAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACzB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,KAAK,KAAK,IAAI,QAAQ,CAAC,CAAC;AACtD,YAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC7B,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACnC,SAAA;KACF;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAcD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,IAAI,CAAC,UAAU;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC;KACH;AAED,IAAA,IACI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;KACnC;;AAED,IAAA,IACI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC;KACb;AAED,IAAA,IACI,cAAc,GAAA;QAChB,OAAO,IAAI,CAAC,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;KAC5C;AAGD,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC;KACnC;IACD,IAAI,IAAI,CAAC,KAAc,EAAA;AACrB,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;AAED,IAAA,IAAY,cAAc,GAAA;;QAExB,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,WAAW,CAAC;AAChE,QAAA,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,UAAU,IAAI,aAAa,IAAI,aAAa,CAAC,CAAC;QACvF,OAAO,CAAA,EAAG,cAAc,CAAA,EAAA,CAAI,CAAC;KAC9B;AAGD,IAAA,YAAY,CAAC,KAAqB,EAAA;AAChC,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;AAC/E,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC;KAC1B;AAGD,IAAA,WAAW,CAAC,KAAqB,EAAA;AAC/B,QAAA,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC3C,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE;gBAC/B,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,YAAY,EAAE,aAAa,EAAE,qBAAqB,EAAE,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,YAAY,CAAC;AAC5I,gBAAA,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;AAC9B,oBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;AACnE,oBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;AAC7E,iBAAA;AAAM,qBAAA;AACL,oBAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AAC5D,oBAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;AAChE,iBAAA;AACD,gBAAA,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE;AAC5B,oBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;AACpE,iBAAA;AACD,gBAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;AACzE,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;AAGD,IAAA,gBAAgB,CAAC,KAAoB,EAAA;AACnC,QAAA,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE;AAC3D,YAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE;gBAC9B,IAAI,CAAC,iBAAiB,EAAE,CAAC;AAC1B,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;AACtD,aAAA;AACF,SAAA;KACF;AAKM,IAAA,kBAAkB,CAAC,MAAkB,EAAA;AAC1C,QAAA,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC;KACtC;AAGM,IAAA,cAAc,CAAC,MAAkB,EAAA;QACtC,MAAM,CAAC,eAAe,EAAE,CAAC;AACzB,QAAA,IAAI,IAAI,CAAC,eAAe,KAAK,MAAM,CAAC,MAAM,EAAE;AAC1C,YAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,OAAO;AACR,SAAA;AACD,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE;YAC9B,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,OAAO;AACR,SAAA;AACD,QAAA,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;KACtD;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,oBAAoB,EAAE,CAAC;KAC7B;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;AACrD,QAAA,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;KAClC;IAEO,oBAAoB,CAAC,YAAqB,IAAI,EAAA;AACpD,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,SAAS,CACpE,CAAC,MAAM,KAAI;AACT,gBAAA,IAAI,IAAI,KAAK,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,EAAE;oBAClD,IAAI,MAAM,IAAI,MAAM,EAAE;wBACpB,IAAI,CAAC,OAAO,GAAG,MAAM,EAAE,IAAI,KAAK,QAAQ,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;AACxE,qBAAA;AACF,iBAAA;AAAM,qBAAA;oBACL,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,wBAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;AACtB,qBAAA;AACF,iBAAA;AACH,aAAC,CACF,CAAC;AACH,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,CAAC;AAC5C,SAAA;KACF;AAEO,IAAA,WAAW,CAAC,WAAoB,EAAA;AACtC,QAAA,IAAI,WAAW,EAAE;YACf,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AACjE,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AAC/E,SAAA;KACF;AAEO,IAAA,aAAa,CAAC,IAAa,EAAA;AACjC,QAAA,IAAI,IAAI,EAAE;AACR,YAAA,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE;AAC5B,gBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;AACpE,aAAA;AACD,YAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;AAC1B,gBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AAC1D,aAAA;AACF,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AAC5D,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AAC5D,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;AAChE,SAAA;KACF;IAEO,iBAAiB,GAAA;QACvB,IAAI,IAAI,CAAC,UAAU,EAAE;AACnB,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;AACvE,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;YAC/E,UAAU,CAAC,MAAK;AACd,gBAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;AAC1E,gBAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;aACzE,EAAE,GAAG,CAAC,CAAC;AACT,SAAA;KACF;;AArQU,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,kBAMf,QAAQ,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,eAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AANP,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,8zBAgGd,qBAAqB,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAAS,UAAU,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC9IrD,4WAWA,EDcc,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,oBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,YAAA,EAAA,YAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,qBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAL,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,yBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA;QACV,OAAO,CAAC,UAAU,EAAE;AAClB,YAAA,KAAK,CACH,SAAS,EACT,KAAK,CAAC;AACJ,gBAAA,OAAO,EAAE,OAAO;AACjB,aAAA,CAAC,CACH;AACD,YAAA,KAAK,CACH,QAAQ,EACR,KAAK,CAAC;AACJ,gBAAA,OAAO,EAAE,MAAM;AAChB,aAAA,CAAC,CACH;YACD,UAAU,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAE;SACjD,CAAC;AACH,KAAA,EAAA,CAAA,CAAA;2FAKU,cAAc,EAAA,UAAA,EAAA,CAAA;kBAvB1B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,SAAS,EACP,UAAA,EAAA;wBACV,OAAO,CAAC,UAAU,EAAE;AAClB,4BAAA,KAAK,CACH,SAAS,EACT,KAAK,CAAC;AACJ,gCAAA,OAAO,EAAE,OAAO;AACjB,6BAAA,CAAC,CACH;AACD,4BAAA,KAAK,CACH,QAAQ,EACR,KAAK,CAAC;AACJ,gCAAA,OAAO,EAAE,MAAM;AAChB,6BAAA,CAAC,CACH;4BACD,UAAU,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAE;yBACjD,CAAC;AACH,qBAAA,EAAA,QAAA,EAGS,QAAQ,EAAA,QAAA,EAAA,4WAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;0BAQf,MAAM;2BAAC,QAAQ,CAAA;gJAYT,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAMG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAMG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAMG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,EAAE,EAAA,CAAA;sBAAV,KAAK;gBAIG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAIG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAM6B,IAAI,EAAA,CAAA;sBAAtC,KAAK;;sBAAI,WAAW;uBAAC,WAAW,CAAA;gBAMQ,SAAS,EAAA,CAAA;sBAAjD,KAAK;;sBAAI,WAAW;uBAAC,iBAAiB,CAAA;gBAOnC,UAAU,EAAA,CAAA;sBADb,KAAK;gBAcF,OAAO,EAAA,CAAA;sBADV,KAAK;gBAkBI,aAAa,EAAA,CAAA;sBAAtB,MAAM;gBAE+C,YAAY,EAAA,CAAA;sBAAjE,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,qBAAqB,EAAE,EAAC,IAAI,EAAE,UAAU,EAAC,CAAA;gBAOhD,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAUhB,UAAU,EAAA,CAAA;sBADb,WAAW;uBAAC,kBAAkB,CAAA;gBAM3B,QAAQ,EAAA,CAAA;sBADX,WAAW;uBAAC,eAAe,CAAA;gBAMxB,cAAc,EAAA,CAAA;sBADjB,WAAW;uBAAC,WAAW,CAAA;gBAqBxB,YAAY,EAAA,CAAA;sBADX,YAAY;uBAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAO3C,WAAW,EAAA,CAAA;sBADV,YAAY;uBAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAsB1C,gBAAgB,EAAA,CAAA;sBADf,YAAY;uBAAC,kBAAkB,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAcrC,kBAAkB,EAAA,CAAA;sBADxB,YAAY;uBAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAM9B,cAAc,EAAA,CAAA;sBADpB,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;ME7LtB,WAAW,CAAA;;wGAAX,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAX,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,iBA3BpB,kBAAkB;QAClB,qBAAqB;QACrB,oBAAoB;QACpB,oBAAoB;QACpB,oBAAoB;QACpB,oBAAoB;QACpB,mBAAmB;AACnB,QAAA,cAAc,aAad,YAAY;AACZ,QAAA,UAAU,aAXV,kBAAkB;QAClB,qBAAqB;QACrB,oBAAoB;QACpB,oBAAoB;QACpB,oBAAoB;QACpB,oBAAoB;QACpB,mBAAmB;QACnB,cAAc,CAAA,EAAA,CAAA,CAAA;AAUL,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,EAJX,SAAA,EAAA;QACT,YAAY;KACb,EANQ,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,UAAU;AACX,SAAA,CAAA,EAAA,CAAA,CAAA;2FAKU,WAAW,EAAA,UAAA,EAAA,CAAA;kBA7BvB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,kBAAkB;wBAClB,qBAAqB;wBACrB,oBAAoB;wBACpB,oBAAoB;wBACpB,oBAAoB;wBACpB,oBAAoB;wBACpB,mBAAmB;wBACnB,cAAc;AACf,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,kBAAkB;wBAClB,qBAAqB;wBACrB,oBAAoB;wBACpB,oBAAoB;wBACpB,oBAAoB;wBACpB,oBAAoB;wBACpB,mBAAmB;wBACnB,cAAc;AACf,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,UAAU;AACX,qBAAA;AACD,oBAAA,SAAS,EAAE;wBACT,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;MC7BY,gBAAgB,CAAA;AAK3B,IAAA,WAAA,GAAA;AAHQ,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAO,CAAC;AAC5C,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;KAEpC;AAEjB,IAAA,MAAM,CAAC,MAAwB,EAAA;AAC7B,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KAClC;;6GATU,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,cAFf,MAAM,EAAA,CAAA,CAAA;2FAEP,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAH5B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;ACYD,IAAI,MAAM,GAAG,CAAC,CAAC;MAyBF,kBAAkB,CAAA;IAI7B,WAC4B,CAAA,QAAa,EACV,UAAe,EACpC,QAAmB,EACnB,WAAuB,EACvB,gBAAkC,EAClC,eAAgC,EAAA;QALd,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAK;QACV,IAAU,CAAA,UAAA,GAAV,UAAU,CAAK;QACpC,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QACvB,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;QAClC,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;AAG1C;;;;AAIG;QACM,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;AAEzB;;;;AAIG;QACM,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;AAEzB;;;;AAIG;QACM,IAAS,CAAA,SAAA,GAAgD,OAAO,CAAC;QAalE,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;QAEf,IAAE,CAAA,EAAA,GAAG,aAAa,IAAI,CAAC,SAAS,CAAI,CAAA,EAAA,MAAM,EAAE,CAAA,CAAE,CAAC;AACxD;;;;AAIG;QACgC,IAAI,CAAA,IAAA,GAAG,QAAQ,CAAC;AAEnD;;;;AAIG;QACsC,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC;AAuB1D;;AAEG;AACO,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,YAAY,EAAW,CAAC;KA3EjD;AAuBL;;;AAGG;IACH,IACI,MAAM,CAAC,KAAc,EAAA;AACvB,QAAA,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC7C;;AACD,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAkBD;;;AAGG;IACH,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC7C,QAAA,IAAI,KAAK,EAAE;AACT,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChC,IAAI,CAAC,QAAQ,EAAE,CAAC;AACjB,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AACzB,SAAA;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;AACjB,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAChC;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAaD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,SAAS,EAAE,IAAI;YACf,CAAC,CAAA,UAAA,EAAa,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;YACjD,IAAI,EAAE,IAAI,CAAC,OAAO;SACnB,CAAC;KACH;AAED,IAAA,IACI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;KACnC;;AAED,IAAA,IACI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC;KACb;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAGD,IAAA,gBAAgB,CAAC,KAAoB,EAAA;AACnC,QAAA,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE;AAC3D,YAAA,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;AAC5D,SAAA;KACF;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,oBAAoB,EAAE,CAAC;KAC7B;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;AAC3D,QAAA,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;KAClC;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE;YACrB,IAAI,CAAC,SAAS,EAAE,CAAC;AAClB,SAAA;KACF;IAEO,oBAAoB,CAAC,YAAqB,IAAI,EAAA;AACpD,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,SAAS,CAC5E,CAAC,MAAM,KAAI;AACT,gBAAA,IAAI,IAAI,KAAK,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,EAAE;oBACtD,IAAI,MAAM,IAAI,MAAM,EAAE;wBACpB,IAAI,CAAC,OAAO,GAAG,MAAM,EAAE,IAAI,KAAK,QAAQ,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;AACxE,qBAAA;AACF,iBAAA;AACH,aAAC,CACF,CAAC;AACH,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,CAAC;AAC5C,SAAA;KACF;IAEO,sBAAsB,CAAC,YAAqB,IAAI,EAAA;AACtD,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,SAAS,CAC5E,CAAC,OAAO,KAAI;AACV,gBAAA,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;AAChE,aAAC,CACF,CAAC;AACH,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,yBAAyB,EAAE,WAAW,EAAE,CAAC;AAC/C,SAAA;KACF;AAEO,IAAA,WAAW,CAAC,WAAoB,EAAA;AACtC,QAAA,IAAI,WAAW,EAAE;YACf,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YACpE,IAAI,CAAC,sBAAsB,EAAE,CAAC;AAC/B,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AAC9E,YAAA,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;AACpC,SAAA;KACF;IAED,QAAQ,GAAA;AACN,QAAA,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;AACtC,YAAA,UAAU,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC;AAC1D,SAAA;KACF;IAED,SAAS,GAAA;QACP,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,YAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;AAChB,gBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;AACjE,gBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,EAAE,GAAG,CAAC,CAAC;AACpE,aAAA;YACD,OAAO;AACR,SAAA;AACD,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;AAChB,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AAC1D,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;AAC/D,SAAA;KACF;;+GApMU,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAKnB,QAAQ,EAAA,EAAA,EAAA,KAAA,EACR,WAAW,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAM,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAAH,eAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGANV,kBAAkB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,kBAAA,EAAA,0BAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,WAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,eAAA,EAAA,WAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjD/B,6FAIA,EDwBc,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAZ,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,yBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA;QACV,OAAO,CAAC,UAAU,EAAE;AAClB,YAAA,KAAK,CACH,MAAM,EACN,KAAK,CAAC;AACJ,gBAAA,UAAU,EAAE,SAAS;AACtB,aAAA,CAAC,CACH;AACD,YAAA,KAAK,CACH,OAAO,EACP,KAAK,CAAC;AACJ,gBAAA,UAAU,EAAE,QAAQ;AACrB,aAAA,CAAC,CACH;YACD,UAAU,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;SAChD,CAAC;AACH,KAAA,EAAA,CAAA,CAAA;2FAKU,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAvB9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAa,EACX,UAAA,EAAA;wBACV,OAAO,CAAC,UAAU,EAAE;AAClB,4BAAA,KAAK,CACH,MAAM,EACN,KAAK,CAAC;AACJ,gCAAA,UAAU,EAAE,SAAS;AACtB,6BAAA,CAAC,CACH;AACD,4BAAA,KAAK,CACH,OAAO,EACP,KAAK,CAAC;AACJ,gCAAA,UAAU,EAAE,QAAQ;AACrB,6BAAA,CAAC,CACH;4BACD,UAAU,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;yBAChD,CAAC;AACH,qBAAA,EAAA,QAAA,EAGS,YAAY,EAAA,QAAA,EAAA,6FAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;0BAOnB,MAAM;2BAAC,QAAQ,CAAA;;0BACf,MAAM;2BAAC,WAAW,CAAA;oJAYZ,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAOG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAOG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAOF,MAAM,EAAA,CAAA;sBADT,KAAK;gBASG,EAAE,EAAA,CAAA;sBAAV,KAAK;gBAM6B,IAAI,EAAA,CAAA;sBAAtC,KAAK;;sBAAI,WAAW;uBAAC,WAAW,CAAA;gBAOQ,SAAS,EAAA,CAAA;sBAAjD,KAAK;;sBAAI,WAAW;uBAAC,iBAAiB,CAAA;gBAOnC,OAAO,EAAA,CAAA;sBADV,KAAK;gBAoBI,aAAa,EAAA,CAAA;sBAAtB,MAAM;gBAQH,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAUhB,UAAU,EAAA,CAAA;sBADb,WAAW;uBAAC,kBAAkB,CAAA;gBAM3B,QAAQ,EAAA,CAAA;sBADX,WAAW;uBAAC,eAAe,CAAA;gBAMxB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,WAAW,CAAA;gBAMxB,gBAAgB,EAAA,CAAA;sBADf,YAAY;uBAAC,kBAAkB,EAAE,CAAC,QAAQ,CAAC,CAAA;;;ME/JjC,sBAAsB,CAAA;AAEjC,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,gBAAgB,EAAE,IAAI;SACvB,CAAC;KACH;;mHAPU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,+GAHvB,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,CAAA;2FAG1B,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,YAClB,CAA2B,yBAAA,CAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;8BAMjC,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCFT,wBAAwB,CAAA;AAEnC,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,kBAAkB,EAAE,IAAI;SACzB,CAAC;KACH;;qHAPU,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,iHAHzB,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FAG1B,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBALpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,oBAAoB,YACpB,CAA2B,yBAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;8BAMjC,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCJT,uBAAuB,CAAA;AAElC,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,iBAAiB,EAAE,IAAI;SACxB,CAAC;KACH;;oHAPU,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;wGAAvB,uBAAuB,EAAA,QAAA,EAAA,mBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAHnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC9B,iBAAA,CAAA;8BAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCAT,wBAAwB,CAAA;AAQnC,IAAA,WAAA,CACU,gBAAkC,EAAA;QAAlC,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;KACxC;AAGJ,IAAA,UAAU,CAAC,MAAW,EAAA;QACpB,MAAM,CAAC,cAAc,EAAE,CAAC;AACxB,QAAA,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;KAC/D;;qHAhBU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAe,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;yGAAxB,wBAAwB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,IAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;AAC/B,iBAAA,CAAA;oGAO4B,EAAE,EAAA,CAAA;sBAA5B,KAAK;uBAAC,kBAAkB,CAAA;gBAOzB,UAAU,EAAA,CAAA;sBADT,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MCiBtB,eAAe,CAAA;;4GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,iBAtBxB,kBAAkB;QAClB,sBAAsB;QACtB,wBAAwB;QACxB,uBAAuB;AACvB,QAAA,wBAAwB,aAUxB,YAAY;AACZ,QAAA,UAAU,aARV,kBAAkB;QAClB,sBAAsB;QACtB,wBAAwB;QACxB,uBAAuB;QACvB,wBAAwB,CAAA,EAAA,CAAA,CAAA;AAWf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EALf,SAAA,EAAA;QACT,gBAAgB;QAChB,eAAe;KAChB,EAPQ,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,UAAU;AACX,SAAA,CAAA,EAAA,CAAA,CAAA;2FAMU,eAAe,EAAA,UAAA,EAAA,CAAA;kBAxB3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,kBAAkB;wBAClB,sBAAsB;wBACtB,wBAAwB;wBACxB,uBAAuB;wBACvB,wBAAwB;AACzB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,kBAAkB;wBAClB,sBAAsB;wBACtB,wBAAwB;wBACxB,uBAAuB;wBACvB,wBAAwB;AACzB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,UAAU;AACX,qBAAA;AACD,oBAAA,SAAS,EAAE;wBACT,gBAAgB;wBAChB,eAAe;AAChB,qBAAA;AACF,iBAAA,CAAA;;;MC9BY,iBAAiB,CAAA;AAE5B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,WAAW,EAAE,IAAI;SAClB,CAAC;KACH;;8GAPU,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAjB,iBAAiB,EAAA,QAAA,EAAA,aAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAH7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;AACxB,iBAAA,CAAA;8BAIK,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCST,iBAAiB,CAAA;AA6B5B,IAAA,WAAA,CACU,QAAmB,EAAA;QAAnB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;KACxB;AAlBL,IAAA,IACI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;KACpC;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;KACH;IAQD,kBAAkB,GAAA;QAChB,IAAI,CAAC,aAAa,EAAE,CAAC;KACtB;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE;YACvB,IAAI,CAAC,aAAa,EAAE,CAAC;AACtB,SAAA;KACF;IAED,aAAa,GAAA;AACX,QAAA,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YAC5B,OAAM;AACP,SAAA;AACD,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC;QAE9D,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,eAAe,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC;YACrE,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,eAAe,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;AAC/D,SAAA;AAAM,aAAA;YACL,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;YAChE,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;AAC5D,SAAA;KACF;;8GAxDU,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAjB,iBAAiB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EA2Bd,iBAAiB,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAAU,UAAU,EAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FA3BxC,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAH7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;AACxB,iBAAA,CAAA;gGAOU,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAKG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,mBAAmB,CAAA;gBAM5B,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBASmC,kBAAkB,EAAA,CAAA;sBAAxE,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,iBAAiB,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAA;;;ACnCjD,MAAO,iBAAkB,SAAQ,iBAAiB,CAAA;;8GAA3C,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,0EAHlB,CAA2B,yBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,oFAAA,CAAA,EAAA,CAAA,CAAA;2FAG1B,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAa,YACb,CAA2B,yBAAA,CAAA,EAAA,MAAA,EAAA,CAAA,oFAAA,CAAA,EAAA,CAAA;;;MCE1B,mBAAmB,CAAA;AALhC,IAAA,WAAA,GAAA;AAOE;;;AAGG;QACM,IAAK,CAAA,KAAA,GAAoC,EAAE,CAAC;AAMrD;;;;AAIG;QAEM,IAAI,CAAA,IAAA,GAAG,YAAY,CAAC;AAU9B,KAAA;AARC,IAAA,IAAI,eAAe,GAAA;QACjB,OAAO;AACL,YAAA,UAAU,EAAE,IAAI;YAChB,CAAC,CAAA,WAAA,EAAc,IAAI,CAAC,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI;YACxC,CAAC,CAAA,gBAAA,EAAmB,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;SAChD,CAAC;KACH;;gHA1BU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,gKCPhC,gFAGA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA5B,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDIa,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,SAAS;+BACE,cAAc,EAAA,QAAA,EAAA,gFAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;8BAUf,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAOG,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;;;MEDK,gBAAgB,CAAA;;6GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,iBAfzB,mBAAmB;QACnB,iBAAiB;QACjB,iBAAiB;QACjB,iBAAiB,CAAA,EAAA,OAAA,EAAA,CASjB,YAAY,CAAA,EAAA,OAAA,EAAA,CANZ,mBAAmB;QACnB,iBAAiB;QACjB,iBAAiB;QACjB,iBAAiB,CAAA,EAAA,CAAA,CAAA;AAMR,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,EAJlB,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAEU,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAjB5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,mBAAmB;wBACnB,iBAAiB;wBACjB,iBAAiB;wBACjB,iBAAiB;AAClB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,mBAAmB;wBACnB,iBAAiB;wBACjB,iBAAiB;wBACjB,iBAAiB;AAClB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;MChBY,oBAAoB,CAAA;AAI/B,IAAA,WAAA,GAAA;QAcQ,IAAQ,CAAA,QAAA,GAAY,KAAK,CAAC;KAdjB;AAEjB;;;;AAIG;IACH,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC9C;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAQD,IAAA,IACI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;KACnC;;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO;YACL,aAAa,EAAE,IAAI,CAAC,OAAO;YAC3B,CAAC,CAAA,YAAA,EAAe,IAAI,CAAC,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI;SAC1C,CAAC;KACH;;iHApCU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAApB,oBAAoB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,CAAA,cAAA,EAAA,SAAA,CAAA,EAAA,IAAA,EAAA,CAAA,kBAAA,EAAA,MAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,QAAQ,EAAE,cAAc;AACzB,iBAAA,CAAA;0EAaK,OAAO,EAAA,CAAA;sBADV,KAAK;uBAAC,cAAc,CAAA;gBAYM,IAAI,EAAA,CAAA;sBAA9B,KAAK;uBAAC,kBAAkB,CAAA;gBAGrB,UAAU,EAAA,CAAA;sBADb,WAAW;uBAAC,kBAAkB,CAAA;gBAM3B,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MC/BT,6BAA6B,CAAA;AAExC,IAAA,WAAA,GAAA;QAiBQ,IAAO,CAAA,OAAA,GAAY,KAAK,CAAC;KAjBhB;AASjB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,CAAC,CAAe,YAAA,EAAA,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS;SACpE,CAAC;KACH;IAKD,kBAAkB,GAAA;QAChB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC;KAC1C;;0HAvBU,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA7B,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,8NAkB1B,oBAAoB,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAlBvB,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAHzC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,yBAAyB;AACpC,iBAAA,CAAA;0EAUiC,SAAS,EAAA,CAAA;sBAAxC,KAAK;uBAAC,uBAAuB,CAAA;gBAG1B,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAOgB,WAAW,EAAA,CAAA;sBAA9C,YAAY;uBAAC,oBAAoB,CAAA;;;MCNvB,iBAAiB,CAAA;;8GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,iBAX1B,oBAAoB;QACpB,6BAA6B,CAAA,EAAA,OAAA,EAAA,CAG7B,YAAY,CAAA,EAAA,OAAA,EAAA,CAGZ,oBAAoB;QACpB,6BAA6B,CAAA,EAAA,CAAA,CAAA;AAGpB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,EARnB,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAMU,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAb7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,oBAAoB;wBACpB,6BAA6B;AAC9B,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,oBAAoB;wBACpB,6BAA6B;AAC9B,qBAAA;AACF,iBAAA,CAAA;;;MCCY,gBAAgB,CAAA;AAkB3B,IAAA,WAAA,CACU,QAAmB,EAAA;QAAnB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;AAjB7B;;;AAGG;QACM,IAAO,CAAA,OAAA,GAA8B,EAAE,CAAC;AACjD;;;AAGG;QACM,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;QAEU,IAAI,CAAA,IAAA,GAAG,SAAS,CAAC;KAO/C;AAEL,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,IAAI,CAAC,OAAO;AAClB,YAAA,iBAAiB,EAAE,IAAI;SACxB,CAAC;KACH;IAED,eAAe,GAAA;QACb,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAChC,SAAC,CAAC,CAAC;KACJ;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE;YACtB,UAAU,CAAC,MAAK;AACd,gBAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAChC,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;IAED,WAAW,GAAA;QACT,IAAI,CAAC,KAAK,EAAE,CAAC;KACd;IAEO,KAAK,GAAA;AACX,QAAA,IAAI,CAAC,gBAAgB,EAAE,KAAK,EAAE,CAAC;AAC/B,QAAA,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE;AACnB,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;AACpE,SAAA;KACF;AAEO,IAAA,UAAU,CAAC,OAAkC,EAAA;QACnD,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;AACR,SAAA;QAED,IAAI,OAAO,YAAY,WAAW,EAAE;AAClC,YAAA,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;AACnD,SAAA;AAAM,aAAA;YACL,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACvD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;YACpD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEtD,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC;YAC5D,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;AAC5D,SAAA;KACF;;6GA3EU,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;iGAAhB,gBAAgB,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAAA,SAAA,EAAA,WAAA,EAAA,WAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAeW,gBAAgB,EAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjCxD,0KAIA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDca,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,SAAS;+BACE,WAAW,EAAA,QAAA,EAAA,0KAAA,EAAA,CAAA;gGASZ,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAKG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAC2B,EAAE,EAAA,CAAA;sBAAlC,KAAK;;sBAAI,WAAW;uBAAC,SAAS,CAAA;gBACI,IAAI,EAAA,CAAA;sBAAtC,KAAK;;sBAAI,WAAW;uBAAC,WAAW,CAAA;gBAEyB,gBAAgB,EAAA,CAAA;sBAAzE,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,iBAAiB,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAA;gBAQpD,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MEZT,gBAAgB,CAAA;IA0D3B,WAC4B,CAAA,QAAa,EAC/B,QAAmB,EACnB,WAAuB,EACvB,wBAAkD,EAClD,gBAAkC,EAClC,gBAAkC,EAAA;QALhB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAK;QAC/B,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QACvB,IAAwB,CAAA,wBAAA,GAAxB,wBAAwB,CAA0B;QAClD,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;QAClC,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;AA9D5C;;;AAGG;QACgB,IAAO,CAAA,OAAA,GAA8B,EAAE,CAAC;AAc3D;;AAEG;QACyB,IAAS,CAAA,SAAA,GAAwC,KAAK,CAAC;AACnF;;;AAGG;QACuB,IAAO,CAAA,OAAA,GAA2B,OAAO,CAAC;QAY5D,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAOjB,QAAA,IAAA,CAAA,cAAc,GAAqB;AACzC,YAAA,SAAS,EAAE;AACT,gBAAA;AACE,oBAAA,IAAI,EAAE,QAAQ;AACd,oBAAA,OAAO,EAAE;AACP,wBAAA,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AACf,qBAAA;AACF,iBAAA;AACF,aAAA;SACF,CAAC;KASE;AAzDJ;;;AAGG;IACH,IACI,aAAa,CAAC,KAAuB,EAAA;AACvC,QAAA,IAAI,CAAC,cAAc,GAAG,EAAC,GAAG,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,GAAG,KAAK,EAAC,CAAC;KACrF;;AACD,IAAA,IAAI,aAAa,GAAA;AACf,QAAA,OAAO,EAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,cAAc,EAAC,CAAC;KAC5D;AAYD;;AAEG;IACH,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;KACvB;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AA4BD,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE;AACtB,YAAA,OAAO,CAAC,SAAS,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;AAC1F,SAAA;KACF;AAED,IAAA,IAA0C,eAAe,GAAA;AACvD,QAAA,OAAO,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;KAC/C;IAED,WAAW,GAAA;QACT,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,qBAAqB,EAAE,CAAC;KAC9B;IAED,QAAQ,GAAA;;QAEN,IAAI,CAAC,YAAY,EAAE,CAAC;KACrB;IAEO,YAAY,GAAA;AAClB,QAAA,MAAM,MAAM,GAAqB;YAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,cAAc,EAAE,MAAK;AACnB,gBAAA,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;AAC7B,gBAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;aACvE;YACD,WAAW,EAAE,MAAK;AAChB,gBAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gBACrB,IAAI,CAAC,oBAAoB,EAAE,CAAC;aAC7B;YACD,UAAU,EAAE,MAAK;AACf,gBAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,IAAI,CAAC,iBAAiB,EAAE,CAAC;aAC1B;SACF,CAAA;AACD,QAAA,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;KAC5C;IAEO,cAAc,GAAA;AACpB,QAAA,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAC;KACxC;AAEO,IAAA,MAAM,CAAC,MAAc,EAAA;AAC3B,QAAA,IAAI,GAAG,GAAG,MAAM,IAAI,WAAW,CAAC;QAChC,GAAG;YACD,GAAG,GAAG,GAAG,MAAM,CAAA,CAAA,EAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA,CAAE,CAAC;SACvE,QAAQ,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;AAE5C,QAAA,OAAO,GAAG,CAAC;KACZ;IAEO,oBAAoB,GAAA;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,MAAM,gBAAgB,GACpB,IAAI,CAAC,wBAAwB,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;AAC1E,YAAA,IAAI,CAAC,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AAC3E,SAAA;KACF;IAEO,qBAAqB,GAAA;AAC3B,QAAA,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;AACvB,QAAA,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC;;AAE3B,QAAA,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;AAC5B,QAAA,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC;AAC/B,QAAA,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;AAC/B,QAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;KAC/B;IAEO,iBAAiB,GAAA;AACvB,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAI,CAAC,oBAAoB,EAAE,CAAC;AAC7B,SAAA;QACD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAChD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC;QACtD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;;QAG7C,UAAU,CAAC,MAAK;YACd,IAAI,CAAC,cAAc,GAAG,YAAY,CAChC,IAAI,CAAC,WAAW,CAAC,aAAa,EAC9B,IAAI,CAAC,OAAO,EACZ,EAAC,GAAG,IAAI,CAAC,aAAa,EAAC,CACxB,CAAC;YACF,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACvD,UAAU,CAAC,MAAK;gBACd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBACxC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC7C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;;AAEhD,gBAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;AAC5D,gBAAA,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;;aAEnC,EAAE,GAAG,CAAC,CAAC;AACV,SAAC,CAAC,CAAA;KACH;IAEO,oBAAoB,GAAA;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,OAAO;AACR,SAAA;QACD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;;QAEhD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,GAAG,SAAS,CAAC;QACxC,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;;;AAG/B,YAAA,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC;AAC/B,YAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;SACrB,EAAE,GAAG,CAAC,CAAC;KACT;;AApLU,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,kBA2DjB,QAAQ,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA6B,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;iGA3DP,gBAAgB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,SAAA,CAAA,EAAA,aAAA,EAAA,CAAA,iBAAA,EAAA,eAAA,CAAA,EAAA,SAAA,EAAA,CAAA,mBAAA,EAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,EAAA,SAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,uBAAA,EAAA,sBAAA,EAAA,EAAA,EAAA,SAAA,EAFhB,CAAC,gBAAgB,CAAC,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAElB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,QAAQ,EAAE,UAAU;oBACpB,SAAS,EAAE,CAAC,gBAAgB,CAAC;AAC9B,iBAAA,CAAA;;0BA4DI,MAAM;2BAAC,QAAQ,CAAA;+LArDC,OAAO,EAAA,CAAA;sBAAzB,KAAK;uBAAC,UAAU,CAAA;gBAOb,aAAa,EAAA,CAAA;sBADhB,KAAK;uBAAC,iBAAiB,CAAA;gBAWI,SAAS,EAAA,CAAA;sBAApC,KAAK;uBAAC,mBAAmB,CAAA;gBAKA,OAAO,EAAA,CAAA;sBAAhC,KAAK;uBAAC,iBAAiB,CAAA;gBAMpB,OAAO,EAAA,CAAA;sBADV,KAAK;uBAAC,iBAAiB,CAAA;gBAwCkB,eAAe,EAAA,CAAA;sBAAxD,WAAW;uBAAC,uBAAuB,CAAA;;;MClFzB,aAAa,CAAA;;0GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAb,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,iBAXtB,gBAAgB;QAChB,gBAAgB,CAAA,EAAA,OAAA,EAAA,CAOhB,YAAY,CAAA,EAAA,OAAA,EAAA,CAJZ,gBAAgB;QAChB,gBAAgB,CAAA,EAAA,CAAA,CAAA;AAMP,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,EAJf,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAEU,aAAa,EAAA,UAAA,EAAA,CAAA;kBAbzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,gBAAgB;wBAChB,gBAAgB;AACjB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,gBAAgB;wBAChB,gBAAgB;AACjB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;MCXY,iBAAiB,CAAA;AAJ9B,IAAA,WAAA,GAAA;QAqBU,IAAO,CAAA,OAAA,GAAW,CAAC,CAAC;QAapB,IAAK,CAAA,KAAA,GAAG,KAAK,CAAC;QAad,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC;AAexB,KAAA;AApDC;;;AAGG;IACH,IACI,MAAM,CAAC,KAAa,EAAA;AACtB,QAAA,IAAI,CAAC,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;KAC5C;AACD,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAGD;;;AAGG;IACH,IACI,IAAI,CAAC,KAAc,EAAA;AACrB,QAAA,IAAI,CAAC,KAAK,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC3C;AACD,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAGD;;;AAGG;AACH,IAAA,IACI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IACD,IAAI,KAAK,CAAC,KAAc,EAAA;AACtB,QAAA,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC5C;AAGD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,QAAQ,EAAE,IAAI;YACd,eAAe,EAAE,IAAI,CAAC,IAAI;YAC1B,gBAAgB,EAAE,IAAI,CAAC,KAAK;SAC7B,CAAC;KACH;AAED,IAAA,IACI,SAAS,GAAA;AACX,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAG,EAAA,IAAI,CAAC,MAAM,CAAA,EAAA,CAAI,GAAG,EAAE,CAAC;KAChD;;8GAzDU,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,uMAFlB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,QAAQ,EAAE,2BAA2B;AACtC,iBAAA,CAAA;8BAYK,MAAM,EAAA,CAAA;sBADT,KAAK;gBAcF,IAAI,EAAA,CAAA;sBADP,KAAK;gBAcF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAUF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAUhB,SAAS,EAAA,CAAA;sBADZ,WAAW;uBAAC,cAAc,CAAA;;;MCrDhB,oBAAoB,CAAA;IAsD/B,WACU,CAAA,QAAmB,EACnB,WAAuB,EAAA;QADvB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QAxCzB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;;QAQjB,IAAS,CAAA,SAAA,GAAG,CAAC,CAAC;QAWf,IAAM,CAAA,MAAA,GAAG,CAAC,CAAC;AAOnB;;;AAGG;QAEuB,IAAI,CAAA,IAAA,GAAG,aAAa,CAAC;AACvC,QAAA,IAAA,CAAA,KAAK,GAAG;AACd,YAAA,OAAO,EAAE,CAAC;AACV,YAAA,GAAG,EAAE,CAAC;AACN,YAAA,GAAG,EAAE,GAAG;SACT,CAAC;KAKG;AApDL;;;AAGG;IACH,IACI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC/C;AACD,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAUD;;AAEG;IACH,IACI,KAAK,CAAC,KAAa,EAAA;AACrB,QAAA,IAAI,CAAC,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;KAC3C;;AACD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAyBD,IAAA,IAAI,GAAG,GAAA;AACL,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;KACvB;IAED,IACI,GAAG,CAAC,KAAa,EAAA;AACnB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;KAC3C;AAED,IAAA,IAAI,GAAG,GAAA;AACL,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;KACvB;IAED,IACI,GAAG,CAAC,KAAa,EAAA;QACnB,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,KAAK,CAAC;KACjF;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,cAAc,EAAE,IAAI;YACpB,uBAAuB,EAAE,IAAI,CAAC,QAAQ;YACtC,CAAC,CAAA,aAAA,EAAgB,IAAI,CAAC,OAAO,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO;YAChD,CAAC,CAAA,GAAA,EAAM,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;SACnC,CAAC;KACH;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,SAAS,EAAE,CAAC;KAClB;IAED,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KAC5F;IAED,SAAS,GAAA;QACP,IAAI,CAAC,UAAU,EAAE,CAAC;AAClB,QAAA,MAAM,IAAI,GAAgB,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;AACzD,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,CAAA,EAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAA,CAAA,CAAG,CAAC,CAAC;AAChE,QAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AACtE,QAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACpE,QAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;KACrE;AAEM,IAAA,WAAW,CAAC,OAAsB,EAAA;QACvC,IAAI,CAAC,SAAS,EAAE,CAAC;KAClB;;iHA1GU,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,gTAFrB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,QAAQ,EAAE,2BAA2B;AACtC,iBAAA,CAAA;yHAWK,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAaG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAKF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAYG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAOoB,IAAI,EAAA,CAAA;sBAD7B,KAAK;;sBACL,WAAW;uBAAC,WAAW,CAAA;gBAiBpB,GAAG,EAAA,CAAA;sBADN,KAAK;gBAUF,GAAG,EAAA,CAAA;sBADN,KAAK;gBAMF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCtET,cAAc,CAAA;;2GAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,iBATV,iBAAiB,EAAE,oBAAoB,CAMpD,EAAA,OAAA,EAAA,CAAA,YAAY,aAJZ,iBAAiB;QACjB,oBAAoB,CAAA,EAAA,CAAA,CAAA;AAMX,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,EAJhB,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAEU,cAAc,EAAA,UAAA,EAAA,CAAA;kBAV1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,CAAC,iBAAiB,EAAE,oBAAoB,CAAC;AACvD,oBAAA,OAAO,EAAE;wBACP,iBAAiB;wBACjB,oBAAoB;AACrB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;MCRY,kBAAkB,CAAA;IAI7B,WAC4B,CAAA,QAAa,EAC/B,eAAiC,EAAA;QADf,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAK;QAC/B,IAAe,CAAA,eAAA,GAAf,eAAe,CAAkB;QAEzC,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;KAC5D;IAED,MAAM,CAAC,QAAa,EAAE,SAAiB,EAAA;QACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;AACjD,QAAA,IAAI,OAAO,EAAE;YACX,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC;gBACnC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC;gBAC7C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AAC9C,SAAA;KACF;;AAlBU,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,kBAKnB,QAAQ,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AALP,kBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,cAFjB,MAAM,EAAA,CAAA,CAAA;2FAEP,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;0BAMI,MAAM;2BAAC,QAAQ,CAAA;;;MCOP,cAAc,CAAA;AAKzB,IAAA,WAAA,GAAA;AAHQ,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,eAAe,CAAiB,EAAE,CAAC,CAAC;AAC/D,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;KAEjC;AAEhB,IAAA,MAAM,CAAC,MAAsB,EAAA;AAC3B,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KAChC;;2GATU,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cAFb,MAAM,EAAA,CAAA,CAAA;2FAEP,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCTY,sBAAsB,CAAA;AAMjC,IAAA,WAAA,CAC4B,QAAa;;IAE/B,cAA8B,EAAA;QAFZ,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAK;QAE/B,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;AALhC,QAAA,IAAA,CAAA,aAAa,GAAG,MAAW,GAAG,CAAC;;KAQtC;AAED,IAAA,WAAW,CAAC,OAAyB,EAAA;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;;AAE1E,QAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACnD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;AAC1D,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC7D,YAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,KAAI;;AAEtE,gBAAA,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAC,CAAC,CAAC;AAC3D,aAAC,CAAC,CAAC;AACJ,SAAA;;AAED,QAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE;YAChF,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC9C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;;AAE/C,SAAA;AAAM,aAAA;YACL,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACjD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;;AAElD,SAAA;KACF;IAED,aAAa,GAAA;QACX,IAAI,IAAI,CAAC,QAAQ,EAAE;;YAEjB,IAAI,CAAC,aAAa,EAAE,CAAC;;AAErB,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;;AAE7D,YAAA,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;AAC3B,SAAA;KACF;;AA/CU,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,kBAOvB,QAAQ,EAAA,EAAA,EAAA,KAAA,EAAAC,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAPP,sBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,cAFrB,MAAM,EAAA,CAAA,CAAA;2FAEP,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;0BAQI,MAAM;2BAAC,QAAQ,CAAA;;;MCWP,gBAAgB,CAAA;IAoI3B,WAC4B,CAAA,QAAa,EAC/B,QAAmB,EACnB,kBAAsC,EACtC,cAA8B,EAC9B,eAAuC,EAAA;QAJrB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAK;QAC/B,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAoB;QACtC,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;QAC9B,IAAe,CAAA,eAAA,GAAf,eAAe,CAAwB;QAlIzC,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;QAChB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAClB,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;QACpB,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QACjB,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAIzB,QAAA,IAAA,CAAA,KAAK,GAAmB;AACtB,YAAA,OAAO,EAAE,IAAI;SACd,CAAC;AA8CF;;;AAGG;QACM,IAAQ,CAAA,QAAA,GAAuB,OAAO,CAAC;AA8BhD;;;AAGG;AACO,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,YAAY,EAAW,CAAC;AAsCpD,QAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,QAAQ,CAAC;KAC1C;AA3GD;;;AAGG;IACH,IACI,MAAM,CAAC,KAAc,EAAA;AACvB,QAAA,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC7C;AACD,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAED;;;AAGG;IACH,IACI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC/C;AACD,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAmBD;;AAEG;IACH,IACI,UAAU,CAAC,KAAc,EAAA;AAC3B,QAAA,IAAI,CAAC,WAAW,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KACjD;AACD,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAED;;AAEG;IACH,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACxC;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;IAQD,IAAI,YAAY,CAAC,KAAqB,EAAA;QACpC,MAAM,QAAQ,GAAG,KAAK,CAAC;QACvB,IAAI,QAAQ,IAAI,QAAQ,EAAE;AACxB,YAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE;gBACjC,QAAQ,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;gBACvC,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;AACnD,aAAA;AAAM,iBAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,YAAY,EAAE;gBAC3C,QAAQ,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;AAC7C,gBAAA,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;AACvC,aAAA;AACF,SAAA;QACD,IAAI,CAAC,KAAK,GAAG;YACX,GAAG,IAAI,CAAC,KAAK;AACb,YAAA,GAAG,QAAQ;SACZ,CAAC;AACF,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;KACzH;AAED,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,mBAAmB,GAAA;AACrB,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC;AAChD,QAAA,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,IAAI,IAAI,CAAC;AACvG,QAAA,MAAM,eAAe,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,CAAoB,iBAAA,EAAA,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC;AAC7H,QAAA,OAAO,CAAG,EAAA,UAAU,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,GAAG,GAAG,CAAI,EAAA,CAAA,IAAI,UAAU,CAAC;KACtE;AAYD,IAAA,IACI,UAAU,GAAA;QACZ,MAAM,EAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,YAAY,CAAC;QACxD,OAAO;AACL,YAAA,OAAO,EAAE,IAAI;YACb,eAAe,EAAE,IAAI,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,MAAM;YACrD,gBAAgB,EAAE,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU;AACjD,YAAA,2BAA2B,EAAE,UAAU;YACvC,kBAAkB,EAAE,IAAI,CAAC,QAAQ;YACjC,CAAC,CAAA,QAAA,EAAW,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;YAC/C,CAAC,CAAA,QAAA,EAAW,IAAI,CAAC,WAAW,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW;YACnD,CAAC,CAAA,QAAA,EAAW,IAAI,CAAC,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI;AACrC,YAAA,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC,QAAQ;AAC9B,YAAA,IAAI,EAAE,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ;SACjC,CAAC;KACH;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,oBAAoB,EAAE,CAAC;KAC7B;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;AACjC,QAAA,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;KACnC;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AACxD,QAAA,MAAM,WAAW,GAAG,IAAI,GAAG,EAAE,CAAC;AAC9B,QAAA,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAEjC,MAAM,QAAQ,GAAG,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;AAErD,QAAA,KAAK,MAAM,QAAQ,IAAI,OAAO,EAAE;AAC9B,YAAA,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;AAC/B,gBAAA,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE;oBACvD,MAAM,KAAK,GAAG,qBAAqB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC;oBACpE,IAAI,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,KAAK,EAAE;AACvC,wBAAA,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAClC,qBAAA;AACF,iBAAA;AACF,aAAA;AACF,SAAA;AAED,QAAA,IAAI,WAAW,CAAC,IAAI,GAAG,CAAC,EAAE;YACxB,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;AACxD,YAAA,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACnC,SAAA;KACF;IAED,eAAe,GAAA;AACb,QAAA,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,UAAU,EAAE,IAAI,CAAC,UAAU;AAC3B,YAAA,OAAO,EAAE,IAAI;AACd,SAAA,CAAC,CAAC;KACJ;IAEO,oBAAoB,CAAC,YAAqB,IAAI,EAAA;AACpD,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,KAAK,KAAI;AACnF,gBAAA,IAAI,IAAI,KAAK,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,EAAE;AAClD,oBAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;AAC3B,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,CAAC;AAC5C,SAAA;KACF;IAED,qBAAqB,CAAC,YAAqB,IAAI,EAAA;AAC7C,QAAA,MAAM,QAAQ,GAAG,CAAA,YAAA,EAAe,IAAI,CAAC,mBAAmB,GAAG,CAAC;AAE5D,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YAElE,IAAI,CAAC,wBAAwB,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,MAAuB,KAAI;gBAClF,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AAChD,gBAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,UAAU,EAAE;AAChC,oBAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;AAC3B,oBAAA,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;AACzB,wBAAA,MAAM,EAAE,UAAU;wBAClB,UAAU,EAAE,UAAU,GAAG,KAAK,GAAG,IAAI,CAAC,UAAU;wBAChD,OAAO,EAAE,UAAU,GAAG,KAAK,GAAG,IAAI,CAAC,OAAO;AAC1C,wBAAA,OAAO,EAAE,IAAI;AACd,qBAAA,CAAC,CAAC;AACJ,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,wBAAwB,CAAC,WAAW,EAAE,CAAC;AAC7C,SAAA;KACF;;AA5OU,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,kBAqIjB,QAAQ,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA9B,IAAA,CAAA,kBAAA,EAAA,EAAA,EAAA,KAAA,EAAA+B,cAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,sBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AArIP,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,qYAFjB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAE1B,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,WAAW;AACrB,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,QAAQ,EAAE,2BAA2B;AACtC,iBAAA,CAAA;;0BAsII,MAAM;2BAAC,QAAQ,CAAA;mKA7GT,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAOG,EAAE,EAAA,CAAA;sBAAV,KAAK;gBAOF,MAAM,EAAA,CAAA;sBADT,KAAK;gBAaF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAYG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAMG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAKG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAMF,UAAU,EAAA,CAAA;sBADb,KAAK;gBAYF,OAAO,EAAA,CAAA;sBADV,KAAK;gBAaI,aAAa,EAAA,CAAA;sBAAtB,MAAM;gBA0CH,UAAU,EAAA,CAAA;sBADb,WAAW;uBAAC,OAAO,CAAA;;;MClKT,qBAAqB,CAAA;AAJlC,IAAA,WAAA,GAAA;QAUsC,IAAiB,CAAA,iBAAA,GAAG,IAAI,CAAC;QAE7D,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAKlB,KAAA;IAHC,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC;KAC7D;;kHAZU,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,qBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,4NCNlC,ibAaA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAhC,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAE,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAH,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDPa,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,SAAS;+BACE,iBAAiB,EAAA,QAAA,EAAA,ibAAA,EAAA,CAAA;8BAKlB,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAE8B,iBAAiB,EAAA,CAAA;sBAApD,WAAW;uBAAC,qBAAqB,CAAA;;;AERpC;;AAEG;MAKU,sBAAsB,CAAA;AAejC,IAAA,WAAA,CACU,cAA8B,EAAA;QAA9B,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;AATxC;;;;;AAKG;QACM,IAAM,CAAA,MAAA,GAA6B,SAAS,CAAA;KAIjD;AAGJ,IAAA,UAAU,CAAC,MAAW,EAAA;QACpB,MAAM,CAAC,cAAc,EAAE,CAAC;AACxB,QAAA,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;KAClE;;mHAvBU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA8B,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;uGAAtB,sBAAsB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,CAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,QAAQ,EAAE,gBAAgB;AAC3B,iBAAA,CAAA;kGAO0B,EAAE,EAAA,CAAA;sBAA1B,KAAK;uBAAC,gBAAgB,CAAA;gBAOd,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAON,UAAU,EAAA,CAAA;sBADT,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MCxBtB,uBAAuB,CAAA;AAJpC,IAAA,WAAA,GAAA;QAOW,IAAI,CAAA,IAAA,GAAG,QAAQ,CAAC;QAEa,IAAmB,CAAA,mBAAA,GAAG,IAAI,CAAC;AAClE,KAAA;;oHANY,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,4LAFxB,CAAE,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAED,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAJnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,QAAQ,EAAE,CAAE,CAAA;AACb,iBAAA,CAAA;8BAIU,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;gBAEgC,mBAAmB,EAAA,CAAA;sBAAxD,WAAW;uBAAC,uBAAuB,CAAA;;;MCJzB,sBAAsB,CAAA;AACjC,IAAA,WAAA,GAAA,GAAgB;AAEhB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,gBAAgB,EAAE,IAAI;SACvB,CAAC;KACH;;mHARU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,+GCPnC,+BACA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDMa,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;+BACE,kBAAkB,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;0EAQxB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MEHT,sBAAsB,CAAA;AAEjC,IAAA,WAAA,GAAA,GAAiB;AAEjB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,gBAAgB,EAAE,IAAI;SACvB,CAAC;KACH;;mHATU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,+GCPnC,+BACA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDMa,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;+BACE,kBAAkB,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;0EASxB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MENA,iBAAiB,CAAA;;8GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAjB,iBAAiB,EAAA,CAAA,CAAA;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBADtC,UAAU;;MASE,gBAAgB,CAAA;AAD7B,IAAA,WAAA,GAAA;AAuBS,QAAA,IAAA,CAAA,QAAQ,GAAG,CAAC,IAAc,KAAK,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACnD,QAAA,IAAA,CAAA,OAAO,GAAG,CAAC,IAAc,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;AACrE,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,IAAc,KAAK,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAW3E,KAAA;AAjCC,IAAA,QAAQ,CAAC,IAAc,EAAA;QACrB,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,YAAA,OAAO,SAAS,CAAC;AAClB,SAAA;aAAM,IAAI,IAAI,CAAC,KAAK,EAAE;AACrB,YAAA,OAAO,OAAO,CAAC;AAChB,SAAA;aAAM,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAG;AACrD,YAAA,OAAO,OAAO,CAAC;AAChB,SAAA;aAAM,IAAI,IAAI,CAAC,KAAK,EAAE;AACrB,YAAA,OAAO,OAAO,CAAC;AAChB,SAAA;aAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE;AACpC,YAAA,OAAO,OAAO,CAAC;AAChB,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,MAAM,CAAC;AACf,SAAA;KACF;IAEM,QAAQ,CAAC,MAAW,EAAE,IAAc,EAAA;QACzC,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;KACzC;AAMM,IAAA,YAAY,CAAC,IAAc,EAAA;AAChC,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,UAAU,EAAE,IAAI;SACjB,CAAC;AACF,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;;QAEvB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACnC,QAAA,OAAO,OAAO,CAAC;KAChB;;6GAlCU,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;iHAAhB,gBAAgB,EAAA,CAAA,CAAA;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAD5B,UAAU;;;MCNE,0BAA0B,CAAA;AAGrC,IAAA,WAAA,GAAA;KACC;;uHAJU,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,uFAF3B,CAAE,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAED,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAJtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,QAAQ,EAAE,CAAE,CAAA;AACb,iBAAA,CAAA;0EAEU,IAAI,EAAA,CAAA;sBAAZ,KAAK;;;MCDK,wBAAwB,CAAA;IAGnC,WACU,CAAA,EAAc,EACd,QAAmB,EAAA;QADnB,IAAE,CAAA,EAAA,GAAF,EAAE,CAAY;QACd,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;KACzB;IAEJ,QAAQ,GAAA;AACN,QAAA,MAAM,aAAa,GAAgB,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;AACzD,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEtD,QAAA,IAAK,IAAI,CAAC,IAAI,CAAC,KAAK,EAAG;AACrB,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YAChC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;AAChD,SAAA;AAED,QAAA,IAAK,IAAI,CAAC,IAAI,CAAC,OAAO,EAAG;AACvB,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AACvE,YAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACvD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;AACnD,SAAA;AAAM,aAAA;YACL,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;AAChD,SAAA;KACF;IAEO,UAAU,CAAC,OAA8B,EAAE,OAAY,EAAA;AAC7D,QAAA,IAAI,OAAO,EAAE;AACX,YAAA,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE;AAC1B,gBAAA,IAAI,IAAI,KAAK,OAAO,IAAI,QAAO,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,QAAQ,EAAG;oBAC3D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;AACvC,iBAAA;qBAAM,IAAI,IAAI,KAAK,OAAO,EAAE;oBAC3B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;AACvC,iBAAA;AAAM,qBAAA;AACL,oBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;AAC9C,iBAAA;AACF,aAAA;AACF,SAAA;KACF;IAEO,QAAQ,CAAC,MAA6B,EAAE,EAAO,EAAA;AACrD,QAAA,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;AAC1B,YAAA,IAAI,KAAK,EAAE;AACT,gBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAClD,aAAA;AACF,SAAA;KACF;IAEO,QAAQ,CAAC,OAA+B,EAAE,EAAO,EAAA;QACvD,MAAM,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3E,QAAA,UAAU,CAAC,MAAM,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,IAAG;YACnE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAE,CAAC;AACvC,SAAC,CAAC,CAAC;KACJ;AAEO,IAAA,SAAS,CAAC,GAAW,EAAE,KAAa,EAAE,EAAO,EAAA;QACnD,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAE,CAAC;KAC7C;;qHA1DU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,qFAFzB,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;2FAED,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAJpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,QAAQ,EAAE,EAAE;AACb,iBAAA,CAAA;yHAEU,IAAI,EAAA,CAAA;sBAAZ,KAAK;;;MCFK,mBAAmB,CAAA;IAE9B,SAAS,CAAC,IAAS,EAAE,IAAU,EAAA;AAC7B,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,OAAO;AACL,YAAA,KAAK,EAAE,IAAI;AACX,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,UAAU,EAAE,CAAC,KAAK,CAAC,IAAI;YACvB,CAAC,CAAA,MAAA,EAAS,KAAK,CAAC,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI;YACrC,CAAC,CAAA,GAAA,EAAM,KAAK,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK;YACpC,CAAC,CAAA,EAAG,KAAK,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK;SAClC,CAAC;KACH;;gHAZU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;8GAAnB,mBAAmB,EAAA,IAAA,EAAA,kBAAA,EAAA,CAAA,CAAA;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAH/B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,kBAAkB;AACzB,iBAAA,CAAA;;;MCGY,wBAAwB,CAAA;AASnC,IAAA,WAAA,CACS,MAAwB,EAAA;QAAxB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAkB;AAPzB,QAAA,IAAA,CAAA,OAAO,GAAG;AAChB,YAAA,aAAa,EAAE,IAAI;AACnB,YAAA,UAAU,EAAE,IAAI;SACjB,CAAC;QACM,IAAW,CAAA,WAAA,GAAG,EAAE,CAAC;KAIpB;IAEL,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACxD;IAED,YAAY,GAAA;AACV,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;;QAElC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;QACtC,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IACD,iBAAiB,GAAA;QACf,MAAM,OAAO,GAAG,CAAA,KAAA,EAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAA,CAAE,CAAC;;AAElD,QAAA,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QACtD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;;QAEzC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC;QAC5C,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;;qHA/BU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAG,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,qFCPrC,8VAOA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA9B,uBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,kBAAA,EAAA+B,mBAAA,EAAA,EAAA,CAAA,CAAA;2FDAa,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAJpC,SAAS;+BACE,qBAAqB,EAAA,QAAA,EAAA,8VAAA,EAAA,CAAA;oGAItB,IAAI,EAAA,CAAA;sBAAZ,KAAK;;;MEHK,kBAAkB,CAAA;AAE7B,IAAA,SAAS,CAAC,IAAS,EAAA;AAEjB,QAAA,MAAM,QAAQ,GAAG,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC;AAE5C,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,UAAU,EAAE,IAAI;YAChB,QAAQ;AACR,YAAA,UAAU,EAAE,QAAQ;YACpB,CAAC,CAAA,SAAA,EAAY,IAAI,CAAC,OAAO,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO;SAC7C,CAAC;AACF,QAAA,OAAO,OAAO,CAAC;KAChB;;+GAbU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;6GAAlB,kBAAkB,EAAA,IAAA,EAAA,iBAAA,EAAA,CAAA,CAAA;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,iBAAiB;AACxB,iBAAA,CAAA;;;MCCY,kBAAkB,CAAA;IAE7B,SAAS,CAAC,IAAS,EAAE,IAAU,EAAA;AAC7B,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;AACvB,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,CAAC,GAAG,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI;SACpB,CAAC;AACF,QAAA,OAAO,OAAO,CAAC;KAChB;;+GATU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;6GAAlB,kBAAkB,EAAA,IAAA,EAAA,iBAAA,EAAA,CAAA,CAAA;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,iBAAiB;AACxB,iBAAA,CAAA;;;MCcY,8BAA8B,CAAA;AAGzC,IAAA,WAAA,CACS,MAAwB,EAAA;QAAxB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAkB;KAC5B;;2HALM,8BAA8B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAD,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA9B,8BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,8BAA8B,EAF9B,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,CAAE,gBAAgB,CAAE,EALrB,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;AAIT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FAGU,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAT1C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,4BAA4B;AACtC,oBAAA,QAAQ,EAAE,CAAA;;;;AAIT,EAAA,CAAA;oBACD,SAAS,EAAE,CAAE,gBAAgB,CAAE;AAChC,iBAAA,CAAA;oGAEU,IAAI,EAAA,CAAA;sBAAZ,KAAK;;MAYK,uBAAuB,CAAA;AA4BlC,IAAA,WAAA,CACS,MAAc,EAAA;QAAd,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;;QA1Bb,IAAK,CAAA,KAAA,GAAa,EAAE,CAAC;AAUrB,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,YAAY,EAAE,CAAC;AAqBvC,QAAA,IAAI,CAAC,uBAAuB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAC/C,MAAM,CAAC,KAAK,IAAG;YACb,OAAO,KAAK,YAAY,aAAa,CAAC;SACvC,CAAC,CAC0B,CAAC;KAChC;IAlCD,IACI,IAAI,CAAC,IAAc,EAAA;AACrB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;KAC/C;AACD,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;IA8BD,QAAQ,GAAA;;AAEN,QAAA,IAAI,CAAC,GAAG,GAAG,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAE;AACnI,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;AAClE,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACtF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,KAAK,IAAG;AACpE,YAAA,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAC7D,YAAA,MAAM,QAAQ,GAAG,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvE,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AACpF,SAAC,CAAC,CAAC;KACJ;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;KACpC;IAEM,WAAW,GAAA;QAChB,OAAO,IAAI,CAAC,UAAU,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,UAAU,GAAG,MAAM,CAAC;KACrF;IAEM,UAAU,GAAA;QACf,OAAO,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAAC,CAAC;KAC5C;IAEM,cAAc,GAAA;AACnB,QAAA,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AACjF,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC;KAChE;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;KACvB;;oHAzEU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,4GAFvB,CAAE,gBAAgB,CAAE,EC7BjC,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,48EAoDA,uBDlCa,8BAA8B,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAE,uBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,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,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,OAAA,EAAA,eAAA,EAAA,OAAA,EAAA,QAAA,EAAA,MAAA,EAAA,SAAA,EAAA,OAAA,EAAA,gBAAA,EAAA,MAAA,CAAA,EAAA,QAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAAC,kBAAA,EAAA,kBAAA,EAAAC,mBAAA,EAAA,iBAAA,EAAAC,kBAAA,EAAA,EAAA,CAAA,CAAA;2FAa9B,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,SAAS;+BACE,oBAAoB,EAAA,SAAA,EAEnB,CAAE,gBAAgB,CAAE,EAAA,QAAA,EAAA,48EAAA,EAAA,CAAA;6FAQ3B,IAAI,EAAA,CAAA;sBADP,KAAK;gBAQI,SAAS,EAAA,CAAA;sBAAlB,MAAM;;;MErCI,uBAAuB,CAAA;AAElC,IAAA,WAAA,CACS,MAAwB,EAAA;QAAxB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAkB;KAC7B;;IAGJ,SAAS,CAAC,IAAS,EAAE,IAAY,EAAA;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC5C,QAAA,IAAI,SAAS,CAAC;QACd,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;AAC3C,YAAA,SAAS,GAAG,CAAA,IAAA,EAAO,QAAQ,CAAA,CAAE,CAAC;AAC/B,SAAA;aAAM,IAAI,QAAQ,KAAK,OAAO,EAAE;;YAE/B,SAAS,GAAG,EAAE,CAAE;AACjB,SAAA;AAAM,aAAA;YACL,SAAS,GAAG,UAAU,CAAC;AACxB,SAAA;AACD,QAAA,OAAO,IAAI,CAAC,KAAK,GAAG,CAAG,EAAA,SAAS,CAAI,CAAA,EAAA,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,SAAS,CAAC;KAC9D;;oHAnBQ,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAL,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;kHAAvB,uBAAuB,EAAA,IAAA,EAAA,sBAAA,EAAA,CAAA,CAAA;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAHnC,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,sBAAsB;AAC7B,iBAAA,CAAA;;;MCoBY,mBAAmB,CAAA;IAuB9B,WACqB,CAAA,OAAyB,EACrC,MAAwB,EACxB,MAAc,EACb,QAAmB,EACnB,WAAuB,EACvB,cAA8B,EAAA;QALnB,IAAO,CAAA,OAAA,GAAP,OAAO,CAAkB;QACrC,IAAM,CAAA,MAAA,GAAN,MAAM,CAAkB;QACxB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACb,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QACvB,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;QA5B/B,IAAQ,CAAA,QAAA,GAAgB,EAAE,CAAC;QAC3B,IAAY,CAAA,YAAA,GAAiD,eAAe,CAAC;QAiB5D,IAAI,CAAA,IAAA,GAAG,KAAK,CAAC;QAEhC,IAAa,CAAA,aAAA,GAAe,EAAE,CAAC;KASjC;AAxBL,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,aAAa,EAAE,CAAC,IAAI,CAAC,UAAU;YAC/B,OAAO,EAAE,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO;SAC5C,CAAC;KACH;AAED,IAAA,IACI,yBAAyB,GAAA;AAC3B,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;KAC1B;AAeM,IAAA,WAAW,CAAC,OAAsB,EAAA;QACvC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;KAChF;IAEM,UAAU,GAAA;;QAEf,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE;AACpD,YAAA,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAC,CAAC,CAAC;AACxE,SAAA;KACF;;gHAzCU,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAM,gBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;oGAAnB,mBAAmB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,YAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,uBAAA,EAAA,gCAAA,EAAA,WAAA,EAAA,WAAA,EAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC1BhC,m2CAyCA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,CAAA,YAAA,EAAA,ODmCa,wBAAwB,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,cAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,CAAA,YAAA,EAAA,OAAAC,0BAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,CAAA,YAAA,EAAA,OAAAC,wBAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,CAAA,YAAA,EAAA,OAAAC,wBAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,CAAA,YAAA,EAAA,OAAAC,uBAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,CAAA,YAAA,EAAA,OAAAC,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,CAAA,YAAA,EAAA,OAAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,CAAA,YAAA,EAAA,OAAAA,EAAA,CAAA,YAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,CAAA,YAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,CAAA,YAAA,EAAA,OAAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,CAAA,YAAA,EAAA,OAAAC,uBAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,CAAA,YAAA,EAAA,OAAAD,EAAA,CAAA,eAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,sBAAA,EAAA,EAAA,CAAA,UAAA,CAAA,YAAA,EAAA,OAAAE,uBAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA,CAAA;2FAlDxB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,SAAS;+BACE,eAAe,EAAA,QAAA,EAAA,m2CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;0BA4BtB,QAAQ;wKAvBF,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAShB,yBAAyB,EAAA,CAAA;sBAD5B,WAAW;uBAAC,uBAAuB,CAAA;gBAKV,IAAI,EAAA,CAAA;sBAA7B,WAAW;uBAAC,WAAW,CAAA;;MA+Bb,wBAAwB,CAAA;AAyBnC,IAAA,WAAA,CACU,MAAc,EACf,MAAwB,EACvB,WAAuB,EAAA;QAFvB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACf,IAAM,CAAA,MAAA,GAAN,MAAM,CAAkB;QACvB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QA1BxB,IAAY,CAAA,YAAA,GAAgD,eAAe,CAAC;QAqB9E,IAAQ,CAAA,QAAA,GAAe,EAAE,CAAC;QAO/B,IAAI,CAAC,uBAAuB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAC/C,MAAM,CAAC,CAAC,KAAU,KAAK,KAAK,YAAY,aAAa,CAAC,CAC1B,CAAC;KAChC;AA3BD,IAAA,IAEI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,WAAW,EAAE,IAAI;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC;KACH;IAsBD,QAAQ,GAAA;QAEN,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAExC,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC,KAAoB,KAAI;YACrF,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAC1C,YAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AAC3B,SAAC,CAAC,CAAC;AAEH,QAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AACvD,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AACtB,SAAA;KACF;AAED,IAAA,QAAQ,CAAC,GAAW,EAAA;;AAElB,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,SAAS,EAAE,KAAK,CAAC,CAAC,KAAa,EAAE,KAAa,KAAI;;AAEvD,YAAA,OAAO,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC;AACnC,SAAC,CAAC,CAAC;KACJ;AAED,IAAA,SAAS,CAAC,IAAa,EAAA;AACrB,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;KAClB;AAED,IAAA,WAAW,CAAC,MAAW,EAAA;QACrB,MAAM,CAAC,cAAc,EAAE,CAAC;AACxB,QAAA,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;KACxB;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;KACpC;;qHAtEU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAR,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,2KAFxB,CAAE,gBAAgB,CAAE,EE1EjC,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,i8BAuBA,uGFGa,mBAAmB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,cAAA,EAAA,YAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAO,uBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAD,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAG,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,OAAA,EAAA,eAAA,EAAA,OAAA,EAAA,QAAA,EAAA,MAAA,EAAA,SAAA,EAAA,OAAA,EAAA,gBAAA,EAAA,MAAA,CAAA,EAAA,QAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,kBAAA,EAAAC,mBAAA,EAAA,iBAAA,EAAAC,kBAAA,EAAA,EAAA,CAAA,CAAA;2FAkDnB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBANpC,SAAS;+BACE,qBAAqB,EAAA,SAAA,EAGpB,CAAE,gBAAgB,CAAE,EAAA,QAAA,EAAA,i8BAAA,EAAA,MAAA,EAAA,CAAA,oEAAA,CAAA,EAAA,CAAA;kJAGtB,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAEG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAIF,WAAW,EAAA,CAAA;sBAFd,WAAW;uBAAC,OAAO,CAAA;;;MGTT,aAAa,CAAA;;0GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAb,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,iBAvCtB,gBAAgB;QAChB,uBAAuB;QACvB,sBAAsB;QACtB,qBAAqB;QACrB,mBAAmB;QACnB,mBAAmB;QACnB,0BAA0B;QAC1B,wBAAwB;;QAExB,kBAAkB;QAClB,uBAAuB;QACvB,wBAAwB;QACxB,uBAAuB;QACvB,8BAA8B;QAC9B,kBAAkB;QAClB,wBAAwB;QACxB,sBAAsB;AACtB,QAAA,sBAAsB,aAGtB,YAAY;QACZ,YAAY;QACZ,YAAY;AACZ,QAAA,UAAU,aAGV,gBAAgB;QAChB,sBAAsB;QACtB,uBAAuB;QACvB,qBAAqB;QACrB,mBAAmB;QACnB,sBAAsB;QACtB,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAOb,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,EALb,SAAA,EAAA;QACT,cAAc;QACd,gBAAgB;KACjB,EAlBQ,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,YAAY;YACZ,YAAY;YACZ,UAAU;AACX,SAAA,CAAA,EAAA,CAAA,CAAA;2FAeU,aAAa,EAAA,UAAA,EAAA,CAAA;kBAzCzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,gBAAgB;wBAChB,uBAAuB;wBACvB,sBAAsB;wBACtB,qBAAqB;wBACrB,mBAAmB;wBACnB,mBAAmB;wBACnB,0BAA0B;wBAC1B,wBAAwB;;wBAExB,kBAAkB;wBAClB,uBAAuB;wBACvB,wBAAwB;wBACxB,uBAAuB;wBACvB,8BAA8B;wBAC9B,kBAAkB;wBAClB,wBAAwB;wBACxB,sBAAsB;wBACtB,sBAAsB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,YAAY;wBACZ,YAAY;wBACZ,UAAU;AACX,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,gBAAgB;wBAChB,sBAAsB;wBACtB,uBAAuB;wBACvB,qBAAqB;wBACrB,mBAAmB;wBACnB,sBAAsB;wBACtB,sBAAsB;AACvB,qBAAA;AACD,oBAAA,SAAS,EAAE;wBACT,cAAc;wBACd,gBAAgB;AACjB,qBAAA;AACF,iBAAA,CAAA;;;MC/DY,wBAAwB,CAAA;AAMnC,IAAA,WAAA,GAAA;QAcQ,IAAW,CAAA,WAAA,GAAW,CAAC,CAAC;AAEhC;;;AAGG;AACO,QAAA,IAAA,CAAA,gBAAgB,GAAyB,IAAI,YAAY,EAAU,CAAC;AAE9E;;;;AAIG;QACM,IAAM,CAAA,MAAA,GAAY,IAAI,CAAC;AAEhC;;;;AAIG;QACM,IAAY,CAAA,YAAA,GAAY,IAAI,CAAC;AAEtC;;;AAGG;QACM,IAAI,CAAA,IAAA,GAAY,IAAI,CAAC;QActB,IAAM,CAAA,MAAA,GAAW,CAAC,CAAC;QAanB,IAAM,CAAA,MAAA,GAAW,CAAC,CAAC;AAE3B;;;;AAIG;QACM,IAAW,CAAA,WAAA,GAA+B,GAAG,CAAC;;AAGvD;;;;AAIG;QACM,IAAU,CAAA,UAAA,GAA+B,GAAG,CAAC;;AAGtD;;;;AAIG;QACM,IAAU,CAAA,UAAA,GAA+B,GAAG,CAAC;AAEtD;;;;AAIG;QACM,IAAc,CAAA,cAAA,GAA+B,GAAG,CAAC;AAE1D;;;AAGG;QACM,IAAK,CAAA,KAAA,GAAqC,OAAO,CAAC;AAQ3D;;;;AAIG;QAEM,IAAI,CAAA,IAAA,GAAG,YAAY,CAAC;KArHZ;AAEjB;;;;AAIG;IACH,IACI,UAAU,CAAC,KAAa,EAAA;AAC1B,QAAA,IAAI,CAAC,WAAW,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;KAChD;AACD,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AA6BD;;;;AAIG;IACH,IACI,KAAK,CAAC,KAAa,EAAA;AACrB,QAAA,IAAI,CAAC,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;KAC3C;AACD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAGD;;;AAGG;IACH,IACI,KAAK,CAAC,KAAa,EAAA;AACrB,QAAA,IAAI,CAAC,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;KAC3C;AACD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAqDD,IAAA,IAAI,eAAe,GAAA;QACjB,OAAO;AACL,YAAA,UAAU,EAAE,IAAI;YAChB,CAAC,CAAA,WAAA,EAAc,IAAI,CAAC,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI;YACxC,CAAC,CAAA,gBAAA,EAAmB,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;SAChD,CAAC;KACH;AAED,IAAA,IAAI,YAAY,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;KAC1C;AAED,IAAA,IAAI,YAAY,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;KACzC;AAED,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC;KAC5C;AAED,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;KACxF;AAED,IAAA,IAAI,aAAa,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;KAC3E;AAED,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;KAC5E;AAED,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;KAClE;AAED,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;KACjE;AAED,IAAA,IAAI,SAAS,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;KAC3E;AAED,IAAA,IAAI,KAAK,GAAA;QACP,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,IAAI,CAAC,EAAE;YAC5C,OAAO,KAAK,CAAC,IAAI,CACf;gBACE,MAAM,EAAE,IAAI,CAAC,UAAU;aACxB,EACD,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CACpB,CAAC;AACH,SAAA;AAAM,aAAA;YACL,OAAO,KAAK,CAAC,IAAI,CACf;gBACE,MAAM,EAAE,IAAI,CAAC,UAAU;AACxB,aAAA,EACD,CAAC,KAAK,EAAE,CAAC,KAAI;AACX,gBAAA,OAAO,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;AAC3B,aAAC,CACF,CAAC,OAAO,EAAE,CAAC;AACb,SAAA;KACF;AAED,IAAA,OAAO,CAAC,IAAY,EAAA;AAClB,QAAA,IAAI,IAAI,KAAK,IAAI,CAAC,UAAU,EAAE;AAC5B,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;AACvB,YAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAClC,SAAA;KACF;;qHAlMU,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,meCTrC,uuDA6DA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAnD,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAoD,iBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,iBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAArD,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDpDa,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBALpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,oBAAoB,YAEpB,kBAAkB,EAAA,QAAA,EAAA,uuDAAA,EAAA,CAAA;0EAgBxB,UAAU,EAAA,CAAA;sBADb,KAAK;gBAaI,gBAAgB,EAAA,CAAA;sBAAzB,MAAM;gBAOE,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAOG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAMG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAQF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAcF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAcG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAQG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAQG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAOG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBAMG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAMG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAQG,IAAI,EAAA,CAAA;sBADZ,WAAW;uBAAC,WAAW,CAAA;;sBACvB,KAAK;;;MEnHK,qBAAqB,CAAA;;kHAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;mHAArB,qBAAqB,EAAA,YAAA,EAAA,CAV9B,wBAAwB,CAAA,EAAA,OAAA,EAAA,CAMxB,YAAY;AACZ,QAAA,gBAAgB,aAJhB,wBAAwB,CAAA,EAAA,CAAA,CAAA;AAOf,qBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,EALvB,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,gBAAgB;AACjB,SAAA,CAAA,EAAA,CAAA,CAAA;2FAEU,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAZjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,wBAAwB;AACzB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,wBAAwB;AACzB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,gBAAgB;AACjB,qBAAA;AACF,iBAAA,CAAA;;;MCTY,yBAAyB,CAAA;AAEpC,IAAA,WAAA,GAAA;QAES,IAAW,CAAA,WAAA,GAAW,SAAS,CAAC;QAChC,IAAiB,CAAA,iBAAA,GAAW,QAAQ,CAAC;QAYtC,IAAM,CAAA,MAAA,GAAG,EAAE,CAAC;AAEV,QAAA,IAAA,CAAA,WAAW,GAAyB,IAAI,YAAY,EAAU,CAAC;KAjBxD;IAKjB,IACI,KAAK,CAAC,KAAa,EAAA;AACrB,QAAA,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,EAAE;AACxB,YAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;AACpB,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC9B,SAAA;KACF;AACD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAKD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,GAAG,EAAE,IAAI;AACT,YAAA,MAAM,EAAE,IAAI;SACb,CAAC;KACH;AAED,IAAA,KAAK,CAAC,MAAqB,EAAA;QACzB,IAAI,CAAC,KAAK,GAAI,MAAM,CAAC,MAA2B,CAAC,KAAK,CAAC;KACxD;;sHA/BU,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yBAAyB,4PCPtC,8NAIA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAsD,kBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,oBAAA,EAAA,QAAA,EAAA,6CAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,OAAA,EAAA,MAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDGa,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBALrC,SAAS;+BACE,sBAAsB,EAAA,QAAA,EAAA,8NAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;0EAQvB,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,iBAAiB,EAAA,CAAA;sBAAzB,KAAK;gBAGF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAYI,WAAW,EAAA,CAAA;sBAApB,MAAM;gBAGH,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MEtBT,mBAAmB,CAAA;AAQ9B,IAAA,IACI,WAAW,GAAA;QACb,OAAO;YACL,CAAC,CAAA,MAAA,EAAS,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;SACtC,CAAC;KACH;;gHAbU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;oGAAnB,mBAAmB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,CAAA,aAAA,EAAA,OAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAH/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;AAC1B,iBAAA,CAAA;8BAOuB,KAAK,EAAA,CAAA;sBAA1B,KAAK;uBAAC,aAAa,CAAA;gBAGhB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCNT,uBAAuB,CAAA;AAElC,IAAA,WAAA,GAAA;QAGS,IAAiB,CAAA,iBAAA,GAAuB,EAAE,CAAC;QAC3C,IAAY,CAAA,YAAA,GAAuB,IAAI,CAAC;QACxC,IAAS,CAAA,SAAA,GAAY,OAAO,CAAC;;;;;AAW5B,QAAA,IAAA,CAAA,uBAAuB,GAAsB,IAAI,YAAY,EAAO,CAAC;AACrE,QAAA,IAAA,CAAA,iBAAiB,GAAsB,IAAI,YAAY,EAAO,CAAC;AAC/D,QAAA,IAAA,CAAA,eAAe,GAAsB,IAAI,YAAY,EAAO,CAAC;KAlBtD;AAoBjB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,KAAK,EAAE,IAAI,CAAC,SAAS,KAAK,OAAO;AACjC,YAAA,KAAK,EAAE,IAAI,CAAC,SAAS,KAAK,OAAO;SAClC,CAAC;KACH;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,KAAI;YACtC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACzC,YAAA,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;AAC9E,SAAC,CAAC,CAAC;KACJ;AAED,IAAA,oBAAoB,CAAE,MAAwB,EAAA;QAC5C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE;AAC/C,YAAA,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;AAChD,YAAA,OAAO,KAAK,CAAA;AACb,SAAA;AACD,QAAA,OAAO,EAAE,CAAA;KACV;AAED,IAAA,oBAAoB,CAAE,MAAwB,EAAA;QAC5C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE;YAC/C,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;AACtC,YAAA,OAAO,KAAK,CAAA;AACb,SAAA;AACD,QAAA,OAAO,EAAE,CAAA;KACV;AAED,IAAA,qBAAqB,CAAC,MAAwB,EAAA;AAC5C,QAAA,MAAM,KAAK,GAAG,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAC1E,IACE,IAAI,CAAC,YAAY;aAChB,OAAO,MAAM,KAAK,QAAQ;AACzB,iBAAC,OAAO,MAAM,KAAK,QAAQ,KAAK,OAAO,MAAM,CAAC,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAC1F;AACA,YAAA,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;AAC1B,SAAA;QAED,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE;YAC/C,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;AACvC,SAAA;AACD,QAAA,OAAO,KAAK,CAAC;KACd;AAED,IAAA,WAAW,CAAC,MAAwB,EAAA;AAClC,QAAA,OAAO,OAAO,MAAM,KAAK,QAAQ,GAAG,MAAM,CAAC,KAAK,KAAK,SAAS,GAAG,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;KAC3I;AAED,IAAA,SAAS,CAAC,MAAwB,EAAA;AAChC,QAAA,OAAO,OAAO,MAAM,KAAK,QAAQ,GAAG,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;KACzD;AAED,IAAA,oBAAoB,CAAC,MAAwB,EAAA;QAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACzC,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE,MAAM,KAAK,SAAS,EAAE;AAC1C,YAAA,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;AAC1B,gBAAA,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;AAC/B,aAAA;AACD,YAAA,OAAO,CAAC,CAAC;AACV,SAAA;AACD,QAAA,OAAO,CAAC,CAAC;KACV;AAED,IAAA,YAAY,CAAC,IAAY,EAAA;AACvB,QAAA,OAAO,IAAI;AACR,aAAA,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;AACtB,aAAA,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;AACnB,aAAA,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;aACtC,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aAC3D,IAAI,CAAC,GAAG,CAAC,CAAC;KACd;IAED,eAAe,CAAC,MAAwB,EAAE,CAAS,EAAA;AACjD,QAAA,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE;YACpC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACzC,YAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;AACtD,SAAA;KACF;AAED,IAAA,mBAAmB,CAAC,MAAwB,EAAA;QAC1C,OAAO,OAAO,MAAM,KAAK,QAAQ,GAAG,IAAI,GAAG,OAAO,MAAM,CAAC,MAAM,KAAK,WAAW,GAAG,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;KACxG;AAED,IAAA,mBAAmB,CAAC,MAAwB,EAAA;QAC1C,OAAO,OAAO,MAAM,KAAK,QAAQ,GAAG,IAAI,GAAG,OAAO,MAAM,CAAC,MAAM,KAAK,WAAW,GAAG,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;KACxG;IAED,6BAA6B,CAAC,MAAa,EAAE,MAAwB,EAAA;QACnE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACzC,QAAA,MAAM,iBAAiB,GAAI,MAAM,CAAC,MAA2B,CAAC,KAAK,CAAC;AACpE,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,iBAAiB,CAAC;AACnE,QAAA,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;KACpF;AAED,IAAA,sBAAsB,CAAC,MAAa,EAAA;AAClC,QAAA,MAAM,SAAS,GAAI,MAAM,CAAC,MAA2B,CAAC,OAAO,CAAC;AAC9D,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KACtC;;oHA3HU,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,weCRpC,s+HA2GA,EAAA,MAAA,EAAA,CAAA,wNAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAvD,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAwD,uBAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAxD,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAG,uBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAsD,mBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAzD,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA0D,oBAAA,EAAA,QAAA,EAAA,6CAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,OAAA,EAAA,MAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA1D,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDnGa,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,SAAS;+BACE,oBAAoB,EAAA,QAAA,EAAA,s+HAAA,EAAA,MAAA,EAAA,CAAA,wNAAA,CAAA,EAAA,CAAA;0EAQrB,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,iBAAiB,EAAA,CAAA;sBAAzB,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAOI,uBAAuB,EAAA,CAAA;sBAAhC,MAAM;gBACG,iBAAiB,EAAA,CAAA;sBAA1B,MAAM;gBACG,eAAe,EAAA,CAAA;sBAAxB,MAAM;gBAGH,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MEvBT,uCAAuC,CAAA;AAElD,IAAA,WAAA,GAAA;QAYQ,IAAa,CAAA,aAAA,GAAG,CAAC,CAAC;QAEjB,IAAiB,CAAA,iBAAA,GAAW,iBAAiB,CAAC;QAC9C,IAAmB,CAAA,mBAAA,GAAa,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAC/C,QAAA,IAAA,CAAA,kBAAkB,GAAyB,IAAI,YAAY,EAAU,CAAC;KAhB/D;IAEjB,IACI,YAAY,CAAC,KAAa,EAAA;AAC5B,QAAA,IAAI,IAAI,CAAC,aAAa,IAAI,KAAK,EAAE;AAC/B,YAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;AAC3B,YAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACrC,SAAA;KACF;AACD,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;KAC3B;AAOD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,GAAG,EAAE,IAAI;SACV,CAAC;KACH;;oIAzBU,uCAAuC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvC,uCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uCAAuC,yTCPpD,yUAMA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAsD,kBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAK,mBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA9C,IAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,6GAAA,EAAA,MAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,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,EAAA,EAAA,IAAA,EAAAN,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAM,IAAA,CAAA,cAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDCa,uCAAuC,EAAA,UAAA,EAAA,CAAA;kBALnD,SAAS;+BACE,uCAAuC,EAAA,QAAA,EAAA,yUAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;0EAS7C,YAAY,EAAA,CAAA;sBADf,KAAK;gBAYG,iBAAiB,EAAA,CAAA;sBAAzB,KAAK;gBACG,mBAAmB,EAAA,CAAA;sBAA3B,KAAK;gBACI,kBAAkB,EAAA,CAAA;sBAA3B,MAAM;gBAGH,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MEnBT,cAAc,CAAA;IA8FzB,WACU,CAAA,QAAmB,EACnB,WAAuB,EAAA;QADvB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QAnEzB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAYlB,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;QAsBpB,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC;QAiBf,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC;QAYf,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;KAKpB;AA/EL;;;AAGG;IACH,IACI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC/C;;AACD,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAED;;;AAGG;IACH,IACI,UAAU,CAAC,KAAc,EAAA;AAC3B,QAAA,IAAI,CAAC,WAAW,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KACjD;;AACD,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAYD;;;AAGG;IACH,IACI,KAAK,CAAC,KAAc,EAAA;AACtB,QAAA,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC5C;;AACD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAOD;;;AAGG;IACH,IACI,KAAK,CAAC,KAAc,EAAA;AACtB,QAAA,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC5C;;AACD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAED;;;AAGG;IACH,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC9C;;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAQD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,KAAK,EAAE,IAAI;YACX,CAAC,CAAA,MAAA,EAAS,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;YACrC,CAAC,CAAA,QAAA,EAAW,IAAI,CAAC,OAAO,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO;YAC3C,CAAC,CAAA,OAAA,EAAU,IAAI,CAAC,WAAW,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW;YAClD,gBAAgB,EAAE,IAAI,CAAC,QAAQ;YAC/B,kBAAkB,EAAE,IAAI,CAAC,UAAU;YACnC,CAAC,CAAA,MAAA,EAAS,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;YACrC,aAAa,EAAE,IAAI,CAAC,KAAK;YACzB,UAAU,EAAE,IAAI,CAAC,KAAK;YACtB,eAAe,EAAE,IAAI,CAAC,OAAO;SAC9B,CAAC;KACH;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,oBAAoB,EAAE,CAAC;KAC7B;;IAGD,oBAAoB,GAAA;AAClB,QAAA,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE;AACrB,YAAA,MAAM,aAAa,GAAgB,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;YAClE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AACnD,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,KAAK,IAAI,GAAG,kBAAkB,GAAG,CAAA,iBAAA,EAAoB,IAAI,CAAC,UAAU,EAAE,CAAC;YACxG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAC3D,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC/C,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;YAC/D,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AACnD,SAAA;KACF;;2GAnIU,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;+FAAd,cAAc,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,WAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,YAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,EAAA,KAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;AAC1B,iBAAA,CAAA;yHAaU,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAMF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAaF,UAAU,EAAA,CAAA;sBADb,KAAK;gBAYG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAKG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAMF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAYG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAMF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAaF,OAAO,EAAA,CAAA;sBADV,KAAK;gBAeF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCrGT,cAAc,CAAA;AAOzB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;YACL,CAAC,CAAA,MAAA,EAAS,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;SACtC,CAAC;KACH;;2GAZU,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;+FAAd,cAAc,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,CAAA,QAAA,EAAA,OAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,UAAU;AACrB,iBAAA,CAAA;8BAMkB,KAAK,EAAA,CAAA;sBAArB,KAAK;uBAAC,QAAQ,CAAA;gBAGX,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCPT,oBAAoB,CAAA;AAyB/B,IAAA,WAAA,GAAA;QATQ,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;KASP;AArBjB;;;AAGG;IACH,IACI,MAAM,CAAC,KAAc,EAAA;AACvB,QAAA,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC7C;;AACD,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;;AAID,IAAA,IACI,WAAW,GAAA;QACb,OAAO;YACL,cAAc,EAAE,IAAI,CAAC,MAAM;SAC5B,CAAC;KACH;;iHAvBU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAApB,oBAAoB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,QAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC3B,iBAAA,CAAA;0EAUK,MAAM,EAAA,CAAA;sBADT,KAAK;uBAAC,cAAc,CAAA;gBAWjB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCaT,mBAAmB,CAAA;AAW9B,IAAA,WAAA,CACU,QAAyB,EAAA;QAAzB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAiB;QAe3B,IAAW,CAAA,WAAA,GAAG,CAAC,CAAC;QAShB,IAAQ,CAAA,QAAA,GAAY,KAAK,CAAC;QAS1B,IAAc,CAAA,cAAA,GAAY,KAAK,CAAC;QAsBhC,IAAkB,CAAA,kBAAA,GAAuB,EAAE,CAAC;QAW5C,IAAO,CAAA,OAAA,GAAY,KAAK,CAAC;QASzB,IAAO,CAAA,OAAA,GAAY,KAAK,CAAC;QASzB,IAAM,CAAA,MAAA,GAAoB,EAAgC,CAAC;QAS3D,IAAa,CAAA,aAAA,GAAW,EAAE,CAAC;QAE1B,IAAiB,CAAA,iBAAA,GAAW,iBAAiB,CAAC;QAC9C,IAAmB,CAAA,mBAAA,GAAa,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAGhD,IAAY,CAAA,YAAA,GAA8B,gBAAgB,CAAC;QAS5D,IAAW,CAAA,WAAA,GAAY,KAAK,CAAC;QAS7B,IAAW,CAAA,WAAA,GAAY,KAAK,CAAC;QAU7B,IAAY,CAAA,YAAA,GAAiB,EAAE,CAAC;QAG/B,IAAgB,CAAA,gBAAA,GAAG,SAAS,CAAC;QAC7B,IAAsB,CAAA,sBAAA,GAAG,gBAAgB,CAAC;QAW3C,IAAiB,CAAA,iBAAA,GAAW,EAAE,CAAC;QAE9B,IAAc,CAAA,cAAA,GAAsB,EAAE,CAAC;QACvC,IAAc,CAAA,cAAA,GAAsB,EAAE,CAAC;QACvC,IAAc,CAAA,cAAA,GAAsB,EAAE,CAAC;QACvC,IAAU,CAAA,UAAA,GAAY,EAAE,CAAC;AAExB,QAAA,IAAA,CAAA,mBAAmB,GAAsB,IAAI,YAAY,EAAO,CAAC;AACjE,QAAA,IAAA,CAAA,iBAAiB,GAAsB,IAAI,YAAY,EAAO,CAAC;AAC/D,QAAA,IAAA,CAAA,gBAAgB,GAAsB,IAAI,YAAY,EAAO,CAAC;AAC9D,QAAA,IAAA,CAAA,kBAAkB,GAAsB,IAAI,YAAY,EAAO,CAAC;AAChE,QAAA,IAAA,CAAA,QAAQ,GAAsB,IAAI,YAAY,EAAO,CAAC;AACtD,QAAA,IAAA,CAAA,uBAAuB,GAAsB,IAAI,YAAY,EAAO,CAAC;AACrE,QAAA,IAAA,CAAA,mBAAmB,GAAsB,IAAI,YAAY,EAAO,CAAC;AACjE,QAAA,IAAA,CAAA,sBAAsB,GAAsB,IAAI,YAAY,EAAO,CAAC;QAG9E,IAAS,CAAA,SAAA,GAAiD,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAkB1F,IAAY,CAAA,YAAA,GAAuB,KAAK,CAAC;AA/K/C,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;KAC/D;IAID,IACI,UAAU,CAAC,KAAa,EAAA;QAC1B,IAAI,CAAC,WAAW,GAAG,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;KAC9C;AACD,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;IAGD,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC9C;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;IAGD,IACI,aAAa,CAAC,KAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,cAAc,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KACpD;AACD,IAAA,IAAI,aAAa,GAAA;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;KAC5B;IAGD,IACI,OAAO,CAAC,KAAK,EAAA;AACf,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;KACvB;AACD,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,cAAc,CAAC;KAC7C;IAKD,IACI,iBAAiB,CAAC,KAAyB,EAAA;AAC7C,QAAA,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;AAChD,QAAA,IAAI,CAAC,aAAa,CAAC;KACpB;AACD,IAAA,IAAI,iBAAiB,GAAA;QACnB,OAAO,IAAI,CAAC,kBAAkB,CAAC;KAChC;IAKD,IACI,MAAM,CAAC,KAAc,EAAA;AACvB,QAAA,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC7C;AACD,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IAGD,IACI,MAAM,CAAC,KAAc,EAAA;AACvB,QAAA,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC7C;AACD,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IAGD,IACI,KAAK,CAAC,KAAc,EAAA;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAA+B,CAAC;KAClE;AACD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IAGD,IACI,YAAY,CAAC,KAAa,EAAA;AAC5B,QAAA,IAAI,CAAC,aAAa,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;KAClD;AACD,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;KAC3B;IASD,IACI,UAAU,CAAC,KAAc,EAAA;AAC3B,QAAA,IAAI,CAAC,WAAW,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KACjD;AACD,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;IAGD,IACI,UAAU,CAAC,KAAc,EAAA;AAC3B,QAAA,IAAI,CAAC,WAAW,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KACjD;AACD,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;IAGD,IACI,WAAW,CAAC,KAAmB,EAAA;AACjC,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;KAC3C;AACD,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IAOD,IACI,gBAAgB,CAAC,KAAa,EAAA;AAChC,QAAA,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;AAC/B,QAAA,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACxC,QAAA,IAAI,CAAC,aAAa,CAAC;KACpB;AACD,IAAA,IAAI,gBAAgB,GAAA;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;KAC/B;IAoBD,kBAAkB,GAAA;QAChB,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,KAA0B,KAAI;YAC1D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC;AAC/C,SAAC,CAAC,CAAC;KACJ;AAED,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC;AACtE,QAAA,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,GAAG,KAAK,GAAG,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,eAAe,CAAC;;KAEvG;IACD,IAAI,WAAW,CAAC,KAAK,EAAA;AACnB,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC;AACtE,QAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACxC,QAAA,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,GAAG,KAAK,GAAG,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,eAAe,CAAC;KACpH;AAGD,IAAA,IAAI,gBAAgB,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;KAC3D;AAED,IAAA,IAAI,iBAAiB,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;KAC7D;AAED,IAAA,IAAI,aAAa,GAAA;QACf,OAAO,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;KACzF;AAED,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;KACvF;AAED,IAAA,IAAI,0BAA0B,GAAA;QAC5B,OAAO,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;KAC3E;AAED,IAAA,IAAI,iBAAiB,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAC3B,IAAI,CAAC,0BAA0B,EAC/B,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,aAAa,CACrD,CAAC;KACH;AAED,IAAA,IAAI,YAAY,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;;KAE3E;AAED,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;KAClG;AAED,IAAA,IAAI,cAAc,GAAA;QAChB,OAAO,IAAI,CAAC,QAAQ;cAChB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAW,KAAI;gBAClC,IAAI,OAAO,MAAM,KAAK,QAAQ;oBAAE,OAAO,MAAM,CAAC,GAAG,CAAC;;AAC7C,oBAAA,OAAO,MAAM,CAAC;AACrB,aAAC,CAAC;AACF,cAAE,IAAI,CAAC,OAAO,CAAC;KAClB;AAED,IAAA,IAAI,gBAAgB,GAAA;QAClB,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;KAC1E;AAED,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;AACpC,QAAA,IACE,CAAC,GAAG;AACJ,YAAA,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC;aACnC,IAAI,CAAC,YAAY;AAChB,gBAAA,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ;AACrC,gBAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAC7B;YACA,OAAO,IAAI,CAAC,aAAa,CAAC;AAC3B,SAAA;;;AAGD,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,KAAK,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;;AAE/F,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,IAA2B,EAAE,KAA4B,KAAI;AAC3G,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;AACxB,YAAA,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YAC1B,MAAM,CAAC,GAAG,OAAO,KAAK,KAAK,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;YAC1E,MAAM,CAAC,GAAG,OAAO,MAAM,KAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;YAC7E,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;AAClD,SAAC,CAAC,CAAC;AACH,QAAA,OAAO,MAAM,CAAC;KACf;AAED,IAAA,IAAI,cAAc,GAAA;AAChB,QAAA,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACzB,IACE,IAAI,CAAC,YAAY;AACjB,YAAA,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ;AACrC,YAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,EAC1B;;AAEA,YAAA,OAAO,MAAM,CAAC;AACf,SAAA;AACD,QAAA,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAI;YAC9D,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;YACjD,IAAI,YAAY,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;;gBAEvD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,KAAI;AAC9B,oBAAA,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;AAChE,iBAAC,CAAC,CAAC;AACJ,aAAA;AACH,SAAC,CAAC,CAAC;;AAEH,QAAA,OAAO,MAAM,CAAC;KACf;AAED,IAAA,IAAI,aAAa,GAAA;AACf,QAAA,IAAI,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC;QAChC,IACE,CAAC,IAAI,CAAC,gBAAgB;AACtB,aAAC,IAAI,CAAC,WAAW,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EACvF;AACA,YAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACrC,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;AACnD,QAAA,MAAM,kBAAkB,GAAG,CAAC,GAAQ,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;;QAEpF,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAA2B,KAAI;YACnD,OAAO,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAC9E,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACrC,QAAA,OAAO,KAAK,CAAC;KACd;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,WAAW,EAAE,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KAC5G;AAEO,IAAA,QAAQ,CAAC,KAAc,EAAA;AAC7B,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAW,EAAE,KAAa,KAAI;gBAC9C,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;AACjC,aAAC,CAAC,CAAC;AACJ,SAAA;AACD,QAAA,OAAsB,EAAE,CAAC;KAC1B;AAED,IAAA,gBAAgB,CAAC,MAA6C,EAAA;QAC5D,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;KACzD;AAED,IAAA,UAAU,CAAC,CAAS,EAAA;AAClB,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5E,QAAA,IAAI,MAAM,CAAC;QACX,IAAI,IAAI,CAAC,OAAO;AAAE,YAAA,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3C,QACE,IAAI,CAAC,YAAY;aAChB,CAAC,IAAI,CAAC,OAAO;gBACZ,OAAO,MAAM,KAAK,QAAQ;iBACzB,OAAO,MAAM,KAAK,QAAQ;AACzB,qBAAC,OAAO,MAAM,CAAC,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;AAC7D,YAAA,YAAY,EACZ;KACH;IAED,kBAAkB,CAAC,MAAc,EAAE,KAAa,EAAA;AAC9C,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;YAC3B,OAAO;AACR,SAAA;;QAED,MAAM,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;AAEtC,QAAA,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE;AAC3B,YAAA,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC,EAAE;AACrB,gBAAA,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;AACrB,aAAA;AAAM,iBAAA,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,EAAE;AAChC,gBAAA,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;AACtB,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE;AACzE,oBAAA,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;AACrB,iBAAA;AAAM,qBAAA;AACL,oBAAA,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;AACjB,iBAAA;AACF,aAAA;AACF,SAAA;AAAM,aAAA;AACL,YAAA,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;AACtB,YAAA,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;AACrB,SAAA;AACD,QAAA,IAAI,CAAC,WAAW,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;KACjC;AAED,IAAA,aAAa,CAAC,MAAc,EAAA;AAC1B,QAAA,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;KAC1B;AAED,IAAA,wBAAwB,CAAC,MAAW,EAAA;AAClC,QAAA,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,IAAI,CAAC;;AAE7G,QAAA,IAAI,MAAM,EAAE;YACV,OAAO;AACR,SAAA;AACD,QAAA,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;AACtB,QAAA,IAAI,CAAC,iBAAiB,GAAG,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC,GAAG,MAAM,CAAA,CAAE,GAAG,KAAK,EAAE,CAAC;KAC9E;AAED,IAAA,uBAAuB,CAAC,MAAc,EAAA;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,IAAI,CAAC;;AAE1G,QAAA,IAAI,MAAM,EAAE;YACV,OAAO;AACR,SAAA;AACD,QAAA,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;AACtB,QAAA,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC;KAChC;AAED,IAAA,KAAK,CAAC,MAAkB,EAAA;AACtB,QAAA,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;AAC5B,QAAA,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;AAC3B,QAAA,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;AACtB,QAAA,IAAI,CAAC,aAAa,CAAC;KACpB;AAED,IAAA,wBAAwB,CAAC,KAAa,EAAA;AACpC,QAAA,IAAI,KAAK,KAAK,IAAI,CAAC,aAAa,EAAE;AAChC,YAAA,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;AACtB,YAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;AAC3B,YAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACrC,SAAA;KACF;IAED,gBAAgB,CAAC,MAAa,EAAE,IAAmB,EAAA;QACjD,IAAI,CAAC,SAAS,GAAI,MAAM,CAAC,MAA2B,CAAC,OAAO,CAAC;AAC7D,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC;AACtE,QAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACzC;AAED,IAAA,qBAAqB,CAAC,MAAW,EAAA;AAC/B,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAmB,KAAI;YACnD,OAAO,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;AACxC,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;KAC3B;IAED,kBAAkB,CAAC,IAAW,EAAE,OAAe,EAAA;AAC7C,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI;AAClC,YAAA,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;AACpE,YAAA,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;SACvE,CAAA;AACD,QAAA,OAAO,KAAK,CAAA;KACb;IAED,oBAAoB,CAAC,IAAW,EAAE,OAAe,EAAA;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAe,KAAK,MAAM,CAAC,KAAK,CAAC,KAAK,OAAO,CAAC,CAAC;AACnF,QAAA,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC;KAC5B;AAED,IAAA,aAAa,CAAC,MAAkB,EAAA;AAC9B,QAAA,MAAM,MAAM,GAAG,MAAM,CAAC,MAA6B,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACrC,QAAA,MAAM,QAAQ,GAAG,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;QAC7D,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KACxF;AAED,IAAA,cAAc,CAAC,KAA6D,EAAA;AAC1E,QAAA,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;QACzC,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,0BAA0B,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;KAC3G;;gHA1bU,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,eAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;oGAAnB,mBAAmB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,OAAA,EAAA,SAAA,EAAA,aAAA,EAAA,eAAA,EAAA,OAAA,EAAA,SAAA,EAAA,YAAA,EAAA,cAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,OAAA,EAAA,YAAA,EAAA,cAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,OAAA,EAAA,SAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,WAAA,EAAA,aAAA,EAAA,WAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,OAAA,EAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,SAAA,EA0Kb,mBAAmB,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC/MtC,+xPAsLA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA+C,yBAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,mBAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,mBAAA,EAAA,cAAA,EAAA,WAAA,EAAA,SAAA,EAAA,YAAA,EAAA,WAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,yBAAA,EAAA,mBAAA,EAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,qBAAA,EAAA,QAAA,EAAA,kCAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,wBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,OAAA,EAAA,OAAA,EAAA,aAAA,EAAA,YAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,uCAAA,EAAA,QAAA,EAAA,uCAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,mBAAA,EAAA,qBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,MAAA,EAAA,MAAA,EAAA,SAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAD,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAE,cAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,aAAA,EAAA,UAAA,EAAA,YAAA,EAAA,SAAA,EAAA,OAAA,EAAA,OAAA,EAAA,YAAA,EAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,mBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAL,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAM,oBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDjJa,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAN/B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,eAAe,YAGf,aAAa,EAAA,QAAA,EAAA,+xPAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;sGAsBnB,UAAU,EAAA,CAAA;sBADb,KAAK;gBAWF,OAAO,EAAA,CAAA;sBADV,KAAK;gBAUF,aAAa,EAAA,CAAA;sBADhB,KAAK;gBAUF,OAAO,EAAA,CAAA;sBADV,KAAK;gBASG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAGF,iBAAiB,EAAA,CAAA;sBADpB,KAAK;gBAWG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAGF,MAAM,EAAA,CAAA;sBADT,KAAK;gBAUF,MAAM,EAAA,CAAA;sBADT,KAAK;gBAUF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAUF,YAAY,EAAA,CAAA;sBADf,KAAK;gBASG,iBAAiB,EAAA,CAAA;sBAAzB,KAAK;gBACG,mBAAmB,EAAA,CAAA;sBAA3B,KAAK;gBACG,kBAAkB,EAAA,CAAA;sBAA1B,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAGF,UAAU,EAAA,CAAA;sBADb,KAAK;gBAUF,UAAU,EAAA,CAAA;sBADb,KAAK;gBAUF,WAAW,EAAA,CAAA;sBADd,KAAK;gBAUG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,gBAAgB,EAAA,CAAA;sBAAxB,KAAK;gBACG,sBAAsB,EAAA,CAAA;sBAA9B,KAAK;gBAGF,gBAAgB,EAAA,CAAA;sBADnB,KAAK;gBAWG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEI,mBAAmB,EAAA,CAAA;sBAA5B,MAAM;gBACG,iBAAiB,EAAA,CAAA;sBAA1B,MAAM;gBACG,gBAAgB,EAAA,CAAA;sBAAzB,MAAM;gBACG,kBAAkB,EAAA,CAAA;sBAA3B,MAAM;gBACG,QAAQ,EAAA,CAAA;sBAAjB,MAAM;gBACG,uBAAuB,EAAA,CAAA;sBAAhC,MAAM;gBACG,mBAAmB,EAAA,CAAA;sBAA5B,MAAM;gBACG,sBAAsB,EAAA,CAAA;sBAA/B,MAAM;gBAE+B,eAAe,EAAA,CAAA;sBAApD,eAAe;uBAAC,mBAAmB,CAAA;;;ME1LzB,WAAW,CAAA;;wGAAX,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAX,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,iBAbpB,cAAc;QACd,mBAAmB;QACnB,oBAAoB,CAAA,EAAA,OAAA,EAAA,CAQpB,YAAY,CAAA,EAAA,OAAA,EAAA,CALZ,cAAc;QACd,mBAAmB;QACnB,oBAAoB,CAAA,EAAA,CAAA,CAAA;AAMX,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,EAJb,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAEU,WAAW,EAAA,UAAA,EAAA,CAAA;kBAfvB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,cAAc;wBACd,mBAAmB;wBACnB,oBAAoB;AACrB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,cAAc;wBACd,mBAAmB;wBACnB,oBAAoB;AACrB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;MCdY,gBAAgB,CAAA;AAoB3B,IAAA,WAAA,GAAA;AAlBA;;AAEG;QACgB,IAAK,CAAA,KAAA,GAAqB,EAAE,CAAC;KAe/B;AARjB,IAAA,IACI,WAAW,GAAA;QACb,OAAO;YACL,CAAC,CAAA,GAAA,EAAM,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;YAClC,aAAa,EAAE,IAAI,CAAC,QAAQ;SAC7B,CAAC;KACH;;6GAlBU,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;iGAAhB,gBAAgB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,CAAA,UAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAH5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,YAAY;AACvB,iBAAA,CAAA;0EAMoB,KAAK,EAAA,CAAA;sBAAvB,KAAK;uBAAC,UAAU,CAAA;gBAKR,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCZT,eAAe,CAAA;AAH5B,IAAA,WAAA,GAAA;AAIE;;;AAGG;QACe,IAAM,CAAA,MAAA,GAAW,IAAI,CAAC;AA0CzC,KAAA;AAxCC,IAAA,IACI,WAAW,GAAA;AAEb,QAAA,IAAK,OAAO,IAAI,CAAC,MAAM,KAAK,SAAS,EAAG;AACtC,YAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AACzB,SAAA;AACD,QAAA,IAAK,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAG;YACxE,OAAO;AACL,gBAAA,MAAM,EAAE,IAAI;AACZ,gBAAA,CAAC,UAAU,IAAI,CAAC,MAAM,CAAE,CAAA,GAAG,IAAI;aAChC,CAAC;AACH,SAAA;AACD,QAAA,IAAK,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAG;AACrC,YAAA,MAAM,SAAS,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;;YAE5H,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC;YAChF,MAAM,OAAO,GAAG,EAAE,CAAC;AACnB,YAAA,IAAI,CAAC,OAAO,CAAC,GAAG,IAAG;;AAEjB,gBAAA,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;AAC3B,gBAAA,IAAK,OAAO,GAAG,KAAK,SAAS,EAAE;;AAE7B,oBAAA,OAAO,CAAC,CAAU,OAAA,EAAA,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;AACjC,iBAAA;qBAAM,IAAK,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAG;;oBAE/D,OAAO,CAAC,UAAU,GAAG,CAAA,CAAA,EAAI,GAAG,CAAE,CAAA,CAAC,GAAG,IAAI,CAAC;AACxC,iBAAA;AAAM,qBAAA,IAAK,OAAO,GAAG,KAAK,QAAQ,EAAG;oBACpC,IAAI,OAAO,IAAI,GAAG,EAAE;;wBAElB,OAAO,CAAC,CAAU,OAAA,EAAA,GAAG,CAAI,CAAA,EAAA,GAAG,CAAC,KAAK,CAAE,CAAA,CAAC,GAAG,IAAI,CAAC;AAC9C,qBAAA;oBACD,IAAI,OAAO,IAAI,GAAG,EAAE;;wBAElB,OAAO,CAAC,CAAU,OAAA,EAAA,GAAG,CAAI,CAAA,EAAA,GAAG,CAAC,KAAK,CAAE,CAAA,CAAC,GAAG,IAAI,CAAC;AAC9C,qBAAA;AACF,iBAAA;AACH,aAAC,CAAC,CAAC;YACH,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,EAAC,MAAM,EAAE,KAAK,EAAC,GAAG,OAAO,CAAC;AACzE,SAAA;KACF;;4GA9CU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;gGAAf,eAAe,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,QAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,WAAW;AACtB,iBAAA,CAAA;8BAMmB,MAAM,EAAA,CAAA;sBAAvB,KAAK;uBAAC,SAAS,CAAA;gBAGZ,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCPT,kBAAkB,CAAA;AAgB7B,IAAA,WAAA,GAAA;AAdA;;;AAGG;QACkB,IAAK,CAAA,KAAA,GAAe,EAAE,CAAC;KAU5B;AARhB,IAAA,IACI,WAAW,GAAA;AACb,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,OAAO;AACL,YAAA,CAAC,QAAQ,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,KAAK;SAC3B,CAAC;KACH;;+GAdU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAlB,kBAAkB,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,CAAA,YAAA,EAAA,OAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,cAAc;AACzB,iBAAA,CAAA;0EAOsB,KAAK,EAAA,CAAA;sBAAzB,KAAK;uBAAC,YAAY,CAAA;gBAGf,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCRT,gBAAgB,CAAA;AAH7B,IAAA,WAAA,GAAA;AAKE;;;AAGG;QACgB,IAAO,CAAA,OAAA,GAAY,IAAI,CAAC;AA0C5C,KAAA;AAxCC,IAAA,IACI,WAAW,GAAA;AAEb,QAAA,IAAK,OAAO,IAAI,CAAC,OAAO,KAAK,SAAS,EAAG;AACvC,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC1B,SAAA;AACD,QAAA,IAAK,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAG;YAC1E,OAAO;AACL,gBAAA,CAAC,WAAW,IAAI,CAAC,OAAO,CAAE,CAAA,GAAG,IAAI;aAClC,CAAC;AACH,SAAA;AACD,QAAA,IAAK,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAG;AACtC,YAAA,MAAM,UAAU,GAAG;AACjB,gBAAA,GAAG,EAAE,SAAS;AACd,gBAAA,GAAG,EAAE,SAAS;AACd,gBAAA,MAAM,EAAE,SAAS;AACjB,gBAAA,KAAK,EAAE,SAAS;AAChB,gBAAA,MAAM,EAAE,SAAS;AACjB,gBAAA,IAAI,EAAE,SAAS;AACf,gBAAA,IAAI,EAAE,SAAS;gBACf,GAAG,IAAI,CAAC,OAAO;aAChB,CAAC;;YAEF,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,SAAS,CAAE,CAAC;YACnF,MAAM,OAAO,GAAG,EAAE,CAAC;AACnB,YAAA,IAAI,CAAC,OAAO,CAAC,GAAG,IAAG;;AAEjB,gBAAA,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;AAC5B,gBAAA,IAAI,OAAO,GAAG,KAAK,SAAS,EAAE;;AAE5B,oBAAA,OAAO,CAAC,CAAW,QAAA,EAAA,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;AACjC,iBAAA;AAAM,qBAAA;;AAEL,oBAAA,OAAO,CAAC,CAAW,QAAA,EAAA,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;AAClC,iBAAA;AACH,aAAC,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YAC3C,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,EAAC,OAAO,EAAE,KAAK,EAAC,GAAG,OAAO,CAAC;AAC1E,SAAA;KACF;;6GA/CU,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;iGAAhB,gBAAgB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,SAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAH5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,YAAY;AACvB,iBAAA,CAAA;8BAOoB,OAAO,EAAA,CAAA;sBAAzB,KAAK;uBAAC,UAAU,CAAA;gBAGb,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MCaT,eAAe,CAAA;;4GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,iBAjBxB,gBAAgB;QAChB,eAAe;QACf,gBAAgB;QAChB,kBAAkB;QAClB,cAAc,CAAA,EAAA,OAAA,EAAA,CAGd,YAAY,CAAA,EAAA,OAAA,EAAA,CAGZ,gBAAgB;QAChB,eAAe;QACf,gBAAgB;QAChB,kBAAkB;QAClB,cAAc,CAAA,EAAA,CAAA,CAAA;AAGL,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EAXjB,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FASU,eAAe,EAAA,UAAA,EAAA,CAAA;kBAnB3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,gBAAgB;wBAChB,eAAe;wBACf,gBAAgB;wBAChB,kBAAkB;wBAClB,cAAc;AACf,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,gBAAgB;wBAChB,eAAe;wBACf,gBAAgB;wBAChB,kBAAkB;wBAClB,cAAc;AACf,qBAAA;AACF,iBAAA,CAAA;;;MCaY,gBAAgB,CAAA;;6GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,iBApBzB,mBAAmB;QACnB,yBAAyB;QACzB,uCAAuC;AACvC,QAAA,uBAAuB,aAIvB,YAAY;QACZ,kBAAkB;QAClB,WAAW;QACX,gBAAgB;QAChB,qBAAqB;QACrB,UAAU;QACV,WAAW;QACX,YAAY;QACZ,YAAY;QACZ,mBAAmB;AACnB,QAAA,eAAe,aAZP,mBAAmB,CAAA,EAAA,CAAA,CAAA;AAelB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,EAdlB,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,kBAAkB;YAClB,WAAW;YACX,gBAAgB;YAChB,qBAAqB;YACrB,UAAU;YACV,WAAW;YACX,YAAY;YACZ,YAAY;YACZ,mBAAmB;YACnB,eAAe;AAChB,SAAA,CAAA,EAAA,CAAA,CAAA;2FAEU,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAtB5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,mBAAmB;wBACnB,yBAAyB;wBACzB,uCAAuC;wBACvC,uBAAuB;AACxB,qBAAA;oBACD,OAAO,EAAE,CAAC,mBAAmB,CAAC;AAC9B,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,kBAAkB;wBAClB,WAAW;wBACX,gBAAgB;wBAChB,qBAAqB;wBACrB,UAAU;wBACV,WAAW;wBACX,YAAY;wBACZ,YAAY;wBACZ,mBAAmB;wBACnB,eAAe;AAChB,qBAAA;AACF,iBAAA,CAAA;;;MC1BY,UAAU,CAAA;AAKrB,IAAA,WAAA,GAAA;AAHQ,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,OAAO,EAAoB,CAAC;AAC3D,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;KAExC;AAEjB,IAAA,eAAe,CAAC,eAAiC,EAAA;AAC/C,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;KAC7C;;uGATU,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAV,UAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAU,cAFT,MAAM,EAAA,CAAA,CAAA;2FAEP,UAAU,EAAA,UAAA,EAAA,CAAA;kBAHtB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCEY,gBAAgB,CAAA;IAE3B,WACU,CAAA,iBAAoC,EACpC,UAAsB,EAAA;QADtB,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QACpC,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;QAiBxB,IAAO,CAAA,OAAA,GAAY,KAAK,CAAC;KAhB5B;IAML,IAAI,MAAM,CAAC,KAAc,EAAA;AACvB,QAAA,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC9C,QAAA,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE;AAC7B,YAAA,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;AACxB,YAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;AACvC,SAAA;KACF;AACD,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAGD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,IAAI,CAAC,MAAM;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;KACH;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;KACjC;IAED,mBAAmB,CAAC,YAAqB,IAAI,EAAA;AAC3C,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,eAAiC,KAAI;AAC9G,gBAAA,IAAI,eAAe,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU,EAAE;AAClD,oBAAA,IAAI,CAAC,MAAM,IAAI,eAAe,CAAC,SAAS,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC;AAC/D,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC;AAC3C,SAAA;KACF;;6GAnDU,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,iICb7B,+BACA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,CAAA;2FDYa,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAN5B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,YAGZ,UAAU,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;8HA0BhB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MEPT,mBAAmB,CAAA;IA6B9B,WACU,CAAA,iBAAoC,EACpC,UAAsB,EAAA;QADtB,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QACpC,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;QAZxB,IAAiB,CAAA,iBAAA,GAAG,CAAC,CAAC,CAAC;AAE/B;;AAEG;AACO,QAAA,IAAA,CAAA,sBAAsB,GAAyB,IAAI,YAAY,EAAU,CAAC;KAQ/E;AA9BL;;;AAGG;IACH,IACI,gBAAgB,CAAC,KAAa,EAAA;AAChC,QAAA,MAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;AAC7C,QAAA,IAAI,IAAI,CAAC,iBAAiB,IAAI,QAAQ,EAAE;AACtC,YAAA,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC;AAClC,YAAA,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC3C,YAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;AACtC,YAAA,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;AACxC,SAAA;KACF;;AACD,IAAA,IAAI,gBAAgB,GAAA;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;KAC/B;AAgBD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,aAAa,EAAE,IAAI;SACpB,CAAC;KACH;IAED,kBAAkB,GAAA;QAChB,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;IAED,qBAAqB,GAAA;QACnB,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,KAAI;AACrC,YAAA,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;AACxB,YAAA,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC;AAC/B,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AACjD,QAAA,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;KACzF;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,kBAAkB,CAAC,EAAE,YAAY,EAAE;YAC7C,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;AAC5G,SAAA;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;KACjC;IAED,mBAAmB,CAAC,YAAqB,IAAI,EAAA;AAC3C,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,eAAe,KAAI;AAC5F,gBAAA,IAAI,IAAI,KAAK,eAAe,CAAC,UAAU,EAAE;AACvC,oBAAA,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC,SAAS,CAAC;AACnD,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC;AAC3C,SAAA;KACF;AAED,IAAA,oBAAoB,CAAC,GAAW,EAAA;;QAE9B,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,KAAI;AACrC,YAAA,OAAO,CAAC,MAAM,GAAG,GAAG,KAAK,KAAK,CAAC;AACjC,SAAC,CAAC,CAAC;KACJ;;gHAjFU,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;oGAAnB,mBAAmB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,OAAA,EAAA,SAAA,EA0Bb,gBAAgB,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECvDnC,+BACA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FD4Ba,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAP/B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,eAAe,EAGR,eAAA,EAAA,uBAAuB,CAAC,MAAM,YACrC,aAAa,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;8HASnB,gBAAgB,EAAA,CAAA;sBADnB,KAAK;gBAkBI,sBAAsB,EAAA,CAAA;sBAA/B,MAAM;gBAEmC,KAAK,EAAA,CAAA;sBAA9C,eAAe;uBAAC,gBAAgB,CAAA;gBAS7B,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;ME5CT,sBAAsB,CAAA;IAEjC,WACU,CAAA,iBAAoC,EACpC,UAAsB,EAAA;QADtB,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QACpC,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;QA2BxB,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;QAahB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;AAE1B;;;AAGG;QACM,IAAU,CAAA,UAAA,GAAG,CAAC,CAAC,CAAC;KA7CpB;AAWL;;;AAGG;IACH,IACI,MAAM,CAAC,KAAc,EAAA;AACvB,QAAA,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC9C,QAAA,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE;AAC7B,YAAA,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;AACxB,YAAA,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;AACxC,SAAA;KACF;AACD,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAGD;;;AAGG;IACH,IACI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC/C;AACD,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC;KAC/E;AASD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC;KACH;AAED,IAAA,IACI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;KAC9B;AAED,IAAA,IACI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC;KAClC;;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC;KACpC;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE;YACnC,IAAI,CAAC,gBAAgB,EAAE,CAAC;AACzB,SAAA;KACF;AAGD,IAAA,UAAU,CAAC,MAAW,EAAA;QACpB,MAAM,CAAC,cAAc,EAAE,CAAC;QACxB,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;IAED,gBAAgB,GAAA;QACd,UAAU,CAAC,MAAK;YACd,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE;AACrD,gBAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;AACnB,gBAAA,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;AACjG,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;AACrB,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;KACjC;IAED,mBAAmB,CAAC,YAAqB,IAAI,EAAA;AAC3C,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,eAAe,KAAI;AAC5F,gBAAA,IAAI,eAAe,CAAC,UAAU,KAAK,IAAI,CAAC,aAAa,EAAE;AACrD,oBAAA,IAAI,CAAC,MAAM,IAAI,eAAe,CAAC,SAAS,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC;AAC/D,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC;AAC3C,SAAA;KACF;;mHApHU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;uGAAtB,sBAAsB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,aAAA,EAAA,CAAA,aAAA,EAAA,eAAA,CAAA,EAAA,MAAA,EAAA,QAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,oBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;AAC1B,iBAAA,CAAA;8HAeuB,aAAa,EAAA,CAAA;sBAAlC,KAAK;uBAAC,aAAa,CAAA;gBAOhB,MAAM,EAAA,CAAA;sBADT,KAAK;gBAkBF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAaG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAGF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;gBAShB,UAAU,EAAA,CAAA;sBADb,WAAW;uBAAC,oBAAoB,CAAA;gBAM7B,YAAY,EAAA,CAAA;sBADf,WAAW;uBAAC,eAAe,CAAA;gBAMxB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,eAAe,CAAA;gBAY5B,UAAU,EAAA,CAAA;sBADT,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MC3EtB,UAAU,CAAA;;uGAAV,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAV,UAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAU,iBAhBnB,mBAAmB;QACnB,gBAAgB;QAChB,sBAAsB,CAAA,EAAA,OAAA,EAAA,CAGtB,YAAY,CAAA,EAAA,OAAA,EAAA,CAGZ,mBAAmB;QACnB,gBAAgB;QAChB,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAMb,UAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAU,EAJV,SAAA,EAAA;QACT,UAAU;KACX,EAVQ,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAUU,UAAU,EAAA,UAAA,EAAA,CAAA;kBAlBtB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,mBAAmB;wBACnB,gBAAgB;wBAChB,sBAAsB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,mBAAmB;wBACnB,gBAAgB;wBAChB,sBAAsB;AACvB,qBAAA;AACD,oBAAA,SAAS,EAAE;wBACT,UAAU;AACX,qBAAA;AACF,iBAAA,CAAA;;;MCTY,cAAc,CAAA;AAKzB,IAAA,WAAA,GAAA;AAHQ,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,eAAe,CAAiB,EAAE,CAAC,CAAC;AAC/D,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;KAEjC;AAEhB,IAAA,QAAQ,CAAC,KAAqB,EAAA;QAC5B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;KACtC;;2GATU,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cAFb,MAAM,EAAA,CAAA,CAAA;2FAEP,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCoCY,cAAc,CAAA;AAwEzB,IAAA,WAAA,CACS,WAAuB,EACvB,QAAmB,EACnB,cAA8B,EAC9B,iBAAoC,EAAA;QAHpC,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QACvB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;QAC9B,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;AApE7C;;;AAGG;QACM,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;AAEzB;;;AAGG;QACM,IAAK,CAAA,KAAA,GAAY,EAAE,CAAC;AAE7B;;;AAGG;QACM,IAAK,CAAA,KAAA,GAAG,IAAI,CAAC;AAEtB;;;AAGG;QACM,IAAI,CAAA,IAAA,GAAG,IAAI,CAAC;QAmBb,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAOzB;;;AAGG;AACO,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,YAAY,EAAW,CAAC;AAEtD;;;AAGG;AACO,QAAA,IAAA,CAAA,KAAK,GAAyB,IAAI,YAAY,EAAE,CAAC;KAWvD;AA7CJ;;;AAGG;IACH,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC9C,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE;AAC9B,YAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;AACzB,YAAA,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;AAC/C,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAClC,YAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;AACvC,SAAA;KACF;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAiCD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IAED,IAAI,KAAK,CAAC,KAAK,EAAA;AACb,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC7B,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;KACvC;AAED,IAAA,IACI,iBAAiB,GAAA;AACnB,QAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;KACnB;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;KACvC;AAGD,IAAA,gBAAgB,CAAC,MAAsB,EAAA;AACrC,QAAA,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;KAC/B;AAGD,IAAA,eAAe,CAAC,MAAsB,EAAA;AACpC,QAAA,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;KAC/B;IAE0B,WAAW,GAAA;QACpC,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAEyB,UAAU,GAAA;QAClC,IAAI,CAAC,QAAQ,EAAE,CAAC;KACjB;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,IAAI,CAAC,IAAI;AACf,YAAA,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI;YAChB,CAAC,CAAA,GAAA,EAAM,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;AAClC,YAAA,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;SACzB,CAAC;KACH;IAED,QAAQ,GAAA;QACN,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,YAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;AAC3B,gBAAA,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,IAAI,CAAC,OAAO;gBAClB,SAAS,EAAE,IAAI,CAAC,SAAS;AAC1B,aAAA,CAAC,CAAC;YACH,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,QAAQ,EAAE,CAAC;AACjB,SAAA;KACF;IAED,WAAW,GAAA;QACT,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,UAAU,EAAE,CAAC;AAClB,QAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE;AACjC,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,UAAU,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;YACpF,IAAI,CAAC,QAAQ,EAAE,CAAC;AACjB,SAAA;KACF;IAED,UAAU,GAAA;QACR,IAAI,CAAC,UAAU,EAAE,CAAC;AAClB,QAAA,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC3B,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;KACrB;IAED,OAAO,GAAA;QACL,IAAI,CAAC,UAAU,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;AAC3B,YAAA,KAAK,EAAE,IAAI;AACX,YAAA,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,IAAI,CAAC,SAAS;AAC1B,SAAA,CAAC,CAAC;KACJ;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,UAAU,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;AACf,QAAA,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,MAAK;AAC9B,YAAA,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;AAChB,YAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;SACvC,EAAE,IAAI,CAAC,CAAC;AACT,QAAA,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,MAAK;YAClC,IAAI,CAAC,UAAU,EAAE,CAAC;AACpB,SAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;KAChB;IAED,UAAU,GAAA;AACR,QAAA,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAChC,QAAA,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC5B,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;KACrB;AAED,IAAA,gBAAgB,CAAC,KAAqB,EAAA;AACpC,QAAA,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,SAAS,KAAK,OAAO,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC;AACpE,QAAA,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM,EAAE;AAC9B,YAAA,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC;AACnE,YAAA,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE;AAC5B,gBAAA,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;AACnB,aAAA;AACF,SAAA;KACF;;2GAnMU,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,cAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;+FAAd,cAAc,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,kBAAA,EAAA,0BAAA,EAAA,iBAAA,EAAA,yBAAA,EAAA,WAAA,EAAA,eAAA,EAAA,UAAA,EAAA,cAAA,EAAA,EAAA,UAAA,EAAA,EAAA,YAAA,EAAA,wBAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EClD3B,+BACA,ED2Bc,MAAA,EAAA,CAAA,wCAAA,CAAA,EAAA,UAAA,EAAA;QACV,OAAO,CAAC,WAAW,EAAE;AACnB,YAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;AAC3G,YAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;AACnG,YAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;YACnG,UAAU,CAAC,cAAc,EAAE;gBACzB,OAAO,CAAC,yBAAyB,CAAC;aACnC,EAAE;gBACD,MAAM,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAC;aAC5C,CAAC;YACF,UAAU,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,EAAE;gBAC/D,MAAM,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAC;aAC3C,CAAC;YACF,UAAU,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,EAAE;gBAC/D,MAAM,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAC;aAC5C,CAAC;YACF,UAAU,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,EAAE;gBAC/D,MAAM,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAC;aAC3C,CAAC;SACH,CAAC;AACH,KAAA,EAAA,CAAA,CAAA;2FAEU,cAAc,EAAA,UAAA,EAAA,CAAA;kBA3B1B,SAAS;+BACE,SAAS,EAAA,QAAA,EAGT,QAAQ,EACN,UAAA,EAAA;wBACV,OAAO,CAAC,WAAW,EAAE;AACnB,4BAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;AAC3G,4BAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;AACnG,4BAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;4BACnG,UAAU,CAAC,cAAc,EAAE;gCACzB,OAAO,CAAC,yBAAyB,CAAC;6BACnC,EAAE;gCACD,MAAM,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAC;6BAC5C,CAAC;4BACF,UAAU,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,EAAE;gCAC/D,MAAM,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAC;6BAC3C,CAAC;4BACF,UAAU,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,EAAE;gCAC/D,MAAM,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAC;6BAC5C,CAAC;4BACF,UAAU,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,EAAE;gCAC/D,MAAM,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAC;6BAC3C,CAAC;yBACH,CAAC;AACH,qBAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,wCAAA,CAAA,EAAA,CAAA;mLAcQ,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAMG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAMG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAMG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAOF,OAAO,EAAA,CAAA;sBADV,KAAK;gBAkBG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAMI,aAAa,EAAA,CAAA;sBAAtB,MAAM;gBAMG,KAAK,EAAA,CAAA;sBAAd,MAAM;gBA0BH,iBAAiB,EAAA,CAAA;sBADpB,WAAW;uBAAC,YAAY,CAAA;gBAMrB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,YAAY,CAAA;gBAMzB,gBAAgB,EAAA,CAAA;sBADf,YAAY;uBAAC,kBAAkB,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAM5C,eAAe,EAAA,CAAA;sBADd,YAAY;uBAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAKhB,WAAW,EAAA,CAAA;sBAArC,YAAY;uBAAC,WAAW,CAAA;gBAIC,UAAU,EAAA,CAAA;sBAAnC,YAAY;uBAAC,UAAU,CAAA;gBAKpB,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MEhKT,kBAAkB,CAAA;AAI7B,IAAA,WAAA,CACqB,KAAsB,EAAA;QAAtB,IAAK,CAAA,KAAA,GAAL,KAAK,CAAiB;QAHV,IAAc,CAAA,cAAA,GAAG,IAAI,CAAC;KAIlD;;+GANM,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,mJAJnB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,CAAA;2FAI1B,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAN9B,SAAS;+BACE,cAAc,EAAA,QAAA,EACd,2BAA2B,EAAA,QAAA,EAE3B,YAAY,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;;0BAOnB,QAAQ;4CAHsB,cAAc,EAAA,CAAA;sBAA9C,WAAW;uBAAC,kBAAkB,CAAA;;;MCJpB,mBAAmB,CAAA;AAI9B,IAAA,WAAA,CAAoB,cAA8B,EAAA;QAA9B,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;KAAK;AAGvD,IAAA,UAAU,CAAC,MAAW,EAAA;QACpB,MAAM,CAAC,cAAc,EAAE,CAAC;AACxB,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;KAClE;;gHAVU,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAD,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;oGAAnB,mBAAmB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,CAAA,aAAA,EAAA,OAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,QAAQ,EAAE,aAAa;AACxB,iBAAA,CAAA;kGAGuB,KAAK,EAAA,CAAA;sBAA1B,KAAK;uBAAC,aAAa,CAAA;gBAKpB,UAAU,EAAA,CAAA;sBADT,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MCJtB,oBAAoB,CAAA;AAU/B,IAAA,WAAA,CACqB,KAAsB,EAAA;QAAtB,IAAK,CAAA,KAAA,GAAL,KAAK,CAAiB;AAT3C;;;AAGG;QACM,IAAW,CAAA,WAAA,GAAG,IAAI,CAAC;QAEO,IAAgB,CAAA,gBAAA,GAAG,IAAI,CAAC;KAItD;;iHAZM,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,mMCTjC,wNAIA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAvD,oBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAwD,mBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDKa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBANhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gBAAgB,YAGhB,cAAc,EAAA,QAAA,EAAA,wNAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;0BAarB,QAAQ;4CALF,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAE6B,gBAAgB,EAAA,CAAA;sBAAlD,WAAW;uBAAC,oBAAoB,CAAA;;;MEXtB,oBAAoB,CAAA;AAE/B,IAAA,WAAA,CACS,gBAAkC,EAAA;QAAlC,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;KACtC;;iHAJM,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAApB,oBAAoB,EAAA,QAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,QAAQ,EAAE,cAAc;AACzB,iBAAA,CAAA;;;ICoBW,iBAWX;AAXD,CAAA,UAAY,gBAAgB,EAAA;AAC1B,IAAA,gBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,gBAAA,CAAA,UAAA,CAAA,GAAA,WAAsB,CAAA;AACtB,IAAA,gBAAA,CAAA,WAAA,CAAA,GAAA,YAAwB,CAAA;AACxB,IAAA,gBAAA,CAAA,QAAA,CAAA,GAAA,SAAkB,CAAA;AAClB,IAAA,gBAAA,CAAA,aAAA,CAAA,GAAA,cAA4B,CAAA;AAC5B,IAAA,gBAAA,CAAA,cAAA,CAAA,GAAA,eAA8B,CAAA;AAC9B,IAAA,gBAAA,CAAA,WAAA,CAAA,GAAA,YAAwB,CAAA;AACxB,IAAA,gBAAA,CAAA,aAAA,CAAA,GAAA,cAA4B,CAAA;AAC5B,IAAA,gBAAA,CAAA,cAAA,CAAA,GAAA,eAA8B,CAAA;AAC9B,IAAA,gBAAA,CAAA,WAAA,CAAA,GAAA,YAAwB,CAAA;AAC1B,CAAC,EAXW,gBAAgB,KAAhB,gBAAgB,GAW3B,EAAA,CAAA,CAAA,CAAA;MAoBY,gBAAgB,CAAA;AAsB3B,IAAA,WAAA,CACU,wBAAkD,EAClD,WAAuB,EACvB,QAAmB,EACnB,cAA8B,EAAA;QAH9B,IAAwB,CAAA,wBAAA,GAAxB,wBAAwB,CAA0B;QAClD,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QACvB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;AAvBxC,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAE7C,IAAa,CAAA,aAAA,GAAU,EAAE,CAAC;AAE1B;;;AAGG;AACM,QAAA,IAAA,CAAA,SAAS,GAAsB,gBAAgB,CAAC,MAAM,CAAC;AAEhE;;;AAGG;QACM,IAAQ,CAAA,QAAA,GAA+C,UAAU,CAAC;KAUtE;AAEL,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,iBAAiB,EAAE,IAAI;YACvB,CAAC,CAAA,SAAA,EAAY,IAAI,CAAC,QAAQ,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ;YAC9C,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;YACvC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC3C,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC7C,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC3C,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC7C,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;AACvC,YAAA,oBAAoB,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC;AAC7F,YAAA,oBAAoB,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC;AAC7F,YAAA,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC;SAC3F,CAAC;KACH;IAED,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;KAClC;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;KACnC;IAED,qBAAqB,GAAA;AACnB,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;KAClC;AAED,IAAA,QAAQ,CAAC,KAAU,EAAE,KAAU,EAAE,OAAmH,EAAA;AAClJ,QAAA,IAAI,YAA+B,CAAC;QACpC,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,wBAAwB,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;YAC7E,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;AAC/J,SAAA;AAAM,aAAA;;AAEL,YAAA,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAClF,SAAA;AACD,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;AACvD,QAAA,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AAChD,YAAA,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AACpC,SAAA;QACD,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;AACpD,QAAA,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;AACxC,QAAA,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;AACvC,QAAA,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;QACxC,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAClD,QAAA,YAAY,CAAC,iBAAiB,EAAE,aAAa,EAAE,CAAC;AAChD,QAAA,OAAO,YAAY,CAAC;KACrB;AAED,IAAA,WAAW,CAAC,KAAqB,EAAA;AAC/B,QAAA,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,IAAI,IAAG;AACjC,YAAA,IAAI,KAAK,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,KAAK,CAAC,EAAE;AAC3D,gBAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;gBAC9B,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3C,UAAU,CAAC,MAAK;oBACd,IAAI,CAAC,OAAO,EAAE,CAAC;iBAChB,EAAE,GAAG,CAAC,CAAC;AACT,aAAA;AACH,SAAC,CAAC,CAAC;AAEH,QAAA,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,IAAG;AAC1B,YAAA,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,KAAK,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,aAAa,EAAE;AACzE,gBAAA,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE;;AAEzB,oBAAA,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;AAC7B,iBAAA;AACF,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;IAEO,qBAAqB,CAAC,YAAqB,IAAI,EAAA;AACrD,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,KAAK,KAAI;AACpF,gBAAA,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE;AACxB,oBAAA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AACzB,iBAAA;AACD,gBAAA,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,OAAO,KAAK,SAAS,EAAE;AAC9D,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,wBAAwB,CAAC,WAAW,EAAE,CAAC;AAC7C,SAAA;KACF;;6GAnHU,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAAF,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,gMAoBV,cAAc,EAAA,IAAA,EAAS,gBAAgB,EAD7C,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,oBAAoB,sFC3EjC,wFAEA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAG,oBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDsDa,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,WAAW,YAEX,UAAU,EAAA,QAAA,EAAA,wFAAA,EAAA,CAAA;0LAaX,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAMG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAE2C,WAAW,EAAA,CAAA;sBAA3D,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,oBAAoB,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,CAAA;gBACY,aAAa,EAAA,CAAA;sBAAvE,eAAe;AAAC,gBAAA,IAAA,EAAA,CAAA,cAAc,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC,CAAA;gBAUrD,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MErDT,WAAW,CAAA;;wGAAX,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAX,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,iBAlBpB,cAAc;QACd,oBAAoB;QACpB,kBAAkB;QAClB,gBAAgB;QAChB,oBAAoB;AACpB,QAAA,mBAAmB,CAEX,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,YAAY,aAGlC,cAAc;QACd,oBAAoB;QACpB,kBAAkB;QAClB,gBAAgB;QAChB,oBAAoB;QACpB,mBAAmB,CAAA,EAAA,CAAA,CAAA;yGAGV,WAAW,EAAA,SAAA,EAVX,CAAC,cAAc,CAAC,YADlB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA,EAAA,CAAA,CAAA;2FAW1B,WAAW,EAAA,UAAA,EAAA,CAAA;kBApBvB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,cAAc;wBACd,oBAAoB;wBACpB,kBAAkB;wBAClB,gBAAgB;wBAChB,oBAAoB;wBACpB,mBAAmB;AACpB,qBAAA;AACD,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;oBACrC,SAAS,EAAE,CAAC,cAAc,CAAC;AAC3B,oBAAA,OAAO,EAAE;wBACP,cAAc;wBACd,oBAAoB;wBACpB,kBAAkB;wBAClB,gBAAgB;wBAChB,oBAAoB;wBACpB,mBAAmB;AACpB,qBAAA;AACF,iBAAA,CAAA;;;MCbY,gBAAgB,CAAA;AAkB3B,IAAA,WAAA,CACU,QAAmB,EAAA;QAAnB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;AAjB7B;;;AAGG;QACM,IAAO,CAAA,OAAA,GAA8B,EAAE,CAAC;AACjD;;;AAGG;QACM,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;QAEU,IAAI,CAAA,IAAA,GAAG,SAAS,CAAC;KAO/C;AAEL,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,IAAI,CAAC,OAAO;AAClB,YAAA,iBAAiB,EAAE,IAAI;SACxB,CAAC;KACH;IAED,eAAe,GAAA;QACb,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAChC,SAAC,CAAC,CAAC;KACJ;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE;YACtB,UAAU,CAAC,MAAK;AACd,gBAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAChC,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;IAED,WAAW,GAAA;QACT,IAAI,CAAC,KAAK,EAAE,CAAC;KACd;IAEO,KAAK,GAAA;AACX,QAAA,IAAI,CAAC,gBAAgB,EAAE,KAAK,EAAE,CAAC;AAC/B,QAAA,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE;AACnB,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;AACpE,SAAA;KACF;AAEO,IAAA,UAAU,CAAC,OAAkC,EAAA;QACnD,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;AACR,SAAA;QAED,IAAI,OAAO,YAAY,WAAW,EAAE;AAClC,YAAA,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;AACnD,SAAA;AAAM,aAAA;YACL,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAElD,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC;AAC5D,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC9D,SAAA;KACF;;6GAxEU,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;iGAAhB,gBAAgB,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAAA,SAAA,EAAA,WAAA,EAAA,WAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAeU,gBAAgB,EAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjCvD,0JAIA,EAAA,CAAA,CAAA;2FDca,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,SAAS;+BACE,WAAW,EAAA,QAAA,EAAA,0JAAA,EAAA,CAAA;gGASZ,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAKG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAC2B,EAAE,EAAA,CAAA;sBAAlC,KAAK;;sBAAI,WAAW;uBAAC,SAAS,CAAA;gBACI,IAAI,EAAA,CAAA;sBAAtC,KAAK;;sBAAI,WAAW;uBAAC,WAAW,CAAA;gBAEuB,gBAAgB,EAAA,CAAA;sBAAvE,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,iBAAiB,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC,CAAA;gBAQlD,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MEbT,gBAAgB,CAAA;IAgE3B,WAC4B,CAAA,QAAa,EAC/B,QAAmB,EACnB,WAAuB,EACvB,wBAAkD,EAClD,gBAAkC,EAClC,gBAAkC,EAAA;QALhB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAK;QAC/B,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QACvB,IAAwB,CAAA,wBAAA,GAAxB,wBAAwB,CAA0B;QAClD,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;QAClC,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;AApE5C;;;AAGG;QACgB,IAAO,CAAA,OAAA,GAA8B,EAAE,CAAC;AAc3D;;AAEG;QACyB,IAAS,CAAA,SAAA,GAAwC,KAAK,CAAC;AACnF;;;AAGG;QACuB,IAAO,CAAA,OAAA,GAA0B,OAAO,CAAC;QAc3D,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAWjB,QAAA,IAAA,CAAA,cAAc,GAAqB;AACzC,YAAA,SAAS,EAAE;AACT,gBAAA;AACE,oBAAA,IAAI,EAAE,QAAQ;AACd,oBAAA,OAAO,EAAE;AACP,wBAAA,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AACf,qBAAA;AACF,iBAAA;AACF,aAAA;SACF,CAAC;KASE;AA/DJ;;;AAGG;IACH,IACI,aAAa,CAAC,KAAuB,EAAA;AACvC,QAAA,IAAI,CAAC,cAAc,GAAG,EAAC,GAAG,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,GAAG,KAAK,EAAC,CAAC;KACrF;;AACD,IAAA,IAAI,aAAa,GAAA;AACf,QAAA,OAAO,EAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,cAAc,EAAC,CAAC;KAC5D;AAYD;;AAEG;IACH,IACI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;AACtB,QAAA,KAAK,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;AAC/D,QAAA,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,YAAY,EAAE,CAAC;KACnD;AACD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAGD,IAAA,IAA0C,eAAe,GAAA;AACvD,QAAA,OAAO,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;KAC/C;AA2BD,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE;AACtB,YAAA,OAAO,CAAC,SAAS,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;AAC1F,SAAA;KACF;IAED,WAAW,GAAA;QACT,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,qBAAqB,EAAE,CAAC;KAC9B;IAED,QAAQ,GAAA;;QAEN,IAAI,CAAC,YAAY,EAAE,CAAC;KACrB;IAEO,YAAY,GAAA;AAClB,QAAA,MAAM,MAAM,GAAqB;YAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,cAAc,EAAE,MAAK;AACnB,gBAAA,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;aAC9B;YACD,WAAW,EAAE,MAAK;AAChB,gBAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;aACtB;YACD,UAAU,EAAE,MAAK;AACf,gBAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;aACrB;SACF,CAAA;AACD,QAAA,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;KAC3C;IAEO,cAAc,GAAA;AACpB,QAAA,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAC;KACxC;AAEO,IAAA,MAAM,CAAC,MAAc,EAAA;AAC3B,QAAA,IAAI,GAAG,GAAG,MAAM,IAAI,WAAW,CAAC;QAChC,GAAG;YACD,GAAG,GAAG,GAAG,MAAM,CAAA,CAAA,EAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA,CAAE,CAAC;SACvE,QAAQ,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;AAE5C,QAAA,OAAO,GAAG,CAAC;KACZ;IAEO,oBAAoB,GAAA;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,MAAM,gBAAgB,GAAG,IAAI,CAAC,wBAAwB,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;YACjG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;AAC3E,SAAA;KACF;IAEO,qBAAqB,GAAA;AAC3B,QAAA,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;AACvB,QAAA,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC;;AAE3B,QAAA,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;AAC5B,QAAA,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC;AAC/B,QAAA,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;AAC/B,QAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;KAC/B;IAEO,iBAAiB,GAAA;AACvB,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAI,CAAC,oBAAoB,EAAE,CAAC;AAC7B,SAAA;QACD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAChD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC;QAEtD,UAAU,CAAC,MAAK;YACd,IAAI,CAAC,cAAc,GAAG,YAAY,CAChC,IAAI,CAAC,WAAW,CAAC,aAAa,EAC9B,IAAI,CAAC,OAAO,EACZ,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAC1B,CAAC;YACF,UAAU,CAAC,MAAK;gBACd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBACxC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC7C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;AAChD,gBAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;AAC5D,gBAAA,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;AAClC,gBAAA,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;;aAElD,EAAE,GAAG,CAAC,CAAC;AACV,SAAC,CAAC,CAAA;KACH;IAEO,oBAAoB,GAAA;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,OAAM;AACP,SAAA;QACD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAChD,UAAU,CAAC,MAAK;;YAEd,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,GAAG,SAAS,CAAC;AACxC,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;AAC5D,YAAA,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC;AAC/B,YAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;SACrB,EAAE,GAAG,CAAC,CAAC;KACT;;AA7KU,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,kBAiEjB,QAAQ,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAAhD,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;iGAjEP,gBAAgB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,SAAA,CAAA,EAAA,aAAA,EAAA,CAAA,iBAAA,EAAA,eAAA,CAAA,EAAA,SAAA,EAAA,CAAA,mBAAA,EAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,EAAA,SAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,uBAAA,EAAA,sBAAA,EAAA,EAAA,EAAA,SAAA,EAFhB,CAAC,gBAAgB,CAAC,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAElB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,QAAQ,EAAE,UAAU;oBACpB,SAAS,EAAE,CAAC,gBAAgB,CAAC;AAC9B,iBAAA,CAAA;;0BAkEI,MAAM;2BAAC,QAAQ,CAAA;+LA3DC,OAAO,EAAA,CAAA;sBAAzB,KAAK;uBAAC,UAAU,CAAA;gBAOb,aAAa,EAAA,CAAA;sBADhB,KAAK;uBAAC,iBAAiB,CAAA;gBAWI,SAAS,EAAA,CAAA;sBAApC,KAAK;uBAAC,mBAAmB,CAAA;gBAKA,OAAO,EAAA,CAAA;sBAAhC,KAAK;uBAAC,iBAAiB,CAAA;gBAMpB,OAAO,EAAA,CAAA;sBADV,KAAK;uBAAC,iBAAiB,CAAA;gBAWkB,eAAe,EAAA,CAAA;sBAAxD,WAAW;uBAAC,uBAAuB,CAAA;;;MCrDzB,aAAa,CAAA;;0GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAb,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,iBAXtB,gBAAgB;QAChB,gBAAgB,CAAA,EAAA,OAAA,EAAA,CAOhB,YAAY,CAAA,EAAA,OAAA,EAAA,CAJZ,gBAAgB;QAChB,gBAAgB,CAAA,EAAA,CAAA,CAAA;AAMP,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,EAJf,OAAA,EAAA,CAAA;YACP,YAAY;AACb,SAAA,CAAA,EAAA,CAAA,CAAA;2FAEU,aAAa,EAAA,UAAA,EAAA,CAAA;kBAbzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,gBAAgB;wBAChB,gBAAgB;AACjB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,gBAAgB;wBAChB,gBAAgB;AACjB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;MCNY,oBAAoB,CAAA;AANjC,IAAA,WAAA,GAAA;QAuBE,IAAS,CAAA,SAAA,GAAQ,EAAE,CAAC;AA2BrB,KAAA;AAvBC,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,MAAM,EAAE,IAAI;YACZ,CAAC,CAAA,GAAA,EAAM,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;AAClC,YAAA,4BAA4B,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;SAC3C,CAAA;KACF;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,yBAAyB,EAAE,IAAI;AAC/B,YAAA,mBAAmB,EAAE,IAAI;SAC1B,CAAA;KACF;IAED,kBAAkB,GAAA;QAChB,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAA0B,KAAI;YAC3D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC;AAC/C,SAAC,CAAC,CAAC;KACJ;;iHA3CU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAApB,oBAAoB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,SAAA,EAmBd,mBAAmB,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC9BtC,+qCA8BA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAiD,iBAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,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,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDnBa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBANhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,YAGjB,cAAc,EAAA,QAAA,EAAA,+qCAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;8BAOf,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAIqD,gBAAgB,EAAA,CAAA;sBAA1E,eAAe;AAAC,gBAAA,IAAA,EAAA,CAAA,mBAAmB,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC,CAAA;gBAGrD,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;AEpBhB,MAAO,oBAAqB,SAAQ,aAAa,CAAA;AAErD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE,CAAC;QAyCF,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;KAxCxB;AA6BD;;;AAGG;AACH,IAAA,IACI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;IACD,IAAI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC9C;AAGD,IAAA,IACa,WAAW,GAAA;QACtB,OAAO;AACL,YAAA,MAAM,EAAE,IAAI;YACZ,CAAC,CAAA,GAAA,EAAM,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;YAClC,CAAC,CAAA,KAAA,EAAQ,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;AAC5C,YAAA,4BAA4B,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;SAC3C,CAAA;KACF;;iHAtDU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,uRCZjC,iUAQA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAA,iBAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,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,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDIa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBANhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,YAGjB,cAAc,EAAA,QAAA,EAAA,iUAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;0EAcN,KAAK,EAAA,CAAA;sBAAtB,KAAK;gBAKY,SAAS,EAAA,CAAA;sBAA1B,KAAK;gBAKG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAKG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAMF,OAAO,EAAA,CAAA;sBADV,KAAK;gBAUO,WAAW,EAAA,CAAA;sBADvB,WAAW;uBAAC,OAAO,CAAA;;;AE9ChB,MAAO,oBAAqB,SAAQ,aAAa,CAAA;AAErD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE,CAAC;QA+BF,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QAEzB,IAAS,CAAA,SAAA,GAAQ,EAAE,CAAC;KAhCnB;AAmBD;;;AAGG;AACH,IAAA,IACI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;IACD,IAAI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC9C;AAMD,IAAA,IACI,iBAAiB,GAAA;QACnB,OAAO;YACL,uBAAuB,EAAE,IAAI,CAAC,OAAO;SACtC,CAAA;KACF;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS;AACvB,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,sBAAsB,EAAE,CAAC,IAAI,CAAC,OAAO;YACrC,8BAA8B,EAAE,IAAI,CAAC,OAAO;YAC5C,CAAC,CAAA,KAAA,EAAQ,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;SAC7C,CAAA;KACF;AAED,IAAA,IAAI,YAAY,GAAA;QACd,OAAO;AACL,YAAA,sBAAsB,EAAE,CAAC,IAAI,CAAC,OAAO;YACrC,8BAA8B,EAAE,IAAI,CAAC,OAAO;YAC5C,CAAC,CAAA,KAAA,EAAQ,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;SAC7C,CAAA;KACF;AAED,IAAA,IAAI,YAAY,GAAA;QACd,OAAO;AACL,YAAA,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS;AACvB,YAAA,aAAa,EAAE,IAAI;AACnB,YAAA,oBAAoB,EAAE,CAAC,IAAI,CAAC,OAAO;YACnC,4BAA4B,EAAE,IAAI,CAAC,OAAO;YAC1C,CAAC,CAAA,KAAA,EAAQ,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;SAC7C,CAAA;KACF;IAED,kBAAkB,GAAA;QAChB,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAA0B,KAAI;YAC3D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC;AAC/C,SAAC,CAAC,CAAC;KACJ;;iHA9EU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAApB,oBAAoB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,wBAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,SAAA,EAqCd,mBAAmB,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjDtC,8yBAsBA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAA,iBAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,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,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDVa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBANhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,YAGjB,cAAc,EAAA,QAAA,EAAA,8yBAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;0EAcf,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAKG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAMF,OAAO,EAAA,CAAA;sBADV,KAAK;gBAUqD,gBAAgB,EAAA,CAAA;sBAA1E,eAAe;AAAC,gBAAA,IAAA,EAAA,CAAA,mBAAmB,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC,CAAA;gBAGrD,iBAAiB,EAAA,CAAA;sBADpB,WAAW;uBAAC,OAAO,CAAA;;;MErCT,oBAAoB,CAAA;AAY/B,IAAA,WAAA,GAAA;KACC;AAED,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,MAAM,EAAE,IAAI;SACb,CAAA;KACF;AAED,IAAA,IAAI,aAAa,GAAA;QACf,OAAO;AACL,YAAA,mBAAmB,EAAE,IAAI;AACzB,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,wBAAwB,EAAE,IAAI;AAC9B,YAAA,oBAAoB,EAAE,IAAI;YAC1B,CAAC,CAAA,GAAA,EAAM,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK;SACjC,CAAA;KACF;;iHA9BU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,wLCdjC,ueAYA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,mBAAA,EAAA,QAAA,EAAA,gCAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,iBAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,YAAA,EAAA,QAAA,EAAA,OAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA1E,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA2E,YAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,KAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA3E,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDEa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBANhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,YAGjB,cAAc,EAAA,QAAA,EAAA,ueAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;0EAOf,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAMF,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;AEpBhB,MAAO,oBAAqB,SAAQ,aAAa,CAAA;AAErD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE,CAAC;KACT;AAYD,IAAA,IAAI,YAAY,GAAA;QACd,OAAO;AACL,YAAA,sBAAsB,EAAE,CAAC,IAAI,CAAC,SAAS;AACvC,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,gBAAgB,EAAE,IAAI;AACtB,YAAA,aAAa,EAAE,IAAI;YACnB,CAAC,CAAA,KAAA,EAAQ,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;SAC7C,CAAA;KACF;;iHAxBU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,sJCTjC,6OAKA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAuE,iBAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,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,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDIa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBANhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,YAGjB,cAAc,EAAA,QAAA,EAAA,6OAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;0EAWf,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,KAAK,EAAA,CAAA;sBAAb,KAAK;;;MEXK,oBAAoB,CAAA;AANjC,IAAA,WAAA,GAAA;QA4CU,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QASzB,IAAS,CAAA,SAAA,GAAQ,EAAE,CAAC;AAmDrB,KAAA;AA3EC;;;AAGG;AACH;;;AAGG;AACH,IAAA,IACI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;IACD,IAAI,OAAO,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC9C;AAaD,IAAA,IACI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,IAAI,EAAE,IAAI;SACX,CAAA;KACF;AAED,IAAA,IAAI,eAAe,GAAA;QACjB,OAAO;AACL,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,oBAAoB,EAAE,IAAI;AAC1B,YAAA,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO;SACrB,CAAA;KACF;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO;AACL,YAAA,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS;AACvB,YAAA,YAAY,EAAE,IAAI;YAClB,CAAC,CAAA,GAAA,EAAM,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;YAClC,KAAK,EAAE,IAAI,CAAC,OAAO;AACnB,YAAA,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO;SACrB,CAAA;KACF;AAED,IAAA,IAAI,YAAY,GAAA;QACd,OAAO;AACL,YAAA,sBAAsB,EAAE,CAAC,IAAI,CAAC,SAAS;AACvC,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,gBAAgB,EAAE,IAAI;AACtB,YAAA,aAAa,EAAE,IAAI;YACnB,CAAC,CAAA,KAAA,EAAQ,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;SAC7C,CAAA;KACF;AAED,IAAA,IAAI,YAAY,GAAA;QACd,OAAO;AACL,YAAA,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS;AACvB,YAAA,aAAa,EAAE,IAAI;YACnB,CAAC,CAAA,KAAA,EAAQ,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;SAC7C,CAAA;KACF;IAED,kBAAkB,GAAA;QAChB,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAA0B,KAAI;YAC3D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC;AAC/C,SAAC,CAAC,CAAC;KACJ;;iHAjGU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAApB,oBAAoB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,SAAA,EAgDd,mBAAmB,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC5DtC,yzBAsBA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAA,iBAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,EAAA,EAAA,IAAA,EAAAK,mBAAA,EAAA,QAAA,EAAA,gCAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAtE,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDVa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBANhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,YAGjB,cAAc,EAAA,QAAA,EAAA,yzBAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;8BASf,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAKG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAKG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAUF,OAAO,EAAA,CAAA;sBADV,KAAK;gBASG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAKG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAGqD,gBAAgB,EAAA,CAAA;sBAA1E,eAAe;AAAC,gBAAA,IAAA,EAAA,CAAA,mBAAmB,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC,CAAA;gBAGrD,WAAW,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;ME1BT,YAAY,CAAA;;yGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,iBArBrB,oBAAoB;QACpB,oBAAoB;QACpB,oBAAoB;QACpB,oBAAoB;QACpB,oBAAoB;AACpB,QAAA,oBAAoB,aAGpB,YAAY;QACZ,UAAU;AACV,QAAA,UAAU,aAGV,oBAAoB;QACpB,oBAAoB;QACpB,oBAAoB;QACpB,oBAAoB;QACpB,oBAAoB;QACpB,oBAAoB,CAAA,EAAA,CAAA,CAAA;AAGX,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EAdd,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,UAAU;YACV,UAAU;AACX,SAAA,CAAA,EAAA,CAAA,CAAA;2FAUU,YAAY,EAAA,UAAA,EAAA,CAAA;kBAvBxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,oBAAoB;wBACpB,oBAAoB;wBACpB,oBAAoB;wBACpB,oBAAoB;wBACpB,oBAAoB;wBACpB,oBAAoB;AACrB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,UAAU;wBACV,UAAU;AACX,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,oBAAoB;wBACpB,oBAAoB;wBACpB,oBAAoB;wBACpB,oBAAoB;wBACpB,oBAAoB;wBACpB,oBAAoB;AACrB,qBAAA;AACF,iBAAA,CAAA;;;ACnCD;;AAEG;;ACFH;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"coreui-angular-pro.mjs","sources":["../../../projects/coreui-angular/src/lib/coreui.types.ts","../../../projects/coreui-angular/src/lib/shared/html-attr.directive.ts","../../../projects/coreui-angular/src/lib/shared/template-id.directive.ts","../../../projects/coreui-angular/src/lib/shared/shared.module.ts","../../../projects/coreui-angular/src/lib/accordion/accordion-button/accordion-button.directive.ts","../../../projects/coreui-angular/src/lib/accordion/accordion.service.ts","../../../projects/coreui-angular/src/lib/accordion/accordion/accordion.component.ts","../../../projects/coreui-angular/src/lib/collapse/collapse.animations.ts","../../../projects/coreui-angular/src/lib/collapse/collapse.directive.ts","../../../projects/coreui-angular/src/lib/accordion/accordion-item/accordion-item.component.ts","../../../projects/coreui-angular/src/lib/accordion/accordion-item/accordion-item.component.html","../../../projects/coreui-angular/src/lib/collapse/collapse.module.ts","../../../projects/coreui-angular/src/lib/accordion/accordion.module.ts","../../../projects/coreui-angular/src/lib/alert/alert-heading.directive.ts","../../../projects/coreui-angular/src/lib/alert/alert-link.directive.ts","../../../projects/coreui-angular/src/lib/button/button.directive.ts","../../../projects/coreui-angular/src/lib/button/button-close.directive.ts","../../../projects/coreui-angular/src/lib/alert/alert.component.ts","../../../projects/coreui-angular/src/lib/alert/alert.component.html","../../../projects/coreui-angular/src/lib/button/button.module.ts","../../../projects/coreui-angular/src/lib/alert/alert.module.ts","../../../projects/coreui-angular/src/lib/avatar/avatar.component.ts","../../../projects/coreui-angular/src/lib/avatar/avatar.component.html","../../../projects/coreui-angular/src/lib/avatar/avatar.module.ts","../../../projects/coreui-angular/src/lib/badge/badge.component.ts","../../../projects/coreui-angular/src/lib/badge/badge.component.html","../../../projects/coreui-angular/src/lib/badge/badge.module.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.html","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb/breadcrumb.component.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb/breadcrumb.component.html","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.html","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb.module.ts","../../../projects/coreui-angular/src/lib/button-group/button-group/button-group.component.ts","../../../projects/coreui-angular/src/lib/button-group/button-toolbar/button-toolbar.component.ts","../../../projects/coreui-angular/src/lib/button-group/button-group.module.ts","../../../projects/coreui-angular/src/lib/callout/callout.component.ts","../../../projects/coreui-angular/src/lib/callout/callout.module.ts","../../../projects/coreui-angular/src/lib/card/card.component.ts","../../../projects/coreui-angular/src/lib/card/card-body.component.ts","../../../projects/coreui-angular/src/lib/card/card-footer.component.ts","../../../projects/coreui-angular/src/lib/card/card-group.component.ts","../../../projects/coreui-angular/src/lib/card/card-header.component.ts","../../../projects/coreui-angular/src/lib/card/card-header-actions.component.ts","../../../projects/coreui-angular/src/lib/card/card-img.directive.ts","../../../projects/coreui-angular/src/lib/card/card-img-overlay/card-img-overlay.component.ts","../../../projects/coreui-angular/src/lib/card/card-img-overlay/card-img-overlay.component.html","../../../projects/coreui-angular/src/lib/card/card-link.directive.ts","../../../projects/coreui-angular/src/lib/card/card-subtitle.directive.ts","../../../projects/coreui-angular/src/lib/card/card-text.directive.ts","../../../projects/coreui-angular/src/lib/card/card-title.directive.ts","../../../projects/coreui-angular/src/lib/card/card.module.ts","../../../projects/coreui-angular/src/lib/services/intersection.service.ts","../../../projects/coreui-angular/src/lib/services/listeners.service.ts","../../../projects/coreui-angular/src/lib/carousel/carousel.service.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-state.ts","../../../projects/coreui-angular/src/lib/carousel/carousel.config.ts","../../../projects/coreui-angular/src/lib/carousel/carousel/carousel.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-caption/carousel-caption.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-control/carousel-control.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-control/carousel-control.component.html","../../../projects/coreui-angular/src/lib/carousel/carousel-indicators/carousel-indicators.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-indicators/carousel-indicators.component.html","../../../projects/coreui-angular/src/lib/carousel/carousel.animation.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-item/carousel-item.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-item/carousel-item.component.html","../../../projects/coreui-angular/src/lib/carousel/carousel-inner/carousel-inner.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-inner/carousel-inner.component.html","../../../projects/coreui-angular/src/lib/carousel/carousel.module.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-divider/dropdown-divider.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-header/dropdown-header.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown.service.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-menu/dropdown-menu.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown/dropdown.component.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-item/dropdown-item.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-item/dropdown-item-plain.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-close/dropdown-close.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown.module.ts","../../../projects/coreui-angular/src/lib/spinner/spinner.component.ts","../../../projects/coreui-angular/src/lib/spinner/spinner.component.html","../../../projects/coreui-angular/src/lib/element-cover/element-cover.component.ts","../../../projects/coreui-angular/src/lib/element-cover/element-cover.component.html","../../../projects/coreui-angular/src/lib/spinner/spinner.module.ts","../../../projects/coreui-angular/src/lib/element-cover/element-cover.module.ts","../../../projects/coreui-angular/src/lib/footer/footer.component.ts","../../../projects/coreui-angular/src/lib/footer/footer.module.ts","../../../projects/coreui-angular/src/lib/form/form/form.directive.ts","../../../projects/coreui-angular/src/lib/form/form-feedback/form-feedback.component.ts","../../../projects/coreui-angular/src/lib/form/input-group/input-group.component.ts","../../../projects/coreui-angular/src/lib/form/form-select/form-select.directive.ts","../../../projects/coreui-angular/src/lib/form/form-label/form-label.directive.ts","../../../projects/coreui-angular/src/lib/form/form-check/form-check-label.directive.ts","../../../projects/coreui-angular/src/lib/form/form-check/form-check.component.ts","../../../projects/coreui-angular/src/lib/form/form-check/form-check-input.directive.ts","../../../projects/coreui-angular/src/lib/form/form-control/form-control.directive.ts","../../../projects/coreui-angular/src/lib/form/form-text/form-text.directive.ts","../../../projects/coreui-angular/src/lib/form/form-floating/form-floating.directive.ts","../../../projects/coreui-angular/src/lib/form/input-group-text/input-group-text.directive.ts","../../../projects/coreui-angular/src/lib/form/form.module.ts","../../../projects/coreui-angular/src/lib/grid/container.component.ts","../../../projects/coreui-angular/src/lib/grid/col.directive.ts","../../../projects/coreui-angular/src/lib/grid/col.component.ts","../../../projects/coreui-angular/src/lib/grid/row.directive.ts","../../../projects/coreui-angular/src/lib/grid/row.component.ts","../../../projects/coreui-angular/src/lib/grid/gutter.directive.ts","../../../projects/coreui-angular/src/lib/grid/grid.module.ts","../../../projects/coreui-angular/src/lib/header/header/header.component.ts","../../../projects/coreui-angular/src/lib/header/header/header.component.html","../../../projects/coreui-angular/src/lib/header/header-brand/header-brand.component.ts","../../../projects/coreui-angular/src/lib/header/header-divider/header-divider.component.ts","../../../projects/coreui-angular/src/lib/header/header-nav/header-nav.component.ts","../../../projects/coreui-angular/src/lib/header/header-text/header-text.component.ts","../../../projects/coreui-angular/src/lib/header/header-toggler/header-toggler.directive.ts","../../../projects/coreui-angular/src/lib/header/header.module.ts","../../../projects/coreui-angular/src/lib/image/img.directive.ts","../../../projects/coreui-angular/src/lib/image/img.module.ts","../../../projects/coreui-angular/src/lib/list-group/list-group.directive.ts","../../../projects/coreui-angular/src/lib/list-group/list-group-item.directive.ts","../../../projects/coreui-angular/src/lib/list-group/list-group.module.ts","../../../projects/coreui-angular/src/lib/loading-button/loading-button.component.ts","../../../projects/coreui-angular/src/lib/loading-button/loading-button.component.html","../../../projects/coreui-angular/src/lib/loading-button/loading-button.module.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select-optgroup/multi-select-optgroup-label.component.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select-optgroup/multi-select-optgroup-label.component.html","../../../projects/coreui-angular/src/lib/multi-select/multi-select.service.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select-option/multi-select-option.component.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select-option/multi-select-option.component.html","../../../projects/coreui-angular/src/lib/multi-select/multi-select-optgroup/multi-select-optgroup.component.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select-optgroup/multi-select-optgroup.component.html","../../../projects/coreui-angular/src/lib/multi-select/multi-select-tag/multi-select-tag.component.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select-tag/multi-select-tag.component.html","../../../projects/coreui-angular/src/lib/multi-select/multi-select-native-select/multi-select-native-select.component.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select-native-select/multi-select-native-select.component.html","../../../projects/coreui-angular/src/lib/multi-select/multi-select/multi-select.component.ts","../../../projects/coreui-angular/src/lib/multi-select/multi-select/multi-select.component.html","../../../projects/coreui-angular/src/lib/multi-select/multi-select.module.ts","../../../projects/coreui-angular/src/lib/nav/nav-link.directive.ts","../../../projects/coreui-angular/src/lib/nav/nav-item.component.ts","../../../projects/coreui-angular/src/lib/nav/nav-item.component.html","../../../projects/coreui-angular/src/lib/nav/nav.component.ts","../../../projects/coreui-angular/src/lib/nav/nav.module.ts","../../../projects/coreui-angular/src/lib/navbar/navbar.component.ts","../../../projects/coreui-angular/src/lib/navbar/navbar.component.html","../../../projects/coreui-angular/src/lib/navbar/navbar-brand/navbar-brand.directive.ts","../../../projects/coreui-angular/src/lib/navbar/navbar-nav/navbar-nav.component.ts","../../../projects/coreui-angular/src/lib/navbar/navbar-text/navbar-text.component.ts","../../../projects/coreui-angular/src/lib/navbar/navbar-toggler/navbar-toggler.directive.ts","../../../projects/coreui-angular/src/lib/navbar/navbar.module.ts","../../../projects/coreui-angular/src/lib/modal/modal-body/modal-body.component.ts","../../../projects/coreui-angular/src/lib/modal/modal-content/modal-content.component.ts","../../../projects/coreui-angular/src/lib/modal/modal-dialog/modal-dialog.component.ts","../../../projects/coreui-angular/src/lib/modal/modal.service.ts","../../../projects/coreui-angular/src/lib/modal/modal-dismiss/modal-toggle.directive.ts","../../../projects/coreui-angular/src/lib/modal/modal-footer/modal-footer.component.ts","../../../projects/coreui-angular/src/lib/modal/modal-header/modal-header.component.ts","../../../projects/coreui-angular/src/lib/modal/modal-title/modal-title.directive.ts","../../../projects/coreui-angular/src/lib/backdrop/backdrop.service.ts","../../../projects/coreui-angular/src/lib/modal/modal/modal.component.ts","../../../projects/coreui-angular/src/lib/modal/modal/modal.component.html","../../../projects/coreui-angular/src/lib/modal/modal.module.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas.service.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas/offcanvas.component.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas/offcanvas.component.html","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas-body/offcanvas-body.component.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas-header/offcanvas-header.component.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas-title/offcanvas-title.directive.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas.module.ts","../../../projects/coreui-angular/src/lib/pagination/page-link/page-link.directive.ts","../../../projects/coreui-angular/src/lib/pagination/page-item/page-item.directive.ts","../../../projects/coreui-angular/src/lib/pagination/page-item/page-item.component.ts","../../../projects/coreui-angular/src/lib/pagination/pagination/pagination.component.ts","../../../projects/coreui-angular/src/lib/pagination/pagination/pagination.component.html","../../../projects/coreui-angular/src/lib/pagination/pagination.module.ts","../../../projects/coreui-angular/src/lib/placeholder/placeholder.directive.ts","../../../projects/coreui-angular/src/lib/placeholder/placeholder-animation.directive.ts","../../../projects/coreui-angular/src/lib/placeholder/placeholder.module.ts","../../../projects/coreui-angular/src/lib/popover/popover/popover.component.ts","../../../projects/coreui-angular/src/lib/popover/popover/popover.component.html","../../../projects/coreui-angular/src/lib/popover/popover.directive.ts","../../../projects/coreui-angular/src/lib/popover/popover.module.ts","../../../projects/coreui-angular/src/lib/progress/progress.component.ts","../../../projects/coreui-angular/src/lib/progress/progress-bar.component.ts","../../../projects/coreui-angular/src/lib/progress/progress.module.ts","../../../projects/coreui-angular/src/lib/services/class-toggle.service.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar.service.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar/sidebar.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-brand/sidebar-brand.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-brand/sidebar-brand.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-toggler/sidebar-toggler.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-header/sidebar-header.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-header/sidebar-header.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-footer/sidebar-footer.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-footer/sidebar-footer.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav.service.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-title.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-label.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-label.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-link.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-link.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-group.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar.module.ts","../../../projects/coreui-angular/src/lib/smart-pagination/smart-pagination.component.ts","../../../projects/coreui-angular/src/lib/smart-pagination/smart-pagination.component.html","../../../projects/coreui-angular/src/lib/smart-pagination/smart-pagination.module.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table-filter/smart-table-filter.component.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table-filter/smart-table-filter.component.html","../../../projects/coreui-angular/src/lib/table/table-color.directive.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table-head/smart-table-head.component.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table-head/smart-table-head.component.html","../../../projects/coreui-angular/src/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.html","../../../projects/coreui-angular/src/lib/table/table.directive.ts","../../../projects/coreui-angular/src/lib/utilities/align.directive.ts","../../../projects/coreui-angular/src/lib/table/table-active.directive.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table/smart-table.component.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table/smart-table.component.html","../../../projects/coreui-angular/src/lib/table/table.module.ts","../../../projects/coreui-angular/src/lib/utilities/bg-color.directive.ts","../../../projects/coreui-angular/src/lib/utilities/border.directive.ts","../../../projects/coreui-angular/src/lib/utilities/text-color.directive.ts","../../../projects/coreui-angular/src/lib/utilities/rounded.directive.ts","../../../projects/coreui-angular/src/lib/utilities/utilities.module.ts","../../../projects/coreui-angular/src/lib/smart-table/smart-table.module.ts","../../../projects/coreui-angular/src/lib/tabs/tab.service.ts","../../../projects/coreui-angular/src/lib/tabs/tab-pane/tab-pane.component.ts","../../../projects/coreui-angular/src/lib/tabs/tab-pane/tab-pane.component.html","../../../projects/coreui-angular/src/lib/tabs/tab-content/tab-content.component.ts","../../../projects/coreui-angular/src/lib/tabs/tab-content/tab-content.component.html","../../../projects/coreui-angular/src/lib/tabs/tab-content-ref.directive.ts","../../../projects/coreui-angular/src/lib/tabs/tabs.module.ts","../../../projects/coreui-angular/src/lib/toast/toaster/toaster.service.ts","../../../projects/coreui-angular/src/lib/toast/toast/toast.component.ts","../../../projects/coreui-angular/src/lib/toast/toast/toast.component.html","../../../projects/coreui-angular/src/lib/toast/toast-body/toast-body.component.ts","../../../projects/coreui-angular/src/lib/toast/toast-close.directive.ts","../../../projects/coreui-angular/src/lib/toast/toast-header/toast-header.component.ts","../../../projects/coreui-angular/src/lib/toast/toast-header/toast-header.component.html","../../../projects/coreui-angular/src/lib/toast/toaster/toaster-host.directive.ts","../../../projects/coreui-angular/src/lib/toast/toaster/toaster.component.ts","../../../projects/coreui-angular/src/lib/toast/toaster/toaster.component.html","../../../projects/coreui-angular/src/lib/toast/toast.module.ts","../../../projects/coreui-angular/src/lib/tooltip/tooltip/tooltip.component.ts","../../../projects/coreui-angular/src/lib/tooltip/tooltip/tooltip.component.html","../../../projects/coreui-angular/src/lib/tooltip/tooltip.directive.ts","../../../projects/coreui-angular/src/lib/tooltip/tooltip.module.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-a/widget-stat-a.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-a/widget-stat-a.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-b/widget-stat-b.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-b/widget-stat-b.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-c/widget-stat-c.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-c/widget-stat-c.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-d/widget-stat-d.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-d/widget-stat-d.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-e/widget-stat-e.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-e/widget-stat-e.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-f/widget-stat-f.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-f/widget-stat-f.component.html","../../../projects/coreui-angular/src/lib/widget/widget.module.ts","../../../projects/coreui-angular/src/public-api.ts","../../../projects/coreui-angular/src/coreui-angular-pro.ts"],"sourcesContent":["export enum BreakpointInfix {\r\n xs = 'xs',\r\n sm = 'sm',\r\n md = 'md',\r\n lg = 'lg',\r\n xl = 'xl',\r\n xxl = 'xxl'\r\n}\r\n\r\nexport type BreakpointInfixStrings = keyof typeof BreakpointInfix;\r\n\r\nexport type Breakpoints = BreakpointInfixStrings | string;\r\n\r\nexport type Sizes = 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | string;\r\n\r\nexport type Colors =\r\n | 'primary'\r\n | 'secondary'\r\n | 'success'\r\n | 'danger'\r\n | 'warning'\r\n | 'info'\r\n | 'dark'\r\n | 'light'\r\n | 'primary-gradient'\r\n | 'secondary-gradient'\r\n | 'success-gradient'\r\n | 'danger-gradient'\r\n | 'warning-gradient'\r\n | 'info-gradient'\r\n | 'dark-gradient'\r\n | 'light-gradient'\r\n | string;\r\n\r\n// export type ColorsGradient =\r\n// | Colors\r\n// | `${Colors}-gradient`;\r\n\r\nexport type BackgroundColors = Colors | 'body' | 'white' | 'transparent';\r\n\r\nexport type Directions = 'down' | 'up' | 'start' | 'end' | '';\r\n\r\nexport type TextColors =\r\n | Colors\r\n | 'body'\r\n | 'white'\r\n | 'muted'\r\n | 'black-50'\r\n | 'white-50'\r\n | 'high-emphasis'\r\n | 'medium-emphasis'\r\n | 'disabled'\r\n | 'high-emphasis-inverse'\r\n | 'medium-emphasis-inverse'\r\n | 'disabled-inverse';\r\n\r\nexport type Alignment =\r\n | 'baseline'\r\n | 'top'\r\n | 'middle'\r\n | 'bottom'\r\n | 'text-top'\r\n | 'text-bottom';\r\n\r\nexport type BadgePositions =\r\n | 'top-start'\r\n | 'top-end'\r\n | 'bottom-end'\r\n | 'bottom-start'\r\n | string\r\n | undefined;\r\n\r\nexport type Placements =\r\n | 'auto'\r\n | 'auto-start'\r\n | 'auto-end'\r\n | 'top-end'\r\n | 'top'\r\n | 'top-start'\r\n | 'bottom-end'\r\n | 'bottom'\r\n | 'bottom-start'\r\n | 'right-start'\r\n | 'right'\r\n | 'right-end'\r\n | 'left-start'\r\n | 'left'\r\n | 'left-end'\r\n | undefined;\r\n\r\nexport type Shapes =\r\n | 'rounded'\r\n | 'rounded-top'\r\n | 'rounded-end'\r\n | 'rounded-bottom'\r\n | 'rounded-start'\r\n | 'rounded-circle'\r\n | 'rounded-pill'\r\n | 'rounded-0'\r\n | 'rounded-1'\r\n | 'rounded-2'\r\n | 'rounded-3'\r\n | string;\r\n\r\nexport type Triggers = 'hover' | 'focus' | 'click';\r\n\r\nexport type Positions = 'fixed' | 'sticky';\r\n\r\nexport type InputType =\r\n | 'button'\r\n | 'color'\r\n | 'date'\r\n | 'datetime'\r\n | 'datetime-local'\r\n | 'email'\r\n | 'file'\r\n | 'hidden'\r\n | 'image'\r\n | 'month'\r\n | 'number'\r\n | 'password'\r\n | 'range'\r\n | 'reset'\r\n | 'search'\r\n | 'submit'\r\n | 'tel'\r\n | 'text'\r\n | 'time'\r\n | 'url'\r\n | 'week'\r\n | 'checkbox'\r\n | 'radio';\r\n\r\nexport interface INavLinkProps {\r\n queryParams?: { [k: string]: any };\r\n fragment?: string;\r\n queryParamsHandling?: 'merge' | 'preserve' | '' | null;\r\n preserveFragment?: boolean;\r\n skipLocationChange?: boolean;\r\n replaceUrl?: boolean;\r\n state?: { [k: string]: any };\r\n routerLinkActiveOptions?: { exact: boolean };\r\n routerLinkActive?: string | string[];\r\n}\r\n\r\nexport interface INavAttributes {\r\n [propName: string]: any;\r\n}\r\n\r\nexport type ButtonType = 'button' | 'submit' | 'reset';\r\n","import {Directive, ElementRef, Input, OnInit, Renderer2} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cHtmlAttr]',\r\n exportAs: 'cHtmlAttr'\r\n})\r\nexport class HtmlAttributesDirective implements OnInit {\r\n\r\n // @ts-ignore\r\n @Input() cHtmlAttr: {[key: string]: any };\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n private el: ElementRef\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n const attribs = this.cHtmlAttr;\r\n for (const attr in attribs) {\r\n if (attr === 'style' && typeof(attribs[attr]) === 'object' ) {\r\n this.setStyle(attribs[attr]);\r\n } else if (attr === 'class') {\r\n this.addClass(attribs[attr]);\r\n } else {\r\n this.setAttrib(attr, attribs[attr]);\r\n }\r\n }\r\n }\r\n\r\n private setStyle(styles: { [x: string]: any; }): void {\r\n for (const style in styles) {\r\n if (style) {\r\n this.renderer.setStyle(this.el.nativeElement, style, styles[style]);\r\n }\r\n }\r\n }\r\n\r\n private addClass(classes: string): void {\r\n const classArray = (Array.isArray(classes) ? classes : classes.split(' '));\r\n classArray.filter((element) => element.length > 0).forEach(element => {\r\n this.renderer.addClass(this.el.nativeElement, element );\r\n });\r\n }\r\n\r\n private setAttrib(key: string, value: string | null): void {\r\n value !== null ?\r\n this.renderer.setAttribute(this.el.nativeElement, key, value ) :\r\n this.renderer.removeAttribute(this.el.nativeElement, key);\r\n }\r\n}\r\n","import { Directive, Input, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cTemplateId]'\r\n})\r\nexport class TemplateIdDirective {\r\n @Input('cTemplateId') id!: string;\r\n\r\n constructor(\r\n public templateRef: TemplateRef<any>\r\n ) { }\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n// import { OutClickService } from './out-click.service';\r\n// import { OutClickDirective } from './out-click.directive';\r\nimport { HtmlAttributesDirective } from './html-attr.directive';\r\nimport { TemplateIdDirective } from './template-id.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n // OutClickDirective,\r\n HtmlAttributesDirective,\r\n TemplateIdDirective\r\n ],\r\n exports: [\r\n // OutClickDirective,\r\n HtmlAttributesDirective,\r\n TemplateIdDirective\r\n ],\r\n providers: []\r\n})\r\nexport class SharedModule {\r\n\r\n static forRoot(): ModuleWithProviders<SharedModule> {\r\n return {\r\n ngModule: SharedModule,\r\n // providers: [\r\n // {provide: OutClickService}\r\n // ]\r\n };\r\n }\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cAccordionButton]'\r\n})\r\nexport class AccordionButtonDirective {\r\n\r\n /**\r\n * Toggles an accordion button collapsed state. Use in accordionHeaderTemplate. [docs]\r\n * @type boolean\r\n */\r\n @Input() collapsed!: boolean;\r\n\r\n /**\r\n * Default type for cAccordionButton. [docs]\r\n * @type string\r\n * @default 'button'\r\n */\r\n @HostBinding('attr.type')\r\n @Input() type = 'button';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'accordion-button': true,\r\n collapsed: this.collapsed\r\n };\r\n }\r\n\r\n @HostBinding('attr.aria-expanded') get ariaExpanded(): boolean {\r\n return !this.collapsed;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AccordionItemComponent } from './accordion-item/accordion-item.component';\r\n\r\n@Injectable()\r\nexport class AccordionService {\r\n\r\n items: AccordionItemComponent[] = [];\r\n alwaysOpen = false;\r\n\r\n constructor() { }\r\n\r\n addItem(item: AccordionItemComponent): void {\r\n this.items.push(item);\r\n }\r\n\r\n removeItem(item: AccordionItemComponent): void {\r\n const index = this.items.indexOf(item);\r\n if (index !== -1) {\r\n this.items.splice(index, 1);\r\n }\r\n }\r\n\r\n toggleItem(item: AccordionItemComponent): void {\r\n item.visible = !item.visible;\r\n this.closeOtherItems(item);\r\n }\r\n\r\n closeOtherItems(openItem: AccordionItemComponent): void {\r\n if (!this.alwaysOpen) {\r\n this.items.forEach((item: AccordionItemComponent) => {\r\n if (item !== openItem) {\r\n item.visible = false;\r\n }\r\n });\r\n }\r\n }\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\nimport { AccordionService } from '../accordion.service';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-accordion',\r\n template: `<ng-content></ng-content>`,\r\n styleUrls: ['./accordion.component.scss'],\r\n exportAs: 'cAccordionItem',\r\n providers: [AccordionService]\r\n})\r\nexport class AccordionComponent {\r\n\r\n static ngAcceptInputType_alwaysOpen: BooleanInput;\r\n\r\n /**\r\n * Removes the default background-color, some borders, and some rounded corners to render accordions edge-to-edge with their parent container.\r\n * @type boolean\r\n */\r\n @Input() flush?: boolean;\r\n /**\r\n * Make accordion items stay open when another item is opened\r\n * @type boolean\r\n */\r\n @Input()\r\n set alwaysOpen(value: boolean) {\r\n this.accordionService.alwaysOpen = coerceBooleanProperty(value);\r\n }\r\n get alwaysOpen(): boolean {\r\n return this.accordionService.alwaysOpen;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n accordion: true,\r\n 'accordion-flush': !!this.flush\r\n };\r\n }\r\n\r\n constructor(\r\n private accordionService: AccordionService\r\n ) {}\r\n\r\n}\r\n","import { animation, animate, style } from '@angular/animations';\r\n\r\nexport const expandAnimation = animation([\r\n style({ height: 0, visibility: 'hidden', overflow: 'hidden', paddingTop: 0, paddingBottom: 0 }),\r\n animate('{{ time }} {{ easing }}', style({ height: '*', visibility: 'visible', paddingTop: '*', paddingBottom: '*', minHeight: '*' })\r\n ),\r\n animate('{{ time }}', style({opacity: '*', overflow: '*'})),\r\n]);\r\n\r\nexport const collapseAnimation = animation([\r\n style({ height: '*', visibility: 'visible', overflow: 'hidden', paddingTop: '*', paddingBottom: '*', minHeight: '*' }),\r\n animate(\r\n '{{ time }} {{ easing }}',\r\n style({ height: 0, visibility: 'hidden', opacity: 0, overflow: 'hidden', paddingTop: 0, paddingBottom: 0, minHeight: 0 })\r\n )\r\n]);\r\n\r\nexport const expandHorizontalAnimation = animation([\r\n style({ width: 0, visibility: 'hidden', paddingLeft: 0, paddingRight: 0 }),\r\n animate('{{ time }} {{ easing }}', style({ width: '*', visibility: 'visible', paddingLeft: '*', paddingRight: '*', minWidth: '*' })\r\n ),\r\n animate('{{ time }}', style({opacity: '*'})),\r\n]);\r\n\r\nexport const collapseHorizontalAnimation = animation([\r\n style({ width: '*', visibility: 'visible', paddingLeft: '*', paddingRight: '*', minWidth: '*' }),\r\n animate(\r\n '{{ time }} {{ easing }}',\r\n style({ width: 0, visibility: 'hidden', opacity: 0, paddingLeft: 0, paddingRight: 0, minWidth: 0 })\r\n )\r\n]);\r\n","import {\r\n AfterViewInit,\r\n Directive,\r\n DoCheck,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n Output,\r\n Renderer2,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { AnimationBuilder, AnimationPlayer, useAnimation } from '@angular/animations';\r\n\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport {\r\n collapseAnimation,\r\n collapseHorizontalAnimation,\r\n expandAnimation,\r\n expandHorizontalAnimation\r\n} from './collapse.animations';\r\n\r\n// todo\r\n// tslint:disable-next-line:no-conflicting-lifecycle\r\n@Directive({\r\n selector: '[cCollapse]',\r\n exportAs: 'cCollapse'\r\n})\r\nexport class CollapseDirective implements OnChanges, OnDestroy, DoCheck, AfterViewInit {\r\n\r\n static ngAcceptInputType_horizontal: BooleanInput;\r\n static ngAcceptInputType_navbar: BooleanInput;\r\n\r\n /**\r\n * @ignore\r\n */\r\n @Input()\r\n set animate(value: boolean) {\r\n this._animate = value;\r\n }\r\n get animate(): boolean {\r\n return this._animate;\r\n }\r\n private _animate = true;\r\n\r\n /**\r\n * Set horizontal collapsing to transition the width instead of height.\r\n */\r\n @Input()\r\n set horizontal(value: boolean) {\r\n this._horizontal = coerceBooleanProperty(value);\r\n }\r\n get horizontal(): boolean {\r\n return this._horizontal;\r\n }\r\n private _horizontal: boolean = false;\r\n\r\n /**\r\n * Toggle the visibility of collapsible element.\r\n */\r\n @Input()\r\n set visible(value) {\r\n this._visible = value;\r\n }\r\n get visible(): boolean {\r\n return this._visible;\r\n }\r\n private _visible = false;\r\n\r\n /**\r\n * Add `navbar` prop for grouping and hiding navbar contents by a parent breakpoint.\r\n */\r\n @Input()\r\n set navbar(value: boolean) {\r\n this._navbar = coerceBooleanProperty(value);\r\n };\r\n get navbar() {\r\n return this._navbar;\r\n }\r\n private _navbar = false;\r\n\r\n /**\r\n * @ignore\r\n */\r\n @Input() duration = '350ms';\r\n /**\r\n * @ignore\r\n */\r\n @Input() transition = 'ease';\r\n /**\r\n * Event emitted on visibility change. [docs]\r\n * @type string\r\n */\r\n @Output() collapseChange = new EventEmitter<string>();\r\n\r\n private player!: AnimationPlayer;\r\n private readonly host: HTMLElement;\r\n // private scrollHeight!: number;\r\n private scrollWidth!: number;\r\n private collapsing: boolean = false;\r\n\r\n constructor(\r\n private hostElement: ElementRef,\r\n private renderer: Renderer2,\r\n private animationBuilder: AnimationBuilder\r\n ) {\r\n this.host = this.hostElement.nativeElement;\r\n this.renderer.setStyle(this.host, 'display', 'none');\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'navbar-collapse': this.navbar,\r\n show: this.visible,\r\n 'collapse-horizontal': this.horizontal,\r\n collapsing: this.collapsing\r\n // collapse: !this.collapsing && !this.visible\r\n };\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n if (this.visible) {\r\n this.toggle();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroyPlayer();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['visible']) {\r\n if (!changes['visible'].firstChange || !changes['visible'].currentValue) {\r\n this.toggle(changes['visible'].currentValue);\r\n }\r\n }\r\n }\r\n\r\n ngDoCheck(): void {\r\n if (this._visible !== this.visible) {\r\n this.toggle();\r\n }\r\n }\r\n\r\n toggle(visible = this.visible): void {\r\n this.createPlayer(visible);\r\n this.player?.play();\r\n }\r\n\r\n destroyPlayer(): void {\r\n this.player?.destroy();\r\n }\r\n\r\n createPlayer(visible: boolean = this.visible): void {\r\n if (this.player?.hasStarted()) {\r\n this.destroyPlayer();\r\n }\r\n\r\n if (visible) {\r\n this.renderer.removeStyle(this.host, 'display');\r\n }\r\n\r\n const duration = this.animate ? this.duration : '0ms';\r\n\r\n const expand = this.horizontal ? expandHorizontalAnimation : expandAnimation;\r\n const collapse = this.horizontal ? collapseHorizontalAnimation : collapseAnimation;\r\n\r\n const animationFactory = this.animationBuilder.build(\r\n useAnimation(visible ? expand : collapse, { params: { time: duration, easing: this.transition } })\r\n );\r\n\r\n this.player = animationFactory.create(this.host);\r\n this.player.onStart(() => {\r\n this.setMaxSize();\r\n this.visible = visible;\r\n this.collapsing = true;\r\n this.collapseChange.emit(visible ? 'opening' : 'collapsing');\r\n });\r\n this.player.onDone(() => {\r\n this.collapsing = false;\r\n this.collapseChange.emit(visible ? 'open' : 'collapsed');\r\n });\r\n }\r\n\r\n setMaxSize() {\r\n setTimeout(() => {\r\n if (this.horizontal) {\r\n this.scrollWidth = this.host.scrollWidth;\r\n this.scrollWidth > 0 && this.renderer.setStyle(this.host, 'maxWidth', `${this.scrollWidth}px`);\r\n // } else {\r\n // this.scrollHeight = this.host.scrollHeight;\r\n // this.scrollHeight > 0 && this.renderer.setStyle(this.host, 'maxHeight', `${this.scrollHeight}px`);\r\n }\r\n });\r\n }\r\n}\r\n","import {\r\n AfterContentInit,\r\n Component,\r\n ContentChildren,\r\n HostBinding,\r\n Input,\r\n OnDestroy,\r\n OnInit, QueryList,\r\n} from '@angular/core';\r\n\r\nimport { AccordionService } from '../accordion.service';\r\nimport { TemplateIdDirective } from '../../shared';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nlet nextId = 0;\r\n\r\n@Component({\r\n selector: 'c-accordion-item',\r\n templateUrl: './accordion-item.component.html',\r\n styleUrls: ['./accordion-item.component.scss'],\r\n exportAs: 'cAccordionItem',\r\n})\r\nexport class AccordionItemComponent implements OnInit, OnDestroy, AfterContentInit {\r\n\r\n static ngAcceptInputType_visible: BooleanInput;\r\n\r\n /**\r\n * Toggle an accordion item programmatically\r\n * @type boolean\r\n * @default false\r\n */\r\n @Input()\r\n set visible(value: boolean){\r\n this._visible = coerceBooleanProperty(value);\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible: boolean = false;\r\n\r\n @Input()\r\n set open(value: boolean) {\r\n console.warn('c-accordion-item \"open\" prop is deprecated, use \"visible\" prop instead.')\r\n this.visible = value || this.visible;\r\n }\r\n get open() {\r\n return this.visible;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'accordion-item': true,\r\n };\r\n }\r\n contentId = `accordion-item-${nextId++}`;\r\n itemContext = { $implicit: this.visible };\r\n templates: any = {};\r\n\r\n @ContentChildren(TemplateIdDirective, {descendants: true}) contentTemplates!: QueryList<TemplateIdDirective>;\r\n\r\n constructor(\r\n private accordionService: AccordionService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.accordionService.addItem(this);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.accordionService.removeItem(this);\r\n }\r\n\r\n toggleItem(): void {\r\n this.accordionService.toggleItem(this);\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.contentTemplates.forEach((child: TemplateIdDirective) => {\r\n this.templates[child.id] = child.templateRef;\r\n });\r\n }\r\n}\r\n\r\n","<ng-container>\r\n <div class=\"accordion-header\">\r\n <ng-container *ngTemplateOutlet=\"templates['accordionHeaderTemplate'] || defaultAccordionHeaderTemplate; context: itemContext\"></ng-container>\r\n </div>\r\n <div class=\"accordion-collapse\" cCollapse [visible]=\"visible\" [attr.aria-expanded]=\"visible\" [id]=\"contentId\">\r\n <ng-container *ngTemplateOutlet=\"templates['accordionBodyTemplate'] || defaultAccordionBodyTemplate; context: itemContext\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-template #defaultAccordionHeaderTemplate>\r\n <button cAccordionButton [collapsed]=\"!visible\" [attr.aria-controls]=\"contentId\" (click)=\"toggleItem()\">\r\n <ng-container\r\n *ngTemplateOutlet=\"templates['accordionHeader'] || defaultAccordionHeaderContentTemplate; context: itemContext\">\r\n </ng-container>\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #defaultAccordionHeaderContentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n\r\n<ng-template #defaultAccordionBodyTemplate>\r\n <div class=\"accordion-body\">\r\n <ng-container\r\n *ngTemplateOutlet=\"templates['accordionBody'] || defaultAccordionBodyContentTemplate; context: itemContext\">\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #defaultAccordionBodyContentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n","import { NgModule, ModuleWithProviders } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CollapseDirective } from './collapse.directive';\r\n\r\n@NgModule({\r\n declarations: [CollapseDirective],\r\n exports: [CollapseDirective],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class CollapseModule {\r\n static forRoot(): ModuleWithProviders<CollapseModule> {\r\n return { ngModule: CollapseModule, providers: [] };\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AccordionComponent } from './accordion/accordion.component';\r\nimport { AccordionButtonDirective } from './accordion-button/accordion-button.directive';\r\nimport { AccordionItemComponent } from './accordion-item/accordion-item.component';\r\nimport { AccordionService } from './accordion.service';\r\nimport { CollapseModule } from '../collapse';\r\nimport { SharedModule } from '../shared';\r\n\r\n@NgModule({\r\n declarations: [\r\n AccordionComponent,\r\n AccordionButtonDirective,\r\n AccordionItemComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n CollapseModule,\r\n SharedModule\r\n ],\r\n exports: [\r\n AccordionComponent,\r\n AccordionButtonDirective,\r\n AccordionItemComponent,\r\n ],\r\n providers: [\r\n AccordionService\r\n ]\r\n})\r\nexport class AccordionModule {\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cAlertHeading]'\r\n})\r\nexport class AlertHeadingDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'alert-heading': true,\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cAlertLink]'\r\n})\r\nexport class AlertLinkDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'alert-link': true,\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { coerceBooleanProperty, BooleanInput } from '@angular/cdk/coercion';\r\n\r\nimport { ButtonType, Colors, Shapes } from '../coreui.types';\r\n\r\n@Directive({\r\n selector: '[cButton]',\r\n exportAs: 'cButton'\r\n})\r\nexport class ButtonDirective {\r\n\r\n constructor() {}\r\n\r\n static ngAcceptInputType_active: BooleanInput;\r\n private _active = false;\r\n static ngAcceptInputType_disabled: BooleanInput;\r\n private _disabled = false;\r\n\r\n /**\r\n * Toggle the active state for the component. [docs]\r\n * @type boolean\r\n */\r\n @Input()\r\n get active(): boolean {\r\n return this._active;\r\n }\r\n set active(value: boolean) {\r\n this._active = coerceBooleanProperty(value);\r\n }\r\n\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors. [docs]\r\n * @type Colors\r\n */\r\n @Input() color?: Colors = 'primary';\r\n /**\r\n * Toggle the disabled state for the component.\r\n * @type boolean\r\n */\r\n @Input()\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n /**\r\n * Select the shape of the component.\r\n * @type { 'rounded' | 'rounded-top' | 'rounded-end' | 'rounded-bottom' | 'rounded-start' | 'rounded-circle' | 'rounded-pill' | 'rounded-0' | 'rounded-1' | 'rounded-2' | 'rounded-3' | string }\r\n */\r\n @Input() shape?: Shapes;\r\n /**\r\n * Size the component small or large.\r\n * @type {'sm' | 'lg'}\r\n */\r\n @Input() size?: 'sm' | 'lg' | '' = '';\r\n /**\r\n * Specifies the type of button. Always specify the type attribute for the `<button>` element.\r\n * Different browsers may use different default types for the `<button>` element.\r\n */\r\n @HostBinding('attr.type')\r\n @Input() type: ButtonType = 'button';\r\n /**\r\n * Set the button variant to an outlined button or a ghost button.\r\n * @type {'ghost' | 'outline'}\r\n */\r\n @Input() variant?: 'ghost' | 'outline';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n btn: true,\r\n [`btn-${this.color}`]: !!this.color && !this.variant,\r\n [`btn-${this.variant}`]: !!this.variant && !this.color,\r\n [`btn-${this.variant}-${this.color}`]: !!this.variant && !!this.color,\r\n [`btn-${this.size}`]: !!this.size,\r\n [`${this.shape}`]: !!this.shape,\r\n disabled: this.disabled,\r\n active: this.active\r\n };\r\n }\r\n\r\n @HostBinding('attr.aria-disabled')\r\n get ariaDisabled () {\r\n return this.disabled || null;\r\n };\r\n\r\n @HostBinding('attr.aria-pressed')\r\n get isActive(): boolean | null {\r\n return this.active || null;\r\n }\r\n\r\n @HostBinding('attr.disabled')\r\n get attrDisabled () {\r\n return this.disabled ? '' : null;\r\n };\r\n\r\n @HostBinding('attr.tabindex')\r\n get tabIndex(): string | null {\r\n return this.disabled ? '-1' : null;\r\n }\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { ButtonDirective } from './button.directive';\r\n\r\n@Directive({\r\n selector: '[cButtonClose]'\r\n})\r\nexport class ButtonCloseDirective extends ButtonDirective {\r\n\r\n static ngAcceptInputType_white: BooleanInput;\r\n private _white = false;\r\n /**\r\n * Change the default color to white.\r\n * @type boolean\r\n */\r\n @Input()\r\n get white(): boolean {\r\n return this._white;\r\n }\r\n set white(value: boolean) {\r\n this._white = coerceBooleanProperty(value);\r\n }\r\n\r\n @HostBinding('class')\r\n override get hostClasses(): any {\r\n return {\r\n 'btn-close': true,\r\n 'btn-close-white': this.white,\r\n [`btn-${this.size}`]: !!this.size,\r\n disabled: this.disabled,\r\n active: this.active,\r\n };\r\n }\r\n}\r\n","import {\r\n AfterContentInit,\r\n Component,\r\n ContentChildren,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n Output,\r\n QueryList\r\n} from '@angular/core';\r\nimport { animate, AnimationEvent, state, style, transition, trigger } from '@angular/animations';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { Colors } from '../coreui.types';\r\nimport { TemplateIdDirective } from '../shared';\r\n\r\ntype AnimateType = ('hide' | 'show');\r\n\r\n@Component({\r\n selector: 'c-alert',\r\n templateUrl: './alert.component.html',\r\n styleUrls: ['./alert.component.scss'],\r\n exportAs: 'cAlert',\r\n animations: [\r\n trigger('fadeInOut', [\r\n state('show', style({opacity: 1, height: '*', padding: '*', border: '*', margin: '*', overflow: 'hidden'})),\r\n state('hide', style({opacity: 0, height: 0, padding: 0, border: 0, margin: 0, overflow: 'hidden'})),\r\n state('void', style({opacity: 0, height: 0, padding: 0, border: 0, margin: 0, overflow: 'hidden'})),\r\n transition('show => hide', [\r\n animate('.3s ease-out'),\r\n ]),\r\n transition('hide => show', [\r\n animate('.3s ease-in'),\r\n ]),\r\n transition('show => void', [\r\n animate('.3s ease-out'),\r\n ]),\r\n transition('void => show', [\r\n animate('.3s ease-in'),\r\n ]),\r\n ])\r\n ]\r\n})\r\nexport class AlertComponent implements AfterContentInit {\r\n\r\n static ngAcceptInputType_dismissible: BooleanInput;\r\n static ngAcceptInputType_fade: BooleanInput;\r\n static ngAcceptInputType_visible: BooleanInput;\r\n\r\n hide!: boolean;\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n *\r\n * @type Colors\r\n * @default 'primary'\r\n */\r\n @Input() color: Colors = 'primary';\r\n\r\n /**\r\n * Optionally adds a close button to alert and allow it to self dismiss.\r\n * @type boolean\r\n */\r\n @Input()\r\n get dismissible(): boolean {\r\n return this._dismissible;\r\n }\r\n set dismissible(value: boolean) {\r\n this._dismissible = coerceBooleanProperty(value);\r\n }\r\n private _dismissible = false;\r\n\r\n /**\r\n * Adds animation for dismissible alert.\r\n * @type boolean\r\n */\r\n @Input()\r\n get fade(): boolean {\r\n return this._fade;\r\n }\r\n set fade(value: boolean) {\r\n this._fade = coerceBooleanProperty(value);\r\n }\r\n private _fade = false;\r\n\r\n /**\r\n * Default role for alert. [docs]\r\n * @type string\r\n * @default 'alert'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'alert';\r\n\r\n /**\r\n * Set the alert variant to a solid.\r\n * @type string\r\n */\r\n @Input() variant?: 'solid' | string;\r\n\r\n /**\r\n * Toggle the visibility of alert component.\r\n * @type boolean\r\n */\r\n @Input()\r\n set visible(value: boolean) {\r\n if (this._visible !== value) {\r\n this._visible = coerceBooleanProperty(value);\r\n this.visibleChange.emit(value);\r\n }\r\n };\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible = true;\r\n\r\n /**\r\n * Event triggered on the alert dismiss.\r\n */\r\n @Output() visibleChange: EventEmitter<boolean> = new EventEmitter();\r\n\r\n templates: any = {};\r\n @ContentChildren(TemplateIdDirective, {descendants: true}) contentTemplates!: QueryList<TemplateIdDirective>;\r\n\r\n @HostBinding('@.disabled')\r\n get animationDisabled(): boolean {\r\n return !this.fade;\r\n }\r\n\r\n @HostBinding('@fadeInOut')\r\n get animateType(): AnimateType {\r\n return this.visible ? 'show' : 'hide';\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n alert: true,\r\n 'alert-dismissible': this.dismissible,\r\n fade: this.fade,\r\n show: !this.hide,\r\n [`alert-${this.color}`]: !!this.color && this.variant !== 'solid',\r\n [`bg-${this.color}`]: !!this.color && this.variant === 'solid',\r\n 'text-white': !!this.color && this.variant === 'solid'\r\n };\r\n }\r\n\r\n @HostListener('@fadeInOut.start', ['$event'])\r\n onAnimationStart($event: AnimationEvent): void {\r\n this.onAnimationEvent($event);\r\n }\r\n\r\n @HostListener('@fadeInOut.done', ['$event'])\r\n onAnimationDone($event: AnimationEvent): void {\r\n this.onAnimationEvent($event);\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.contentTemplates.forEach((child: TemplateIdDirective) => {\r\n this.templates[child.id] = child.templateRef;\r\n });\r\n }\r\n\r\n onAnimationEvent(event: AnimationEvent): void {\r\n this.hide = event.phaseName === 'start' && event.toState === 'show';\r\n if (event.phaseName === 'done') {\r\n this.hide = (event.toState === 'hide' || event.toState === 'void');\r\n if (event.toState === 'show') {\r\n this.hide = false;\r\n }\r\n }\r\n }\r\n}\r\n","<ng-container *ngIf=\"visible || !hide\">\r\n <ng-template [ngIf]=\"dismissible\">\r\n <ng-container *ngTemplateOutlet=\"templates?.alertButtonCloseTemplate || defaultAlertButtonCloseTemplate\">\r\n </ng-container>\r\n </ng-template>\r\n <ng-content></ng-content>\r\n</ng-container>\r\n\r\n<ng-template #defaultAlertButtonCloseTemplate>\r\n <button (click)=\"visible=false\" aria-label=\"Close\" cButtonClose></button>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ButtonDirective } from './button.directive';\r\nimport { ButtonCloseDirective } from './button-close.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n ButtonDirective,\r\n ButtonCloseDirective,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n ButtonDirective,\r\n ButtonCloseDirective,\r\n ]\r\n})\r\nexport class ButtonModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { AlertComponent } from './alert.component';\r\nimport { AlertHeadingDirective } from './alert-heading.directive';\r\nimport { AlertLinkDirective } from './alert-link.directive';\r\nimport { ButtonModule } from '../button';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ButtonModule\r\n ],\r\n exports: [\r\n AlertComponent,\r\n AlertHeadingDirective,\r\n AlertLinkDirective\r\n ],\r\n declarations: [\r\n AlertComponent,\r\n AlertHeadingDirective,\r\n AlertLinkDirective\r\n ]\r\n})\r\nexport class AlertModule {}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { Colors, Shapes, Sizes, TextColors } from '../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-avatar',\r\n templateUrl: './avatar.component.html',\r\n styleUrls: ['./avatar.component.scss']\r\n})\r\nexport class AvatarComponent {\r\n /**\r\n * Sets the background color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Select the shape of the component.\r\n * @type Shapes\r\n */\r\n @Input() shape?: Shapes;\r\n /**\r\n * Size the component small, large, or extra large.\r\n * @default 'md'\r\n */\r\n @Input() size?: Omit<Sizes, 'xxl'> = 'md';\r\n /**\r\n * The src attribute for the img element.\r\n * @type string\r\n */\r\n @Input() src?: string;\r\n /**\r\n * Sets the color context of the status indicator to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() status?: Colors;\r\n /**\r\n * Sets the text color of the component to one of CoreUI’s themed colors.\r\n *\r\n * @values 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'info' | 'dark' | 'light' | 'white' | 'muted' | string\r\n */\r\n @Input() textColor?: TextColors;\r\n\r\n constructor() { }\r\n\r\n get statusClass(): any {\r\n return {\r\n 'avatar-status': true,\r\n [`bg-${this.status}`]: !!this.status\r\n };\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n avatar: true,\r\n [`avatar-${this.size}`]: !!this.size,\r\n [`bg-${this.color}`]: !!this.color,\r\n [`${this.shape}`]: !!this.shape,\r\n [`text-${this.textColor}`]: !!this.textColor\r\n };\r\n }\r\n}\r\n","<ng-container>\r\n <ng-container *ngTemplateOutlet=\"defaultImageTemplate\"></ng-container>\r\n <span *ngIf=\"!!status\" [ngClass]=\"statusClass\"></span>\r\n</ng-container>\r\n\r\n<ng-template #defaultImageTemplate>\r\n <img *ngIf=\"!!src; else imageContent\" [src]=\"src\" class=\"avatar-img\" />\r\n <ng-template #imageContent>\r\n <ng-content></ng-content>\r\n </ng-template>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AvatarComponent } from './avatar.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n AvatarComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n AvatarComponent\r\n ]\r\n})\r\nexport class AvatarModule { }\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { BadgePositions, Colors, Shapes } from '../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-badge',\r\n templateUrl: './badge.component.html',\r\n styleUrls: ['./badge.component.scss'],\r\n})\r\nexport class BadgeComponent {\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Position badge in one of the corners of a link or button.\r\n * @type BadgePositions\r\n */\r\n @Input() position?: BadgePositions;\r\n /**\r\n * Select the shape of the component.\r\n * @type Shapes\r\n */\r\n @Input() shape?: Shapes;\r\n /**\r\n * Size the component small.\r\n */\r\n @Input() size?: 'sm';\r\n /**\r\n * Sets the text color of the component to one of CoreUI’s themed colors.\r\n * @type TextColors\r\n */\r\n @Input() textColor?: string;\r\n\r\n constructor() {}\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n const positionClasses = {\r\n 'position-absolute': !!this.position,\r\n 'translate-middle': !!this.position,\r\n 'top-0': this.position?.includes('top'),\r\n 'top-100': this.position?.includes('bottom'),\r\n 'start-100': this.position?.includes('end'),\r\n 'start-0': this.position?.includes('start'),\r\n };\r\n\r\n return Object.assign({\r\n badge: true,\r\n [`bg-${this.color}`]: !!this.color,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n [`badge-${this.size}`]: !!this.size,\r\n [`${this.shape}`]: !!this.shape,\r\n }, !!this.position ? positionClasses : {}\r\n );\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BadgeComponent } from './badge.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n BadgeComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n BadgeComponent\r\n ]\r\n})\r\nexport class BadgeModule { }\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { INavAttributes, INavLinkProps } from './breadcrumb-item';\r\n\r\n@Component({\r\n selector: 'c-breadcrumb-item',\r\n templateUrl: './breadcrumb-item.component.html',\r\n styleUrls: ['./breadcrumb-item.component.scss']\r\n})\r\nexport class BreadcrumbItemComponent {\r\n\r\n /**\r\n * Toggle the active state for the component. [docs]\r\n * @type boolean\r\n */\r\n @Input() active?: boolean;\r\n /**\r\n * The `url` prop for the inner `[routerLink]` directive. [docs]\r\n * @type string\r\n */\r\n @Input() url?: string | any[];\r\n /**\r\n * Additional html attributes for link. [docs]\r\n * @type INavAttributes\r\n */\r\n @Input() attributes?: INavAttributes;\r\n /**\r\n * Some `NavigationExtras` props for the inner `[routerLink]` directive and `routerLinkActiveOptions`. [docs]\r\n * @type INavLinkProps\r\n */\r\n @Input() linkProps?: INavLinkProps;\r\n\r\n @HostBinding('attr.aria-current') get ariaCurrent(): string | null {\r\n return this.active ? 'page' : null;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'breadcrumb-item': true,\r\n active: this.active\r\n };\r\n }\r\n}\r\n","<a *ngIf=\"!active; else activeItem\"\r\n [routerLink]=\"url\"\r\n [cHtmlAttr]=\"attributes ?? {}\"\r\n [target]=\"attributes?.['target']\"\r\n [queryParams]=\"linkProps?.queryParams ?? null\"\r\n [fragment]=\"linkProps?.fragment\"\r\n [queryParamsHandling]=\"linkProps?.queryParamsHandling ?? null\"\r\n [preserveFragment]=\"linkProps?.preserveFragment ?? false\"\r\n [skipLocationChange]=\"linkProps?.skipLocationChange ?? false\"\r\n [replaceUrl]=\"linkProps?.replaceUrl ?? false\"\r\n [state]=\"linkProps?.state ?? {}\"\r\n>\r\n <ng-container *ngTemplateOutlet=\"defaultBreadcrumbItemContentTemplate\"></ng-container>\r\n</a>\r\n\r\n<ng-template #activeItem>\r\n <span [cHtmlAttr]=\"attributes ?? {}\">\r\n <ng-container *ngTemplateOutlet=\"defaultBreadcrumbItemContentTemplate\"></ng-container>\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #defaultBreadcrumbItemContentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-breadcrumb',\r\n templateUrl: './breadcrumb.component.html',\r\n styleUrls: ['./breadcrumb.component.scss']\r\n})\r\nexport class BreadcrumbComponent {\r\n /**\r\n * Default aria-label for breadcrumb. [docs]\r\n * @type string\r\n * @default 'breadcrumb'\r\n */\r\n @HostBinding('attr.aria-label')\r\n @Input() ariaLabel = 'breadcrumb';\r\n\r\n /**\r\n * Default role for breadcrumb. [docs]\r\n * @type string\r\n * @default 'navigation'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'navigation';\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n breadcrumb: true\r\n }\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","<ng-content></ng-content>\r\n\r\n","import { Injectable } from '@angular/core';\nimport { Router, ActivatedRoute, NavigationEnd } from '@angular/router';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { filter } from 'rxjs/operators';\nimport { IBreadcrumbItem } from '../breadcrumb-item/breadcrumb-item';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class BreadcrumbRouterService {\n public outlet = 'primary';\n\n breadcrumbs$: Observable<IBreadcrumbItem[]>;\n private breadcrumbsBehaviorSubject: BehaviorSubject<IBreadcrumbItem[]>;\n\n constructor(private router: Router, private route: ActivatedRoute) {\n this.breadcrumbsBehaviorSubject = new BehaviorSubject<any[]>(\n new Array<IBreadcrumbItem>()\n );\n\n this.breadcrumbs$ = this.breadcrumbsBehaviorSubject.asObservable();\n\n this.router.events\n .pipe(filter((event) => event instanceof NavigationEnd))\n .subscribe((event) => {\n const breadcrumbs: any[] = [];\n let currentRoute: ActivatedRoute | null = this.route.root;\n let url = '';\n do {\n const childrenRoutes: ActivatedRoute[] = currentRoute.children;\n currentRoute = null;\n childrenRoutes.forEach((childRoute) => {\n // console.log('breadcrumb event', event, 'route', route);\n if (childRoute.outlet === this.outlet) {\n const routeSnapshot = childRoute.snapshot;\n url +=\n '/' +\n routeSnapshot.url.map((segment) => segment.path).join('/');\n breadcrumbs.push({\n label: childRoute.snapshot.data['title'] || '',\n url,\n queryParams: routeSnapshot.queryParams,\n });\n currentRoute = childRoute;\n }\n });\n } while (currentRoute);\n\n this.breadcrumbsBehaviorSubject.next(Object.assign([], breadcrumbs));\n\n // console.log('breadcrumbs', breadcrumbs);\n return breadcrumbs;\n });\n }\n}\n","import { Component, Input, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';\r\n\r\nimport {IBreadcrumbItem} from '../breadcrumb-item/breadcrumb-item';\r\nimport {Observable, Observer} from 'rxjs';\r\nimport { BreadcrumbRouterService } from './breadcrumb-router.service';\r\n\r\n@Component({\r\n selector: 'c-breadcrumb-router, [cBreadcrumbRouter]',\r\n templateUrl: './breadcrumb-router.component.html',\r\n styleUrls: ['./breadcrumb-router.component.scss']\r\n})\r\nexport class BreadcrumbRouterComponent implements OnChanges, OnDestroy, OnInit {\r\n /**\r\n * Optional array of IBreadcrumbItem to override default BreadcrumbRouter behavior. [docs]\r\n * @type IBreadcrumbItem[]\r\n */\r\n @Input() items?: IBreadcrumbItem[];\r\n\r\n public breadcrumbs: Observable<IBreadcrumbItem[]> | undefined;\r\n\r\n constructor(\r\n public service: BreadcrumbRouterService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.breadcrumbs = this.service.breadcrumbs$;\r\n }\r\n\r\n public ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['items']) {\r\n this.setup();\r\n }\r\n }\r\n\r\n setup(): void {\r\n if (this.items && this.items.length > 0) {\r\n this.breadcrumbs = new Observable<IBreadcrumbItem[]>((observer: Observer<IBreadcrumbItem[]>) => {\r\n if (this.items) {\r\n observer.next(this.items);\r\n }\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.breadcrumbs = undefined;\r\n }\r\n}\r\n","<c-breadcrumb class=\"m-0\">\r\n <ng-template ngFor let-breadcrumb [ngForOf]=\"breadcrumbs | async\" let-last=\"last\">\r\n <ng-container *ngIf=\"breadcrumb?.label && (breadcrumb?.url?.slice(-1) === '/' || last)\">\r\n <c-breadcrumb-item\r\n [active]=\"last\"\r\n [url]=\"breadcrumb?.url\"\r\n [attributes]=\"breadcrumb?.attributes\"\r\n [linkProps]=\"breadcrumb?.linkProps\"\r\n >\r\n {{ breadcrumb?.label }}\r\n </c-breadcrumb-item>\r\n </ng-container>\r\n </ng-template>\r\n</c-breadcrumb>\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n// CoreUI Breadcrumb Component\r\nimport { BreadcrumbComponent } from './breadcrumb/breadcrumb.component';\r\nimport { BreadcrumbItemComponent } from './breadcrumb-item/breadcrumb-item.component';\r\nimport { BreadcrumbRouterComponent } from './breadcrumb-router/breadcrumb-router.component';\r\nimport { BreadcrumbRouterService } from './breadcrumb-router/breadcrumb-router.service';\r\nimport { SharedModule } from '../shared';\r\n\r\n@NgModule({\r\n imports: [CommonModule, RouterModule, SharedModule],\r\n exports: [\r\n BreadcrumbComponent,\r\n BreadcrumbItemComponent,\r\n BreadcrumbRouterComponent,\r\n ],\r\n declarations: [\r\n BreadcrumbRouterComponent,\r\n BreadcrumbItemComponent,\r\n BreadcrumbComponent,\r\n ],\r\n providers: [BreadcrumbRouterService],\r\n})\r\nexport class BreadcrumbModule { }\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-button-group',\r\n template: `<ng-content></ng-content>`,\r\n})\r\nexport class ButtonGroupComponent {\r\n\r\n /**\r\n * Size the component small or large.\r\n * @type { 'sm' | 'lg' }\r\n */\r\n @Input() size?: 'sm' | 'lg';\r\n /**\r\n * Create a set of buttons that appear vertically stacked rather than horizontally. Split button dropdowns are not supported here.\r\n * @type boolean\r\n */\r\n @Input() vertical?: boolean;\r\n /**\r\n * Default role attr for ButtonGroup. [docs]\r\n * @type string\r\n * @default 'group'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'group';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'btn-group': !this.vertical,\r\n 'btn-group-vertical': this.vertical,\r\n [`btn-group-${this.size}`]: !!this.size,\r\n };\r\n }\r\n\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-button-toolbar',\r\n template: `<ng-content></ng-content>`,\r\n})\r\nexport class ButtonToolbarComponent {\r\n /**\r\n * Default role attr for ButtonToolbar. [docs]\r\n * @type string\r\n * @default 'toolbar'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'toolbar';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'btn-toolbar': true,\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ButtonGroupComponent } from './button-group/button-group.component';\r\nimport { ButtonToolbarComponent } from './button-toolbar/button-toolbar.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n ButtonGroupComponent,\r\n ButtonToolbarComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n ButtonGroupComponent,\r\n ButtonToolbarComponent\r\n ]\r\n})\r\nexport class ButtonGroupModule { }\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { Colors } from '../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-callout, [cCallout]',\r\n template: `<ng-content></ng-content>`,\r\n styleUrls: ['./callout.component.scss']\r\n})\r\nexport class CalloutComponent {\r\n\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n callout: true,\r\n [`callout-${this.color}`]: !!this.color\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { CalloutComponent } from './callout.component';\r\n\r\n@NgModule({\r\n declarations: [CalloutComponent],\r\n exports: [CalloutComponent],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class CalloutModule { }\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { Colors, TextColors } from '../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-card, [c-card]',\r\n template: `<ng-content></ng-content>`\r\n})\r\nexport class CardComponent {\r\n\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Sets the text color context of the component to one of CoreUI’s themed colors.\r\n * @type TextColors\r\n */\r\n @Input() textColor?: TextColors;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n card: true,\r\n [`bg-${this.color}`]: !!this.color,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import {Component, HostBinding, Input} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-card-body, [c-card-body]',\r\n template: '<ng-content></ng-content>'\r\n})\r\nexport class CardBodyComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-body': true,\r\n };\r\n }\r\n}\r\n","import {Component, HostBinding, Input} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-card-footer, [c-card-footer]',\r\n template: '<ng-content></ng-content>'\r\n})\r\nexport class CardFooterComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-footer': true,\r\n };\r\n }\r\n}\r\n","import {Component, HostBinding, Input} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-card-group, [c-card-group]',\r\n template: '<ng-content></ng-content>'\r\n})\r\nexport class CardGroupComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-group': true\r\n };\r\n }\r\n}\r\n","import {Component, HostBinding, Input} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-card-header, [c-card-header]',\r\n template: '<ng-content></ng-content>',\r\n})\r\nexport class CardHeaderComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-header': true,\r\n };\r\n }\r\n}\r\n","import {Component, HostBinding} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-card-header-actions, [c-card-header-actions]',\r\n template: '<ng-content></ng-content>',\r\n})\r\nexport class CardHeaderActionsComponent {\r\n\r\n @HostBinding('class.card-header-actions') cardHeaderActions = true;\r\n\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cCardImg]'\r\n})\r\nexport class CardImgDirective {\r\n /**\r\n * Optionally orientate the image to the top, bottom, or make it overlaid across the card.\r\n * @type {'top | 'bottom'}\r\n */\r\n @Input('cCardImg') orientation?: 'top' | 'bottom';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n const suffix = !!this.orientation ? `-${this.orientation}` : '';\r\n return {\r\n [`card-img${suffix}`]: true\r\n };\r\n }\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-card-img-overlay',\r\n templateUrl: './card-img-overlay.component.html',\r\n styleUrls: ['./card-img-overlay.component.scss']\r\n})\r\nexport class CardImgOverlayComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-img-overlay': true\r\n };\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cCardLink]'\r\n})\r\nexport class CardLinkDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-link': true\r\n };\r\n }\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cCardSubtitle]'\r\n})\r\nexport class CardSubtitleDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-subtitle': true\r\n };\r\n }\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cCardText]'\r\n})\r\nexport class CardTextDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-text': true\r\n };\r\n }\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cCardTitle]'\r\n})\r\nexport class CardTitleDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'card-title': true\r\n };\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { CardComponent } from './card.component';\r\nimport { CardBodyComponent } from './card-body.component';\r\nimport { CardFooterComponent } from './card-footer.component';\r\nimport { CardHeaderComponent } from './card-header.component';\r\nimport { CardHeaderActionsComponent } from './card-header-actions.component';\r\nimport { CardGroupComponent } from './card-group.component';\r\nimport { CardImgDirective } from './card-img.directive';\r\nimport { CardLinkDirective } from './card-link.directive';\r\nimport { CardSubtitleDirective } from './card-subtitle.directive';\r\nimport { CardTextDirective } from './card-text.directive';\r\nimport { CardTitleDirective } from './card-title.directive';\r\nimport { CardImgOverlayComponent } from './card-img-overlay/card-img-overlay.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n CardComponent,\r\n CardBodyComponent,\r\n CardFooterComponent,\r\n CardGroupComponent,\r\n CardHeaderComponent,\r\n CardHeaderActionsComponent,\r\n CardImgDirective,\r\n CardImgOverlayComponent,\r\n CardLinkDirective,\r\n CardSubtitleDirective,\r\n CardTextDirective,\r\n CardTitleDirective,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n CardComponent,\r\n CardBodyComponent,\r\n CardFooterComponent,\r\n CardGroupComponent,\r\n CardHeaderComponent,\r\n CardHeaderActionsComponent,\r\n CardImgDirective,\r\n CardImgOverlayComponent,\r\n CardLinkDirective,\r\n CardSubtitleDirective,\r\n CardTextDirective,\r\n CardTitleDirective,\r\n ]\r\n})\r\nexport class CardModule { }\r\n","import { Injectable, OnDestroy } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\ninterface IIntersectionObserverInit {\r\n root?: Element | null;\r\n rootMargin?: string;\r\n threshold?: number | number[];\r\n}\r\n\r\n@Injectable()\r\nexport class IntersectionService implements OnDestroy {\r\n\r\n constructor() { }\r\n\r\n private intersecting = new BehaviorSubject<boolean>(false);\r\n intersecting$ = this.intersecting.asObservable();\r\n\r\n private intersectionObserver!: IntersectionObserver;\r\n private hostElement!: { nativeElement: Element; };\r\n\r\n private defaultObserverOptions: IIntersectionObserverInit = {\r\n root: null,\r\n rootMargin: '0px',\r\n threshold: 0.2\r\n };\r\n\r\n createIntersectionObserver(hostElement: { nativeElement: Element; }, observerOptions = this.defaultObserverOptions) {\r\n\r\n const options = { ...this.defaultObserverOptions, ...observerOptions }\r\n\r\n this.hostElement = hostElement;\r\n\r\n const handleIntersect = (entries: any[], observer: any) => {\r\n entries.forEach((entry: any) => {\r\n this.intersecting.next(entry.isIntersecting);\r\n });\r\n };\r\n\r\n this.intersectionObserver = new IntersectionObserver(handleIntersect, options);\r\n this.intersectionObserver.observe(hostElement.nativeElement);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.intersectionObserver?.unobserve(this.hostElement?.nativeElement);\r\n }\r\n}\r\n","import { ElementRef, Injectable, Renderer2 } from '@angular/core';\r\nimport { Triggers } from '../coreui.types';\r\n\r\nexport interface IListenersConfig {\r\n hostElement: ElementRef,\r\n trigger?: Triggers | Triggers[],\r\n callbackOn?: () => void,\r\n callbackOff?: () => void,\r\n callbackToggle?: () => void,\r\n}\r\n\r\n@Injectable()\r\nexport class ListenersService {\r\n\r\n private listeners: Map<string, () => void> = new Map();\r\n\r\n constructor(\r\n private renderer: Renderer2\r\n ) {}\r\n\r\n setListeners({hostElement, trigger, callbackOn, callbackOff, callbackToggle}: IListenersConfig): void {\r\n const host = hostElement.nativeElement;\r\n const triggers = Array.isArray(trigger)\r\n ? trigger\r\n : trigger?.split(' ') ?? [];\r\n\r\n if (triggers?.includes('click')) {\r\n typeof callbackToggle === 'function' && this.listeners.set(\r\n 'click',\r\n this.renderer.listen(host, 'click', callbackToggle)\r\n );\r\n }\r\n if (triggers?.includes('focus')) {\r\n typeof callbackOn === 'function' && this.listeners.set(\r\n 'focus',\r\n this.renderer.listen(host, 'focus', callbackOn)\r\n );\r\n }\r\n if (triggers?.includes('click') || triggers?.includes('focus')) {\r\n typeof callbackOff === 'function' && this.listeners.set(\r\n 'blur',\r\n this.renderer.listen(host, 'blur', callbackOff)\r\n );\r\n }\r\n if (triggers?.includes('hover')) {\r\n typeof callbackOn === 'function' && this.listeners.set(\r\n 'mouseenter',\r\n this.renderer.listen(host, 'mouseenter', callbackOn),\r\n );\r\n typeof callbackOff === 'function' && this.listeners.set(\r\n 'mouseleave',\r\n this.renderer.listen(host, 'mouseleave', callbackOff)\r\n );\r\n }\r\n }\r\n\r\n clearListeners(): void {\r\n this.listeners.forEach((unListen, key) => {\r\n unListen();\r\n });\r\n this.listeners.forEach((unListen, key) => {\r\n // @ts-ignore\r\n this.listeners.set(key, null);\r\n });\r\n this.listeners.clear();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nexport interface ICarouselIndex {\r\n active?: number;\r\n interval?: number;\r\n lastItemIndex?: number;\r\n}\r\n\r\n@Injectable()\r\nexport class CarouselService {\r\n private carouselIndex = new BehaviorSubject<ICarouselIndex>({});\r\n carouselIndex$ = this.carouselIndex.asObservable();\r\n\r\n constructor() {}\r\n\r\n setIndex(index: ICarouselIndex): void {\r\n this.carouselIndex.next(index);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ICarouselState } from './carousel-state.type';\r\nimport { CarouselService } from './carousel.service';\r\nimport { CarouselItemComponent } from './carousel-item/carousel-item.component';\r\n\r\n@Injectable()\r\nexport class CarouselState {\r\n private _state: ICarouselState = {\r\n activeItemIndex: -1,\r\n animate: true,\r\n items: [],\r\n direction: 'next',\r\n transition: 'slide'\r\n };\r\n\r\n constructor(private carouselService: CarouselService) {}\r\n\r\n get state(): ICarouselState {\r\n return this._state;\r\n }\r\n\r\n set state(state) {\r\n const prevState = { ...this._state };\r\n const nextState = { ...this._state, ...state };\r\n this._state = nextState;\r\n if (prevState.activeItemIndex !== nextState.activeItemIndex) {\r\n const activeItemIndex = this.state.activeItemIndex || 0;\r\n const itemInterval = this.state.items && this.state.items[activeItemIndex]?.interval || -1;\r\n this.carouselService.setIndex({\r\n active: nextState.activeItemIndex,\r\n interval: itemInterval,\r\n lastItemIndex: (nextState.items?.length ?? 0) - 1\r\n });\r\n }\r\n }\r\n\r\n setItems(newItems: any): void {\r\n if (newItems.length) {\r\n const itemsArray = newItems.toArray();\r\n itemsArray.forEach((item: CarouselItemComponent, i: number) => {\r\n item.index = i;\r\n });\r\n this.state = {\r\n items: itemsArray\r\n };\r\n } else {\r\n this.reset();\r\n }\r\n }\r\n\r\n setNextIndex(nextIndex: any): void {\r\n this.carouselService.setIndex(nextIndex);\r\n }\r\n\r\n direction(direction: 'next' | 'prev' = 'next'): number {\r\n this.state = { direction };\r\n const { activeItemIndex = -1, items } = this.state;\r\n const itemsCount = items?.length ?? 0;\r\n if (itemsCount > 0) {\r\n return direction === 'next' ?\r\n (activeItemIndex === itemsCount - 1 ? 0 : activeItemIndex + 1) :\r\n (activeItemIndex === 0 ? itemsCount - 1 : activeItemIndex - 1);\r\n } else {\r\n return 0;\r\n }\r\n }\r\n\r\n reset(): void {\r\n this.state = {\r\n activeItemIndex: -1,\r\n animate: true,\r\n items: [],\r\n direction: 'next',\r\n transition: 'slide'\r\n };\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class CarouselConfig {\r\n /* Animate transition of slides */\r\n activeIndex = 0;\r\n /* Animate transition of slides */\r\n animate = true;\r\n /* Darken controls, indicators, and captions */\r\n dark? = false;\r\n /* Default direction of auto changing of slides */\r\n direction: 'next' | 'prev' = 'next';\r\n /* Default interval of auto changing of slides */\r\n interval = 3000;\r\n}\r\n","import {\r\n AfterContentInit,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n Inject,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output\r\n} from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { IntersectionService } from '../../services/intersection.service';\r\nimport { IListenersConfig, ListenersService } from '../../services/listeners.service';\r\n\r\nimport { CarouselState } from '../carousel-state';\r\nimport { CarouselService } from '../carousel.service';\r\nimport { CarouselConfig } from '../carousel.config';\r\nimport { Triggers } from '../../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-carousel',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./carousel.component.scss'],\r\n providers: [CarouselService, CarouselState, CarouselConfig, IntersectionService, ListenersService]\r\n})\r\nexport class CarouselComponent implements OnInit, OnDestroy, AfterContentInit {\r\n /**\r\n * Index of the active item.\r\n * @type number\r\n */\r\n @Input() activeIndex = 0;\r\n /**\r\n * Carousel automatically starts cycle items.\r\n * @type boolean\r\n */\r\n @Input() animate = true;\r\n /**\r\n * Add darker controls, indicators, and captions.\r\n * @type boolean\r\n */\r\n @Input() dark?: boolean;\r\n /**\r\n * Carousel direction. [docs]\r\n * @type {'next' | 'prev'}\r\n */\r\n @Input() direction: 'next' | 'prev' = 'next';\r\n /**\r\n * The amount of time to delay between automatically cycling an item. If false, carousel will not automatically cycle.\r\n * @type number\r\n * @default 0\r\n */\r\n @Input() interval = 0;\r\n /**\r\n * Sets which event handlers you’d like provided to your pause prop. You can specify one trigger or an array of them.\r\n * @type {'hover' | 'focus' | 'click'}\r\n */\r\n @Input() pause: Triggers | Triggers[] | false = 'hover';\r\n /**\r\n * Set type of the transition.\r\n * @type {'slide' | 'crossfade'}\r\n * @default 'slide'\r\n */\r\n @Input() transition: 'slide' | 'crossfade' = 'slide';\r\n /**\r\n * Set whether the carousel should cycle continuously or have hard stops.\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input() wrap = true;\r\n /**\r\n * Event emitted on carousel item change. [docs]\r\n * @type number\r\n */\r\n @Output() itemChange = new EventEmitter<number>();\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n carousel: true,\r\n slide: true,\r\n 'carousel-dark': !!this.dark,\r\n 'carousel-fade': this.transition === 'crossfade'\r\n };\r\n }\r\n\r\n private carouselIndexSubscription?: Subscription;\r\n private timerId!: any;\r\n private intersectingSubscription?: Subscription;\r\n private activeItemInterval = 0;\r\n\r\n constructor(\r\n @Inject(CarouselConfig) private config: CarouselConfig,\r\n private hostElement: ElementRef,\r\n private carouselService: CarouselService,\r\n private carouselState: CarouselState,\r\n private intersectionService: IntersectionService,\r\n private listenersService: ListenersService\r\n ) {\r\n Object.assign(this, config);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.carouselStateSubscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.clearListeners();\r\n this.carouselStateSubscribe(false);\r\n this.intersectionServiceSubscribe(false);\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.intersectionService.createIntersectionObserver(this.hostElement);\r\n this.intersectionServiceSubscribe();\r\n this.carouselState.state = { activeItemIndex: this.activeIndex, animate: this.animate };\r\n this.setListeners();\r\n }\r\n\r\n private setListeners(): void {\r\n const config: IListenersConfig = {\r\n hostElement: this.hostElement,\r\n trigger: this.pause || [],\r\n callbackOff: () => {\r\n this.setTimer();\r\n },\r\n callbackOn: () => {\r\n this.resetTimer();\r\n }\r\n };\r\n this.listenersService.setListeners(config);\r\n }\r\n\r\n private clearListeners(): void {\r\n this.listenersService.clearListeners();\r\n }\r\n\r\n set visible(value) {\r\n this._visible = value;\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible: boolean = true;\r\n\r\n setTimer(): void {\r\n const interval = this.activeItemInterval || 0;\r\n this.resetTimer();\r\n if (interval > 0) {\r\n this.timerId = setTimeout(() => {\r\n const nextIndex = this.carouselState.direction(this.direction);\r\n this.carouselState.state = { activeItemIndex: nextIndex };\r\n }, interval);\r\n }\r\n }\r\n\r\n resetTimer(): void {\r\n clearTimeout(this.timerId);\r\n }\r\n\r\n private carouselStateSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.carouselIndexSubscription = this.carouselService.carouselIndex$.subscribe((nextItem) => {\r\n if ('active' in nextItem) {\r\n this.itemChange.emit(nextItem.active);\r\n }\r\n this.activeItemInterval = typeof nextItem.interval === 'number' && nextItem.interval > -1 ? nextItem.interval : this.interval;\r\n const isLastItem = ((nextItem.active === nextItem.lastItemIndex) && this.direction === 'next') || ((nextItem.active === 0) && this.direction === 'prev');\r\n !this.wrap && isLastItem ? this.resetTimer() : this.setTimer();\r\n });\r\n } else {\r\n this.carouselIndexSubscription?.unsubscribe();\r\n }\r\n }\r\n\r\n private intersectionServiceSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.intersectingSubscription = this.intersectionService.intersecting$.subscribe(isIntersecting => {\r\n this.visible = isIntersecting;\r\n isIntersecting ? this.setTimer() : this.resetTimer();\r\n });\r\n } else {\r\n this.intersectingSubscription?.unsubscribe();\r\n }\r\n }\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-carousel-caption',\r\n template: `<ng-content></ng-content>`,\r\n styleUrls: ['./carousel-caption.component.scss']\r\n})\r\nexport class CarouselCaptionComponent {\r\n\r\n @HostBinding('class.carousel-caption') carouselCaptionClass = true;\r\n\r\n constructor() { }\r\n\r\n}\r\n","import {\r\n AfterViewInit,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n ViewChild\r\n} from '@angular/core';\r\n\r\nimport { CarouselState } from '../carousel-state';\r\n\r\n@Component({\r\n selector: 'c-carousel-control',\r\n templateUrl: './carousel-control.component.html',\r\n styleUrls: ['./carousel-control.component.scss'],\r\n})\r\nexport class CarouselControlComponent implements AfterViewInit {\r\n\r\n constructor(\r\n private changeDetector: ChangeDetectorRef,\r\n private carouselState: CarouselState,\r\n ) {}\r\n\r\n private _caption?: string;\r\n /**\r\n * Carousel control caption. [docs]\r\n * @type string\r\n */\r\n @Input()\r\n set caption(value) {\r\n this._caption = value;\r\n }\r\n get caption(): string {\r\n return !!this._caption ? this._caption : this.direction === 'prev' ? 'Previous' : 'Next';\r\n }\r\n /**\r\n * Carousel control direction. [docs]\r\n * @type {'next' | 'prev'}\r\n */\r\n @Input() direction: 'prev' | 'next' = 'next';\r\n\r\n @HostBinding('attr.role')\r\n get hostRole(): string {\r\n return 'button';\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): string {\r\n return `carousel-control-${this.direction}`;\r\n }\r\n\r\n get carouselControlIconClass(): string {\r\n return `carousel-control-${this.direction}-icon`;\r\n }\r\n\r\n @ViewChild('content') content?: ElementRef;\r\n\r\n hasContent = true;\r\n\r\n @HostListener('keyup', ['$event'])\r\n onKeyUp($event: KeyboardEvent): void {\r\n if ($event.key === 'Enter') {\r\n this.play();\r\n }\r\n if ($event.key === 'ArrowLeft') {\r\n this.play('prev');\r\n }\r\n if ($event.key === 'ArrowRight') {\r\n this.play('next');\r\n }\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n public onClick($event: MouseEvent): void {\r\n this.play();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.hasContent = this.content?.nativeElement.childNodes.length ?? false;\r\n this.changeDetector.detectChanges();\r\n }\r\n\r\n private play(direction = this.direction): void {\r\n const nextIndex = this.carouselState.direction(direction);\r\n this.carouselState.state = { activeItemIndex: nextIndex };\r\n }\r\n}\r\n","<div #content *ngIf = \"hasContent; else default\"><ng-content></ng-content></div>\r\n<ng-template #default>\r\n <span [class]=\"carouselControlIconClass\" [attr.aria-label]=\"direction\" [attr.aria-hidden]=\"true\"></span>\r\n <span class=\"visually-hidden\">{{caption}}</span>\r\n</ng-template>\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { CarouselState } from '../carousel-state';\r\nimport { CarouselService } from '../carousel.service';\r\n\r\n@Component({\r\n selector: 'c-carousel-indicators',\r\n templateUrl: './carousel-indicators.component.html',\r\n styleUrls: ['./carousel-indicators.component.scss'],\r\n})\r\nexport class CarouselIndicatorsComponent implements OnInit, OnDestroy {\r\n items: (number | undefined)[] = [];\r\n active = 0;\r\n\r\n private carouselIndexSubscription?: Subscription;\r\n\r\n constructor(\r\n private carouselService: CarouselService,\r\n private carouselState: CarouselState\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.carouselStateSubscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.carouselStateSubscribe(false);\r\n }\r\n\r\n onClick(index: number): void {\r\n if (index !== this.active) {\r\n const direction = index < this.active ? 'prev' : 'next';\r\n this.carouselState.state = { direction, activeItemIndex: index };\r\n }\r\n }\r\n\r\n private carouselStateSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.carouselIndexSubscription = this.carouselService.carouselIndex$.subscribe((nextIndex) => {\r\n this.items = this.carouselState?.state?.items?.map(item => item.index) ?? [];\r\n if ('active' in nextIndex) {\r\n this.active = nextIndex.active ?? 0;\r\n }\r\n });\r\n } else {\r\n this.carouselIndexSubscription?.unsubscribe();\r\n }\r\n }\r\n}\r\n","<div class=\"carousel-indicators\">\r\n <ng-container *ngFor=\"let item of items; let i=index\">\r\n <button [attr.data-coreui-target]=\"i\" type=\"button\" (click)=\"onClick(i)\" [class]=\"{active: active === i}\" [attr.aria-current]=\"active === i\"></button>\r\n </ng-container>\r\n</div>\r\n","import {\r\n animate,\r\n group,\r\n query,\r\n state,\r\n style,\r\n transition,\r\n trigger,\r\n} from '@angular/animations';\r\n\r\nexport function toLeft(fromState: any, toState: any): boolean {\r\n return toState.left === true;\r\n}\r\nexport function toRight(fromState: any, toState: any): boolean {\r\n return toState.left === false;\r\n}\r\n\r\nexport const slideAnimation = trigger('slideAnimation', [\r\n state(\r\n '*',\r\n style({ transform: 'translateX(0)', display: 'block', opacity: 1 })\r\n ),\r\n transition(\r\n toLeft,\r\n group([\r\n query(\r\n ':leave',\r\n [\r\n animate(\r\n '0.6s ease-in-out',\r\n style({\r\n transform: 'translateX(-100%)',\r\n })\r\n ),\r\n ],\r\n { optional: true }\r\n ),\r\n query(\r\n ':enter',\r\n [\r\n style({\r\n transform: 'translateX(100%)',\r\n }),\r\n animate('0.6s ease-in-out', style('*')),\r\n ],\r\n { optional: true }\r\n ),\r\n ])\r\n ),\r\n transition(\r\n toRight,\r\n group([\r\n query(\r\n ':enter',\r\n [\r\n style({\r\n transform: 'translateX(-100%)',\r\n }),\r\n animate('0.6s ease-in-out', style('*')),\r\n ],\r\n { optional: true }\r\n ),\r\n query(\r\n ':leave',\r\n [\r\n animate(\r\n '0.6s ease-in-out',\r\n style({\r\n transform: 'translateX(100%)',\r\n })\r\n ),\r\n ],\r\n { optional: true }\r\n ),\r\n ])\r\n ),\r\n]);\r\n\r\nexport const fadeAnimation = trigger('fadeAnimation', [\r\n state(\r\n '*',\r\n style({ zIndex: 1, opacity: 1 })\r\n ),\r\n transition(\r\n toLeft,\r\n group([\r\n query(\r\n ':leave',\r\n [\r\n animate(\r\n '0.6s ease-in-out',\r\n style({\r\n zIndex: 0,\r\n opacity: 0,\r\n })\r\n ),\r\n ],\r\n { optional: true }\r\n ),\r\n query(\r\n ':enter',\r\n [\r\n style({\r\n zIndex: 1,\r\n opacity: 1\r\n }),\r\n animate('0.6s ease-in-out', style('*')),\r\n ],\r\n { optional: true }\r\n ),\r\n ])\r\n ),\r\n transition(\r\n toRight,\r\n group([\r\n query(\r\n ':enter',\r\n [\r\n style({\r\n zIndex: 1,\r\n opacity: 1\r\n }),\r\n animate('0.6s ease-in-out', style('*')),\r\n ],\r\n { optional: true }\r\n ),\r\n query(\r\n ':leave',\r\n [\r\n animate(\r\n '0.6s ease-in-out',\r\n style({\r\n zIndex: 0,\r\n opacity: 0,\r\n })\r\n ),\r\n ],\r\n { optional: true }\r\n ),\r\n ])\r\n ),\r\n]);\r\n","import { AfterViewInit, ChangeDetectorRef, Component, HostBinding, Input, OnDestroy } from '@angular/core';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { CarouselService } from '../carousel.service';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-carousel-item',\r\n templateUrl: './carousel-item.component.html',\r\n styleUrls: ['./carousel-item.component.scss']\r\n})\r\nexport class CarouselItemComponent implements OnDestroy, AfterViewInit {\r\n\r\n static ngAcceptInputType_active: BooleanInput;\r\n\r\n index?: number;\r\n private carouselIndexSubscription?: Subscription;\r\n\r\n /**\r\n * @ignore\r\n */\r\n @Input()\r\n set active(value) {\r\n this._active = coerceBooleanProperty(value);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n get active(): boolean {\r\n return this._active;\r\n }\r\n private _active = false;\r\n\r\n /**\r\n * Time delay before cycling to next item. If -1, uses carousel interval value.\r\n * @type number\r\n * @default -1\r\n */\r\n @Input() interval: number = -1;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'carousel-item': true,\r\n active: this.active\r\n };\r\n }\r\n\r\n constructor(\r\n private carouselService: CarouselService,\r\n private changeDetectorRef: ChangeDetectorRef\r\n ) {}\r\n\r\n ngOnDestroy(): void {\r\n this.carouselStateSubscribe(false);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n setTimeout(() => {\r\n this.carouselStateSubscribe();\r\n });\r\n }\r\n\r\n private carouselStateSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.carouselIndexSubscription = this.carouselService.carouselIndex$.subscribe((nextIndex) => {\r\n if ('active' in nextIndex) {\r\n this.active = nextIndex.active === this.index;\r\n }\r\n });\r\n } else {\r\n this.carouselIndexSubscription?.unsubscribe();\r\n }\r\n }\r\n}\r\n","<ng-content *ngIf=\"active\"></ng-content>\r\n","import {\r\n AfterContentChecked,\r\n AfterContentInit,\r\n Component,\r\n ContentChildren,\r\n HostBinding,\r\n OnInit,\r\n QueryList,\r\n} from '@angular/core';\r\n\r\nimport { slideAnimation, fadeAnimation } from '../carousel.animation';\r\nimport { CarouselItemComponent } from '../carousel-item/carousel-item.component';\r\nimport { CarouselState } from '../carousel-state';\r\n\r\n@Component({\r\n selector: 'c-carousel-inner',\r\n templateUrl: './carousel-inner.component.html',\r\n styleUrls: ['./carousel-inner.component.scss'],\r\n animations: [ slideAnimation, fadeAnimation ]\r\n})\r\nexport class CarouselInnerComponent implements AfterContentInit, AfterContentChecked {\r\n @HostBinding('class.carousel-inner') carouselInnerClass = true;\r\n\r\n @ContentChildren(CarouselItemComponent) private contentItems!: QueryList<CarouselItemComponent>;\r\n private prevContentItems!: QueryList<CarouselItemComponent>;\r\n activeIndex?: number;\r\n animate?: boolean;\r\n slide = {left: true};\r\n transition = 'slide';\r\n\r\n constructor(private carouselState: CarouselState) {}\r\n\r\n ngAfterContentInit(): void {\r\n this.setItems();\r\n }\r\n\r\n ngAfterContentChecked(): void {\r\n this.setItems();\r\n const state = this.carouselState?.state;\r\n const nextIndex = state?.activeItemIndex;\r\n const nextDirection = state?.direction;\r\n if (this.activeIndex !== nextIndex) {\r\n this.animate = state?.animate;\r\n this.slide = {left: nextDirection === 'next'};\r\n this.activeIndex = state?.activeItemIndex;\r\n this.transition = state?.transition ?? 'slide';\r\n }\r\n }\r\n\r\n setItems(): void {\r\n if (this.prevContentItems !== this.contentItems) {\r\n this.prevContentItems = this.contentItems;\r\n this.carouselState.setItems(this.contentItems);\r\n }\r\n }\r\n}\r\n","<div [@slideAnimation]=\"slide\" [@.disabled]=\"!animate\">\r\n <ng-content></ng-content>\r\n</div>\r\n<!--todo-->\r\n<!--<div [@fadeAnimation]=\"slide\" [@.disabled]=\"!animate\" >-->\r\n<!-- <ng-content></ng-content>-->\r\n<!--</div>-->\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { CarouselComponent } from './carousel/carousel.component';\r\nimport { CarouselCaptionComponent } from './carousel-caption/carousel-caption.component';\r\nimport { CarouselControlComponent } from './carousel-control/carousel-control.component';\r\nimport { CarouselIndicatorsComponent } from './carousel-indicators/carousel-indicators.component';\r\nimport { CarouselInnerComponent } from './carousel-inner/carousel-inner.component';\r\nimport { CarouselItemComponent } from './carousel-item/carousel-item.component';\r\nimport { CarouselService } from './carousel.service';\r\nimport { CarouselState } from './carousel-state';\r\nimport { CarouselConfig } from './carousel.config';\r\n\r\n@NgModule({\r\n declarations: [\r\n CarouselComponent,\r\n CarouselCaptionComponent,\r\n CarouselControlComponent,\r\n CarouselIndicatorsComponent,\r\n CarouselInnerComponent,\r\n CarouselItemComponent,\r\n ],\r\n imports: [CommonModule],\r\n providers: [CarouselService, CarouselState, CarouselConfig],\r\n exports: [\r\n CarouselComponent,\r\n CarouselCaptionComponent,\r\n CarouselControlComponent,\r\n CarouselIndicatorsComponent,\r\n CarouselInnerComponent,\r\n CarouselItemComponent,\r\n ],\r\n})\r\nexport class CarouselModule {\r\n static forRoot(): ModuleWithProviders<CarouselModule> {\r\n return { ngModule: CarouselModule, providers: [] };\r\n }\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cDropdownDivider]'\r\n})\r\nexport class DropdownDividerDirective {\r\n\r\n constructor() {\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'dropdown-divider': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cDropdownHeader]'\r\n})\r\nexport class DropdownHeaderDirective {\r\n\r\n constructor() {\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'dropdown-header': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nexport interface IDropdownState {\r\n visible?: boolean | 'toggle';\r\n dropdown?: any;\r\n}\r\n\r\n@Injectable()\r\nexport class DropdownService {\r\n\r\n private dropdownState = new BehaviorSubject<any>({});\r\n dropdownState$ = this.dropdownState.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n toggle(state: IDropdownState): void {\r\n this.dropdownState.next(state);\r\n }\r\n}\r\n","import { Directive, ElementRef, HostBinding, Input, OnDestroy, OnInit, } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { DropdownService } from '../dropdown.service';\r\n\r\n@Directive({\r\n selector: '[cDropdownMenu]',\r\n exportAs: 'cDropdownMenu',\r\n})\r\nexport class DropdownMenuDirective implements OnInit, OnDestroy {\r\n static ngAcceptInputType_dark: BooleanInput;\r\n\r\n constructor(\r\n public elementRef: ElementRef,\r\n private dropdownService: DropdownService\r\n ) {}\r\n\r\n /**\r\n * Set alignment of dropdown menu.\r\n * @type {'start' | 'end' }\r\n */\r\n @Input() alignment?: 'start' | 'end' | string;\r\n\r\n /**\r\n * Toggle the visibility of dropdown menu component.\r\n */\r\n @Input() visible = false;\r\n\r\n /**\r\n * Sets a darker color scheme to match a dark navbar.\r\n */\r\n @Input()\r\n get dark(): boolean {\r\n return this._dark;\r\n }\r\n set dark(value: boolean) {\r\n this._dark = coerceBooleanProperty(value);\r\n }\r\n private _dark = false;\r\n\r\n private dropdownStateSubscription!: Subscription;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'dropdown-menu': true,\r\n 'dropdown-menu-dark': this.dark,\r\n [`dropdown-menu-${this.alignment}`]: !!this.alignment,\r\n show: this.visible,\r\n };\r\n }\r\n\r\n @HostBinding('style')\r\n get hostStyles() {\r\n // workaround for popper position calculate (see also: dropdown.component)\r\n return {\r\n visibility: this.visible ? null : '',\r\n display: this.visible ? null : '',\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dropdownStateSubscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.dropdownStateSubscribe(false);\r\n }\r\n\r\n private dropdownStateSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.dropdownStateSubscription =\r\n this.dropdownService.dropdownState$.subscribe((state) => {\r\n if ('visible' in state) {\r\n this.visible =\r\n state.visible === 'toggle' ? !this.visible : state.visible;\r\n }\r\n });\r\n } else {\r\n this.dropdownStateSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","import {\r\n AfterContentInit,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChild,\r\n Directive,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Inject,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n OnInit,\r\n Optional,\r\n Output,\r\n Renderer2\r\n} from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { Subscription } from 'rxjs';\r\nimport { createPopper, Instance, Options, Placement } from '@popperjs/core';\r\n\r\nimport { DropdownService } from '../dropdown.service';\r\nimport { DropdownMenuDirective } from '../dropdown-menu/dropdown-menu.directive';\r\n\r\n@Directive({\r\n selector: '[cDropdownToggle]',\r\n exportAs: 'cDropdownToggle',\r\n})\r\nexport class DropdownToggleDirective {\r\n\r\n static ngAcceptInputType_split: BooleanInput;\r\n static ngAcceptInputType_popper: BooleanInput;\r\n\r\n /**\r\n * Enables pseudo element caret on toggler.\r\n * @type boolean\r\n */\r\n @Input() caret = true;\r\n\r\n /**\r\n * Create split button dropdowns with virtually the same markup as single button dropdowns, but with the addition of `.dropdown-toggle-split` class for proper spacing around the dropdown caret.\r\n * @type boolean\r\n */\r\n @Input()\r\n set split(value: boolean) {\r\n this._split = coerceBooleanProperty(value);\r\n }\r\n get split(): boolean {\r\n return this._split;\r\n }\r\n private _split = false;\r\n\r\n constructor(\r\n public elementRef: ElementRef,\r\n private dropdownService: DropdownService,\r\n @Optional() public dropdown?: DropdownComponent\r\n ) {}\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'dropdown-toggle': this.caret,\r\n 'dropdown-toggle-split': this.split,\r\n };\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n public onClick($event: MouseEvent): void {\r\n $event.preventDefault();\r\n this.dropdownService.toggle({visible: 'toggle', dropdown: this.dropdown});\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'c-dropdown',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./dropdown.component.scss'],\r\n exportAs: 'cDropdown',\r\n providers: [DropdownService],\r\n})\r\nexport class DropdownComponent implements AfterContentInit, OnDestroy, OnInit {\r\n\r\n static ngAcceptInputType_dark: BooleanInput;\r\n static ngAcceptInputType_visible: BooleanInput;\r\n\r\n /**\r\n * Set alignment of dropdown menu.\r\n * @type {'start' | 'end' | { xs: 'start' | 'end' } | { sm: 'start' | 'end' } | { md: 'start' | 'end' } | { lg: 'start' | 'end' } | { xl: 'start' | 'end'} | { xxl: 'start' | 'end'}}\r\n */\r\n @Input() alignment?: string;\r\n\r\n @Input() autoClose: boolean | 'inside' | 'outside' = true;\r\n\r\n /**\r\n * Sets a darker color scheme to match a dark navbar.\r\n * @type boolean\r\n * @default false\r\n */\r\n @Input()\r\n set dark(value: boolean) {\r\n this._dark = coerceBooleanProperty(value);\r\n };\r\n get dark() {\r\n return this._dark;\r\n }\r\n private _dark = false;\r\n\r\n /**\r\n * Sets a specified direction and location of the dropdown menu.\r\n * @type 'dropup' | 'dropend' | 'dropstart'\r\n */\r\n @Input() direction?: 'dropup' | 'dropend' | 'dropstart';\r\n\r\n /**\r\n * Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property.\r\n * @type Placement\r\n */\r\n @Input() placement: Placement = 'bottom-start';\r\n\r\n /**\r\n * If you want to disable dynamic positioning set this property to `false`.\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input()\r\n set popper(value: boolean) {\r\n this._popper = coerceBooleanProperty(value);\r\n }\r\n get popper(): boolean {\r\n return this._popper;\r\n }\r\n private _popper = true;\r\n\r\n /**\r\n * Optional popper Options object, placement prop takes precedence over\r\n * @type Partial<Options>\r\n */\r\n @Input()\r\n set popperOptions(value: Partial<Options>) {\r\n this._popperOptions = { ...this._popperOptions, ...value };\r\n };\r\n get popperOptions(): Partial<Options> {\r\n let placement = this.placement;\r\n switch (this.direction) {\r\n case 'dropup': {\r\n placement = 'top-start';\r\n break;\r\n }\r\n case 'dropend': {\r\n placement = 'right-start';\r\n break;\r\n }\r\n case 'dropstart': {\r\n placement = 'left-start';\r\n break;\r\n }\r\n }\r\n if (this.alignment === 'end') {\r\n placement = 'bottom-end';\r\n }\r\n this._popperOptions = { ...this._popperOptions, placement: placement };\r\n return this._popperOptions;\r\n }\r\n\r\n private _popperOptions: Partial<Options> = {\r\n placement: this.placement,\r\n modifiers: [],\r\n strategy: 'absolute'\r\n };\r\n\r\n /**\r\n * Set the dropdown variant to an btn-group, dropdown, input-group, and nav-item.\r\n */\r\n @Input() variant?: 'btn-group' | 'dropdown' | 'input-group' | 'nav-item' = 'dropdown';\r\n\r\n /**\r\n * Toggle the visibility of dropdown menu component.\r\n * @type boolean\r\n * @default false\r\n */\r\n @Input()\r\n set visible(value: boolean) {\r\n const _value = coerceBooleanProperty(value);\r\n this.activeTrap = _value;\r\n this._visible = _value;\r\n _value ? this.createPopperInstance() : this.destroyPopperInstance();\r\n this.visibleChange.emit(_value);\r\n }\r\n get visible(): boolean {\r\n return this._visible;\r\n }\r\n private _visible = false;\r\n\r\n @Output() visibleChange: EventEmitter<boolean> = new EventEmitter<boolean>();\r\n\r\n dropdownContext = {$implicit: this.visible};\r\n @ContentChild(DropdownToggleDirective) _toggler!: DropdownToggleDirective;\r\n @ContentChild(DropdownMenuDirective) _menu!: DropdownMenuDirective;\r\n\r\n public activeTrap = false;\r\n\r\n private dropdownStateSubscription!: Subscription;\r\n private popperInstance!: Instance | undefined;\r\n private listeners: (() => void)[] = [];\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private ngZone: NgZone,\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private dropdownService: DropdownService\r\n ) {}\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n dropdown:\r\n (this.variant === 'dropdown' || this.variant === 'nav-item') &&\r\n !this.direction,\r\n [`${this.direction}`]: !!this.direction,\r\n 'btn-group': this.variant === 'btn-group',\r\n 'nav-item': this.variant === 'nav-item',\r\n 'input-group': this.variant === 'input-group',\r\n show: this.visible,\r\n };\r\n }\r\n\r\n // todo: find better solution\r\n @HostBinding('style')\r\n get hostStyle(): any {\r\n return this.variant === 'input-group' ? {display: 'contents'} : {};\r\n }\r\n\r\n private clickedTarget!: HTMLElement;\r\n\r\n @HostListener('click', ['$event'])\r\n private onHostClick($event: MouseEvent): void {\r\n this.clickedTarget = $event.target as HTMLElement;\r\n }\r\n\r\n dropdownStateSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.dropdownStateSubscription =\r\n this.dropdownService.dropdownState$.subscribe((state) => {\r\n if (this === state.dropdown) {\r\n if ('visible' in state) {\r\n state?.visible === 'toggle'\r\n ? this.toggleDropdown()\r\n : (this.visible = state.visible);\r\n }\r\n }\r\n });\r\n } else {\r\n this.dropdownStateSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n toggleDropdown(): void {\r\n this.visible = !this.visible;\r\n }\r\n\r\n onClick(event: any): void {\r\n if (!this._toggler?.elementRef.nativeElement.contains(event.target?.closest('[cDropdownToggle]'))) {\r\n this.toggleDropdown();\r\n }\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n if (this.variant === 'nav-item') {\r\n this.renderer.addClass(this._toggler.elementRef.nativeElement, 'nav-link');\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dropdownStateSubscribe();\r\n this.setVisibleState(this.visible);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.clearListeners();\r\n this.dropdownStateSubscribe(false);\r\n this.destroyPopperInstance();\r\n }\r\n\r\n setVisibleState(value: boolean): void {\r\n this.dropdownService.toggle({visible: value, dropdown: this});\r\n }\r\n\r\n // todo: turn off popper in navbar-nav\r\n createPopperInstance(): void {\r\n if (this._toggler && this._menu) {\r\n this.ngZone.runOutsideAngular(() => {\r\n // workaround for popper position calculate (see also: dropdown-menu.component)\r\n this._menu.elementRef.nativeElement.style.visibility = 'hidden';\r\n this._menu.elementRef.nativeElement.style.display = 'block';\r\n if (this.popper) {\r\n this.popperInstance = createPopper(\r\n this._toggler.elementRef.nativeElement,\r\n this._menu.elementRef.nativeElement,\r\n {...this.popperOptions}\r\n );\r\n }\r\n this.ngZone.run(() => {\r\n this.setListeners();\r\n this.changeDetectorRef.detectChanges();\r\n });\r\n });\r\n }\r\n }\r\n\r\n destroyPopperInstance(): void {\r\n this.clearListeners();\r\n this.popperInstance?.destroy();\r\n this.popperInstance = undefined;\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n private setListeners(): void {\r\n this.listeners.push(\r\n this.renderer.listen(this.document, 'click', (event) => {\r\n const target = event.target as HTMLElement;\r\n if (this._toggler?.elementRef.nativeElement.contains(event.target)) {\r\n return;\r\n }\r\n if (this.autoClose === true) {\r\n this.setVisibleState(false);\r\n return;\r\n }\r\n if (this.clickedTarget === target && this.autoClose === 'inside') {\r\n this.setVisibleState(false);\r\n return;\r\n }\r\n if (this.clickedTarget !== target && this.autoClose === 'outside') {\r\n this.setVisibleState(false);\r\n return;\r\n }\r\n })\r\n );\r\n this.listeners.push(\r\n this.renderer.listen(this.document, 'keyup', (event) => {\r\n if (event.key === 'Escape' && this.autoClose !== false) {\r\n this.setVisibleState(false);\r\n }\r\n })\r\n );\r\n }\r\n\r\n private clearListeners(): void {\r\n this.listeners.forEach((unListen) => {\r\n unListen();\r\n });\r\n // @ts-ignore\r\n this.listeners.fill(undefined);\r\n this.listeners = [];\r\n }\r\n}\r\n","import { Directive, HostBinding, HostListener, Input, Optional } from '@angular/core';\r\nimport { DropdownService } from '../dropdown.service';\r\nimport { DropdownComponent } from '../dropdown/dropdown.component';\r\n\r\n@Directive({\r\n selector: '[cDropdownItem]',\r\n exportAs: 'cDropdownItem'\r\n})\r\nexport class DropdownItemDirective {\r\n /**\r\n * Set active state to a dropdown-item.\r\n * @type boolean\r\n * @default undefined\r\n */\r\n @Input() active?: boolean;\r\n /**\r\n * Configure dropdown-item close dropdown behavior.\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input() autoClose: boolean = true;\r\n /**\r\n * Disables a dropdown-item.\r\n * @type boolean\r\n * @default undefined\r\n */\r\n @Input() disabled?: boolean;\r\n\r\n constructor(\r\n private dropdownService: DropdownService,\r\n @Optional() public dropdown?: DropdownComponent\r\n ) {\r\n }\r\n\r\n @HostBinding('attr.aria-current')\r\n get ariaCurrent(): string | null {\r\n return this.active ? 'true' : null;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'dropdown-item': true,\r\n active: this.active,\r\n disabled: this.disabled\r\n };\r\n }\r\n\r\n @HostBinding('attr.tabindex')\r\n @Input()\r\n set tabIndex(value: string | number | null) {\r\n this._tabIndex = value;\r\n }\r\n get tabIndex() {\r\n return this.disabled ? '-1' : this._tabIndex;\r\n }\r\n private _tabIndex: string | number | null = null;\r\n\r\n @HostBinding('attr.aria-disabled')\r\n get isDisabled(): boolean | null {\r\n return this.disabled || null;\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n private onClick($event: MouseEvent): void {\r\n if (this.autoClose) {\r\n this.dropdownService.toggle({ visible: 'toggle', dropdown: this.dropdown });\r\n }\r\n }\r\n\r\n @HostListener('keyup', ['$event'])\r\n private onKeyUp($event: KeyboardEvent): void {\r\n if ($event.key === 'Enter') {\r\n if (this.autoClose) {\r\n this.dropdownService.toggle({ visible: false, dropdown: this.dropdown });\r\n }\r\n }\r\n }\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cDropdownItemPlain]'\r\n})\r\nexport class DropdownItemPlainDirective {\r\n\r\n constructor() {\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'dropdown-item-text': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Directive, HostBinding, HostListener, Input, Optional } from '@angular/core';\r\nimport { DropdownService } from '../dropdown.service';\r\nimport { DropdownComponent } from '../dropdown/dropdown.component';\r\n\r\n@Directive({\r\n selector: '[cDropdownClose]',\r\n exportAs: 'cDropdownClose'\r\n})\r\nexport class DropdownCloseDirective {\r\n\r\n /**\r\n * Disables a dropdown-close directive.\r\n * @type boolean\r\n * @default undefined\r\n */\r\n @Input() disabled?: boolean;\r\n\r\n constructor(\r\n private dropdownService: DropdownService,\r\n @Optional() public dropdown?: DropdownComponent\r\n ) { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n disabled: this.disabled\r\n };\r\n }\r\n\r\n @HostBinding('attr.tabindex')\r\n @Input()\r\n set tabIndex(value: string | number | null) {\r\n this._tabIndex = value;\r\n }\r\n get tabIndex() {\r\n return this.disabled ? '-1' : this._tabIndex;\r\n }\r\n private _tabIndex: string | number | null = null;\r\n\r\n @HostBinding('attr.aria-disabled')\r\n get isDisabled(): boolean | null {\r\n return this.disabled || null;\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n private onClick($event: MouseEvent): void {\r\n this.dropdownService.toggle({ visible: false, dropdown: this.dropdown });\r\n }\r\n\r\n @HostListener('keyup', ['$event'])\r\n private onKeyUp($event: KeyboardEvent): void {\r\n if ($event.key === 'Enter') {\r\n this.dropdownService.toggle({ visible: false, dropdown: this.dropdown });\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DropdownComponent, DropdownToggleDirective } from './dropdown/dropdown.component';\r\nimport { DropdownDividerDirective } from './dropdown-divider/dropdown-divider.directive';\r\nimport { DropdownHeaderDirective } from './dropdown-header/dropdown-header.directive';\r\nimport { DropdownItemDirective } from './dropdown-item/dropdown-item.directive';\r\nimport { DropdownItemPlainDirective } from './dropdown-item/dropdown-item-plain.directive';\r\nimport { DropdownMenuDirective } from './dropdown-menu/dropdown-menu.directive';\r\nimport { DropdownService } from './dropdown.service';\r\nimport { DropdownCloseDirective } from './dropdown-close/dropdown-close.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n DropdownComponent,\r\n DropdownDividerDirective,\r\n DropdownHeaderDirective,\r\n DropdownItemDirective,\r\n DropdownItemPlainDirective,\r\n DropdownToggleDirective,\r\n DropdownMenuDirective,\r\n DropdownCloseDirective\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n DropdownComponent,\r\n DropdownDividerDirective,\r\n DropdownHeaderDirective,\r\n DropdownItemDirective,\r\n DropdownItemPlainDirective,\r\n DropdownToggleDirective,\r\n DropdownMenuDirective,\r\n DropdownCloseDirective\r\n ],\r\n providers: [\r\n DropdownService,\r\n ]\r\n})\r\nexport class DropdownModule {\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\nimport { Colors } from '../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-spinner',\r\n templateUrl: './spinner.component.html',\r\n})\r\nexport class SpinnerComponent {\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n\r\n /**\r\n * Label for accessibility.\r\n * @type string\r\n * @default 'Loading...'\r\n */\r\n @Input() label: string = \"Loading...\";\r\n\r\n /**\r\n * Size the component small.\r\n * @type string\r\n * @values 'sm'\r\n */\r\n @Input() size?: 'sm';\r\n\r\n /**\r\n * Set the button variant to an outlined button or a ghost button.\r\n * @values 'border' | 'grow'\r\n * @default 'border'\r\n */\r\n @Input() variant?: 'border' | 'grow' = 'border';\r\n\r\n @Input()\r\n @HostBinding('attr.role') role = 'status';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n [`spinner-${this.variant}`]: true,\r\n [`text-${this.color}`]: !!this.color,\r\n [`spinner-${this.variant}-${this.size}`]: !!this.size\r\n };\r\n }\r\n}\r\n","<span class=\"visually-hidden\">{{label}}</span>\r\n","import { AfterViewInit, ChangeDetectorRef, Component, ElementRef, HostBinding, Input, ViewChild } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-element-cover, [cElementCover]',\r\n templateUrl: './element-cover.component.html',\r\n styleUrls: ['./element-cover.component.scss']\r\n})\r\nexport class ElementCoverComponent implements AfterViewInit {\r\n\r\n constructor(private elementRef: ElementRef, private changeDetectorRef: ChangeDetectorRef) {}\r\n\r\n /**\r\n * Array of custom boundaries. Use to create custom cover area (instead of parent element area). Area is defined by four sides: 'top', 'bottom', 'right', 'left'. If side is not defined by any custom boundary it is equal to parent element boundary. Each custom boundary is object with keys:\r\n * - sides (array) - select boundaries of element to define boundaries. Side names: 'top', 'bottom', 'right', 'left'.\r\n * - query (string) - query used to get element which define boundaries. Search will be done only inside parent element, by parent.querySelector(query) function. [docs]\r\n * @type {sides: string[], query: string}[]\r\n */\r\n @Input() boundaries?: { sides: string[]; query: string }[];\r\n @Input() opacity: number = 0.4;\r\n\r\n @ViewChild('content') content?: ElementRef;\r\n hasContent = true;\r\n #parent!: any;\r\n\r\n private get customBoundaries() {\r\n if (!this.boundaries || this.elementRef === null) {\r\n return {};\r\n }\r\n if (!this.#parent) {\r\n return {};\r\n }\r\n const parentCoords = this.#parent?.getBoundingClientRect();\r\n const _customBoundaries = {};\r\n this.boundaries.forEach((value: any) => {\r\n const element = this.#parent?.querySelector(value.query);\r\n if (!element || !value.sides) {\r\n return;\r\n }\r\n const coords = element.getBoundingClientRect();\r\n value.sides.forEach((side: string) => {\r\n const sideMargin = Math.abs(coords[side] - parentCoords[side]);\r\n // @ts-ignore\r\n _customBoundaries[side] = `${sideMargin}px`;\r\n });\r\n });\r\n return _customBoundaries;\r\n }\r\n\r\n private get containerCoords() {\r\n return {\r\n top: 0, left: 0, right: 0, bottom: 0, ...this.customBoundaries\r\n };\r\n }\r\n\r\n @HostBinding('style')\r\n private get coverStyles() {\r\n return {\r\n ...this.containerCoords, position: 'absolute', backgroundColor: `rgb(255,255,255,${this.opacity})`\r\n };\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.#parent = this.elementRef.nativeElement.parentElement;\r\n this.hasContent = this.content?.nativeElement.childNodes.length ?? false;\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n}\r\n","<div [ngStyle]=\"{position: 'absolute', 'top.%': '50', 'left.%': '50', transform: 'translateX(-50%) translateY(-50%)'}\">\r\n <div #content *ngIf=\"hasContent; else defaultSpinner\">\r\n <ng-content></ng-content>\r\n </div>\r\n <ng-template #defaultSpinner>\r\n <c-spinner color=\"primary\" variant=\"grow\"></c-spinner>\r\n </ng-template>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { SpinnerComponent } from './spinner.component';\r\nimport {SharedModule} from '../shared';\r\n\r\n@NgModule({\r\n declarations: [\r\n SpinnerComponent\r\n ],\r\n exports: [\r\n SpinnerComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n SharedModule\r\n ]\r\n})\r\nexport class SpinnerModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { SpinnerModule } from '../spinner';\r\nimport { ElementCoverComponent } from './element-cover.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n ElementCoverComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n SpinnerModule\r\n ],\r\n exports: [\r\n ElementCoverComponent\r\n ]\r\n})\r\nexport class ElementCoverModule {\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\nimport { Positions } from '../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-footer, [cFooter]',\r\n template: `<ng-content></ng-content>`,\r\n})\r\nexport class FooterComponent {\r\n /**\r\n * Place footer in non-static positions. [docs]\r\n * @type Positions\r\n */\r\n @Input() position?: Positions;\r\n /**\r\n * Default role for footer. [docs]\r\n * @type string\r\n * @default 'footer'\r\n */\r\n @Input()\r\n @HostBinding('attr.role') role = 'footer';\r\n\r\n @HostBinding('class')\r\n get getClasses(): any {\r\n return {\r\n footer: true,\r\n [`footer-${this.position}`]: !!this.position,\r\n };\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { FooterComponent } from './footer.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n FooterComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n FooterComponent\r\n ]\r\n})\r\nexport class FooterModule { }\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: 'form[cForm]'\r\n})\r\nexport class FormDirective {\r\n\r\n static ngAcceptInputType_validated: BooleanInput;\r\n private _validated = false;\r\n\r\n /**\r\n * Mark a form as validated. If you set it `true`, all validation styles will be applied to the form. [docs]\r\n * @type boolean\r\n * @default false\r\n */\r\n @Input()\r\n set validated(value: boolean) {\r\n this._validated = coerceBooleanProperty(value);\r\n }\r\n get validated() {\r\n return this._validated;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'was-validated': this.validated,\r\n };\r\n }\r\n\r\n constructor() { }\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-form-feedback',\r\n template: '<ng-content></ng-content>'\r\n})\r\nexport class FormFeedbackComponent {\r\n static ngAcceptInputType_tooltip: BooleanInput;\r\n\r\n /**\r\n * If your form layout allows it, you can display validation feedback in a styled tooltip.\r\n */\r\n private _tooltip = false;\r\n @Input()\r\n set tooltip(value: boolean) {\r\n this._tooltip = coerceBooleanProperty(value);\r\n }\r\n get tooltip(): boolean {\r\n return this._tooltip;\r\n }\r\n /**\r\n * Set component validation state to valid.\r\n */\r\n @Input() valid?: boolean;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'valid-feedback': this.valid === true && !this.tooltip,\r\n 'valid-tooltip': this.valid === true && this.tooltip,\r\n 'invalid-feedback': this.valid !== true && !this.tooltip,\r\n 'invalid-tooltip': this.valid !== true && this.tooltip\r\n };\r\n }\r\n}\r\n","import {\r\n Component,\r\n HostBinding,\r\n Input,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-input-group',\r\n template: `<ng-content></ng-content>`,\r\n})\r\nexport class InputGroupComponent {\r\n /**\r\n * Size the component small or large.\r\n */\r\n @Input() sizing: string | 'sm' | 'lg' | '' = '';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'input-group': true,\r\n [`input-group-${this.sizing}`]: !!this.sizing,\r\n };\r\n }\r\n\r\n constructor() {}\r\n\r\n}\r\n","import { Directive, HostBinding, Input, OnChanges } from '@angular/core';\r\n\r\n@Directive({\r\n selector: 'select[cSelect]'\r\n})\r\nexport class FormSelectDirective {\r\n /**\r\n * Size the component small or large.\r\n */\r\n @Input() sizing?: '' | 'sm' | 'lg' | string = '';\r\n\r\n /**\r\n * Set component validation state to valid.\r\n * @type {boolean | undefined}\r\n */\r\n @Input() valid?: boolean;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'form-select': true,\r\n [`form-select-${this.sizing}`]: !!this.sizing,\r\n 'is-valid': this.valid === true,\r\n 'is-invalid': this.valid === false,\r\n };\r\n }\r\n\r\n constructor() {}\r\n\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cLabel]'\r\n})\r\nexport class FormLabelDirective {\r\n\r\n /**\r\n * For horizontal forms set labels to 'col' and make them vertically centered with their associated form controls.\r\n * @type 'col'\r\n */\r\n @Input('cLabel') col: 'col' | '' = '';\r\n /**\r\n * Size the label small or large.\r\n */\r\n @Input() sizing: '' | 'sm' | 'lg' | string = '';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'form-label': true,\r\n 'col-form-label': this.col === 'col',\r\n [`col-form-label-${this.sizing}`]: !!this.sizing && this.col === 'col',\r\n };\r\n }\r\n\r\n constructor() {}\r\n\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: 'label[cFormCheckLabel]'\r\n})\r\nexport class FormCheckLabelDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'form-check-label': true,\r\n };\r\n }\r\n\r\n}\r\n","import { AfterContentInit, Component, ContentChild, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { FormCheckLabelDirective } from './form-check-label.directive';\r\n\r\n@Component({\r\n selector: 'c-form-check',\r\n template: '<ng-content></ng-content>',\r\n exportAs: 'cFormCheck'\r\n})\r\nexport class FormCheckComponent implements AfterContentInit {\r\n\r\n static ngAcceptInputType_inline: BooleanInput;\r\n static ngAcceptInputType_switch: BooleanInput;\r\n\r\n private _inline = false;\r\n /**\r\n * Group checkboxes or radios on the same horizontal row.\r\n * @type boolean\r\n * @default false\r\n */\r\n @Input()\r\n set inline(value: boolean) {\r\n this._inline = coerceBooleanProperty(value);\r\n }\r\n get inline(): boolean {\r\n return this._inline;\r\n }\r\n\r\n /**\r\n * Size the component large or extra large. Works only with `[switch]=\"true\"` [docs]\r\n * @type {'lg' | 'xl' | ''}\r\n */\r\n @Input() sizing?: 'lg' | 'xl' | '' = '';\r\n\r\n /**\r\n * Render a toggle switch on for checkbox.\r\n * @type boolean\r\n * @default false\r\n */\r\n @Input()\r\n set switch(value: boolean) {\r\n this._switch = coerceBooleanProperty(value);\r\n }\r\n get switch(): boolean {\r\n return this._switch;\r\n }\r\n private _switch = false;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n return {\r\n 'form-check': this.formCheckClass,\r\n 'form-switch': this.switch,\r\n [`form-switch-${this.sizing}`]: this.switch && !!this.sizing,\r\n 'form-check-inline': this.inline\r\n };\r\n }\r\n\r\n @ContentChild(FormCheckLabelDirective) formCheckLabel!: FormCheckLabelDirective;\r\n private _formCheckClass = true;\r\n get formCheckClass() {\r\n return this._formCheckClass;\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this._formCheckClass = !!this.formCheckLabel;\r\n }\r\n}\r\n","import { Directive, ElementRef, HostBinding, Input, Renderer2 } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: 'input[cFormCheckInput]'\r\n})\r\nexport class FormCheckInputDirective {\r\n\r\n static ngAcceptInputType_indeterminate: BooleanInput;\r\n\r\n /**\r\n * Specifies the type of component.\r\n * @type {'checkbox' | 'radio'}\r\n * @default 'checkbox'\r\n */\r\n @HostBinding('attr.type')\r\n @Input() type: ('checkbox' | 'radio') = 'checkbox';\r\n\r\n /**\r\n * Set component indeterminate state.\r\n * @type boolean\r\n */\r\n @Input()\r\n set indeterminate(value: boolean) {\r\n const newValue = coerceBooleanProperty(value);\r\n if (this._indeterminate !== newValue) {\r\n this._indeterminate = newValue;\r\n this.renderer.setProperty(this.hostElement.nativeElement, 'indeterminate', newValue);\r\n }\r\n };\r\n get indeterminate() {\r\n return this._indeterminate;\r\n }\r\n private _indeterminate = false;\r\n\r\n /**\r\n * Set component validation state to valid.\r\n * @type boolean\r\n */\r\n @Input() valid?: boolean;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'form-check-input': true,\r\n 'is-valid': this.valid === true,\r\n 'is-invalid': this.valid === false\r\n };\r\n }\r\n\r\n get checked(): boolean {\r\n return this.hostElement?.nativeElement?.checked;\r\n }\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef\r\n ) { }\r\n\r\n}\r\n","import { Directive, ElementRef, HostBinding, Input, OnInit } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { InputType } from '../../coreui.types';\r\n\r\n@Directive({\r\n selector: 'input[cFormControl], textarea[cFormControl]'\r\n})\r\nexport class FormControlDirective implements OnInit {\r\n\r\n static ngAcceptInputType_plaintext: BooleanInput;\r\n /**\r\n * Size the component small or large.\r\n * @type {'sm' | 'lg'}\r\n */\r\n @Input() sizing?: '' | 'sm' | 'lg' | string = '';\r\n /**\r\n * Set component validation state to valid.\r\n * @type boolean\r\n */\r\n @Input() valid?: boolean;\r\n\r\n /**\r\n * Specifies the type of input element.\r\n */\r\n @HostBinding('attr.type')\r\n @Input() type: Omit<InputType, 'checkbox' | 'radio'> = 'text';\r\n\r\n /**\r\n * Render the component styled as plain text. Removes the default form field styling and preserve the correct margin and padding. Recommend to use alongside `readonly` [docs]\r\n */\r\n @Input()\r\n set plaintext(value: boolean) {\r\n this._plaintext = coerceBooleanProperty(value);\r\n }\r\n get plaintext(): boolean {\r\n return this._plaintext;\r\n }\r\n private _plaintext = false;\r\n\r\n constructor(\r\n private hostElement: ElementRef\r\n ) {}\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n const isRangeType = this.type === 'range';\r\n\r\n return {\r\n 'form-control': !isRangeType && !this.plaintext,\r\n 'form-control-plaintext': !isRangeType && this.plaintext,\r\n 'form-control-color': this.type === 'color',\r\n 'form-range': isRangeType,\r\n [`form-control-${this.sizing}`]: !!this.sizing && !isRangeType,\r\n 'is-valid': this.valid === true,\r\n 'is-invalid': this.valid === false\r\n };\r\n }\r\n\r\n get hostTag(): string {\r\n return this.hostElement.nativeElement.tagName;\r\n }\r\n\r\n ngOnInit(): void {\r\n const hostTag = this.hostTag.toLowerCase();\r\n if (hostTag !== 'input' && hostTag !== 'textarea') {\r\n console.warn(`CoreUI [cFormControl] works with '<input>' and '<texarea>' - not with '<${hostTag}>'`);\r\n }\r\n }\r\n\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cFormText]'\r\n})\r\nexport class FormTextDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'form-text': true,\r\n };\r\n }\r\n\r\n constructor() { }\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: '[cFormFloating]'\r\n})\r\nexport class FormFloatingDirective {\r\n\r\n static ngAcceptInputType_floating: BooleanInput;\r\n\r\n /**\r\n * Enable floating labels\r\n * @type boolean\r\n */\r\n @Input('cFormFloating')\r\n get floating(): boolean {\r\n return this._floating;\r\n }\r\n set floating(value: boolean) {\r\n this._floating = coerceBooleanProperty(value);\r\n }\r\n private _floating = true;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'form-floating': this.floating,\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cInputGroupText]'\r\n})\r\nexport class InputGroupTextDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'input-group-text': true,\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormDirective } from './form/form.directive';\r\nimport { FormFeedbackComponent } from './form-feedback/form-feedback.component';\r\nimport { InputGroupComponent } from './input-group/input-group.component';\r\nimport { FormSelectDirective } from './form-select/form-select.directive';\r\nimport { FormLabelDirective } from './form-label/form-label.directive';\r\nimport { FormCheckComponent } from './form-check/form-check.component';\r\nimport { FormControlDirective } from './form-control/form-control.directive';\r\nimport { FormTextDirective } from './form-text/form-text.directive';\r\nimport { FormFloatingDirective } from './form-floating/form-floating.directive';\r\nimport { InputGroupTextDirective } from './input-group-text/input-group-text.directive';\r\nimport { FormCheckLabelDirective } from './form-check/form-check-label.directive';\r\nimport { FormCheckInputDirective } from './form-check/form-check-input.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n FormDirective,\r\n FormCheckComponent,\r\n FormControlDirective,\r\n FormFeedbackComponent,\r\n FormFloatingDirective,\r\n FormLabelDirective,\r\n FormSelectDirective,\r\n FormTextDirective,\r\n InputGroupComponent,\r\n InputGroupTextDirective,\r\n FormCheckLabelDirective,\r\n FormCheckInputDirective,\r\n ],\r\n imports: [CommonModule],\r\n exports: [\r\n FormDirective,\r\n FormCheckComponent,\r\n FormControlDirective,\r\n FormFeedbackComponent,\r\n FormFloatingDirective,\r\n FormLabelDirective,\r\n FormSelectDirective,\r\n FormTextDirective,\r\n InputGroupComponent,\r\n InputGroupTextDirective,\r\n FormCheckLabelDirective,\r\n FormCheckInputDirective\r\n ]\r\n})\r\nexport class FormModule {}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { IContainer } from './container.type';\r\nimport { Breakpoints } from '../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-container, [cContainer]',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./container.component.scss'],\r\n})\r\nexport class ContainerComponent implements IContainer{\r\n\r\n static ngAcceptInputType_fluid: BooleanInput;\r\n\r\n /**\r\n * Set container 100% wide until a breakpoint.\r\n */\r\n @Input() breakpoint: Exclude<Breakpoints, 'xs'> = '';\r\n /**\r\n * Set container 100% wide, spanning the entire width of the viewport.\r\n */\r\n @Input()\r\n set fluid(value: boolean) {\r\n this._fluid = coerceBooleanProperty(value);\r\n };\r\n get fluid(): boolean {\r\n return this._fluid;\r\n }\r\n private _fluid = false;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n container: !this.fluid && !this.breakpoint,\r\n 'container-fluid': this.fluid,\r\n [`container-${this.breakpoint}`]: !!this.breakpoint,\r\n };\r\n }\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty, coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\r\n\r\nimport { ColOrder, ICol } from './col.type';\r\nimport { BreakpointInfix } from '../coreui.types';\r\n\r\n@Directive({\r\n selector: '[cCol]'\r\n})\r\nexport class ColDirective implements ICol {\r\n\r\n static ngAcceptInputType_cCol: (BooleanInput | NumberInput);\r\n static ngAcceptInputType_xs: (BooleanInput | NumberInput);\r\n static ngAcceptInputType_sm: (BooleanInput | NumberInput);\r\n static ngAcceptInputType_md: (BooleanInput | NumberInput);\r\n static ngAcceptInputType_lg: (BooleanInput | NumberInput);\r\n static ngAcceptInputType_xl: (BooleanInput | NumberInput);\r\n static ngAcceptInputType_xxl: (BooleanInput | NumberInput);\r\n\r\n /**\r\n * The number of columns/offset/order on extra small devices (<576px).\r\n * @type { 'auto' | number | boolean }\r\n */\r\n @Input()\r\n set cCol(value: (BooleanInput | NumberInput)) {\r\n this.xs = this.xs || this.coerceInput(value);\r\n }\r\n @Input()\r\n set xs(value) {\r\n this._xs = this.coerceInput(value);\r\n }\r\n get xs(): (BooleanInput | NumberInput) {\r\n return this._xs;\r\n }\r\n private _xs: (BooleanInput | NumberInput) = false;\r\n\r\n /**\r\n * The number of columns/offset/order on small devices (<768px).\r\n * @type { 'auto' | number | boolean }\r\n */\r\n @Input()\r\n set sm(value) {\r\n this._sm = this.coerceInput(value);\r\n }\r\n get sm(): (BooleanInput | NumberInput) {\r\n return this._sm;\r\n }\r\n private _sm: (BooleanInput | NumberInput) = false;\r\n\r\n /**\r\n * The number of columns/offset/order on medium devices (<992px).\r\n * @type { 'auto' | number | boolean }\r\n */\r\n @Input()\r\n set md(value) {\r\n this._md = this.coerceInput(value);\r\n }\r\n get md(): (BooleanInput | NumberInput) {\r\n return this._md;\r\n }\r\n private _md: (BooleanInput | NumberInput) = false;\r\n\r\n /**\r\n * The number of columns/offset/order on large devices (<1200px).\r\n * @type { 'auto' | number | boolean }\r\n */\r\n @Input()\r\n set lg(value) {\r\n this._lg = this.coerceInput(value);\r\n }\r\n get lg(): (BooleanInput | NumberInput) {\r\n return this._lg;\r\n }\r\n private _lg: (BooleanInput | NumberInput) = false;\r\n\r\n /**\r\n * The number of columns/offset/order on X-Large devices (<1400px).\r\n * @type { 'auto' | number | boolean }\r\n */\r\n @Input()\r\n set xl(value) {\r\n this._xl = this.coerceInput(value);\r\n }\r\n get xl(): (BooleanInput | NumberInput) {\r\n return this._xl;\r\n }\r\n private _xl: (BooleanInput | NumberInput) = false;\r\n\r\n /**\r\n * The number of columns/offset/order on XX-Large devices (≥1400px).\r\n * @type { 'auto' | number | boolean }\r\n */\r\n @Input()\r\n set xxl(value) {\r\n this._xxl = this.coerceInput(value);\r\n }\r\n get xxl(): (BooleanInput | NumberInput) {\r\n return this._xxl;\r\n }\r\n private _xxl: (BooleanInput | NumberInput) = false;\r\n\r\n @Input() offset?: (number | { 'xs'?: number, sm?: number, md?: number, lg?: number, xl?: number, xxl?: number });\r\n @Input() order?: (ColOrder | { xs?: ColOrder, sm?: ColOrder, md?: ColOrder, lg?: ColOrder, xl?: ColOrder, xxl?: ColOrder });\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n const classes: any = {\r\n col: true\r\n };\r\n\r\n Object.keys(BreakpointInfix).forEach((breakpoint) => {\r\n // @ts-ignore\r\n const value: number | string | boolean = this[breakpoint];\r\n const infix = breakpoint === 'xs' ? '' : `-${breakpoint}`;\r\n classes[`col${infix}`] = value === true;\r\n classes[`col${infix}-${value}`] = (typeof value === 'number') || (typeof value === 'string');\r\n });\r\n\r\n if (typeof this.offset === 'object') {\r\n const offset = { ...this.offset };\r\n Object.entries(offset).forEach((entry) => {\r\n const [breakpoint, value] = [...entry];\r\n const infix = breakpoint === 'xs' ? '' : `-${breakpoint}`;\r\n classes[`offset${infix}-${value}`] = value >= 0 && value <= 11;\r\n });\r\n } else {\r\n classes[`offset-${this.offset}`] = (typeof this.offset === 'number') && this.offset > 0 && this.offset <= 11;\r\n }\r\n\r\n if (typeof this.order === 'object') {\r\n const order = { ...this.order };\r\n Object.entries(order).forEach((entry) => {\r\n const [breakpoint, value] = [...entry];\r\n const infix = breakpoint === 'xs' ? '' : `-${breakpoint}`;\r\n classes[`order${infix}-${value}`] = value;\r\n });\r\n } else {\r\n classes[`order-${this.order}`] = !!this.order;\r\n }\r\n\r\n // if there is no 'col' class, add one\r\n classes.col = (!Object.entries(classes).filter(i => i[0].startsWith('col-') && i[1]).length) || this.xs === true;\r\n return classes;\r\n }\r\n\r\n coerceInput(value: (BooleanInput | NumberInput)) {\r\n if (value === 'auto') {\r\n return value;\r\n }\r\n if (value === '' || value === undefined || value === null) {\r\n return coerceBooleanProperty(value);\r\n }\r\n if (typeof value === 'boolean') {\r\n return value;\r\n }\r\n return coerceNumberProperty(value);\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\nimport { ColDirective } from './col.directive';\r\n\r\n@Component({\r\n selector: 'c-col',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./col.component.scss'],\r\n})\r\nexport class ColComponent extends ColDirective {}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\n\r\nimport { BreakpointInfix } from '../coreui.types';\r\nimport { IRow, NumberOfColumns } from './row.type';\r\n\r\n@Directive({\r\n selector: '[cRow]'\r\n})\r\nexport class RowDirective implements IRow {\r\n /**\r\n * The number of columns/offset/order on extra small devices (<576px).\r\n * @type {{ cols: 'auto' | number }\r\n */\r\n @Input() xs?: NumberOfColumns;\r\n /**\r\n * The number of columns/offset/order on small devices (<768px).\r\n * @type {{ cols: 'auto' | number }\r\n */\r\n @Input() sm?: NumberOfColumns;\r\n /**\r\n * The number of columns/offset/order on medium devices (<992px).\r\n * @type {{ cols: 'auto' | number }\r\n */\r\n @Input() md?: NumberOfColumns;\r\n /**\r\n * The number of columns/offset/order on large devices (<1200px).\r\n * @type {{ cols: 'auto' | number }\r\n */\r\n @Input() lg?: NumberOfColumns;\r\n /**\r\n * The number of columns/offset/order on X-Large devices (<1400px).\r\n * @type {{ cols: 'auto' | number }\r\n */\r\n @Input() xl?: NumberOfColumns;\r\n /**\r\n * The number of columns/offset/order on XX-Large devices (≥1400px).\r\n * @type {{ cols: 'auto' | number }\r\n */\r\n @Input() xxl?: NumberOfColumns;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n const cols = this.xs;\r\n\r\n const classes: any = {\r\n row: true,\r\n [`row-cols-${cols}`]: !!cols,\r\n };\r\n\r\n Object.keys(BreakpointInfix).forEach(breakpoint => {\r\n // @ts-ignore\r\n const value: any = this[breakpoint];\r\n if ((typeof value === 'number') || (typeof value === 'string')) {\r\n const infix: string = breakpoint === 'xs' ? '' : breakpoint;\r\n classes[`row-cols-${infix}-${value}`] = !!value;\r\n }\r\n });\r\n\r\n return classes;\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\nimport { RowDirective } from './row.directive';\r\n\r\n@Component({\r\n selector: 'c-row',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./row.component.scss'],\r\n})\r\nexport class RowComponent extends RowDirective {}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\n\r\nimport { BreakpointInfix } from '../coreui.types';\r\nimport { GutterBreakpoints, Gutters, IGutter, IGutterObject } from './gutter.type';\r\n\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: '[gutter]'\r\n})\r\nexport class GutterDirective implements IGutter {\r\n /**\r\n * Define padding between columns to space and align content responsively in the Bootstrap grid system.\r\n */\r\n @Input() gutter: (IGutterObject | GutterBreakpoints | Gutters) = {};\r\n\r\n constructor() { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n let gutterClass: any;\r\n\r\n if (typeof this.gutter === 'number') {\r\n gutterClass = GutterDirective.getGutterClasses({ g: this.gutter });\r\n return gutterClass;\r\n }\r\n\r\n {\r\n // @ts-ignore\r\n const { g, gx, gy } = { ...this.gutter };\r\n gutterClass = GutterDirective.getGutterClasses({ g, gx, gy });\r\n }\r\n\r\n Object.keys(BreakpointInfix).forEach(key => {\r\n // @ts-ignore\r\n const gutter = this.gutter[key] ? { ...this.gutter[key] } : undefined;\r\n if (gutter) {\r\n const classes = GutterDirective.getGutterClasses(gutter, key);\r\n gutterClass = { ...gutterClass, ...classes };\r\n }\r\n });\r\n return gutterClass;\r\n }\r\n\r\n private static getGutterClasses(gutter: IGutterObject, breakpoint?: string): any {\r\n const { g, gx, gy } = { ...gutter };\r\n const infix = breakpoint ? `-${breakpoint}` : '';\r\n return {\r\n [`g${infix}-${g}`]: typeof g === 'number',\r\n [`gx${infix}-${gx}`]: typeof gx === 'number',\r\n [`gy${infix}-${gy}`]: typeof gy === 'number'\r\n };\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { ContainerComponent } from './container.component';\r\nimport { RowComponent } from './row.component';\r\nimport { ColComponent } from './col.component';\r\nimport { RowDirective } from './row.directive';\r\nimport { ColDirective } from './col.directive';\r\nimport { GutterDirective } from './gutter.directive';\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n exports: [\r\n ContainerComponent,\r\n RowComponent,\r\n ColComponent,\r\n GutterDirective,\r\n RowDirective,\r\n ColDirective,\r\n ],\r\n declarations: [\r\n ContainerComponent,\r\n RowComponent,\r\n ColComponent,\r\n RowDirective,\r\n ColDirective,\r\n GutterDirective,\r\n ],\r\n providers: [],\r\n})\r\nexport class GridModule {}\r\n","import {Component, Input, HostBinding} from '@angular/core';\r\n\r\nimport { Positions } from '../../coreui.types';\r\ntype Container = boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | 'fluid';\r\n\r\n@Component({\r\n selector: 'c-header, [c-header]',\r\n templateUrl: './header.component.html'\r\n})\r\nexport class HeaderComponent {\r\n /**\r\n * Defines optional container wrapping children elements.\r\n */\r\n @Input() container?: Container;\r\n /**\r\n * Place header in non-static positions.\r\n */\r\n @Input() position?: Positions;\r\n /**\r\n * Default role for header. [docs]\r\n * @type string\r\n * @default 'header'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'header';\r\n\r\n @HostBinding('class')\r\n get getClasses(): any {\r\n return !!this.container ? this.containerClasses : this.headerClasses;\r\n }\r\n\r\n get headerClasses(): any {\r\n return {\r\n header: true,\r\n [`header-${this.position}`]: !!this.position,\r\n };\r\n }\r\n\r\n get containerClasses(): any {\r\n return {\r\n container: this.container === true,\r\n [`container-${this.container}`]: typeof this.container === 'string'\r\n };\r\n }\r\n}\r\n","<div [class]=\"headerClasses\" *ngIf=\"!!container; else elseBlock\">\r\n <ng-content></ng-content>\r\n</div>\r\n<ng-template #elseBlock>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n\r\n\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-header-brand',\r\n template: `<ng-content></ng-content>`\r\n})\r\nexport class HeaderBrandComponent {\r\n /**\r\n * Default role for header-brand. [docs]\r\n * @type string\r\n * @default 'button'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'button';\r\n\r\n @HostBinding('class.header-brand') headerBrandClass = true;\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-header-divider, [cHeaderDivider]',\r\n template: ``\r\n})\r\nexport class HeaderDividerComponent {\r\n\r\n @HostBinding('class.header-divider') headerDividerClass = true;\r\n\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-header-nav',\r\n template: `<ng-content></ng-content>`,\r\n styleUrls: ['./header-nav.component.scss']\r\n})\r\nexport class HeaderNavComponent {\r\n /**\r\n * Default role for header-nav. [docs]\r\n * @type string\r\n * @default 'navigation'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'navigation';\r\n\r\n @HostBinding('class.header-nav') headerNavClass = true;\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-header-text, [cHeaderText]',\r\n template: `<ng-content></ng-content>`,\r\n})\r\nexport class HeaderTextComponent {\r\n @HostBinding('class.header-text') headerTextClass = true;\r\n}\r\n","import { AfterContentInit, Directive, ElementRef, HostBinding, Input, Renderer2 } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cHeaderToggler]'\r\n})\r\nexport class HeaderTogglerDirective implements AfterContentInit {\r\n\r\n @HostBinding('class.header-toggler') headerToggler = true;\r\n /**\r\n * Default role for header-toggler. [docs]\r\n * @type string\r\n * @default 'button'\r\n */\r\n @HostBinding('attr.type')\r\n @Input() type = 'button';\r\n /**\r\n * Default aria-label attr for header-toggler. [docs]\r\n * @type string\r\n * @default 'Toggle navigation'\r\n */\r\n @HostBinding('attr.aria-label')\r\n @Input() ariaLabel = 'Toggle navigation';\r\n\r\n private hasContent!: boolean;\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef\r\n ) { }\r\n\r\n addDefaultIcon(): void {\r\n const span = this.renderer.createElement('span');\r\n this.renderer.addClass(span, 'header-toggler-icon');\r\n this.renderer.appendChild(this.hostElement.nativeElement, span);\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.hasContent = this.hostElement.nativeElement.childNodes.length > 0;\r\n if (!this.hasContent) {\r\n this.addDefaultIcon();\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { HeaderComponent } from './header/header.component';\r\nimport { HeaderBrandComponent } from './header-brand/header-brand.component';\r\nimport { HeaderDividerComponent } from './header-divider/header-divider.component';\r\nimport { HeaderNavComponent } from './header-nav/header-nav.component';\r\nimport { HeaderTextComponent } from './header-text/header-text.component';\r\nimport { HeaderTogglerDirective } from './header-toggler/header-toggler.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n HeaderComponent,\r\n HeaderBrandComponent,\r\n HeaderDividerComponent,\r\n HeaderNavComponent,\r\n HeaderTextComponent,\r\n HeaderTogglerDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n HeaderComponent,\r\n HeaderBrandComponent,\r\n HeaderDividerComponent,\r\n HeaderNavComponent,\r\n HeaderTextComponent,\r\n HeaderTogglerDirective\r\n ]\r\n})\r\nexport class HeaderModule { }\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: '[cImg]'\r\n})\r\nexport class ImgDirective {\r\n static ngAcceptInputType_fluid: BooleanInput;\r\n static ngAcceptInputType_rounded: BooleanInput;\r\n static ngAcceptInputType_thumbnail: BooleanInput;\r\n\r\n /**\r\n * Set the horizontal aligment.\r\n * @type {'' | 'start' | 'end' | 'center'}\r\n */\r\n @Input() align: '' | 'start' | 'end' | 'center' = '';\r\n\r\n /**\r\n * Make image responsive.\r\n * @type boolean\r\n */\r\n @Input()\r\n set fluid(value: boolean) {\r\n this._fluid = coerceBooleanProperty(value);\r\n };\r\n get fluid() {\r\n return this._fluid;\r\n }\r\n private _fluid = false;\r\n\r\n /**\r\n * Make image rounded.\r\n * @type boolean\r\n */\r\n @Input()\r\n set rounded(value: boolean){\r\n this._rounded = coerceBooleanProperty(value);\r\n };\r\n get rounded() {\r\n return this._rounded;\r\n }\r\n private _rounded = false;\r\n\r\n /**\r\n * Give an image a rounded 1px border appearance.\r\n * @type boolean\r\n */\r\n @Input()\r\n set thumbnail(value: boolean) {\r\n this._thumbnail = coerceBooleanProperty(value);\r\n };\r\n get thumbnail() {\r\n return this._thumbnail;\r\n }\r\n private _thumbnail = false;\r\n\r\n /**\r\n * Color for image placeholder.\r\n */\r\n @Input() placeholderColor = 'transparent';\r\n\r\n @HostBinding('style')\r\n get getStyles(): any {\r\n return {backgroundColor: this.placeholderColor};\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n const align = this.align;\r\n return {\r\n [`float-${align}`]: align === 'start' || align === 'end',\r\n 'd-block': align === 'center',\r\n 'mx-auto': align === 'center',\r\n 'img-fluid': this.fluid,\r\n 'rounded': this.rounded,\r\n 'img-thumbnail': this.thumbnail,\r\n };\r\n }\r\n\r\n constructor() {}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ImgDirective } from './img.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n ImgDirective\r\n ],\r\n declarations: [\r\n ImgDirective\r\n ],\r\n})\r\nexport class ImgModule { }\r\n","import {Directive, HostBinding, Input} from '@angular/core';\r\nimport { Sizes } from '../coreui.types';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: '[cListGroup]'\r\n})\r\nexport class ListGroupDirective {\r\n static ngAcceptInputType_flush: BooleanInput;\r\n\r\n /**\r\n * Remove some borders and rounded corners to render list group items edge-to-edge in a parent component (e.g., `<CCard>`).\r\n * @type boolean\r\n */\r\n @Input()\r\n set flush(value: boolean) {\r\n this._flush = coerceBooleanProperty(value);\r\n };\r\n get flush() {\r\n return this._flush;\r\n }\r\n private _flush = false;\r\n /**\r\n * Specify horizontal layout type.\r\n */\r\n @Input() horizontal?: boolean | Sizes;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n const classes = {\r\n 'list-group': true,\r\n 'list-group-horizontal': this.horizontal === true || this.horizontal === '',\r\n [`list-group-horizontal-${this.horizontal}`]: !!this.horizontal && typeof this.horizontal !== 'boolean',\r\n 'list-group-flush': this.flush,\r\n };\r\n return classes;\r\n }\r\n\r\n constructor( ) { }\r\n\r\n}\r\n\r\n","import { Directive, ElementRef, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { Colors } from '../coreui.types';\r\n\r\n@Directive({\r\n selector: '[cListGroupItem], c-list-group-item',\r\n exportAs: 'cListGroupItem'\r\n})\r\nexport class ListGroupItemDirective {\r\n\r\n static ngAcceptInputType_disabled: BooleanInput;\r\n\r\n /**\r\n * Toggle the active state for the component.\r\n * @type boolean\r\n */\r\n @Input() active?: boolean;\r\n\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n\r\n /**\r\n * Set disabled attr for the host element. [docs]\r\n * @type boolean\r\n */\r\n @Input()\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n private _disabled = false;\r\n\r\n @HostBinding('attr.aria-disabled')\r\n get isDisabled(): boolean | null {\r\n return this.disabled || null;\r\n }\r\n\r\n @HostBinding('attr.disabled')\r\n get attrDisabled() {\r\n return this.disabled ? '' : null;\r\n };\r\n\r\n @HostBinding('attr.tabindex')\r\n get getTabindex(): string | null {\r\n return this.disabled ? '-1' : null;\r\n }\r\n\r\n @HostBinding('attr.aria-current') get ariaCurrent(): boolean {\r\n return !!this.active;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n const host: HTMLElement = this.hostElement.nativeElement;\r\n return {\r\n 'list-group-item': true,\r\n 'list-group-item-action': host.nodeName === 'A' || host.nodeName === 'BUTTON',\r\n active: !!this.active,\r\n disabled: this.isDisabled,\r\n [`list-group-item-${this.color}`]: !!this.color\r\n };\r\n }\r\n\r\n constructor(\r\n private hostElement: ElementRef\r\n ) { }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ListGroupDirective } from './list-group.directive';\r\nimport { ListGroupItemDirective } from './list-group-item.directive';\r\n\r\n@NgModule({\r\n declarations: [ListGroupDirective, ListGroupItemDirective],\r\n exports: [\r\n ListGroupDirective,\r\n ListGroupItemDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class ListGroupModule { }\r\n","import { Component, EventEmitter, HostBinding, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\r\nimport { ButtonDirective } from '../button';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'button[cLoadingButton], a[cLoadingButton]',\r\n templateUrl: './loading-button.component.html',\r\n styleUrls: ['./loading-button.component.scss'],\r\n exportAs: 'cLoadingButton'\r\n})\r\nexport class LoadingButtonComponent extends ButtonDirective implements OnChanges {\r\n\r\n static ngAcceptInputType_disabledOnLoading: BooleanInput;\r\n\r\n /**\r\n * Makes button disabled when loading.\r\n * @type boolean\r\n */\r\n @Input()\r\n set disabledOnLoading(value: boolean) {\r\n this._disabledOnLoading = coerceBooleanProperty(value);\r\n };\r\n get disabledOnLoading() {\r\n return this._disabledOnLoading;\r\n }\r\n _disabledOnLoading = false;\r\n\r\n /**\r\n * Loading state (set to true to start animation).\r\n * @type boolean\r\n */\r\n @Input()\r\n set loading(value: boolean) {\r\n const newValue = coerceBooleanProperty(value);\r\n if (this._loading !== newValue) {\r\n this._loading = newValue;\r\n this.loadingChange.emit(newValue);\r\n }\r\n };\r\n get loading() {\r\n return this._loading;\r\n }\r\n _loading = false;\r\n\r\n /**\r\n * Sets type of spinner.\r\n * @type {'border' | 'grow'}\r\n */\r\n @Input() spinnerType: 'border' | 'grow' = 'border';\r\n\r\n /**\r\n * Event emitted on loading change\r\n * @type boolean\r\n */\r\n @Output() loadingChange: EventEmitter<boolean> = new EventEmitter();\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n @HostBinding('class')\r\n override get hostClasses() {\r\n return {\r\n 'btn-loading': true,\r\n 'is-loading': this.loading,\r\n disabled: this.disabledOnLoading && this.loading,\r\n btn: true,\r\n [`btn-${this.color}`]: !!this.color && !this.variant,\r\n [`btn-${this.variant}`]: !!this.variant && !this.color,\r\n [`btn-${this.variant}-${this.color}`]: !!this.variant && !!this.color,\r\n [`btn-${this.size}`]: !!this.size,\r\n active: this.active\r\n };\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['loading'] && !changes['loading']?.isFirstChange()) {\r\n this.disabled = this.disabledOnLoading && changes['loading'].currentValue;\r\n }\r\n }\r\n}\r\n","<c-spinner [variant]=\"spinnerType\" size=\"sm\" class=\"btn-loading-spinner\"></c-spinner>\r\n<ng-content></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LoadingButtonComponent } from './loading-button.component';\r\nimport { SpinnerModule } from '../spinner';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n LoadingButtonComponent\r\n ],\r\n exports: [\r\n LoadingButtonComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n SpinnerModule\r\n ]\r\n})\r\nexport class LoadingButtonModule { }\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-multi-select-optgroup-label',\r\n templateUrl: './multi-select-optgroup-label.component.html',\r\n styleUrls: ['./multi-select-optgroup-label.component.scss']\r\n})\r\nexport class MultiSelectOptgroupLabelComponent {\r\n\r\n constructor() { }\r\n\r\n @HostBinding('class') get hostClasses() {\r\n return {\r\n 'form-multi-select-optgroup-label': true\r\n };\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class MultiSelectService {\r\n constructor() {}\r\n\r\n private multiSelectState = new BehaviorSubject<any>({});\r\n multiSelectState$ = this.multiSelectState.asObservable();\r\n\r\n private multiSelectVisible = new BehaviorSubject<boolean>(false);\r\n multiSelectVisible$ = this.multiSelectVisible.asObservable();\r\n\r\n toggleOption(option: any): void {\r\n this.multiSelectState.next(option);\r\n }\r\n\r\n toggleVisible(visible: boolean): void {\r\n this.multiSelectVisible.next(visible);\r\n }\r\n}\r\n\r\n","import {\r\n AfterContentInit,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n Renderer2,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { FocusableOption, FocusMonitor, FocusOrigin } from '@angular/cdk/a11y';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { MultiSelectService } from '../multi-select.service';\r\n\r\n@Component({\r\n selector: 'c-multi-select-option',\r\n templateUrl: './multi-select-option.component.html',\r\n styleUrls: ['./multi-select-option.component.scss']\r\n})\r\nexport class MultiSelectOptionComponent implements AfterContentInit, FocusableOption, OnInit, OnDestroy {\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private focusMonitor: FocusMonitor,\r\n private multiSelectService: MultiSelectService\r\n ) { }\r\n\r\n static ngAcceptInputType_disabled: BooleanInput;\r\n static ngAcceptInputType_selected: BooleanInput;\r\n\r\n @Input() optionsStyle: ('checkbox' | 'text') = 'checkbox';\r\n @Input() label?: string;\r\n @Input() value?: string;\r\n @Input() visible: boolean = true;\r\n @Output() selectedChange = new EventEmitter<boolean>();\r\n\r\n @ViewChild('contentDiv') content?: ElementRef;\r\n\r\n public hasContent = true;\r\n\r\n private multiselectVisibleSubscription!: Subscription;\r\n private dropdownVisible = false;\r\n\r\n @Input()\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n get disabled() {\r\n return this._disabled;\r\n }\r\n private _disabled = false;\r\n\r\n @Input()\r\n set selected(value: (boolean | undefined)) {\r\n const newValue = coerceBooleanProperty(value);\r\n if (this._selected !== newValue) {\r\n this._selected = newValue;\r\n this.selectedChange.emit(newValue);\r\n this.multiSelectService.toggleOption(this);\r\n }\r\n }\r\n get selected() {\r\n return this._selected;\r\n }\r\n private _selected = false;\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n 'form-multi-select-option': true,\r\n 'form-multi-selected': this.selected,\r\n [`form-multi-select-option-with-${this.optionsStyle}`]: !!this.optionsStyle,\r\n disabled: this.disabled,\r\n 'd-none': !this.visible\r\n };\r\n }\r\n\r\n @HostBinding('attr.tabindex')\r\n private get tabIndex() {\r\n return this.disabled ? '-1' : '0';\r\n }\r\n\r\n @HostBinding('attr.disabled')\r\n @HostBinding('attr.aria-disabled')\r\n private get ariaDisabled() {\r\n return this.disabled || null;\r\n }\r\n\r\n @HostBinding('attr.aria-selected')\r\n private get ariaSelected() {\r\n return this.selected;\r\n }\r\n\r\n @HostListener('keydown', ['$event'])\r\n onKeyDown($event: KeyboardEvent): void {\r\n if (['Enter', ' '].includes($event.key)) {\r\n $event.preventDefault();\r\n this.selected = this.disabled ? this.selected : !this.selected;\r\n this.focus('keyboard');\r\n }\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n private onClick(): void {\r\n this.selected = this.disabled ? this.selected : !this.selected;\r\n this.focus('mouse');\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n setTimeout(() => {\r\n this.hasContent = !!this.content?.nativeElement.childNodes.length;\r\n });\r\n if (!this.label) {\r\n this.label = this.elementRef.nativeElement.innerText || this.value;\r\n }\r\n if (this.value === undefined) {\r\n this.value = this.elementRef.nativeElement.innerText || this.label;\r\n }\r\n }\r\n\r\n getLabel(): string {\r\n return <string>(this.label ?? this.value);\r\n }\r\n\r\n focus(origin?: FocusOrigin): void {\r\n if (this.dropdownVisible) {\r\n this.focusMonitor.focusVia(this.elementRef, origin ?? 'program', {preventScroll: false});\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.multiselectVisibleSubscription.unsubscribe();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.multiselectVisibleSubscription = this.multiSelectService.multiSelectVisible$.subscribe(visible => {\r\n this.dropdownVisible = visible;\r\n });\r\n }\r\n}\r\n","<div #contentDiv><ng-content></ng-content></div>\r\n<div *ngIf=\"!hasContent\">\r\n {{label ?? value}}\r\n</div>\r\n\r\n","import {\r\n AfterContentInit,\r\n Component,\r\n ContentChildren,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n QueryList,\r\n SimpleChanges\r\n} from '@angular/core';\r\n\r\nimport { MultiSelectOptionComponent } from '../multi-select-option/multi-select-option.component';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-multi-select-optgroup',\r\n templateUrl: './multi-select-optgroup.component.html',\r\n styleUrls: ['./multi-select-optgroup.component.scss']\r\n})\r\nexport class MultiSelectOptgroupComponent implements AfterContentInit, OnChanges {\r\n\r\n static ngAcceptInputType_disabled: BooleanInput;\r\n\r\n @Input() label?: string;\r\n @Input()\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n private _disabled: boolean = false;\r\n\r\n @ContentChildren(MultiSelectOptionComponent, { descendants: true }) multiSelectOptions!: QueryList<MultiSelectOptionComponent>;\r\n\r\n @HostBinding('class') get hostClasses() {\r\n return {\r\n 'form-multi-select-options': true\r\n };\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.updateMultiSelectOptions();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['disabled']) {\r\n this.updateMultiSelectOptions();\r\n }\r\n }\r\n\r\n private updateMultiSelectOptions() {\r\n this.multiSelectOptions?.forEach((option) => {\r\n option.disabled = this.disabled;\r\n });\r\n }\r\n}\r\n","<c-multi-select-optgroup-label *ngIf=\"label\">{{label}}</c-multi-select-optgroup-label>\r\n<ng-content></ng-content>\r\n","import { Component, EventEmitter, HostBinding, HostListener, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { IOption } from '../multi-select.type';\r\nimport { MultiSelectService } from '../multi-select.service';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'c-multi-select-tag',\r\n templateUrl: './multi-select-tag.component.html',\r\n styleUrls: ['./multi-select-tag.component.scss']\r\n})\r\nexport class MultiSelectTagComponent implements OnDestroy, OnInit {\r\n\r\n constructor(\r\n private multiSelectService: MultiSelectService\r\n ) { }\r\n\r\n private multiselectVisibleSubscription!: Subscription;\r\n public multiselectVisible: boolean = false;\r\n\r\n @Input() option?: IOption;\r\n\r\n @Output() remove = new EventEmitter<IOption>();\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n 'form-multi-select-tag': true\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.multiselectSubscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.multiselectSubscribe(false);\r\n }\r\n\r\n handleRemove($event: any): void {\r\n if (this.option) {\r\n this.option.selected = false;\r\n this.remove.emit(this.option as IOption);\r\n }\r\n }\r\n\r\n private multiselectSubscribe(subscribe: boolean = true) {\r\n if (subscribe) {\r\n this.multiselectVisibleSubscription =\r\n this.multiSelectService.multiSelectVisible$.subscribe((visible) => {\r\n setTimeout(() => {\r\n this.multiselectVisible = visible;\r\n })\r\n });\r\n } else {\r\n this.multiselectVisibleSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n}\r\n","<ng-template [ngIfElse]=\"elseContent\"\r\n [ngIf]=\"!!option\">{{option.label ?? option.value ?? 'undefined'}}</ng-template>\r\n<ng-template #elseContent>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n<button (click)=\"handleRemove($event)\" *ngIf=\"!option?.disabled\" [disabled]=\"!multiselectVisible\" aria-label=\"Clear\"\r\n cButtonClose class=\"form-multi-select-tag-delete close btn btn-xs\" type=\"button\">\r\n <span aria-hidden=\"true\" class=\"visually-hidden\">x</span>\r\n</button>\r\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-multi-select-native-select',\r\n templateUrl: './multi-select-native-select.component.html',\r\n styleUrls: ['./multi-select-native-select.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class MultiSelectNativeSelectComponent {\r\n\r\n @Input() form?: string = '';\r\n @Input() id?: string = '';\r\n @Input() multiple?: boolean;\r\n @Input() name?: string;\r\n @Input() options?: any;\r\n @Input() disabled?: boolean;\r\n\r\n constructor(\r\n public changeDetectorRef: ChangeDetectorRef\r\n ) { }\r\n}\r\n","<select [multiple]=\"multiple\" [name]=\"name\" style=\"display: none\" tabindex=\"-1\" [id]=\"id\" [disabled]=\"disabled\">\r\n <option\r\n *ngFor=\"let option of options\"\r\n [label]=\"option.label\"\r\n [attr.selected]=\"option.selected ? '' : null\"\r\n [value]=\"option.value\"\r\n [disabled]=\"disabled\"\r\n tabindex=\"-1\"\r\n ></option>\r\n</select>\r\n\r\n","import {\r\n AfterContentInit,\r\n AfterViewInit,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChildren,\r\n ElementRef,\r\n EventEmitter,\r\n forwardRef,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n QueryList,\r\n Renderer2,\r\n ViewChild,\r\n ViewContainerRef\r\n} from '@angular/core';\r\nimport { FocusKeyManager, FocusMonitor, FocusOrigin } from '@angular/cdk/a11y';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\n\r\n// import { ListenersService } from '../../services/listeners.service';\r\nimport { IMultiSelect, IOption } from '../multi-select.type';\r\nimport { MultiSelectService } from '../multi-select.service';\r\nimport { MultiSelectOptionComponent } from '../multi-select-option/multi-select-option.component';\r\nimport { MultiSelectNativeSelectComponent } from '../multi-select-native-select/multi-select-native-select.component';\r\n\r\n// const flattenArray = (options: IOption[]): IOption[] => {\r\n// return options.reduce((acc: IOption[], val: IOption) => {\r\n// return acc.concat(Array.isArray(val.options) ? flattenArray(val.options) : val);\r\n// }, []);\r\n// };\r\n//\r\n// const getSelectedOptions = (options: IOption[]) => {\r\n// return flattenArray(options).filter((option: IOption) => {\r\n// if (option.selected) {\r\n// return option;\r\n// }\r\n// return;\r\n// });\r\n// };\r\n\r\ninterface IPluralMap {\r\n [k: string]: string;\r\n}\r\n\r\n@Component({\r\n selector: 'c-multi-select',\r\n templateUrl: './multi-select.component.html',\r\n styleUrls: ['./multi-select.component.scss'],\r\n exportAs: 'cMultiSelect',\r\n providers: [\r\n MultiSelectService,\r\n // ListenersService,\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MultiSelectComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class MultiSelectComponent\r\n implements IMultiSelect, ControlValueAccessor, AfterContentInit, AfterViewInit, OnDestroy, OnInit {\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private ngZone: NgZone,\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private viewContainerRef: ViewContainerRef,\r\n private focusMonitor: FocusMonitor,\r\n private multiSelectService: MultiSelectService\r\n // private listenersService: ListenersService\r\n ) {}\r\n\r\n static ngAcceptInputType_multiple: BooleanInput;\r\n static ngAcceptInputType_disabled: BooleanInput;\r\n\r\n onChange: any = (value: any) => {};\r\n\r\n writeValue(value: (string | string[])): void {\r\n if (value !== null) {\r\n this.value = value;\r\n }\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n\r\n @Input() cleaner = true;\r\n\r\n @Input()\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n private _disabled = false;\r\n\r\n @Input()\r\n set multiple(value: boolean) {\r\n this._multiple = coerceBooleanProperty(value);\r\n }\r\n get multiple(): boolean {\r\n return this._multiple;\r\n }\r\n private _multiple = false;\r\n\r\n @Input() nativeName = '';\r\n @Input() nativeId = '';\r\n // @Input() options = [];\r\n @Input() optionsMaxHeight = 'auto';\r\n @Input() optionsStyle: 'checkbox' | 'text' = 'checkbox';\r\n @Input() placeholder = 'Select...';\r\n @Input() search = true;\r\n @Input() searchNoResultsLabel = 'no items';\r\n @Input() selectAll = true;\r\n @Input() selectAllLabel = 'Select all options';\r\n @Input() selectionType: 'counter' | 'tags' | 'text' = 'tags';\r\n @Input() selectionTypeCounterText: string = 'item(s) selected';\r\n @Input() selectionTypeCounterTextPluralMap?: IPluralMap = { '=1': 'item selected', 'other': 'items selected' };\r\n\r\n @Input()\r\n set value(value: string | string[]) {\r\n const newValue = Array.isArray(value) ? [...value] : [value ?? ''];\r\n if (this._value.toString() !== newValue.toString()) {\r\n this._value = newValue;\r\n this.onChange(newValue);\r\n this.updateNativeSelect();\r\n this.valueChange.emit(this.value);\r\n }\r\n }\r\n get value() {\r\n return this.multiple ? [...this._value] : this._value[0]?.toString() ?? '';\r\n }\r\n private _value: string[] = [''];\r\n\r\n @Output() readonly valueChange = new EventEmitter<string | string[]>();\r\n\r\n @Input()\r\n set visible(value: boolean) {\r\n const newValue = coerceBooleanProperty(value);\r\n if (newValue !== this._visible) {\r\n this._visible = newValue;\r\n this.multiSelectService.toggleVisible(newValue);\r\n if (newValue) {\r\n this.listKeyManager.setFirstItemActive();\r\n }\r\n }\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible = false;\r\n\r\n @Output() readonly visibleChange = new EventEmitter<boolean>();\r\n\r\n isDropdownVisible = false;\r\n\r\n set selectedOptions(value) {\r\n this._selectedOptions = value;\r\n this.value = this.selectedOptions.map(item => item.value);\r\n this.inputElementSize();\r\n }\r\n get selectedOptions() {\r\n return this._selectedOptions;\r\n }\r\n private _selectedOptions: any[] = [];\r\n\r\n get selectedOptionsText() {\r\n return this.selectedOptions.map((option) => option.label).join(', ');\r\n }\r\n\r\n get counterText() {\r\n return `${this.selectedOptions.length} ${this.selectionTypeCounterText}`;\r\n }\r\n\r\n get counterTextType(): string {\r\n return typeof this.selectionTypeCounterTextPluralMap ?? typeof this.selectionTypeCounterText;\r\n };\r\n\r\n private multiselectStateSubscription!: Subscription;\r\n private multiselectVisibleSubscription!: Subscription;\r\n private multiSelectOptionsSubscription!: Subscription;\r\n private focusMonitorSubscription!: Subscription;\r\n\r\n @ContentChildren(MultiSelectOptionComponent, { descendants: true }) multiSelectOptions!: QueryList<MultiSelectOptionComponent>;\r\n\r\n private listKeyManager!: FocusKeyManager<MultiSelectOptionComponent>;\r\n\r\n @ViewChild('inputElement') inputElement!: ElementRef;\r\n @ViewChild('dropdownElement') dropdownElement!: ElementRef;\r\n\r\n @HostBinding('class') get hostClasses() {\r\n return {\r\n 'form-multi-select': true,\r\n 'form-multi-select-selection-tags': this.selectionType === 'tags',\r\n show: this.visible,\r\n disabled: this.disabled\r\n };\r\n }\r\n\r\n @HostBinding('attr.tabindex')\r\n private get tabIndex() {\r\n return this._tabIndex;\r\n }\r\n private set tabIndex(value) {\r\n setTimeout(() => {\r\n this._tabIndex = this.disabled || this.search ? '-1' : value === null ? null : '0';\r\n });\r\n }\r\n private _tabIndex: string | null = '-1';\r\n\r\n @HostListener('keyup', ['$event']) onKeyUp($event: KeyboardEvent): void {\r\n if (this.disabled) return;\r\n\r\n if ($event.key === 'Escape') {\r\n this.visible = false;\r\n this.searchValue = '';\r\n this.setFocus();\r\n return;\r\n }\r\n if (['Enter', ' ', 'ArrowDown'].includes($event.key) && [this.inputElement?.nativeElement ?? this.elementRef.nativeElement].includes($event.target)) {\r\n this.visible = true;\r\n if (!this.search) {\r\n this.setFocus();\r\n }\r\n return;\r\n }\r\n if ($event.key === 'Tab' && $event.target === this.elementRef.nativeElement) {\r\n this.visible = true;\r\n if (!this.search) {\r\n this.setFocus();\r\n }\r\n return;\r\n }\r\n }\r\n\r\n @HostListener('keydown', ['$event']) onKeyDown($event: KeyboardEvent) {\r\n if (this.disabled) return;\r\n this.listKeyManager.onKeydown($event);\r\n }\r\n\r\n @HostListener('click', ['$event']) onClick($event: MouseEvent): void {\r\n if (this.disabled) return;\r\n if (!this.visible) {\r\n this.visible = true;\r\n }\r\n }\r\n\r\n public visibleOptions = 0;\r\n\r\n set searchValue(value) {\r\n this._searchValue = value.trim();\r\n this.visible = !!this.searchValue.length || this.visible;\r\n this.filterOptions(this.searchValue);\r\n this.inputElementSize();\r\n }\r\n get searchValue() {\r\n return this._searchValue;\r\n }\r\n private _searchValue: string = '';\r\n\r\n get subtreeFocused() {\r\n return this._subtreeFocused;\r\n }\r\n set subtreeFocused(value: boolean) {\r\n this._subtreeFocused = this.disabled ? false : value;\r\n this.visible = value === false ? false : this.visible;\r\n }\r\n private _subtreeFocused = this.focusOrigin(null);\r\n\r\n private nativeSelectRef!: any;\r\n\r\n focusOrigin(origin: FocusOrigin): boolean {\r\n const focused = !!origin;\r\n this.searchValue = focused ? this.searchValue : '';\r\n return focused;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.tabIndex = '0';\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.multiselectSubscribe(false);\r\n // this.clearListeners();\r\n this.focusMonitor.stopMonitoring(this.elementRef);\r\n this.focusMonitorSubscription?.unsubscribe();\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.visibleOptions = this.multiSelectOptions.length;\r\n this.multiSelectOptions.forEach((option, index) => {\r\n option.optionsStyle = this.optionsStyle;\r\n option.selected = option.value !== undefined ? this.value.includes(option.value) || option.selected : option.selected;\r\n });\r\n this.selectedOptionsUpdate();\r\n this.inputElementSize();\r\n\r\n this.listKeyManager = new FocusKeyManager(this.multiSelectOptions).withHomeAndEnd().withTypeAhead();\r\n this.listKeyManager.skipPredicate(item => (!item.visible || item.disabled));\r\n this.listKeyManager.setFirstItemActive();\r\n this.multiselectSubscribe();\r\n this.createNativeSelect();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n // this.setListeners();\r\n this.focusMonitorSubscription = this.focusMonitor.monitor(this.elementRef, true).subscribe((origin) =>\r\n this.ngZone.run(() => {\r\n if (!this.disabled) {\r\n this.subtreeFocused = this.focusOrigin(origin);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n })\r\n );\r\n this.inputElementSize();\r\n }\r\n\r\n private multiselectSubscribe(subscribe: boolean = true) {\r\n if (subscribe) {\r\n this.multiselectVisibleSubscription = this.multiSelectService.multiSelectVisible$.subscribe(\r\n (visible) => {\r\n this.isDropdownVisible = visible;\r\n this.visibleChange.emit(visible);\r\n }\r\n );\r\n\r\n this.multiselectStateSubscription = this.multiSelectService.multiSelectState$.subscribe(\r\n (option) => {\r\n if (option.selected === true && !this.multiple) {\r\n const selectedOptions = this.multiSelectOptions.toArray().filter((item) => item.selected);\r\n selectedOptions.reverse().forEach((item) => {\r\n if (item !== option) {\r\n item.selected = false;\r\n }\r\n });\r\n }\r\n this.selectedOptionsUpdate();\r\n }\r\n );\r\n } else {\r\n this.multiselectVisibleSubscription?.unsubscribe();\r\n this.multiSelectOptionsSubscription?.unsubscribe();\r\n this.multiselectStateSubscription?.unsubscribe();\r\n }\r\n }\r\n\r\n clearAllOptions($event: MouseEvent) {\r\n this.selectedOptions.forEach((option) => {\r\n if (!option._disabled) option.selected = false;\r\n });\r\n this.setFocus();\r\n }\r\n\r\n selectAllOptions() {\r\n this.multiSelectOptions.forEach((option, index) => {\r\n if (!option.disabled) option.selected = true;\r\n });\r\n }\r\n\r\n // private setListeners() {\r\n // if (this.search) {\r\n // const configForInput: IListenersConfig = {\r\n // hostElement: this.inputElement ?? this.elementRef,\r\n // trigger: ['focus', 'click'],\r\n // callbackOn: () => {\r\n // console.log('focus input');\r\n // this.tabIndex = null;\r\n // // this.visible = true;\r\n // }\r\n // };\r\n // this.listenersService.setListeners(configForInput);\r\n // }\r\n //\r\n // const configForHost: IListenersConfig = {\r\n // hostElement: this.elementRef,\r\n // trigger: ['focus'],\r\n // callbackOn: () => {\r\n // console.log('focus');\r\n // if (this.inputElement) {\r\n // this.setFocus()\r\n // }\r\n // // this.inputElement?.nativeElement.focus();\r\n // },\r\n // callbackOff: () => {\r\n // console.log('blur');\r\n // }\r\n // };\r\n // this.listenersService.setListeners(configForHost);\r\n // }\r\n\r\n // private clearListeners() {\r\n // this.listenersService.clearListeners();\r\n // }\r\n\r\n handleTagRemove($event: IOption) {\r\n this.setFocus();\r\n }\r\n\r\n setFocus() {\r\n if (this.disabled) return;\r\n this.focusMonitor.focusVia(this.inputElement ?? this.elementRef, 'program');\r\n }\r\n\r\n // setFirstSelectedOptionActive() {\r\n // const firstSelectedOption = this.selectedOptions.find((item) => item.selected) ??\r\n // this.multiSelectOptions.find((item, index) => index === 0);\r\n // if (firstSelectedOption && this.isDropdownVisible) {\r\n // // this.listKeyManager.setFocusOrigin('keyboard');\r\n // this.listKeyManager.setActiveItem(firstSelectedOption);\r\n // this.changeDetectorRef.markForCheck();\r\n // } else {\r\n // // this.listKeyManager.setFocusOrigin('keyboard');\r\n // this.listKeyManager.setFirstItemActive();\r\n // this.changeDetectorRef.markForCheck();\r\n // }\r\n // }\r\n\r\n filterOptions(value: string) {\r\n const searchString = value.toLowerCase() ?? '';\r\n this.multiSelectOptions?.forEach((item, index) => {\r\n if (!!searchString) {\r\n item.visible = item.label?.toLowerCase().includes(searchString) ?? true;\r\n } else {\r\n item.visible = true;\r\n }\r\n });\r\n this.visibleOptions = this.multiSelectOptions?.filter((item) => item.visible).length;\r\n }\r\n\r\n createNativeSelect() {\r\n this.viewContainerRef.clear();\r\n this.nativeSelectRef = this.viewContainerRef.createComponent(MultiSelectNativeSelectComponent);\r\n this.updateNativeSelect();\r\n }\r\n\r\n updateNativeSelect() {\r\n if (!this.nativeSelectRef) return;\r\n\r\n const options = this.selectedOptions.map(item => {\r\n const { selected, value, label } = item;\r\n return { selected, value, label };\r\n });\r\n\r\n this.nativeSelectRef.instance.multiple = this.multiple;\r\n this.nativeSelectRef.instance.name = this.nativeName;\r\n this.nativeSelectRef.instance.form = this.nativeId;\r\n this.nativeSelectRef.instance.options = [...options];\r\n this.nativeSelectRef.instance.disabled = this.disabled;\r\n this.nativeSelectRef.instance.changeDetectorRef.detectChanges();\r\n }\r\n\r\n inputElementSize() {\r\n if (this.inputElement) {\r\n if (this.selectedOptions.length > 0 || this.selectionType === 'counter') {\r\n this.renderer.setAttribute(this.inputElement.nativeElement, 'size', (this.searchValue.length + 2).toString());\r\n } else {\r\n this.renderer.removeAttribute(this.inputElement.nativeElement, 'size');\r\n }\r\n }\r\n }\r\n\r\n handleSearchKeyDown($event: KeyboardEvent) {\r\n if (this.searchValue.length || this.selectedOptions.length === 0) return;\r\n\r\n if (['Backspace', 'Delete'].includes($event.key)) {\r\n $event.stopPropagation();\r\n const last = this.selectedOptions.filter(option => !option.disabled).pop();\r\n this.selectOption(last, false);\r\n }\r\n }\r\n\r\n private selectOption(option: MultiSelectOptionComponent, selected: boolean) {\r\n this.multiSelectOptions.forEach(item => {\r\n if (item === option) {\r\n option.selected = selected;\r\n }\r\n });\r\n this.selectedOptionsUpdate();\r\n }\r\n\r\n private selectedOptionsUpdate() {\r\n setTimeout(() => {\r\n this.selectedOptions = this.multiSelectOptions.filter((option) => !!option.selected);\r\n this.changeDetectorRef.markForCheck();\r\n })\r\n }\r\n}\r\n","<div class=\"form-multi-select-selection\">\r\n <ng-template [ngIf]=\"selectionType === 'tags'\">\r\n <c-multi-select-tag *ngFor=\"let option of selectedOptions; index as i\"\r\n (remove)=\"handleTagRemove($event)\"\r\n [option]=\"option\"\r\n tabindex=\"-1\">\r\n </c-multi-select-tag>\r\n </ng-template>\r\n <ng-template [ngIf]=\"selectionType === 'text' && !!selectedOptionsText\">\r\n <span>{{ selectedOptionsText }}</span>\r\n </ng-template>\r\n <ng-template [ngIf]=\"selectionType === 'counter'\">\r\n <span *ngIf=\"counterTextType === 'string'; else pluralMap\">{{ counterText }}</span>\r\n <ng-template #pluralMap>\r\n <span>{{selectedOptions.length}} {{ selectedOptions.length | i18nPlural: selectionTypeCounterTextPluralMap ?? { other: counterText } }}</span>\r\n </ng-template>\r\n </ng-template>\r\n <ng-template [ngIf]=\"!search && selectedOptions.length === 0 && selectionType !== 'counter'\">\r\n <span>{{ placeholder }}</span>\r\n </ng-template>\r\n</div>\r\n\r\n<input\r\n #inputElement\r\n (keydown)=\"handleSearchKeyDown($event)\"\r\n *ngIf=\"search && !disabled\"\r\n [(ngModel)]=\"searchValue\"\r\n [disabled]=\"disabled || !search\"\r\n [ngClass]=\"{ 'form-multi-select-search': true, disabled: disabled }\"\r\n [placeholder]=\"selectedOptions.length === 0 && selectionType !== 'counter' ? placeholder : ''\"\r\n autocomplete=\"off\"\r\n tabindex=\"{{ disabled ? '-1' : '0' }}\"\r\n type=\"text\"\r\n>\r\n\r\n<button\r\n (click)=\"clearAllOptions($event)\"\r\n *ngIf=\"cleaner && selectedOptions.length > 0 && !disabled\"\r\n [disabled]=\"disabled || !isDropdownVisible\"\r\n aria-label=\"Clear all\"\r\n cButtonClose\r\n class=\"form-multi-select-selection-cleaner\"\r\n size=\"sm\"\r\n></button>\r\n\r\n<div #dropdownElement *ngIf=\"!disabled\" class=\"form-multi-select-dropdown\">\r\n <ng-template [ngIfElse]=\"optionsEmpty\" [ngIf]=\"visibleOptions > 0\">\r\n <button (click)=\"selectAllOptions()\" *ngIf=\"selectAll && multiple\" class=\"form-multi-select-all\">\r\n {{ selectAllLabel }}\r\n </button>\r\n <div #multiselectOptionsDiv\r\n [ngStyle]=\"optionsMaxHeight !== 'auto' ? { 'maxHeight.px': optionsMaxHeight, overflow: 'scroll' } : {}\"\r\n class=\"form-multi-select-options\"\r\n >\r\n <ng-content></ng-content>\r\n </div>\r\n </ng-template>\r\n <ng-template #optionsEmpty>\r\n <div class=\"form-multi-select-options-empty\">{{ searchNoResultsLabel }}</div>\r\n </ng-template>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\n\r\nimport { ButtonModule } from '../button';\r\n\r\nimport { MultiSelectService } from './multi-select.service';\r\nimport { MultiSelectComponent } from './multi-select/multi-select.component';\r\nimport { MultiSelectOptionComponent } from './multi-select-option/multi-select-option.component';\r\nimport { MultiSelectTagComponent } from './multi-select-tag/multi-select-tag.component';\r\nimport { MultiSelectOptgroupComponent } from './multi-select-optgroup/multi-select-optgroup.component';\r\nimport { MultiSelectOptgroupLabelComponent } from './multi-select-optgroup/multi-select-optgroup-label.component';\r\nimport { MultiSelectNativeSelectComponent } from './multi-select-native-select/multi-select-native-select.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n MultiSelectComponent,\r\n MultiSelectOptionComponent,\r\n MultiSelectOptgroupComponent,\r\n MultiSelectOptgroupLabelComponent,\r\n MultiSelectTagComponent,\r\n MultiSelectNativeSelectComponent\r\n ],\r\n imports: [CommonModule, A11yModule, ButtonModule, FormsModule],\r\n exports: [\r\n MultiSelectComponent,\r\n MultiSelectOptionComponent,\r\n MultiSelectOptgroupComponent,\r\n MultiSelectOptgroupLabelComponent,\r\n MultiSelectTagComponent\r\n ],\r\n providers: [MultiSelectService]\r\n})\r\nexport class MultiSelectModule {\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: '[cNavLink]'\r\n})\r\nexport class NavLinkDirective {\r\n\r\n static ngAcceptInputType_cNavLink: BooleanInput;\r\n static ngAcceptInputType_disabled: BooleanInput;\r\n\r\n /**\r\n * Sets .nav-link class to the host. [docs]\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input()\r\n set cNavLink(value: boolean) {\r\n this._cNavLink = coerceBooleanProperty(value);\r\n };\r\n get cNavLink() {\r\n return this._cNavLink;\r\n }\r\n private _cNavLink = true\r\n\r\n /**\r\n * Toggle the active state for the component. [docs]\r\n * @type boolean\r\n */\r\n @Input() active?: boolean;\r\n /**\r\n * Set disabled attr for the host element. [docs]\r\n * @type boolean\r\n */\r\n @Input()\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n private _disabled = false;\r\n\r\n @HostBinding('attr.aria-current')\r\n get ariaCurrent(): string | null {\r\n return this.active ? 'page' : null;\r\n }\r\n\r\n @HostBinding('attr.aria-disabled')\r\n get isDisabled(): boolean | null {\r\n return this.disabled || null;\r\n }\r\n\r\n @HostBinding('attr.disabled')\r\n get attrDisabled () {\r\n return this.disabled ? '' : null;\r\n };\r\n\r\n @HostBinding('attr.tabindex')\r\n get getTabindex(): string | null {\r\n return this.disabled ? '-1' : null;\r\n }\r\n\r\n @HostBinding('style.cursor')\r\n get getCursorStyle(): string | null {\r\n return this.disabled ? null : 'pointer';\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'nav-link': this.cNavLink,\r\n disabled: this.disabled,\r\n active: this.active\r\n };\r\n }\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-nav-item',\r\n templateUrl: './nav-item.component.html',\r\n styleUrls: ['./nav-item.component.scss']\r\n})\r\nexport class NavItemComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'nav-item': true\r\n };\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { Component, HostBinding, Input } from '@angular/core';\n\n@Component({\n selector: 'c-nav',\n template: `\n <ng-content></ng-content>`,\n styleUrls: ['./nav.component.scss']\n})\nexport class NavComponent {\n /**\n * Specify a layout type for component.\n * @type {'fill' | 'justified'}\n */\n @Input() layout?: 'fill' | 'justified';\n /**\n * Set the nav variant to tabs or pills.\n * @type {'tabs' | 'pills' | 'underline'}\n */\n @Input() variant?: '' | 'tabs' | 'pills' | 'underline';\n\n @HostBinding('class')\n get hostClasses(): any {\n return {\n nav: true,\n [`nav-${this.layout}`]: !!this.layout,\n [`nav-${this.variant}`]: !!this.variant\n };\n }\n}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NavComponent } from './nav.component';\r\nimport { NavItemComponent } from './nav-item.component';\r\nimport { NavLinkDirective } from './nav-link.directive';\r\n\r\n@NgModule({\r\n declarations: [NavComponent, NavItemComponent, NavLinkDirective],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [NavComponent, NavItemComponent, NavLinkDirective]\r\n})\r\nexport class NavModule { }\r\n","import { AfterContentInit, Component, ContentChild, ElementRef, HostBinding, Input } from '@angular/core';\r\n\r\nimport { BreakpointObserver } from '@angular/cdk/layout';\r\n\r\nimport { CollapseDirective } from '../collapse';\r\nimport { Colors } from '../coreui.types';\r\n\r\n// todo: fix container prop issue not rendering children\r\n// todo: workaroud - use <c-container> component directly in template\r\n\r\n@Component({\r\n selector: 'c-navbar',\r\n templateUrl: './navbar.component.html',\r\n styleUrls: ['./navbar.component.scss']\r\n})\r\nexport class NavbarComponent implements AfterContentInit {\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Sets if the color of text should be colored for a light or dark dark background.\r\n */\r\n @Input() colorScheme?: 'dark' | 'light' = 'light';\r\n /**\r\n * Defines optional container wrapping children elements.\r\n */\r\n @Input() container?: boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | 'fluid';\r\n /**\r\n * Defines the responsive breakpoint to determine when content collapses.\r\n */\r\n @Input() expand?: boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';\r\n /**\r\n * Place component in non-static positions.\r\n */\r\n @Input() placement?: 'fixed-top' | 'fixed-bottom' | 'sticky-top';\r\n\r\n @ContentChild(CollapseDirective) collapse!: CollapseDirective;\r\n\r\n @HostBinding('attr.role')\r\n @Input() role = 'navigation';\r\n\r\n constructor(\r\n private hostElement: ElementRef,\r\n private breakpointObserver: BreakpointObserver\r\n ) {}\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n const expandClassSuffix: string = this.expand === true ? '' : `-${this.expand}`;\r\n return {\r\n navbar: true,\r\n 'navbar-light': this.colorScheme === 'light',\r\n 'navbar-dark': this.colorScheme === 'dark',\r\n [`navbar-expand${expandClassSuffix}`]: !!this.expand,\r\n [`bg-${this.color}`]: !!this.color,\r\n [`${this.placement}`]: !!this.placement\r\n };\r\n }\r\n\r\n get containerClass(): string {\r\n return `container${this.container !== true ? '-' + this.container : ''}`;\r\n }\r\n\r\n get breakpoint(): string | boolean {\r\n if (typeof this.expand === 'string') {\r\n return getComputedStyle(this.hostElement.nativeElement).getPropertyValue(`--cui-breakpoint-${this.expand}`);\r\n }\r\n return false;\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n if (this.breakpoint) {\r\n const onBreakpoint = `(min-width: ${this.breakpoint})`;\r\n this.breakpointObserver.observe([onBreakpoint]).subscribe(result => {\r\n if (this.collapse) {\r\n const animate = this.collapse.animate;\r\n this.collapse.toggle(false);\r\n this.collapse.animate = false;\r\n setTimeout(() => {\r\n this.collapse.toggle(result.matches);\r\n setTimeout(() => {\r\n this.collapse.animate = animate;\r\n });\r\n });\r\n }\r\n });\r\n }\r\n }\r\n}\r\n","<ng-container *ngTemplateOutlet=\"container ? withContainerTemplate : noContainerTemplate\"></ng-container>\r\n\r\n<ng-template #withContainerTemplate>\r\n <div [ngClass]=\"containerClass\">\r\n <ng-content></ng-content>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #noContainerTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cNavbarBrand]'\r\n})\r\nexport class NavbarBrandDirective {\r\n\r\n @HostBinding('class.navbar-brand') navbarBrand = true;\r\n @HostBinding('attr.role') role = 'button';\r\n\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-navbar-nav',\r\n template: '<ng-content></ng-content>',\r\n})\r\nexport class NavbarNavComponent {\r\n\r\n static ngAcceptInputType_scroll: BooleanInput;\r\n\r\n /**\r\n * Enable vertical scrolling of a collapsed navbar toggleable contents.\r\n * @type boolean\r\n */\r\n @Input()\r\n set scroll(value: boolean) {\r\n this._scroll = coerceBooleanProperty(value);\r\n };\r\n get scroll() {\r\n return this._scroll;\r\n }\r\n private _scroll = false;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'navbar-nav': true,\r\n 'navbar-nav-scroll': this.scroll\r\n };\r\n }\r\n\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-navbar-text',\r\n template: '<ng-content></ng-content>',\r\n})\r\nexport class NavbarTextComponent {\r\n\r\n @HostBinding('class.navbar-text') navbarTextClass = true;\r\n\r\n}\r\n","import { AfterContentInit, Directive, ElementRef, HostBinding, HostListener, Input, Renderer2 } from '@angular/core';\r\nimport { CollapseDirective } from '../../collapse';\r\n\r\n@Directive({\r\n selector: '[cNavbarToggler]'\r\n})\r\nexport class NavbarTogglerDirective implements AfterContentInit {\r\n /**\r\n * Reference to navbar collapse element (via # template variable) . [docs]\r\n * @type string\r\n * @default 'button'\r\n */\r\n @Input('cNavbarToggler') collapseRef?: CollapseDirective;\r\n @HostBinding('class.navbar-toggler') navbarToggler = true;\r\n /**\r\n * Default type for navbar-toggler. [docs]\r\n * @type string\r\n * @default 'button'\r\n */\r\n @HostBinding('attr.type')\r\n @Input() type = 'button';\r\n /**\r\n * Default aria-label attr for navbar-toggler. [docs]\r\n * @type string\r\n * @default 'Toggle navigation'\r\n */\r\n @HostBinding('attr.aria-label')\r\n @Input() ariaLabel = 'Toggle navigation';\r\n\r\n private hasContent!: boolean;\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef\r\n ) { }\r\n\r\n @HostListener('click', ['$event'])\r\n handleClick() {\r\n this.collapseRef?.toggle(!this.collapseRef?.visible);\r\n }\r\n\r\n addDefaultIcon(): void {\r\n const span = this.renderer.createElement('span');\r\n this.renderer.addClass(span, 'navbar-toggler-icon');\r\n this.renderer.appendChild(this.hostElement.nativeElement, span);\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.hasContent = this.hostElement.nativeElement.childNodes.length as boolean;\r\n if (!this.hasContent) {\r\n this.addDefaultIcon();\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { NavbarComponent } from './navbar.component';\r\nimport { NavbarBrandDirective } from './navbar-brand/navbar-brand.directive';\r\nimport { NavbarNavComponent } from './navbar-nav/navbar-nav.component';\r\nimport { NavbarTextComponent } from './navbar-text/navbar-text.component';\r\nimport { NavbarTogglerDirective } from './navbar-toggler/navbar-toggler.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n NavbarComponent,\r\n NavbarNavComponent,\r\n NavbarTextComponent,\r\n NavbarBrandDirective,\r\n NavbarTogglerDirective\r\n ],\r\n exports: [\r\n NavbarComponent,\r\n NavbarNavComponent,\r\n NavbarTextComponent,\r\n NavbarBrandDirective,\r\n NavbarTogglerDirective\r\n ],\r\n imports: [\r\n CommonModule,\r\n RouterModule\r\n ]\r\n})\r\nexport class NavbarModule { }\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-modal-body',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./modal-body.component.scss']\r\n})\r\nexport class ModalBodyComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'modal-body': true,\r\n };\r\n }\r\n}\r\n","import { Component, ElementRef, HostBinding, HostListener } from '@angular/core';\r\nimport { InteractivityChecker } from '@angular/cdk/a11y';\r\n\r\n@Component({\r\n selector: 'c-modal-content',\r\n template: '<ng-content></ng-content>'\r\n})\r\nexport class ModalContentComponent {\r\n\r\n constructor(\r\n private hostElement: ElementRef,\r\n private interactivityChecker: InteractivityChecker\r\n ) { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'modal-content': true\r\n };\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n public onClickHandler($event: MouseEvent): boolean {\r\n $event.stopPropagation();\r\n const targetElement = $event.target;\r\n return this.hostElement?.nativeElement?.contains(targetElement) &&\r\n this.interactivityChecker.isFocusable((targetElement as HTMLElement));\r\n }\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-modal-dialog',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./modal-dialog.component.scss'],\r\n})\r\nexport class ModalDialogComponent {\r\n /**\r\n * Align the modal in the center or top of the screen.\r\n * @type {'top' | 'center'}\r\n */\r\n @Input() alignment?: 'top' | 'center';\r\n /**\r\n * Set modal to covers the entire user viewport.\r\n * @type {boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'}\r\n */\r\n @Input() fullscreen?: boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';\r\n /**\r\n * Does the modal dialog itself scroll, or does the whole dialog scroll within the window.\r\n * @type boolean\r\n */\r\n @Input() scrollable?: boolean;\r\n /**\r\n * Size the component small, large, or extra large.\r\n */\r\n @Input() size?: 'sm' | 'lg' | 'xl';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'modal-dialog': true,\r\n 'modal-dialog-centered': this.alignment === 'center',\r\n 'modal-fullscreen': this.fullscreen === true,\r\n [`modal-fullscreen-${this.fullscreen}-down`]: this.fullscreen,\r\n 'modal-dialog-scrollable': this.scrollable,\r\n [`modal-${this.size}`]: this.size\r\n };\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { ModalComponent } from './modal/modal.component';\r\n\r\nexport interface IModalAction {\r\n show?: boolean | 'toggle';\r\n modal?: ModalComponent;\r\n id?: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ModalService {\r\n\r\n private modalState = new Subject<any>();\r\n modalState$ = this.modalState.asObservable();\r\n\r\n constructor() {}\r\n\r\n toggle(action: IModalAction): void {\r\n this.modalState.next(action);\r\n }\r\n}\r\n","import { Directive, HostListener, Input } from '@angular/core';\r\n\r\nimport { ModalService } from '../modal.service';\r\n\r\n@Directive({\r\n selector: '[cModalToggle]'\r\n})\r\nexport class ModalToggleDirective {\r\n /**\r\n * Html id attr of modal to dismiss.\r\n */\r\n @Input('cModalToggle') id: string | undefined;\r\n\r\n constructor(\r\n private modalService: ModalService\r\n ) { }\r\n\r\n @HostListener('click', ['$event'])\r\n dismiss($event: any): void {\r\n $event.preventDefault();\r\n this.modalService.toggle({show: 'toggle', id: this.id});\r\n }\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-modal-footer',\r\n template: '<ng-content></ng-content>',\r\n})\r\nexport class ModalFooterComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'modal-footer': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-modal-header',\r\n template: `\r\n <ng-content></ng-content>`,\r\n})\r\nexport class ModalHeaderComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'modal-header': true\r\n };\r\n }\r\n\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cModalTitle]'\r\n})\r\nexport class ModalTitleDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'modal-title': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Inject, Injectable, Renderer2, RendererFactory2 } from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BackdropService {\r\n\r\n private backdropClick = new Subject<boolean>();\r\n backdropClick$ = this.backdropClick.asObservable();\r\n\r\n private renderer: Renderer2;\r\n private unListen!: () => void;\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n private rendererFactory: RendererFactory2\r\n ) {\r\n this.renderer = rendererFactory.createRenderer(null, null);\r\n }\r\n\r\n setBackdrop(type: string = 'modal'): any {\r\n const backdropElement = this.renderer.createElement('div');\r\n this.renderer.addClass(backdropElement, `${type}-backdrop`);\r\n this.renderer.addClass(backdropElement, 'fade');\r\n this.renderer.appendChild(this.document.body, backdropElement);\r\n this.unListen = this.renderer.listen(backdropElement, 'click', (e): void => {\r\n this.onClickHandler();\r\n });\r\n setTimeout(() => {\r\n this.renderer.addClass(backdropElement, 'show');\r\n });\r\n return backdropElement;\r\n }\r\n\r\n clearBackdrop(backdrop: any): any {\r\n if (backdrop) {\r\n this.unListen();\r\n this.renderer.removeClass(backdrop, 'show');\r\n setTimeout(() => {\r\n this.renderer.removeChild(this.document.body, backdrop);\r\n backdrop = undefined;\r\n }, 300);\r\n }\r\n return backdrop;\r\n }\r\n\r\n onClickHandler(): void {\r\n this.backdropClick.next(true);\r\n }\r\n}\r\n","import {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Inject,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n Renderer2,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { animate, AnimationEvent, state, style, transition, trigger } from '@angular/animations';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { ModalService } from '../modal.service';\r\nimport { BackdropService } from '../../backdrop/backdrop.service';\r\nimport { ModalContentComponent } from '../modal-content/modal-content.component';\r\n\r\n@Component({\r\n selector: 'c-modal',\r\n animations: [\r\n trigger('showHide', [\r\n state(\r\n 'visible',\r\n style({\r\n display: 'block'\r\n })\r\n ),\r\n state(\r\n 'hidden',\r\n style({\r\n display: 'none'\r\n })\r\n ),\r\n transition('visible <=> *', [animate('300ms')],)\r\n ])\r\n ],\r\n templateUrl: './modal.component.html',\r\n styleUrls: ['./modal.component.scss'],\r\n exportAs: 'cModal'\r\n})\r\nexport class ModalComponent implements OnInit, OnDestroy {\r\n\r\n static ngAcceptInputType_scrollable: BooleanInput;\r\n static ngAcceptInputType_visible: BooleanInput;\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef,\r\n private modalService: ModalService,\r\n private backdropService: BackdropService\r\n ) { }\r\n\r\n /**\r\n * Align the modal in the center or top of the screen.\r\n * @type {'top' | 'center'}\r\n * @default 'top'\r\n */\r\n @Input() alignment?: 'top' | 'center' = 'top';\r\n /**\r\n * Apply a backdrop on body while modal is open.\r\n * @type boolean | 'static'\r\n * @default true\r\n */\r\n @Input() backdrop: boolean | 'static' = true;\r\n /**\r\n * Set modal to cover the entire user viewport.\r\n * @type {boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'}\r\n * @default undefined\r\n */\r\n @Input() fullscreen?: boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';\r\n /**\r\n * Closes the modal when escape key is pressed.\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input() keyboard = true;\r\n @Input() id?: string;\r\n /**\r\n * Size the component small, large, or extra large.\r\n */\r\n @Input() size?: 'sm' | 'lg' | 'xl';\r\n /**\r\n * Remove animation to create modal that simply appear rather than fade in to view.\r\n */\r\n @Input() transition = true;\r\n /**\r\n * Default role for modal. [docs]\r\n * @type string\r\n * @default 'dialog'\r\n */\r\n @Input() @HostBinding('attr.role') role = 'dialog';\r\n /**\r\n * Set aria-modal html attr for modal. [docs]\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input() @HostBinding('attr.aria-modal') ariaModal = true;\r\n\r\n /**\r\n * Create a scrollable modal that allows scrolling the modal body.\r\n * @type boolean\r\n */\r\n @Input()\r\n set scrollable(value: boolean) {\r\n this._scrollable = coerceBooleanProperty(value);\r\n }\r\n get scrollable(): boolean {\r\n return this._scrollable;\r\n }\r\n private _scrollable = false;\r\n\r\n /**\r\n * Toggle the visibility of modal component.\r\n * @type boolean\r\n */\r\n @Input()\r\n set visible(value: boolean) {\r\n const newValue = coerceBooleanProperty(value);\r\n if(this._visible !== newValue) {\r\n this._visible = newValue;\r\n this.setBackdrop(this.backdrop !== false && newValue);\r\n this.setBodyStyles(newValue);\r\n this.visibleChange.emit(newValue);\r\n }\r\n }\r\n get visible(): boolean {\r\n return this._visible;\r\n }\r\n private _visible!: boolean;\r\n\r\n /**\r\n * Event triggered on modal dismiss.\r\n */\r\n @Output() visibleChange = new EventEmitter<boolean>();\r\n\r\n @ViewChild(ModalContentComponent, {read: ElementRef}) modalContent!: ElementRef;\r\n private activeBackdrop!: any;\r\n private stateToggleSubscription!: Subscription;\r\n private inBoundingClientRect!: boolean;\r\n\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n modal: true,\r\n fade: this.transition,\r\n show: this.show,\r\n };\r\n }\r\n\r\n @HostBinding('attr.aria-hidden')\r\n get ariaHidden(): boolean | null {\r\n return this.visible ? null : true;\r\n };\r\n\r\n @HostBinding('attr.tabindex')\r\n get tabIndex(): string | null {\r\n return '-1';\r\n }\r\n\r\n @HostBinding('@showHide')\r\n get animateTrigger(): string {\r\n return this.visible ? 'visible' : 'hidden';\r\n }\r\n\r\n private _show = true;\r\n get show(): boolean {\r\n return this.visible && this._show;\r\n }\r\n set show(value: boolean) {\r\n this._show = value;\r\n }\r\n\r\n private get scrollbarWidth() {\r\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\r\n const documentWidth = this.document.documentElement.clientWidth;\r\n const scrollbarWidth = Math.abs((window?.innerWidth ?? documentWidth) - documentWidth);\r\n return `${scrollbarWidth}px`;\r\n }\r\n\r\n @HostListener('@showHide.start', ['$event'])\r\n animateStart(event: AnimationEvent) {\r\n this.renderer.setStyle(this.hostElement.nativeElement, 'overflow-y', 'hidden');\r\n this.show = this.visible;\r\n }\r\n\r\n @HostListener('@showHide.done', ['$event'])\r\n animateDone(event: AnimationEvent) {\r\n const scrollbarWidth = this.scrollbarWidth;\r\n setTimeout(() => {\r\n if (event.toState === 'visible') {\r\n this.inBoundingClientRect = this.modalContent?.nativeElement?.getBoundingClientRect().height <= this.document?.documentElement.clientHeight;\r\n if (!this.inBoundingClientRect) {\r\n this.renderer.setStyle(this.document.body, 'overflow-y', 'hidden');\r\n this.renderer.setStyle(this.document.body, 'padding-right', scrollbarWidth);\r\n } else {\r\n this.renderer.removeStyle(this.document.body, 'overflow-y');\r\n this.renderer.removeStyle(this.document.body, 'padding-right');\r\n }\r\n if (this.fullscreen === true) {\r\n this.renderer.setStyle(this.document.body, 'overflow-y', 'hidden');\r\n }\r\n this.renderer.removeStyle(this.hostElement.nativeElement, 'overflow-y');\r\n }\r\n });\r\n }\r\n\r\n @HostListener('document:keydown', ['$event'])\r\n onKeyDownHandler(event: KeyboardEvent): void {\r\n if (event.key === 'Escape' && this.keyboard && this.visible) {\r\n if (this.backdrop === 'static') {\r\n this.setStaticBackdrop();\r\n } else {\r\n this.modalService.toggle({show: false, modal: this});\r\n }\r\n }\r\n }\r\n\r\n private mouseDownTarget: EventTarget | null = null;\r\n\r\n @HostListener('mousedown', ['$event'])\r\n public onMouseDownHandler($event: MouseEvent): void {\r\n this.mouseDownTarget = $event.target;\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n public onClickHandler($event: MouseEvent): void {\r\n $event.stopPropagation();\r\n if (this.mouseDownTarget !== $event.target) {\r\n this.mouseDownTarget = null;\r\n return;\r\n }\r\n if (this.backdrop === 'static') {\r\n this.setStaticBackdrop();\r\n return;\r\n }\r\n this.modalService.toggle({show: false, modal: this});\r\n }\r\n\r\n ngOnInit(): void {\r\n this.stateToggleSubscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.modalService.toggle({show: false, modal: this});\r\n this.stateToggleSubscribe(false);\r\n }\r\n\r\n private stateToggleSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.stateToggleSubscription = this.modalService.modalState$.subscribe(\r\n (action) => {\r\n if (this === action.modal || this.id === action.id) {\r\n if ('show' in action) {\r\n this.visible = action?.show === 'toggle' ? !this.visible : action.show;\r\n }\r\n } else {\r\n if (this.visible) {\r\n this.visible = false;\r\n }\r\n }\r\n }\r\n );\r\n } else {\r\n this.stateToggleSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n private setBackdrop(setBackdrop: boolean): void {\r\n if (setBackdrop) {\r\n this.activeBackdrop = this.backdropService.setBackdrop('modal');\r\n } else {\r\n this.activeBackdrop = this.backdropService.clearBackdrop(this.activeBackdrop);\r\n }\r\n }\r\n\r\n private setBodyStyles(open: boolean): void {\r\n if (open) {\r\n if (this.fullscreen === true) {\r\n this.renderer.setStyle(this.document.body, 'overflow-y', 'hidden');\r\n }\r\n if (this.backdrop === true) {\r\n this.renderer.addClass(this.document.body, 'modal-open');\r\n }\r\n } else {\r\n this.renderer.removeClass(this.document.body, 'modal-open');\r\n this.renderer.removeStyle(this.document.body, 'overflow-y');\r\n this.renderer.removeStyle(this.document.body, 'padding-right');\r\n }\r\n }\r\n\r\n private setStaticBackdrop(): void {\r\n if (this.transition) {\r\n this.renderer.addClass(this.hostElement.nativeElement, 'modal-static');\r\n this.renderer.setStyle(this.hostElement.nativeElement, 'overflow-y', 'hidden');\r\n setTimeout(() => {\r\n this.renderer.removeClass(this.hostElement.nativeElement, 'modal-static');\r\n this.renderer.removeStyle(this.hostElement.nativeElement, 'overflow-y');\r\n }, 400);\r\n }\r\n }\r\n}\r\n","<c-modal-dialog\r\n [alignment]=\"alignment\"\r\n [fullscreen]=\"fullscreen\"\r\n [scrollable]=\"scrollable\"\r\n [size]=\"size\">\r\n <c-modal-content>\r\n <div [cdkTrapFocus]=\"visible\" [cdkTrapFocusAutoCapture]=\"visible\" style=\"display: contents;\">\r\n <ng-content></ng-content>\r\n </div>\r\n </c-modal-content>\r\n</c-modal-dialog>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\n\r\nimport { ModalBodyComponent } from './modal-body/modal-body.component';\r\nimport { ModalContentComponent } from './modal-content/modal-content.component';\r\nimport { ModalDialogComponent } from './modal-dialog/modal-dialog.component';\r\nimport { ModalToggleDirective } from './modal-dismiss/modal-toggle.directive';\r\nimport { ModalFooterComponent } from './modal-footer/modal-footer.component';\r\nimport { ModalHeaderComponent } from './modal-header/modal-header.component';\r\nimport { ModalTitleDirective } from './modal-title/modal-title.directive';\r\nimport { ModalComponent } from './modal/modal.component';\r\nimport { ModalService } from './modal.service';\r\n\r\n@NgModule({\r\n declarations: [\r\n ModalBodyComponent,\r\n ModalContentComponent,\r\n ModalDialogComponent,\r\n ModalToggleDirective,\r\n ModalFooterComponent,\r\n ModalHeaderComponent,\r\n ModalTitleDirective,\r\n ModalComponent,\r\n ],\r\n exports: [\r\n ModalBodyComponent,\r\n ModalContentComponent,\r\n ModalDialogComponent,\r\n ModalToggleDirective,\r\n ModalFooterComponent,\r\n ModalHeaderComponent,\r\n ModalTitleDirective,\r\n ModalComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n A11yModule\r\n ],\r\n providers: [\r\n ModalService\r\n ]\r\n})\r\nexport class ModalModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { OffcanvasComponent } from './offcanvas/offcanvas.component';\r\n\r\nexport interface IOffcanvasAction {\r\n show?: boolean | 'toggle';\r\n offcanvas?: OffcanvasComponent;\r\n id?: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OffcanvasService {\r\n\r\n private offcanvasState = new Subject<any>();\r\n offcanvasState$ = this.offcanvasState.asObservable();\r\n\r\n constructor() { }\r\n\r\n toggle(action: IOffcanvasAction): void {\r\n this.offcanvasState.next(action);\r\n }\r\n}\r\n","import {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Inject,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n PLATFORM_ID,\r\n Renderer2,\r\n SimpleChanges,\r\n} from '@angular/core';\r\nimport { animate, state, style, transition, trigger, } from '@angular/animations';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { OffcanvasService } from '../offcanvas.service';\r\nimport { BackdropService } from '../../backdrop/backdrop.service';\r\nimport { DOCUMENT, isPlatformBrowser } from '@angular/common';\r\n\r\nlet nextId = 0;\r\n\r\n@Component({\r\n selector: 'c-offcanvas',\r\n animations: [\r\n trigger('showHide', [\r\n state(\r\n 'true',\r\n style({\r\n visibility: 'visible',\r\n })\r\n ),\r\n state(\r\n 'false',\r\n style({\r\n visibility: 'hidden',\r\n })\r\n ),\r\n transition('true => false', [animate('300ms')]),\r\n ]),\r\n ],\r\n templateUrl: './offcanvas.component.html',\r\n styleUrls: ['./offcanvas.component.scss'],\r\n exportAs: 'cOffcanvas',\r\n})\r\nexport class OffcanvasComponent implements OnChanges, OnInit, OnDestroy {\r\n\r\n static ngAcceptInputType_scroll: BooleanInput;\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n @Inject(PLATFORM_ID) private platformId: any,\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef,\r\n private offcanvasService: OffcanvasService,\r\n private backdropService: BackdropService\r\n ) { }\r\n\r\n /**\r\n * Apply a backdrop on body while offcanvas is open.\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input() backdrop = true;\r\n\r\n /**\r\n * Closes the offcanvas when escape key is pressed [docs]\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input() keyboard = true;\r\n\r\n /**\r\n * Components placement, there’s no default placement.\r\n * @type {'start' | 'end' | 'top' | 'bottom'}\r\n * @default 'start'\r\n */\r\n @Input() placement: string | 'start' | 'end' | 'top' | 'bottom' = 'start';\r\n\r\n /**\r\n * Allow body scrolling while offcanvas is visible.\r\n * @type boolean\r\n */\r\n @Input()\r\n set scroll(value: boolean) {\r\n this._scroll = coerceBooleanProperty(value);\r\n };\r\n get scroll() {\r\n return this._scroll;\r\n }\r\n private _scroll = false;\r\n\r\n @Input() id = `offcanvas-${this.placement}-${nextId++}`;\r\n /**\r\n * Default role for offcanvas. [docs]\r\n * @type string\r\n * @default 'dialog'\r\n */\r\n @Input() @HostBinding('attr.role') role = 'dialog';\r\n\r\n /**\r\n * Set aria-modal html attr for offcanvas. [docs]\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input() @HostBinding('attr.aria-modal') ariaModal = true;\r\n\r\n /**\r\n * Toggle the visibility of offcanvas component.\r\n * @type boolean\r\n */\r\n @Input()\r\n set visible(value: boolean) {\r\n this._visible = coerceBooleanProperty(value);\r\n if (value) {\r\n this.setBackdrop(this.backdrop);\r\n this.setFocus();\r\n } else {\r\n this.setBackdrop(false);\r\n }\r\n this.setScroll();\r\n this.visibleChange.emit(value);\r\n }\r\n get visible(): boolean {\r\n return this._visible;\r\n }\r\n private _visible!: boolean;\r\n\r\n /**\r\n * Event triggered on visible change.\r\n */\r\n @Output() visibleChange = new EventEmitter<boolean>();\r\n\r\n private activeBackdrop!: any;\r\n\r\n private stateToggleSubscription!: Subscription;\r\n private backdropClickSubscription!: Subscription;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n offcanvas: true,\r\n [`offcanvas-${this.placement}`]: !!this.placement,\r\n show: this.visible,\r\n };\r\n }\r\n\r\n @HostBinding('attr.aria-hidden')\r\n get ariaHidden(): boolean | null {\r\n return this.visible ? null : true;\r\n };\r\n\r\n @HostBinding('attr.tabindex')\r\n get tabIndex(): string | null {\r\n return '-1';\r\n }\r\n\r\n @HostBinding('@showHide')\r\n get animateType(): boolean {\r\n return this.visible;\r\n }\r\n\r\n @HostListener('document:keydown', ['$event'])\r\n onKeyDownHandler(event: KeyboardEvent): void {\r\n if (event.key === 'Escape' && this.keyboard && this.visible) {\r\n this.offcanvasService.toggle({ show: false, id: this.id });\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setScroll();\r\n this.stateToggleSubscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.offcanvasService.toggle({ show: false, id: this.id });\r\n this.stateToggleSubscribe(false);\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['scroll']) {\r\n this.setScroll();\r\n }\r\n }\r\n\r\n private stateToggleSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.stateToggleSubscription = this.offcanvasService.offcanvasState$.subscribe(\r\n (action) => {\r\n if (this === action.offcanvas || this.id === action.id) {\r\n if ('show' in action) {\r\n this.visible = action?.show === 'toggle' ? !this.visible : action.show;\r\n }\r\n }\r\n }\r\n );\r\n } else {\r\n this.stateToggleSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n private backdropClickSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.backdropClickSubscription = this.backdropService.backdropClick$.subscribe(\r\n (clicked) => {\r\n this.offcanvasService.toggle({ show: !clicked, id: this.id });\r\n }\r\n );\r\n } else {\r\n this.backdropClickSubscription?.unsubscribe();\r\n }\r\n }\r\n\r\n private setBackdrop(setBackdrop: boolean): void {\r\n if (setBackdrop) {\r\n this.activeBackdrop = this.backdropService.setBackdrop('offcanvas');\r\n this.backdropClickSubscribe();\r\n } else {\r\n this.activeBackdrop = this.backdropService.clearBackdrop(this.activeBackdrop);\r\n this.backdropClickSubscribe(false);\r\n }\r\n }\r\n\r\n setFocus(): void {\r\n if (isPlatformBrowser(this.platformId)) {\r\n setTimeout(() => this.hostElement.nativeElement.focus());\r\n }\r\n }\r\n\r\n setScroll() {\r\n if (this.visible) {\r\n if (!this.scroll) {\r\n this.renderer.setStyle(this.document.body, 'overflow', 'hidden');\r\n this.renderer.setStyle(this.document.body, 'paddingRight.px', '0');\r\n }\r\n return;\r\n }\r\n if (!this.scroll) {\r\n this.renderer.removeStyle(this.document.body, 'overflow');\r\n this.renderer.removeStyle(this.document.body, 'paddingRight');\r\n }\r\n }\r\n}\r\n","<div cdkTrapFocus cdkTrapFocusAutoCapture>\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-offcanvas-body',\r\n template: `<ng-content></ng-content>`,\r\n styleUrls: ['./offcanvas-body.component.scss']\r\n})\r\nexport class OffcanvasBodyComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'offcanvas-body': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-offcanvas-header',\r\n template: `<ng-content></ng-content>`,\r\n styleUrls: ['./offcanvas-header.component.scss']\r\n})\r\nexport class OffcanvasHeaderComponent {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'offcanvas-header': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cOffcanvasTitle]'\r\n})\r\nexport class OffcanvasTitleDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'offcanvas-title': true,\r\n };\r\n }\r\n\r\n}\r\n","import { Directive, HostListener, Input } from '@angular/core';\r\n\r\nimport { OffcanvasService } from '../offcanvas.service';\r\n\r\n@Directive({\r\n selector: '[cOffcanvasToggle]'\r\n})\r\nexport class OffcanvasToggleDirective {\r\n\r\n /**\r\n * Html id attr of offcanvas to toggle.\r\n * @type string\r\n */\r\n @Input('cOffcanvasToggle') id?: string;\r\n\r\n constructor(\r\n private offcanvasService: OffcanvasService\r\n ) {}\r\n\r\n @HostListener('click', ['$event'])\r\n toggleOpen($event: any): void {\r\n $event.preventDefault();\r\n this.offcanvasService.toggle({ show: 'toggle', id: this.id });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\n\r\nimport { OffcanvasComponent } from './offcanvas/offcanvas.component';\r\nimport { OffcanvasBodyComponent } from './offcanvas-body/offcanvas-body.component';\r\nimport { OffcanvasHeaderComponent } from './offcanvas-header/offcanvas-header.component';\r\nimport { OffcanvasTitleDirective } from './offcanvas-title/offcanvas-title.directive';\r\nimport { OffcanvasToggleDirective } from './offcanvas-toggle/offcanvas-toggle.directive';\r\nimport { OffcanvasService } from './offcanvas.service';\r\nimport { BackdropService } from '../backdrop/backdrop.service';\r\n\r\n@NgModule({\r\n declarations: [\r\n OffcanvasComponent,\r\n OffcanvasBodyComponent,\r\n OffcanvasHeaderComponent,\r\n OffcanvasTitleDirective,\r\n OffcanvasToggleDirective\r\n ],\r\n exports: [\r\n OffcanvasComponent,\r\n OffcanvasBodyComponent,\r\n OffcanvasHeaderComponent,\r\n OffcanvasTitleDirective,\r\n OffcanvasToggleDirective\r\n ],\r\n imports: [\r\n CommonModule,\r\n A11yModule\r\n ],\r\n providers: [\r\n OffcanvasService,\r\n BackdropService\r\n ],\r\n})\r\nexport class OffcanvasModule { }\r\n","import { Directive, HostBinding } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cPageLink]'\r\n})\r\nexport class PageLinkDirective {\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'page-link': true,\r\n };\r\n }\r\n}\r\n","import {\r\n AfterContentInit,\r\n ContentChild,\r\n Directive,\r\n ElementRef,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n Renderer2, SimpleChanges\r\n} from '@angular/core';\r\n\r\nimport { PageLinkDirective } from '../page-link/page-link.directive';\r\n\r\n@Directive({\r\n selector: '[cPageItem]'\r\n})\r\nexport class PageItemDirective implements AfterContentInit, OnChanges {\r\n\r\n /**\r\n * Toggle the active state for the component.\r\n * @type boolean\r\n */\r\n @Input() active?: boolean;\r\n /**\r\n * Toggle the disabled state for the component.\r\n * @type boolean\r\n */\r\n @Input() disabled?: boolean;\r\n\r\n @HostBinding('attr.aria-current')\r\n get ariaCurrent(): string | null {\r\n return this.active ? 'page' : null;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'page-item': true,\r\n disabled: this.disabled,\r\n active: this.active,\r\n };\r\n }\r\n\r\n @ContentChild(PageLinkDirective, { read: ElementRef }) pageLinkElementRef!: ElementRef;\r\n\r\n constructor(\r\n private renderer: Renderer2\r\n ) { }\r\n\r\n ngAfterContentInit(): void {\r\n this.setAttributes();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['disabled']) {\r\n this.setAttributes();\r\n }\r\n }\r\n\r\n setAttributes(): void {\r\n if (!this.pageLinkElementRef) {\r\n return\r\n }\r\n const pageLinkElement = this.pageLinkElementRef.nativeElement;\r\n\r\n if (this.disabled) {\r\n this.renderer.setAttribute(pageLinkElement, 'aria-disabled', 'true');\r\n this.renderer.setAttribute(pageLinkElement, 'tabindex', '-1');\r\n } else {\r\n this.renderer.removeAttribute(pageLinkElement, 'aria-disabled');\r\n this.renderer.removeAttribute(pageLinkElement, 'tabindex');\r\n }\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { PageItemDirective } from './page-item.directive';\r\n\r\n@Component({\r\n selector: 'c-page-item',\r\n template: `<ng-content></ng-content>`,\r\n styleUrls: ['./page-item.component.scss']\r\n})\r\nexport class PageItemComponent extends PageItemDirective { }\r\n\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-pagination',\r\n templateUrl: './pagination.component.html',\r\n styleUrls: ['./pagination.component.scss']\r\n})\r\nexport class PaginationComponent {\r\n\r\n /**\r\n * Set the alignment of pagination components.\r\n * @values 'start', 'center', 'end'\r\n */\r\n @Input() align: 'start' | 'center' | 'end' | '' = '';\r\n /**\r\n * Size the component small or large.\r\n * @values 'sm', 'lg'\r\n */\r\n @Input() size?: 'sm' | 'lg';\r\n /**\r\n * Default role for pagination. [docs]\r\n * @type string\r\n * @default 'navigation'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'navigation';\r\n\r\n get paginationClass(): any {\r\n return {\r\n pagination: true,\r\n [`pagination-${this.size}`]: !!this.size,\r\n [`justify-content-${this.align}`]: !!this.align\r\n };\r\n }\r\n\r\n}\r\n","<ul [ngClass]=\"paginationClass\">\r\n <ng-content></ng-content>\r\n</ul>\r\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PaginationComponent } from './pagination/pagination.component';\nimport { PageItemComponent } from './page-item/page-item.component';\nimport { PageItemDirective } from './page-item/page-item.directive';\nimport { PageLinkDirective } from './page-link/page-link.directive';\n\n@NgModule({\n declarations: [\n PaginationComponent,\n PageItemComponent,\n PageItemDirective,\n PageLinkDirective\n ],\n exports: [\n PaginationComponent,\n PageItemComponent,\n PageItemDirective,\n PageLinkDirective\n ],\n imports: [\n CommonModule\n ]\n})\nexport class PaginationModule {}\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: '[cPlaceholder]',\r\n exportAs: 'cPlaceholder'\r\n})\r\nexport class PlaceholderDirective {\r\n\r\n static ngAcceptInputType_visible: BooleanInput;\r\n\r\n constructor() { }\r\n\r\n /**\r\n * placeholder toggler\r\n * @type boolean\r\n * @default true\r\n */\r\n @Input('cPlaceholder')\r\n set visible(value: boolean) {\r\n this._visible = coerceBooleanProperty(value);\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible: boolean = false;\r\n\r\n /**\r\n * Size the placeholder extra small, small, large.\r\n */\r\n @Input('cPlaceholderSize') size?: 'xs' | 'sm' | 'lg';\r\n\r\n @HostBinding('attr.aria-hidden')\r\n get ariaHidden(): boolean | null {\r\n return this.visible ? null : true;\r\n };\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'placeholder': this.visible,\r\n [`placeholder-${this.size}`]: !!this.size\r\n };\r\n }\r\n}\r\n","import { AfterContentInit, ContentChild, Directive, HostBinding, Input } from '@angular/core';\r\nimport { PlaceholderDirective } from './placeholder.directive';\r\n\r\n@Directive({\r\n selector: '[cPlaceholderAnimation]'\r\n})\r\nexport class PlaceholderAnimationDirective implements AfterContentInit {\r\n\r\n constructor() { }\r\n\r\n /**\r\n * Animation type for placeholder\r\n * @type 'glow' | 'wave'\r\n * @default undefined\r\n */\r\n @Input('cPlaceholderAnimation') animation?: 'glow' | 'wave';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n [`placeholder-${this.animation}`]: this.animate && !!this.animation\r\n };\r\n }\r\n\r\n @ContentChild(PlaceholderDirective) placeholder!: PlaceholderDirective;\r\n private animate: boolean = false;\r\n\r\n ngAfterContentInit() {\r\n this.animate = this.placeholder?.visible;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PlaceholderDirective } from './placeholder.directive';\r\nimport { PlaceholderAnimationDirective } from './placeholder-animation.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n PlaceholderDirective,\r\n PlaceholderAnimationDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n PlaceholderDirective,\r\n PlaceholderAnimationDirective\r\n ]\r\n})\r\nexport class PlaceholderModule {\r\n}\r\n","import {\r\n AfterViewInit,\r\n Component,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n Renderer2,\r\n SimpleChanges,\r\n TemplateRef,\r\n ViewChild,\r\n ViewContainerRef\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-popover',\r\n templateUrl: './popover.component.html',\r\n})\r\nexport class PopoverComponent implements AfterViewInit, OnChanges, OnDestroy {\r\n\r\n /**\r\n * Content of popover\r\n * @type {string | TemplateRef}\r\n */\r\n @Input() content: string | TemplateRef<any> = '';\r\n /**\r\n * Toggle the visibility of popover component.\r\n * @type boolean\r\n */\r\n @Input() visible = false;\r\n @Input() @HostBinding('attr.id') id?: string;\r\n @Input() @HostBinding('attr.role') role = 'tooltip';\r\n\r\n @ViewChild('popoverTemplate', { read: ViewContainerRef }) viewContainerRef!: ViewContainerRef;\r\n private textNode!: Text;\r\n\r\n constructor(\r\n private renderer: Renderer2\r\n ) { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): { [klass: string]: any; } {\r\n return {\r\n popover: true,\r\n fade: true,\r\n show: this.visible,\r\n 'bs-popover-auto': true\r\n };\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n setTimeout(() => {\r\n this.updateView(this.content);\r\n });\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['content']) {\r\n setTimeout(() => {\r\n this.updateView(this.content);\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.clear();\r\n }\r\n\r\n private clear(): void {\r\n this.viewContainerRef?.clear();\r\n if (!!this.textNode) {\r\n this.renderer.removeChild(this.textNode.parentNode, this.textNode);\r\n }\r\n }\r\n\r\n private updateView(content: string | TemplateRef<any>): void {\r\n this.clear();\r\n\r\n if (!content) {\r\n return;\r\n }\r\n\r\n if (content instanceof TemplateRef) {\r\n this.viewContainerRef.createEmbeddedView(content);\r\n } else {\r\n this.textNode = this.renderer.createText(content);\r\n const popoverBody = this.renderer.createElement('div');\r\n this.renderer.addClass(popoverBody, 'popover-body');\r\n this.renderer.appendChild(popoverBody, this.textNode);\r\n\r\n const element = this.viewContainerRef.element.nativeElement;\r\n this.renderer.appendChild(element.parentNode, popoverBody);\r\n }\r\n }\r\n}\r\n","<ng-container>\r\n <div [ngClass]=\"{'popover-arrow': !!content}\" data-popper-arrow ></div>\r\n <ng-container #popoverTemplate></ng-container>\r\n</ng-container>\r\n","import {\r\n ComponentFactoryResolver,\r\n ComponentRef,\r\n Directive,\r\n ElementRef,\r\n HostBinding,\r\n Inject,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Renderer2,\r\n SimpleChanges,\r\n TemplateRef,\r\n ViewContainerRef\r\n} from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { createPopper, Instance, Options } from '@popperjs/core';\r\n\r\nimport { Triggers } from '../coreui.types';\r\nimport { PopoverComponent } from './popover/popover.component';\r\nimport { IListenersConfig, ListenersService } from '../services/listeners.service';\r\n\r\n@Directive({\r\n selector: '[cPopover]',\r\n exportAs: 'cPopover',\r\n providers: [ListenersService]\r\n})\r\nexport class PopoverDirective implements OnChanges, OnDestroy, OnInit {\r\n\r\n /**\r\n * Content of popover\r\n * @type {string | TemplateRef}\r\n */\r\n @Input('cPopover') content: string | TemplateRef<any> = '';\r\n\r\n /**\r\n * Optional popper Options object, takes precedence over cPopoverPlacement prop\r\n * @type Partial<Options>\r\n */\r\n @Input('cPopoverOptions')\r\n set popperOptions(value: Partial<Options>) {\r\n this._popperOptions = {...this._popperOptions, placement: this.placement, ...value};\r\n };\r\n get popperOptions(): Partial<Options> {\r\n return {placement: this.placement, ...this._popperOptions};\r\n }\r\n\r\n /**\r\n * Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property.\r\n */\r\n @Input('cPopoverPlacement') placement: 'top' | 'bottom' | 'left' | 'right' = 'top';\r\n /**\r\n * Sets which event handlers you’d like provided to your toggle prop. You can specify one trigger or an array of them.\r\n * @type {'hover' | 'focus' | 'click'}\r\n */\r\n @Input('cPopoverTrigger') trigger?: Triggers | Triggers[] = 'hover';\r\n\r\n /**\r\n * Toggle the visibility of popover component.\r\n */\r\n @Input('cPopoverVisible')\r\n set visible(value: boolean) {\r\n this._visible = value;\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible = false;\r\n\r\n private popover!: HTMLDivElement;\r\n private popoverId!: string;\r\n private popoverRef!: ComponentRef<PopoverComponent>;\r\n private popperInstance!: Instance;\r\n\r\n private _popperOptions: Partial<Options> = {\r\n modifiers: [\r\n {\r\n name: 'offset',\r\n options: {\r\n offset: [0, 8],\r\n },\r\n },\r\n ],\r\n };\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef,\r\n private componentFactoryResolver: ComponentFactoryResolver,\r\n private viewContainerRef: ViewContainerRef,\r\n private listenersService: ListenersService\r\n ) {}\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['visible']) {\r\n changes['visible'].currentValue ? this.addPopoverElement() : this.removePopoverElement();\r\n }\r\n }\r\n\r\n @HostBinding('attr.aria-describedby') get ariaDescribedBy(): string | null {\r\n return this.popoverId ? this.popoverId : null;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.clearListeners();\r\n this.destroyPopoverElement();\r\n }\r\n\r\n ngOnInit(): void {\r\n // this.createPopoverElement();\r\n this.setListeners();\r\n }\r\n\r\n private setListeners(): void {\r\n const config: IListenersConfig = {\r\n hostElement: this.hostElement,\r\n trigger: this.trigger,\r\n callbackToggle: () => {\r\n this.visible = !this.visible;\r\n this.visible ? this.addPopoverElement() : this.removePopoverElement();\r\n },\r\n callbackOff: () => {\r\n this.visible = false;\r\n this.removePopoverElement();\r\n },\r\n callbackOn: () => {\r\n this.visible = true;\r\n this.addPopoverElement();\r\n }\r\n }\r\n this.listenersService.setListeners(config);\r\n }\r\n\r\n private clearListeners(): void {\r\n this.listenersService.clearListeners();\r\n }\r\n\r\n private getUID(prefix: string): string {\r\n let uid = prefix ?? 'random-id';\r\n do {\r\n uid = `${prefix}-${Math.floor(Math.random() * 1000000).toString(10)}`;\r\n } while (this.document.getElementById(uid));\r\n\r\n return uid;\r\n }\r\n\r\n private createPopoverElement(): void {\r\n if (!this.popoverRef) {\r\n const popoverComponent =\r\n this.componentFactoryResolver.resolveComponentFactory(PopoverComponent);\r\n this.popoverRef = popoverComponent.create(this.viewContainerRef.injector);\r\n }\r\n }\r\n\r\n private destroyPopoverElement(): void {\r\n this.popover?.remove();\r\n this.popoverRef?.destroy();\r\n // @ts-ignore\r\n this.popoverRef = undefined;\r\n this.popperInstance?.destroy();\r\n this.viewContainerRef.detach();\r\n this.viewContainerRef.clear();\r\n }\r\n\r\n private addPopoverElement(): void {\r\n if (!this.popoverRef) {\r\n this.createPopoverElement();\r\n }\r\n this.popoverRef.instance.content = this.content;\r\n this.popover = this.popoverRef.location.nativeElement;\r\n this.renderer.addClass(this.popover, 'fade');\r\n // this.renderer.setStyle(this.popover, 'visibility', 'hidden')\r\n\r\n setTimeout(() => {\r\n this.popperInstance = createPopper(\r\n this.hostElement.nativeElement,\r\n this.popover,\r\n {...this.popperOptions}\r\n );\r\n this.viewContainerRef.insert(this.popoverRef.hostView);\r\n setTimeout(() => {\r\n this.popoverId = this.getUID('popover');\r\n this.popoverRef.instance.id = this.popoverId;\r\n this.popoverRef.instance.visible = this.visible;\r\n // this.renderer.removeStyle(this.popover, 'visibility');\r\n this.renderer.appendChild(this.document.body, this.popover);\r\n this.popperInstance.forceUpdate();\r\n // this.popoverRef.changeDetectorRef.detectChanges();\r\n }, 100);\r\n })\r\n }\r\n\r\n private removePopoverElement(): void {\r\n if (!this.popoverRef) {\r\n return;\r\n }\r\n this.popoverRef.instance.visible = this.visible;\r\n // this.popoverRef.changeDetectorRef?.detectChanges();\r\n this.popoverRef.instance.id = undefined;\r\n setTimeout(() => {\r\n this.viewContainerRef.detach();\r\n // this.viewContainerRef.remove();\r\n // this.renderer.removeChild(this.document.body, this.popover);\r\n this.popperInstance?.destroy();\r\n this.popoverId = '';\r\n }, 300);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PopoverDirective } from './popover.directive';\r\nimport { PopoverComponent } from './popover/popover.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n PopoverDirective,\r\n PopoverComponent\r\n ],\r\n exports: [\r\n PopoverDirective,\r\n PopoverComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class PopoverModule { }\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty, coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-progress',\r\n template: '<ng-content></ng-content>'\r\n})\r\nexport class ProgressComponent {\r\n\r\n static ngAcceptInputType_height: NumberInput;\r\n static ngAcceptInputType_thin: BooleanInput;\r\n static ngAcceptInputType_white: BooleanInput;\r\n\r\n /**\r\n * Sets the height of the component. If you set that value the inner `<CProgressBar>` will automatically resize accordingly.\r\n * @type number\r\n */\r\n @Input()\r\n set height(value: number) {\r\n this._height = coerceNumberProperty(value);\r\n }\r\n get height() {\r\n return this._height;\r\n }\r\n private _height: number = 0;\r\n\r\n /**\r\n * Displays thin progress.\r\n * @type boolean\r\n */\r\n @Input()\r\n set thin(value: boolean) {\r\n this._thin = coerceBooleanProperty(value);\r\n }\r\n get thin(): boolean {\r\n return this._thin;\r\n }\r\n private _thin = false;\r\n\r\n /**\r\n * Change the default color to white.\r\n * @type boolean\r\n */\r\n @Input()\r\n get white(): boolean {\r\n return this._white;\r\n }\r\n set white(value: boolean) {\r\n this._white = coerceBooleanProperty(value);\r\n }\r\n private _white = false;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n progress: true,\r\n 'progress-thin': this.thin,\r\n 'progress-white': this.white\r\n };\r\n }\r\n\r\n @HostBinding('style.height')\r\n get hostStyle(): any {\r\n return !!this.height ? `${this.height}px` : '';\r\n }\r\n}\r\n","import { Component, ElementRef, HostBinding, Input, OnChanges, OnInit, Renderer2, SimpleChanges } from '@angular/core';\r\nimport { Colors } from '../coreui.types';\r\nimport { BooleanInput, coerceBooleanProperty, coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-progress-bar',\r\n template: '<ng-content></ng-content>'\r\n})\r\nexport class ProgressBarComponent implements OnInit, OnChanges {\r\n\r\n static ngAcceptInputType_animated: BooleanInput;\r\n static ngAcceptInputType_value: NumberInput;\r\n\r\n /**\r\n * Use to animate the stripes right to left via CSS3 animations.\r\n * @type boolean\r\n */\r\n @Input()\r\n set animated(value: boolean) {\r\n this._animated = coerceBooleanProperty(value);\r\n }\r\n get animated() {\r\n return this._animated;\r\n }\r\n private _animated = false;\r\n\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @values 'primary', 'secondary', 'success', 'danger', 'warning', 'info', 'dark', 'light'\r\n */\r\n @Input() color?: Colors;\r\n // TODO: check if this is necessary.\r\n @Input() precision = 0;\r\n /**\r\n * The percent to progress the ProgressBar.\r\n */\r\n @Input()\r\n set value(value: number) {\r\n this._value = coerceNumberProperty(value);\r\n };\r\n get value() {\r\n return this._value;\r\n }\r\n private _value = 0;\r\n /**\r\n * Set the progress bar variant to optional striped.\r\n * @values 'striped'\r\n */\r\n @Input() variant?: 'striped';\r\n\r\n /**\r\n * Set default html role attribute.\r\n * @type string\r\n */\r\n @Input()\r\n @HostBinding('attr.role') role = 'progressbar';\r\n private state = {\r\n percent: 0,\r\n min: 0,\r\n max: 100\r\n };\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef\r\n ) { }\r\n\r\n get min(): number {\r\n return this.state.min;\r\n }\r\n\r\n @Input()\r\n set min(value: number) {\r\n this.state.min = isNaN(value) ? 0 : value;\r\n }\r\n\r\n get max(): number {\r\n return this.state.max;\r\n }\r\n\r\n @Input()\r\n set max(value: number) {\r\n this.state.max = isNaN(value) || value <= 0 || value === this.min ? 100 : value;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'progress-bar': true,\r\n 'progress-bar-animated': this.animated,\r\n [`progress-bar-${this.variant}`]: !!this.variant,\r\n [`bg-${this.color}`]: !!this.color\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setValues();\r\n }\r\n\r\n setPercent(): void {\r\n this.state.percent = +((this.value / (this.max - this.min)) * 100).toFixed(this.precision);\r\n }\r\n\r\n setValues(): void {\r\n this.setPercent();\r\n const host: HTMLElement = this.hostElement.nativeElement;\r\n this.renderer.setStyle(host, 'width', `${this.state.percent}%`);\r\n this.renderer.setAttribute(host, 'aria-valuenow', String(this.value));\r\n this.renderer.setAttribute(host, 'aria-valuemin', String(this.min));\r\n this.renderer.setAttribute(host, 'aria-valuemax', String(this.max));\r\n }\r\n\r\n public ngOnChanges(changes: SimpleChanges): void {\r\n this.setValues();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ProgressComponent } from './progress.component';\r\nimport { ProgressBarComponent } from './progress-bar.component';\r\n\r\n@NgModule({\r\n declarations: [ProgressComponent, ProgressBarComponent],\r\n exports: [\r\n ProgressComponent,\r\n ProgressBarComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class ProgressModule { }\r\n","import { Inject, Injectable, Renderer2, RendererFactory2 } from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ClassToggleService {\r\n\r\n private renderer: Renderer2;\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n private rendererFactory: RendererFactory2\r\n ) {\r\n this.renderer = rendererFactory.createRenderer(null, null);\r\n }\r\n\r\n toggle(selector: any, className: string) {\r\n const element = document.querySelector(selector);\r\n if (element) {\r\n element.classList.contains(className) ?\r\n this.renderer.removeClass(element, className) :\r\n this.renderer.addClass(element, className);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nimport {SidebarComponent} from './sidebar/sidebar.component';\r\n\r\nexport interface ISidebarAction {\r\n unfoldable?: boolean | 'toggle';\r\n visible?: boolean | 'toggle';\r\n toggle?: 'visible' | 'unfoldable';\r\n narrow?: boolean;\r\n mobile?: boolean;\r\n sidebar?: SidebarComponent;\r\n id?: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SidebarService {\r\n\r\n private sidebarState = new BehaviorSubject<ISidebarAction>({});\r\n sidebarState$ = this.sidebarState.asObservable();\r\n\r\n constructor() {}\r\n\r\n toggle(action: ISidebarAction): void {\r\n this.sidebarState.next(action);\r\n }\r\n}\r\n","import { Host, Inject, Injectable, Renderer2 } from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { SidebarService } from '../sidebar.service';\r\nimport { SidebarComponent } from '../sidebar/sidebar.component';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SidebarBackdropService {\r\n\r\n private backdrop!: HTMLElement;\r\n renderer!: Renderer2;\r\n private clickListener = (): void => {};\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n // private rendererFactory: RendererFactory2,\r\n private sidebarService: SidebarService,\r\n ) {\r\n // this.renderer = rendererFactory.createRenderer(null, null);\r\n }\r\n\r\n setBackdrop(sidebar: SidebarComponent): void {\r\n const backdrop = this.document.getElementsByClassName('sidebar-backdrop');\r\n // console.log(`sidebar-${this.id}`, ' setBackdrop', backdrop);\r\n if (backdrop.length === 0) {\r\n this.backdrop = this.renderer.createElement('div');\r\n this.renderer.addClass(this.backdrop, 'sidebar-backdrop');\r\n this.renderer.appendChild(this.document.body, this.backdrop);\r\n this.clickListener = this.renderer.listen(this.backdrop, 'click', (e) => {\r\n // console.log(`sidebar-${this.id}`, ' backdrop click', e);\r\n this.sidebarService.toggle({toggle: 'visible', sidebar});\r\n });\r\n }\r\n // console.log(this.backdrop, sidebar.sidebarState.mobile, sidebar.sidebarState.show);\r\n if (this.backdrop && sidebar.sidebarState.mobile && sidebar.sidebarState.visible) {\r\n this.renderer.addClass(this.backdrop, 'fade');\r\n this.renderer.addClass(this.backdrop, 'show');\r\n // this.renderer.removeClass(this.backdrop, 'd-none');\r\n } else {\r\n this.renderer.removeClass(this.backdrop, 'show');\r\n this.renderer.removeClass(this.backdrop, 'fade');\r\n // this.renderer.addClass(this.backdrop, 'd-none');\r\n }\r\n }\r\n\r\n clearBackdrop(): void {\r\n if (this.backdrop) {\r\n // clear backdrop click Listener\r\n this.clickListener();\r\n // this.renderer.listen(this.backdrop, 'click', (e): void => {} );\r\n this.renderer.removeChild(this.document.body, this.backdrop);\r\n // @ts-ignore\r\n this.backdrop = undefined;\r\n }\r\n }\r\n\r\n}\r\n","import {\r\n Component,\r\n EventEmitter,\r\n HostBinding,\r\n Inject,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n Renderer2,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { ISidebarAction, SidebarService } from '../sidebar.service';\r\nimport { SidebarBackdropService } from '../sidebar-backdrop/sidebar-backdrop.service';\r\n\r\n@Component({\r\n selector: 'c-sidebar',\r\n exportAs: 'cSidebar',\r\n template: '<ng-content></ng-content>',\r\n})\r\nexport class SidebarComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n static ngAcceptInputType_narrow: BooleanInput;\r\n static ngAcceptInputType_overlaid: BooleanInput;\r\n static ngAcceptInputType_unfoldable: BooleanInput;\r\n static ngAcceptInputType_visible: BooleanInput;\r\n\r\n private _narrow = false;\r\n private _overlaid = false;\r\n private _unfoldable = false;\r\n private _visible = false;\r\n private onMobile = false;\r\n private layoutChangeSubscription!: Subscription;\r\n private stateToggleSubscription!: Subscription;\r\n\r\n state: ISidebarAction = {\r\n sidebar: this\r\n };\r\n\r\n /**\r\n * Sets if the color of text should be colored for a light or dark dark background. [docs]\r\n *\r\n * @type 'dark' | 'light'\r\n */\r\n @Input() colorScheme?: 'dark' | 'light';\r\n\r\n /**\r\n * Sets html attribute id. [docs]\r\n *\r\n * @type string\r\n */\r\n @Input() id?: string;\r\n\r\n /**\r\n * Make sidebar narrow. [docs]\r\n * @type boolean\r\n */\r\n @Input()\r\n set narrow(value: boolean) {\r\n this._narrow = coerceBooleanProperty(value);\r\n }\r\n get narrow() {\r\n return this._narrow;\r\n }\r\n\r\n /**\r\n * Set sidebar to overlaid variant.\r\n * @type boolean\r\n */\r\n @Input()\r\n set overlaid(value: boolean) {\r\n this._overlaid = coerceBooleanProperty(value);\r\n }\r\n get overlaid() {\r\n return this._overlaid;\r\n }\r\n\r\n /**\r\n * Components placement, there’s no default placement. [docs]\r\n * @type 'start' | 'end'\r\n */\r\n @Input() placement?: 'start' | 'end';\r\n\r\n /**\r\n * Place sidebar in non-static positions. [docs]\r\n * @default 'fixed'\r\n */\r\n @Input() position: 'fixed' | 'sticky' = 'fixed';\r\n\r\n /**\r\n * Size the component small, large, or extra large. [docs]\r\n */\r\n @Input() size?: 'sm' | 'lg' | 'xl';\r\n\r\n /**\r\n * Expand narrowed sidebar on hover. [docs]\r\n */\r\n @Input()\r\n set unfoldable(value: boolean) {\r\n this._unfoldable = coerceBooleanProperty(value);\r\n }\r\n get unfoldable() {\r\n return this._unfoldable;\r\n }\r\n\r\n /**\r\n * Toggle the visibility of sidebar component. [docs]\r\n */\r\n @Input()\r\n set visible(value: boolean) {\r\n this._visible = coerceBooleanProperty(value);\r\n this.visibleChange.emit(this._visible);\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n\r\n /**\r\n * Event emitted on visibility change. [docs]\r\n * @type boolean\r\n */\r\n @Output() visibleChange = new EventEmitter<boolean>();\r\n\r\n set sidebarState(value: ISidebarAction) {\r\n const newState = value;\r\n if ('toggle' in newState) {\r\n if (newState.toggle === 'visible') {\r\n newState.visible = !this.state.visible;\r\n this.visible = newState.visible && !this.overlaid;\r\n } else if (newState.toggle === 'unfoldable') {\r\n newState.unfoldable = !this.state.unfoldable;\r\n this.unfoldable = newState.unfoldable;\r\n }\r\n }\r\n this.state = {\r\n ...this.state,\r\n ...newState\r\n };\r\n this.state.mobile && this.state.visible ? this.backdropService.setBackdrop(this) : this.backdropService.clearBackdrop();\r\n }\r\n\r\n get sidebarState(): ISidebarAction {\r\n return this.state;\r\n }\r\n\r\n get getMobileBreakpoint(): string {\r\n const element = this.document.firstElementChild;\r\n const mobileBreakpoint = getComputedStyle(element).getPropertyValue('--cui-mobile-breakpoint') || 'md';\r\n const breakpointValue = getComputedStyle(element).getPropertyValue(`--cui-breakpoint-${mobileBreakpoint.trim()}`) || '768px';\r\n return `${parseFloat(breakpointValue.trim()) - .02}px` || '767.98px';\r\n }\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n private renderer: Renderer2,\r\n private breakpointObserver: BreakpointObserver,\r\n private sidebarService: SidebarService,\r\n private backdropService: SidebarBackdropService\r\n ) {\r\n this.backdropService.renderer = renderer;\r\n }\r\n\r\n @HostBinding('class')\r\n get getClasses(): any {\r\n const {mobile, unfoldable, visible} = this.sidebarState;\r\n return {\r\n sidebar: true,\r\n 'sidebar-fixed': this.position === 'fixed' && !mobile,\r\n 'sidebar-narrow': this.narrow && !this.unfoldable,\r\n 'sidebar-narrow-unfoldable': unfoldable,\r\n 'sidebar-overlaid': this.overlaid,\r\n [`sidebar-${this.placement}`]: !!this.placement,\r\n [`sidebar-${this.colorScheme}`]: !!this.colorScheme,\r\n [`sidebar-${this.size}`]: !!this.size,\r\n show: visible && this.onMobile,\r\n hide: !visible && !this.onMobile\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setInitialState();\r\n this.layoutChangeSubscribe();\r\n this.stateToggleSubscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.stateToggleSubscribe(false);\r\n this.layoutChangeSubscribe(false);\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const oldStateMap = new Map(Object.entries(this.state));\r\n const newStateMap = new Map();\r\n newStateMap.set('sidebar', this);\r\n\r\n const propList = ['visible', 'unfoldable', 'narrow'];\r\n\r\n for (const propName in changes) {\r\n if (propList.includes(propName)) {\r\n if (changes[propName] && !changes[propName].firstChange) {\r\n const value = coerceBooleanProperty(changes[propName].currentValue);\r\n if (oldStateMap.get(propName) !== value) {\r\n newStateMap.set(propName, value);\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (newStateMap.size > 1) {\r\n const state = Object.fromEntries(newStateMap.entries());\r\n this.sidebarService.toggle(state);\r\n }\r\n }\r\n\r\n setInitialState(): void {\r\n this.sidebarService.toggle({\r\n narrow: this.narrow,\r\n visible: this.visible,\r\n unfoldable: this.unfoldable,\r\n sidebar: this\r\n });\r\n }\r\n\r\n private stateToggleSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.stateToggleSubscription = this.sidebarService.sidebarState$.subscribe((state) => {\r\n if (this === state.sidebar || this.id === state.id) {\r\n this.sidebarState = state;\r\n }\r\n });\r\n } else {\r\n this.stateToggleSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n layoutChangeSubscribe(subscribe: boolean = true): void {\r\n const onMobile = `(max-width: ${this.getMobileBreakpoint})`;\r\n\r\n if (subscribe) {\r\n const layoutChanges = this.breakpointObserver.observe([onMobile]);\r\n\r\n this.layoutChangeSubscription = layoutChanges.subscribe((result: BreakpointState) => {\r\n const isOnMobile = result.breakpoints[onMobile];\r\n if (this.onMobile !== isOnMobile) {\r\n this.onMobile = isOnMobile;\r\n this.sidebarService.toggle({\r\n mobile: isOnMobile,\r\n unfoldable: isOnMobile ? false : this.unfoldable,\r\n visible: isOnMobile ? false : this.visible,\r\n sidebar: this\r\n });\r\n }\r\n });\r\n } else {\r\n this.layoutChangeSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-sidebar-brand',\r\n templateUrl: './sidebar-brand.component.html'\r\n})\r\nexport class SidebarBrandComponent implements OnInit {\r\n\r\n @Input() brandFull?: any;\r\n @Input() brandNarrow?: any;\r\n @Input() routerLink?: any[] | string;\r\n\r\n @HostBinding('class.sidebar-brand') sidebarBrandClass = true;\r\n\r\n brandImg = false;\r\n\r\n ngOnInit(): void {\r\n this.brandImg = Boolean(this.brandFull || this.brandNarrow);\r\n }\r\n}\r\n","<ng-template [ngIf]=\"brandImg\">\r\n <a [routerLink]=\"routerLink\">\r\n <img *ngIf=\"brandFull\"\r\n [cHtmlAttr]=\"brandFull\"\r\n [ngClass]=\"'sidebar-brand-full'\">\r\n <img *ngIf=\"brandNarrow\"\r\n [cHtmlAttr]=\"brandNarrow\"\r\n [ngClass]=\"'sidebar-brand-narrow'\">\r\n </a>\r\n</ng-template>\r\n<ng-template [ngIf]=\"!brandImg\">\r\n <ng-content></ng-content>\r\n</ng-template>\r\n","import {Directive, HostListener, Input} from '@angular/core';\r\n\r\nimport {SidebarService} from '../sidebar.service';\r\n\r\n/**\r\n * Allows the sidebar to be toggled/folded via click on host element.\r\n */\r\n@Directive({\r\n selector: '[cSidebarToggle]',\r\n exportAs: 'cSidebarToggle'\r\n})\r\nexport class SidebarToggleDirective {\r\n /**\r\n * Id of sidebar for toggle action. [docs]\r\n *\r\n * @type string\r\n */\r\n @Input('cSidebarToggle') id?: string;\r\n /**\r\n * Sidebar property name for toggle action. [docs]\r\n *\r\n * @type 'visible' | 'unfoldable'\r\n * @default 'visible'\r\n */\r\n @Input() toggle: 'visible' | 'unfoldable' = 'visible'\r\n\r\n constructor(\r\n private sidebarService: SidebarService\r\n ) {}\r\n\r\n @HostListener('click', ['$event'])\r\n toggleOpen($event: any): void {\r\n $event.preventDefault();\r\n this.sidebarService.toggle({ toggle: this.toggle, id: this.id });\r\n }\r\n}\r\n","import { Component, HostBinding, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-sidebar-toggler',\r\n template: ``,\r\n})\r\nexport class SidebarTogglerComponent {\r\n\r\n @HostBinding('attr.role')\r\n @Input() role = 'button';\r\n\r\n @HostBinding('class.sidebar-toggler') sidebarTogglerClass = true;\r\n}\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-sidebar-header',\r\n templateUrl: './sidebar-header.component.html',\r\n styleUrls: ['./sidebar-header.component.scss']\r\n})\r\nexport class SidebarHeaderComponent {\r\n constructor() {}\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'sidebar-header': true\r\n };\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { Component, HostBinding } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-sidebar-footer',\r\n templateUrl: './sidebar-footer.component.html',\r\n styleUrls: ['./sidebar-footer.component.scss']\r\n})\r\nexport class SidebarFooterComponent {\r\n\r\n constructor() { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'sidebar-footer': true\r\n };\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { Injectable } from '@angular/core';\r\n\r\nimport { INavData } from './sidebar-nav';\r\n\r\n@Injectable()\r\nexport abstract class SidebarNavService {\r\n /**\r\n * Returns a sidebar-nav items config NavData\r\n */\r\n abstract getSidebarNavItemsConfig(): INavData[];\r\n}\r\n\r\n@Injectable()\r\nexport class SidebarNavHelper {\r\n\r\n itemType(item: INavData): string {\r\n if (item.divider) {\r\n return 'divider';\r\n } else if (item.title) {\r\n return 'title';\r\n } else if (item.children && item.children.length > 0 ) {\r\n return 'group';\r\n } else if (item.label) {\r\n return 'label';\r\n } else if (!Object.keys(item).length) {\r\n return 'empty';\r\n } else {\r\n return 'link';\r\n }\r\n }\r\n\r\n public isActive(router: any, item: INavData): boolean {\r\n return router.isActive(item.url, false);\r\n }\r\n\r\n public hasBadge = (item: INavData) => Boolean(item.badge);\r\n public hasIcon = (item: INavData) => Boolean(item.icon) || item.icon === '';\r\n public hasIconComponent = (item: INavData) => Boolean(item.iconComponent);\r\n\r\n public getIconClass(item: INavData): any {\r\n const classes = {\r\n 'nav-icon': true\r\n };\r\n const icon = item.icon;\r\n // @ts-ignore\r\n classes[icon] = this.hasIcon(item);\r\n return classes;\r\n }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-sidebar-nav-divider',\r\n template: ``\r\n})\r\nexport class SidebarNavDividerComponent {\r\n @Input() item: any;\r\n\r\n constructor() {\r\n }\r\n\r\n}\r\n","import {Component, ElementRef, Input, OnInit, Renderer2} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-sidebar-nav-title',\r\n template: '',\r\n})\r\nexport class SidebarNavTitleComponent implements OnInit {\r\n @Input() item: any;\r\n\r\n constructor(\r\n private el: ElementRef,\r\n private renderer: Renderer2,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n const nativeElement: HTMLElement = this.el.nativeElement;\r\n const name = this.renderer.createText(this.item.name);\r\n\r\n if ( this.item.class ) {\r\n const classes = this.item.class;\r\n this.renderer.addClass(nativeElement, classes);\r\n }\r\n\r\n if ( this.item.wrapper ) {\r\n const wrapper = this.renderer.createElement(this.item.wrapper.element);\r\n this.addAttribs(this.item.wrapper.attributes, wrapper);\r\n this.renderer.appendChild(wrapper, name);\r\n this.renderer.appendChild(nativeElement, wrapper);\r\n } else {\r\n this.renderer.appendChild(nativeElement, name);\r\n }\r\n }\r\n\r\n private addAttribs(attribs: { [x: string]: any; }, element: any): void {\r\n if (attribs) {\r\n for (const attr in attribs) {\r\n if (attr === 'style' && typeof(attribs[attr]) === 'object' ) {\r\n this.setStyle(attribs[attr], element);\r\n } else if (attr === 'class') {\r\n this.addClass(attribs[attr], element);\r\n } else {\r\n this.setAttrib(attr, attribs[attr], element);\r\n }\r\n }\r\n }\r\n }\r\n\r\n private setStyle(styles: { [x: string]: any; }, el: any): void {\r\n for (const style in styles) {\r\n if (style) {\r\n this.renderer.setStyle(el, style, styles[style]);\r\n }\r\n }\r\n }\r\n\r\n private addClass(classes: string | Array<string>, el: any): void {\r\n const classArray = (Array.isArray(classes) ? classes : classes.split(' '));\r\n classArray.filter((element) => element.length > 0).forEach(element => {\r\n this.renderer.addClass(el, element );\r\n });\r\n }\r\n\r\n private setAttrib(key: string, value: string, el: any): void {\r\n this.renderer.setAttribute(el, key, value );\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'cSidebarNavBadge'\r\n})\r\nexport class SidebarNavBadgePipe implements PipeTransform {\r\n\r\n transform(item: any, args?: any): any {\r\n const badge = item.badge;\r\n return {\r\n badge: true,\r\n 'ms-auto': true,\r\n 'badge-sm': !badge.size,\r\n [`badge-${badge.size}`]: !!badge.size,\r\n [`bg-${badge.color}`]: !!badge.color,\r\n [`${badge.class}`]: !!badge.class\r\n };\r\n }\r\n\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {SidebarNavHelper} from './sidebar-nav.service';\r\n\r\n@Component({\r\n selector: 'c-sidebar-nav-label',\r\n templateUrl: './sidebar-nav-label.component.html'\r\n})\r\nexport class SidebarNavLabelComponent implements OnInit {\r\n @Input() item: any;\r\n\r\n private classes = {\r\n 'c-nav-label': true,\r\n 'c-active': true\r\n };\r\n private iconClasses = {};\r\n\r\n constructor(\r\n public helper: SidebarNavHelper\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.iconClasses = this.helper.getIconClass(this.item);\r\n }\r\n\r\n getItemClass() {\r\n const itemClass = this.item.class;\r\n // @ts-ignore\r\n this.classes[itemClass] = !!itemClass;\r\n return this.classes;\r\n }\r\n getLabelIconClass() {\r\n const variant = `text-${this.item.label.variant}`;\r\n // @ts-ignore\r\n this.iconClasses[variant] = !!this.item.label.variant;\r\n const labelClass = this.item.label.class;\r\n // @ts-ignore\r\n this.iconClasses[labelClass] = !!labelClass;\r\n return this.iconClasses;\r\n }\r\n}\r\n","<a [ngClass]=\"getItemClass()\"\r\n href=\"{{item.url}}\"\r\n [cHtmlAttr]=\"item.attributes\">\r\n <i *ngIf=\"helper.hasIcon(item)\" [ngClass]=\"getLabelIconClass()\"></i>\r\n <ng-container>{{ item.name }}</ng-container>\r\n <span *ngIf=\"helper.hasBadge(item)\" [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge.text }}</span>\r\n</a>\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'cSidebarNavLink'\r\n})\r\nexport class SidebarNavLinkPipe implements PipeTransform {\r\n\r\n transform(item: any): any {\r\n\r\n const disabled = item?.attributes?.disabled;\r\n\r\n const classes = {\r\n 'nav-link': true,\r\n disabled,\r\n 'btn-link': disabled,\r\n [`nav-link-${item.variant}`]: !!item.variant\r\n };\r\n return classes;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'cSidebarNavIcon'\r\n})\r\nexport class SidebarNavIconPipe implements PipeTransform {\r\n\r\n transform(item: any, args?: any): any {\r\n const icon = item.icon;\r\n const classes = {\r\n 'nav-icon': true,\r\n [`${icon}`]: !!icon\r\n };\r\n return classes;\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, OnDestroy, OnInit, Output} from '@angular/core';\r\nimport {NavigationEnd, Router} from '@angular/router';\r\nimport {Observable, Subscription} from 'rxjs';\r\nimport {filter} from 'rxjs/operators';\r\n\r\nimport {SidebarNavHelper} from './sidebar-nav.service';\r\n// import {SidebarService} from '../sidebar.service';\r\nimport { INavData } from './sidebar-nav';\r\n\r\n@Component({\r\n selector: 'c-sidebar-nav-link-content',\r\n template: `\r\n <ng-container *ngIf=\"true\">\r\n <ng-container>{{item?.name ?? ''}}</ng-container>\r\n </ng-container>\r\n `,\r\n providers: [ SidebarNavHelper ]\r\n})\r\nexport class SidebarNavLinkContentComponent {\r\n @Input() item?: INavData;\r\n\r\n constructor(\r\n public helper: SidebarNavHelper\r\n ) { }\r\n}\r\n\r\n@Component({\r\n selector: 'c-sidebar-nav-link',\r\n templateUrl: './sidebar-nav-link.component.html',\r\n providers: [ SidebarNavHelper ]\r\n})\r\nexport class SidebarNavLinkComponent implements OnInit, OnDestroy {\r\n\r\n // tslint:disable-next-line:variable-name\r\n protected _item: INavData = {};\r\n\r\n @Input()\r\n set item(item: INavData) {\r\n this._item = JSON.parse(JSON.stringify(item));\r\n }\r\n get item(): INavData {\r\n return this._item;\r\n }\r\n\r\n @Output() linkClick = new EventEmitter();\r\n\r\n // @ts-ignore\r\n public linkType: string;\r\n // @ts-ignore\r\n public href: string;\r\n // @ts-ignore\r\n public linkActive: boolean;\r\n // @ts-ignore\r\n private url: string;\r\n\r\n private navigationEndObservable: Observable<NavigationEnd>;\r\n // @ts-ignore\r\n private navSubscription: Subscription;\r\n\r\n constructor(\r\n public router: Router,\r\n // private renderer: Renderer2,\r\n // private hostElement: ElementRef,\r\n // private sidebarService: SidebarService\r\n ) {\r\n this.navigationEndObservable = router.events.pipe(\r\n filter(event => {\r\n return event instanceof NavigationEnd;\r\n })\r\n ) as Observable<NavigationEnd>;\r\n }\r\n\r\n ngOnInit(): void {\r\n // @ts-ignore\r\n this.url = typeof this.item.url === 'string' ? this.item.url : this.router.serializeUrl(this.router.createUrlTree(this.item.url)) ;\r\n this.linkType = this.getLinkType();\r\n this.href = this.isDisabled() ? '' : (this.item.href || this.url);\r\n this.linkActive = this.router.url.split(/[?#(;]/)[0] === this.href.split(/[?#(;]/)[0];\r\n this.navSubscription = this.navigationEndObservable.subscribe(event => {\r\n const itemUrlArray = this.href.split(/[?#(;]/)[0].split('/');\r\n const urlArray = event.urlAfterRedirects.split(/[?#(;]/)[0].split('/');\r\n this.linkActive = itemUrlArray.every((value, index) => value === urlArray[index]);\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.navSubscription.unsubscribe();\r\n }\r\n\r\n public getLinkType(): string {\r\n return this.isDisabled() ? 'disabled' : this.isExternalLink() ? 'external' : 'link';\r\n }\r\n\r\n public isDisabled(): boolean {\r\n return this.item?.attributes?.['disabled'];\r\n }\r\n\r\n public isExternalLink(): boolean {\r\n const linkPath = Array.isArray(this.item.url) ? this.item.url[0] : this.item.url;\r\n return !!this.item.href || linkPath.substring(0, 4) === 'http';\r\n }\r\n\r\n linkClicked(): void {\r\n this.linkClick.emit();\r\n }\r\n\r\n // public hideMobile() {\r\n // // todo: proper scrollIntoView() after NavigationEnd\r\n // setTimeout(() => {\r\n // console.log('scroll')\r\n // this.hostElement.nativeElement.scrollIntoView();\r\n // }, 1000)\r\n // this.sidebarService.toggle({open: false, breakpoint: ''});\r\n // }\r\n}\r\n","<ng-container [ngSwitch]=\"linkType\">\r\n <a *ngSwitchCase=\"'disabled'\"\r\n [ngClass]=\"item | cSidebarNavLink\"\r\n [cHtmlAttr]=\"item.attributes ?? {}\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"iconTemplate; context: {$implicit: item}\"></ng-container>\r\n <c-sidebar-nav-link-content [item]=\"item\"></c-sidebar-nav-link-content>\r\n <span *ngIf=\"item.badge\" [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge?.text }}</span>\r\n </a>\r\n <a *ngSwitchCase=\"'external'\"\r\n [ngClass]=\"item | cSidebarNavLink\"\r\n [href]=\"href\"\r\n [cHtmlAttr]=\"item.attributes ?? {}\"\r\n (click)=\"linkClicked()\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"iconTemplate; context: {$implicit: item}\"></ng-container>\r\n <c-sidebar-nav-link-content [item]=\"item\"></c-sidebar-nav-link-content>\r\n <span *ngIf=\"item.badge\" [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge?.text }}</span>\r\n </a>\r\n <a *ngSwitchDefault\r\n [ngClass]=\"item | cSidebarNavLink\"\r\n [cHtmlAttr]=\"item.attributes ?? {}\"\r\n [target]=\"item.attributes?.['target']\"\r\n [queryParams]=\"item.linkProps?.queryParams ?? null\"\r\n [fragment]=\"item.linkProps?.fragment\"\r\n [queryParamsHandling]=\"item.linkProps?.queryParamsHandling\"\r\n [preserveFragment]=\"item.linkProps?.preserveFragment ?? false\"\r\n [skipLocationChange]=\"item.linkProps?.skipLocationChange ?? false\"\r\n [replaceUrl]=\"item.linkProps?.replaceUrl ?? false\"\r\n [state]=\"item.linkProps?.state ?? {}\"\r\n [routerLink]=\"item.url\"\r\n routerLinkActive=\"active\"\r\n (click)=\"linkClicked()\"\r\n >\r\n<!-- [class.active]=\"linkActive\"-->\r\n <ng-container *ngTemplateOutlet=\"iconTemplate ; context: {$implicit: item}\"></ng-container>\r\n <c-sidebar-nav-link-content [item]=\"item\"></c-sidebar-nav-link-content>\r\n <span *ngIf=\"item.badge\" [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge?.text }}</span>\r\n </a>\r\n</ng-container>\r\n\r\n<ng-template #iconTemplate let-item>\r\n <i *ngIf=\"item?.icon\" [ngClass]=\"item | cSidebarNavIcon\"></i>\r\n <ng-template [ngIf]=\"item?.iconComponent\">\r\n <svg\r\n [cIcon]=\"item.iconComponent?.content\"\r\n [name]=\"item.iconComponent?.name\"\r\n [customClasses]=\"item | cSidebarNavIcon\"\r\n ></svg>\r\n </ng-template>\r\n <span *ngIf=\"!item?.icon && !item?.iconComponent\" [ngClass]=\"item | cSidebarNavIcon\"></span>\r\n</ng-template>\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\nimport {SidebarNavHelper} from './sidebar-nav.service';\r\n\r\n@Pipe({\r\n name: 'cSidebarNavItemClass'\r\n})\r\nexport class SidebarNavItemClassPipe implements PipeTransform {\r\n\r\n constructor(\r\n public helper: SidebarNavHelper\r\n ) {}\r\n\r\n // transform(item: any, ...args: any[]): any {\r\n transform(item: any, args?: any[]): any {\r\n const itemType = this.helper.itemType(item);\r\n let itemClass;\r\n if (['divider', 'title'].includes(itemType)) {\r\n itemClass = `nav-${itemType}`;\r\n } else if (itemType === 'group') {\r\n // itemClass = 'c-sidebar-nav-group' ;\r\n itemClass = '' ;\r\n } else {\r\n itemClass = 'nav-item';\r\n }\r\n return item.class ? `${itemClass} ${item.class}` : itemClass;\r\n }\r\n}\r\n","import {\r\n Component,\r\n ElementRef,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Optional,\r\n Renderer2,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\n\r\nimport { INavData } from './sidebar-nav';\r\nimport { SidebarNavHelper } from './sidebar-nav.service';\r\nimport { SidebarService } from '../sidebar.service';\r\nimport { SidebarComponent } from '../sidebar/sidebar.component';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { filter } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'c-sidebar-nav',\r\n templateUrl: './sidebar-nav.component.html',\r\n styleUrls: ['./sidebar-nav.component.scss']\r\n })\r\nexport class SidebarNavComponent implements OnChanges {\r\n @Input() navItems?: INavData[] = [];\r\n @Input() dropdownMode?: 'closeInactive' | 'noAction' | 'openActive' = 'closeInactive';\r\n @Input() groupItems?: boolean;\r\n @Input() compact?: boolean;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'sidebar-nav': !this.groupItems,\r\n compact: !this.groupItems && !!this.compact\r\n };\r\n }\r\n\r\n @HostBinding('class.nav-group-items')\r\n get sidebarNavGroupItemsClass(): boolean {\r\n return !!this.groupItems;\r\n }\r\n\r\n @HostBinding('attr.role') role = 'nav';\r\n\r\n public navItemsArray: INavData[] = [];\r\n\r\n constructor(\r\n @Optional() public sidebar: SidebarComponent,\r\n public helper: SidebarNavHelper,\r\n public router: Router,\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef,\r\n private sidebarService: SidebarService\r\n ) { }\r\n\r\n public ngOnChanges(changes: SimpleChanges): void {\r\n this.navItemsArray = Array.isArray(this.navItems) ? this.navItems.slice() : [];\r\n }\r\n\r\n public hideMobile(): void {\r\n // todo: proper scrollIntoView() after NavigationEnd\r\n if (this.sidebar && this.sidebar.sidebarState.mobile) {\r\n this.sidebarService.toggle({toggle: 'visible', sidebar: this.sidebar});\r\n }\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'c-sidebar-nav-group',\r\n templateUrl: './sidebar-nav-group.component.html',\r\n styleUrls: ['./sidebar-nav-group.component.scss'],\r\n providers: [ SidebarNavHelper ]\r\n})\r\nexport class SidebarNavGroupComponent implements OnInit, OnDestroy {\r\n @Input() item: any;\r\n @Input() dropdownMode: 'closeInactive' | 'noAction' | 'openActive' = 'closeInactive';\r\n // @ts-ignore\r\n @Input() show: boolean;\r\n\r\n @HostBinding('class')\r\n // tslint:disable-next-line:typedef\r\n get hostClasses(): any {\r\n return {\r\n 'nav-group': true,\r\n show: this.open,\r\n };\r\n }\r\n\r\n // todo: dropdownMode\r\n\r\n navigationEndObservable: Observable<NavigationEnd>;\r\n // @ts-ignore\r\n navSubscription: Subscription;\r\n\r\n // @ts-ignore\r\n private open: boolean;\r\n public navItems: INavData[] = [];\r\n\r\n constructor(\r\n private router: Router,\r\n public helper: SidebarNavHelper,\r\n private hostElement: ElementRef\r\n ) {\r\n this.navigationEndObservable = router.events.pipe(\r\n filter((event: any) => event instanceof NavigationEnd)\r\n ) as Observable<NavigationEnd>;\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.navItems = [...this.item.children];\r\n\r\n this.navSubscription = this.navigationEndObservable.subscribe((event: NavigationEnd) => {\r\n const samePath = this.samePath(event.url);\r\n this.openGroup(samePath);\r\n });\r\n\r\n if (this.samePath(this.router.routerState.snapshot.url)) {\r\n this.openGroup(true);\r\n }\r\n }\r\n\r\n samePath(url: string): boolean {\r\n // console.log('item:', this.item.name, this.item.url, 'url:', url);\r\n const itemArray = this.item.url?.split('/');\r\n const urlArray = url.split('/');\r\n return itemArray?.every((value: string, index: number) => {\r\n // console.log(value === urlArray[index], 'value:', value, 'index:', index, urlArray[index], url);\r\n return value === urlArray[index];\r\n });\r\n }\r\n\r\n openGroup(open: boolean): void {\r\n this.open = open;\r\n }\r\n\r\n toggleGroup($event: any): void {\r\n $event.preventDefault();\r\n this.open = !this.open;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.navSubscription.unsubscribe();\r\n }\r\n}\r\n","<ng-container *ngFor=\"let item of navItemsArray\">\r\n <ng-container [ngSwitch]=\"helper.itemType(item)\">\r\n <c-sidebar-nav-group\r\n *ngSwitchCase=\"'group'\"\r\n [item]=\"item\"\r\n [ngClass]=\"item | cSidebarNavItemClass\"\r\n routerLinkActive=\"show\"\r\n #rla=\"routerLinkActive\"\r\n [routerLinkActiveOptions]=\"{exact: true}\"\r\n >\r\n </c-sidebar-nav-group>\r\n <c-sidebar-nav-divider\r\n *ngSwitchCase=\"'divider'\"\r\n [item]=\"item\"\r\n [ngClass]=\"item | cSidebarNavItemClass\"\r\n [cHtmlAttr]=\"item.attributes ?? {}\">\r\n </c-sidebar-nav-divider>\r\n <c-sidebar-nav-title\r\n *ngSwitchCase=\"'title'\"\r\n [item]=\"item\"\r\n [ngClass]=\"item | cSidebarNavItemClass\"\r\n [cHtmlAttr]=\"item.attributes ?? {}\">\r\n </c-sidebar-nav-title>\r\n <c-sidebar-nav-label\r\n *ngSwitchCase=\"'label'\"\r\n [item]=\"item\"\r\n [ngClass]=\"item | cSidebarNavItemClass\">\r\n </c-sidebar-nav-label>\r\n <ng-container\r\n *ngSwitchCase=\"'empty'\">\r\n </ng-container>\r\n <c-sidebar-nav-link\r\n *ngSwitchDefault\r\n [item]=\"item\"\r\n [ngClass]=\"item | cSidebarNavItemClass\"\r\n (linkClick)=\"hideMobile()\"\r\n >\r\n </c-sidebar-nav-link>\r\n </ng-container>\r\n</ng-container>\r\n<ng-content></ng-content>\r\n","<a class=\"nav-link nav-group-toggle\"\r\n (click)=\"toggleGroup($event)\"\r\n [cHtmlAttr]=\"item.attributes\">\r\n <ng-container *ngTemplateOutlet=\"iconTemplate ; context: {$implicit: item}\"></ng-container>\r\n <ng-container>{{ item.name }}</ng-container>\r\n <span *ngIf=\"helper.hasBadge(item)\" [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge.text }}</span>\r\n</a>\r\n<c-sidebar-nav\r\n [groupItems]=\"true\"\r\n [navItems]=\"navItems\">\r\n</c-sidebar-nav>\r\n\r\n<ng-template #iconTemplate let-item>\r\n <i *ngIf=\"item?.icon\" [ngClass]=\"item | cSidebarNavIcon\"></i>\r\n <ng-template [ngIf]=\"item?.iconComponent\">\r\n <svg\r\n [cIcon]=\"item.iconComponent?.content\"\r\n [name]=\"item.iconComponent?.name\"\r\n [customClasses]=\"item | cSidebarNavIcon\"\r\n ></svg>\r\n </ng-template>\r\n <span *ngIf=\"!item?.icon && !item?.iconComponent\" [ngClass]=\"item | cSidebarNavIcon\"></span>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { IconModule } from '@coreui/icons-angular';\r\n\r\nimport { SidebarComponent } from './sidebar/sidebar.component';\r\nimport { SidebarService } from './sidebar.service';\r\nimport { SidebarBrandComponent } from './sidebar-brand/sidebar-brand.component';\r\nimport { SidebarToggleDirective } from './sidebar-toggle/sidebar-toggle.directive';\r\nimport { SidebarTogglerComponent } from './sidebar-toggler/sidebar-toggler.component';\r\nimport { SidebarHeaderComponent } from './sidebar-header/sidebar-header.component';\r\nimport { SidebarFooterComponent } from './sidebar-footer/sidebar-footer.component';\r\n\r\nimport { SharedModule } from '../shared';\r\n\r\nimport {\r\n SidebarNavBadgePipe,\r\n SidebarNavComponent,\r\n SidebarNavDividerComponent,\r\n SidebarNavGroupComponent,\r\n SidebarNavHelper,\r\n SidebarNavIconPipe,\r\n SidebarNavItemClassPipe,\r\n SidebarNavLabelComponent,\r\n SidebarNavLinkComponent,\r\n SidebarNavLinkContentComponent,\r\n SidebarNavLinkPipe,\r\n SidebarNavTitleComponent\r\n} from './sidebar-nav';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n SidebarComponent,\r\n SidebarTogglerComponent,\r\n SidebarToggleDirective,\r\n SidebarBrandComponent,\r\n SidebarNavBadgePipe,\r\n SidebarNavComponent,\r\n SidebarNavDividerComponent,\r\n SidebarNavGroupComponent,\r\n // SidebarNavGroupToggleDirective,\r\n SidebarNavIconPipe,\r\n SidebarNavItemClassPipe,\r\n SidebarNavLabelComponent,\r\n SidebarNavLinkComponent,\r\n SidebarNavLinkContentComponent,\r\n SidebarNavLinkPipe,\r\n SidebarNavTitleComponent,\r\n SidebarHeaderComponent,\r\n SidebarFooterComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n SharedModule,\r\n IconModule\r\n ],\r\n exports: [\r\n SidebarComponent,\r\n SidebarToggleDirective,\r\n SidebarTogglerComponent,\r\n SidebarBrandComponent,\r\n SidebarNavComponent,\r\n SidebarHeaderComponent,\r\n SidebarFooterComponent,\r\n ],\r\n providers: [\r\n SidebarService,\r\n SidebarNavHelper\r\n ],\r\n})\r\nexport class SidebarModule { }\r\n","import { Component, EventEmitter, HostBinding, Input, Output, TemplateRef } from '@angular/core';\r\nimport { ISmartPagination } from './smart-pagination.type';\r\nimport { coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-smart-pagination',\r\n templateUrl: './smart-pagination.component.html',\r\n exportAs: 'cSmartPagination'\r\n})\r\nexport class SmartPaginationComponent implements ISmartPagination {\r\n\r\n static ngAcceptInputType_activePage: NumberInput;\r\n static ngAcceptInputType_pages: NumberInput;\r\n static ngAcceptInputType_limit: NumberInput;\r\n\r\n constructor() { }\r\n\r\n /**\r\n * Current page number. [docs]\r\n * @default 1\r\n * @type number\r\n */\r\n @Input()\r\n set activePage(value: number) {\r\n this._activePage = coerceNumberProperty(value);\r\n }\r\n get activePage(): number {\r\n return this._activePage;\r\n }\r\n private _activePage: number = 1;\r\n\r\n /**\r\n * Event triggered on activePage change.\r\n * @type EventEmitter<number>\r\n */\r\n @Output() activePageChange: EventEmitter<number> = new EventEmitter<number>();\r\n\r\n /**\r\n * Show/hide arrows\r\n * @default true\r\n * @type boolean\r\n */\r\n @Input() arrows: boolean = true;\r\n\r\n /**\r\n * Show double arrows buttons\r\n * @default true\r\n * @type boolean\r\n */\r\n @Input() doubleArrows: boolean = true;\r\n\r\n /**\r\n * Show/hide dots. [docs]\r\n * @default true\r\n */\r\n @Input() dots: boolean = true;\r\n\r\n /**\r\n * Maximum items number. [docs]\r\n * @default 5\r\n * @type number\r\n */\r\n @Input()\r\n set limit(value: number) {\r\n this._limit = coerceNumberProperty(value);\r\n }\r\n get limit(): number {\r\n return this._limit;\r\n }\r\n private _limit: number = 5;\r\n\r\n /**\r\n * Number of pages. [docs]\r\n * @type number\r\n */\r\n @Input()\r\n set pages(value: number) {\r\n this._pages = coerceNumberProperty(value);\r\n }\r\n get pages(): number {\r\n return this._pages;\r\n }\r\n private _pages: number = 1;\r\n\r\n /**\r\n * The content of 'firstButton' button. [docs]\r\n * @default '«'\r\n * todo TemplateRef\r\n */\r\n @Input() firstButton?: string | TemplateRef<any> = '«';\r\n // firstButton?: string | TemplateRef<any> = '«'\r\n\r\n /**\r\n * The content of 'lastButton' button. [docs]\r\n * @default '»'\r\n * todo TemplateRef\r\n */\r\n @Input() lastButton?: string | TemplateRef<any> = '»';\r\n // lastButton?: string | TemplateRef<any> = '»'\r\n\r\n /**\r\n * The content of 'nextButton' button. [docs]\r\n * @default '&lsaquo'\r\n * todo TemplateRef\r\n */\r\n @Input() nextButton?: string | TemplateRef<any> = '›';\r\n\r\n /**\r\n * The content of 'previousButton' button. [docs]\r\n * @default '&rsaquo'\r\n * todo TemplateRef\r\n */\r\n @Input() previousButton?: string | TemplateRef<any> = '‹';\r\n\r\n /**\r\n * Set the alignment of pagination components.\r\n * @values 'start', 'center', 'end'\r\n */\r\n @Input() align?: 'start' | 'center' | 'end' | '' = 'start';\r\n\r\n /**\r\n * Size the component small or large.\r\n * @values 'sm', 'lg'\r\n */\r\n @Input() size?: 'sm' | 'lg';\r\n\r\n /**\r\n * Default role for pagination. [docs]\r\n * @type string\r\n * @default 'navigation'\r\n */\r\n @HostBinding('attr.role')\r\n @Input() role = 'navigation';\r\n\r\n get paginationClass(): any {\r\n return {\r\n pagination: true,\r\n [`pagination-${this.size}`]: !!this.size,\r\n [`justify-content-${this.align}`]: !!this.align\r\n };\r\n }\r\n\r\n get maxPrevItems() {\r\n return Math.floor((this._limit - 1) / 2);\r\n }\r\n\r\n get maxNextItems() {\r\n return Math.ceil((this._limit - 1) / 2);\r\n }\r\n\r\n get range(): number {\r\n return this.activePage + this.maxNextItems;\r\n }\r\n\r\n get lastItem(): number {\r\n return this.range >= this._pages ? this._pages : this.range - (this.afterDots ? 1 : 0);\r\n }\r\n\r\n get computedLimit(): number {\r\n return this._limit - (this.afterDots ? 1 : 0) - (this.beforeDots ? 1 : 0);\r\n }\r\n\r\n get itemsLimit(): number {\r\n return this._pages < this.computedLimit ? this._pages : this.computedLimit;\r\n }\r\n\r\n get showDots(): boolean {\r\n return this.dots && this._limit > 4 && this._limit < this._pages;\r\n }\r\n\r\n get beforeDots(): boolean {\r\n return this.showDots && this.activePage > this.maxPrevItems + 1;\r\n }\r\n\r\n get afterDots(): boolean {\r\n return this.showDots && this.activePage < this._pages - this.maxNextItems;\r\n }\r\n\r\n get items() {\r\n if (this.activePage - this.maxPrevItems <= 1) {\r\n return Array.from(\r\n {\r\n length: this.itemsLimit\r\n },\r\n (_item, i) => i + 1\r\n );\r\n } else {\r\n return Array.from(\r\n {\r\n length: this.itemsLimit\r\n },\r\n (_item, i) => {\r\n return this.lastItem - i;\r\n }\r\n ).reverse();\r\n }\r\n }\r\n\r\n setPage(page: number) {\r\n if (page !== this.activePage) {\r\n this.activePage = page;\r\n this.activePageChange.emit(page);\r\n }\r\n }\r\n}\r\n","<ul [ngClass]=\"paginationClass\">\r\n <li *ngIf=\"doubleArrows\" cPageItem>\r\n <button\r\n (click)=\"setPage(1)\"\r\n [disabled]=\"activePage === 1\"\r\n aria-label=\"First page\"\r\n cPageLink\r\n >\r\n <span aria-hidden=\"true\">{{firstButton}}</span>\r\n </button>\r\n </li>\r\n <li *ngIf=\"arrows\" cPageItem>\r\n <button\r\n (click)=\"setPage(activePage - 1)\"\r\n [disabled]=\"activePage === 1\"\r\n aria-label=\"Previous page\"\r\n cPageLink\r\n >\r\n <span aria-hidden=\"true\">{{previousButton}}</span>\r\n </button>\r\n </li>\r\n <li *ngIf=\"beforeDots\" cPageItem>\r\n <a cPageLink disabled role=\"separator\">\r\n ...\r\n </a>\r\n </li>\r\n <li *ngFor=\"let item of items; index as i\" [active]=\"activePage === item\" cPageItem>\r\n <button\r\n (click)=\"setPage(item)\"\r\n [title]=\"(activePage === item ? 'Current page ' : 'Go to page ') + (item).toString()\"\r\n cPageLink\r\n >\r\n {{item}}\r\n </button>\r\n </li>\r\n <li *ngIf=\"afterDots\" cPageItem>\r\n <a cPageLink disabled role=\"separator\">\r\n ...\r\n </a>\r\n </li>\r\n <li *ngIf=\"arrows\" cPageItem>\r\n <button\r\n (click)=\"setPage(activePage + 1)\"\r\n [disabled]=\"activePage === pages\"\r\n aria-label=\"Next page\"\r\n cPageLink\r\n >\r\n <span aria-hidden=\"true\">{{nextButton}}</span>\r\n </button>\r\n </li>\r\n <li *ngIf=\"doubleArrows\" cPageItem>\r\n <button\r\n (click)=\"setPage(pages)\"\r\n [disabled]=\"activePage === pages\"\r\n aria-label=\"Last page\"\r\n cPageLink\r\n >\r\n <span aria-hidden=\"true\">{{lastButton}}</span>\r\n </button>\r\n </li>\r\n</ul>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PaginationModule } from '../pagination';\r\nimport { SmartPaginationComponent } from './smart-pagination.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n SmartPaginationComponent\r\n ],\r\n exports: [\r\n SmartPaginationComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n PaginationModule\r\n ]\r\n})\r\nexport class SmartPaginationModule {\r\n}\r\n","import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-smart-table-filter',\r\n templateUrl: './smart-table-filter.component.html',\r\n styleUrls: ['./smart-table-filter.component.scss']\r\n})\r\nexport class SmartTableFilterComponent {\r\n\r\n constructor() { }\r\n\r\n @Input() filterLabel: string = 'Filter:';\r\n @Input() filterPlaceholder: string = 'Filter';\r\n\r\n @Input()\r\n set value(value: string) {\r\n if (this._value != value) {\r\n this._value = value;\r\n this.valueChange.emit(value);\r\n }\r\n }\r\n get value() {\r\n return this._value;\r\n }\r\n private _value = '';\r\n\r\n @Output() valueChange: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n row: true,\r\n 'mb-2': true\r\n };\r\n }\r\n\r\n onKey($event: KeyboardEvent) {\r\n this.value = ($event.target as HTMLInputElement).value;\r\n }\r\n}\r\n","<label cLabel=\"col\" class=\"col-sm-auto\">{{filterLabel}}</label>\r\n<div class=\"col-sm-auto\">\r\n <input [value]=\"value\" [placeholder]=\"filterPlaceholder\" cFormControl (keyup)=\"onKey($event)\" />\r\n</div>\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { Colors } from '../coreui.types';\r\n\r\n@Directive({\r\n selector: '[cTableColor]'\r\n})\r\nexport class TableColorDirective {\r\n\r\n /**\r\n * Use contextual color for tables, table rows or individual cells.\r\n * @type Colors\r\n */\r\n @Input('cTableColor') color?: Colors;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n [`table-${this.color}`]: !!this.color,\r\n };\r\n }\r\n}\r\n","import { Component, EventEmitter, HostBinding, Input, OnInit, Output } from '@angular/core';\r\nimport { IColumn, IColumnFilter, IColumnFilterValue, ISorter, ISorterValue } from '../smart-table.type';\r\n\r\n@Component({\r\n selector: 'c-smart-table-head',\r\n templateUrl: './smart-table-head.component.html',\r\n styleUrls: ['./smart-table-head.component.scss']\r\n})\r\nexport class SmartTableHeadComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n @Input() columnFilter?: boolean | IColumnFilter;\r\n @Input() columnFilterState: IColumnFilterValue = {};\r\n @Input() columnSorter?: boolean | ISorter = true;\r\n @Input() component?: string = 'thead';\r\n @Input() columns?: (IColumn | string)[];\r\n @Input() selectable?: boolean;\r\n @Input() selectAll?: boolean | string;\r\n @Input() sorterValue?: ISorterValue;\r\n\r\n // todo\r\n // @Input() sortingIcon?: string | TemplateRef<any>;\r\n // @Input() sortingIconAscending?: string | TemplateRef<any>;\r\n // @Input() sortingIconDescending?: string | TemplateRef<any>;\r\n\r\n @Output() columnFilterStateChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() sorterStateChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() selectAllChange: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n thead: this.component === 'thead',\r\n tfoot: this.component === 'tfoot'\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.columns?.forEach((column, index) => {\r\n const columnKey = this.columnKey(column);\r\n this.columnFilterState[columnKey] = this.columnFilterState[columnKey] ?? '';\r\n });\r\n }\r\n\r\n tableHeaderCellProps (column: IColumn | string) {\r\n if (typeof column === 'object' && column._props) {\r\n const { color, ...props } = { ...column._props }\r\n return props\r\n }\r\n return {}\r\n }\r\n\r\n tableHeaderCellColor (column: IColumn | string) {\r\n if (typeof column === 'object' && column._props) {\r\n const { color } = { ...column._props }\r\n return color\r\n }\r\n return ''\r\n }\r\n\r\n tableHeaderCellStyles(column: IColumn | string) {\r\n const style = { verticalAlign: 'middle', overflow: 'hidden', cursor: '' };\r\n if (\r\n this.columnSorter &&\r\n (typeof column !== 'object' ||\r\n (typeof column === 'object' && (typeof column.sorter === 'undefined' || column.sorter)))\r\n ) {\r\n style.cursor = 'pointer';\r\n }\r\n\r\n if (typeof column === 'object' && column._style) {\r\n return { ...style, ...column._style };\r\n }\r\n return style;\r\n }\r\n\r\n columnLabel(column: IColumn | string) {\r\n return typeof column === 'object' ? column.label !== undefined ? column.label : this.prettifyName(column.key) : this.prettifyName(column);\r\n }\r\n\r\n columnKey(column: IColumn | string) {\r\n return typeof column === 'object' ? column.key : column;\r\n }\r\n\r\n getColumnSorterState(column: IColumn | string) {\r\n const columnKey = this.columnKey(column);\r\n if (this.sorterValue?.column === columnKey) {\r\n if (this.sorterValue.state) {\r\n return this.sorterValue.state;\r\n }\r\n return 0;\r\n }\r\n return 0;\r\n }\r\n\r\n prettifyName(name: string) {\r\n return name\r\n .replace(/[-_.]/g, ' ')\r\n .replace(/ +/g, ' ')\r\n .replace(/([a-z0-9])([A-Z])/g, '$1 $2')\r\n .split(' ')\r\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1))\r\n .join(' ');\r\n }\r\n\r\n handleSortClick(column: IColumn | string, i: number) {\r\n if (this.columnSorterEnabled(column)) {\r\n const columnKey = this.columnKey(column);\r\n this.sorterStateChange.emit({ columnKey, index: i });\r\n }\r\n }\r\n\r\n columnFilterEnabled(column: IColumn | string) {\r\n return typeof column !== 'object' ? true : typeof column.filter === 'undefined' ? true : column.filter;\r\n }\r\n\r\n columnSorterEnabled(column: IColumn | string) {\r\n return typeof column !== 'object' ? true : typeof column.sorter === 'undefined' ? true : column.sorter;\r\n }\r\n\r\n handleColumnFilterValueChange($event: Event, column: IColumn | string) {\r\n const columnKey = this.columnKey(column);\r\n const columnFilterValue = ($event.target as HTMLInputElement).value;\r\n this.columnFilterState[this.columnKey(column)] = columnFilterValue;\r\n this.columnFilterStateChange.emit({ column: columnKey, value: columnFilterValue });\r\n }\r\n\r\n handleSelectAllChecked($event: Event) {\r\n const selectAll = ($event.target as HTMLInputElement).checked;\r\n this.selectAllChange.emit(selectAll);\r\n }\r\n}\r\n","<tr>\r\n <th *ngIf=\"selectable\">\r\n <input (change)=\"handleSelectAllChecked($event)\"\r\n [checked]=\"selectAll === true\"\r\n [indeterminate]=\"selectAll === 'indeterminate'\"\r\n cFormCheckInput>\r\n </th>\r\n <th\r\n (click)=\"handleSortClick(column, i)\"\r\n *ngFor=\"let column of columns; let i = index\"\r\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\r\n [cTableColor]=\"tableHeaderCellColor(column)\"\r\n [ngStyle]=\"tableHeaderCellStyles(column)\"\r\n >\r\n <div class=\"d-inline\">{{ columnLabel(column) }}</div>\r\n <ng-template [ngIf]=\"columnSorter && columnSorterEnabled(column)\">\r\n <ng-container\r\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\r\n ></ng-container>\r\n </ng-template>\r\n </th>\r\n</tr>\r\n<tr *ngIf=\"columnFilter\">\r\n <th *ngIf=\"selectable\"></th>\r\n <th *ngFor=\"let column of columns; let i = index\"\r\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\r\n [cTableColor]=\"tableHeaderCellColor(column)\"\r\n [ngStyle]=\"tableHeaderCellStyles(column)\"\r\n >\r\n <input\r\n (change)=\"handleColumnFilterValueChange($event, column)\"\r\n (input)=\"handleColumnFilterValueChange($event, column)\"\r\n *ngIf=\"columnFilterEnabled(column)\"\r\n [value]=\"columnFilterState[columnKey(column)] ?? ''\"\r\n cFormControl\r\n sizing=\"sm\"\r\n />\r\n </th>\r\n</tr>\r\n\r\n<ng-template #columnSorterIconTemplate let-columnSorterState>\r\n <ng-container [ngSwitch]=\"columnSorterState\">\r\n <span *ngSwitchCase=\"'asc'\" class=\"float-end me-1\">\r\n <ng-container *ngTemplateOutlet=\"sortingIconAscendingTemplate\"></ng-container>\r\n </span>\r\n <span *ngSwitchCase=\"'desc'\" class=\"float-end me-1\">\r\n <ng-container *ngTemplateOutlet=\"sortingIconDescendingTemplate\"></ng-container>\r\n </span>\r\n <span *ngSwitchDefault class=\"opacity-25 float-end me-1\">\r\n <ng-container *ngTemplateOutlet=\"sortingIconTemplate\"></ng-container>\r\n </span>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<!--todo: sortingIconCustom Templates-->\r\n<ng-template #sortingIconTemplate>\r\n <svg\r\n class=\"icon icon-custom-size\"\r\n role=\"img\"\r\n viewBox=\"0 0 512 512\"\r\n width=\"18\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373\"\r\n ></polygon>\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372\"\r\n ></polygon>\r\n </svg>\r\n</ng-template>\r\n\r\n<ng-template #sortingIconAscendingTemplate>\r\n <svg\r\n class=\"icon icon-custom-size\"\r\n role=\"img\"\r\n viewBox=\"0 0 512 512\"\r\n width=\"18\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625\"\r\n ></polygon>\r\n </svg>\r\n</ng-template>\r\n\r\n<ng-template #sortingIconDescendingTemplate>\r\n <svg\r\n class=\"icon icon-custom-size\"\r\n role=\"img\"\r\n viewBox=\"0 0 512 512\"\r\n width=\"18\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <polygon\r\n class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75\"\r\n ></polygon>\r\n </svg>\r\n</ng-template>\r\n","import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-smart-table-items-per-page-selector',\r\n templateUrl: './smart-table-items-per-page-selector.component.html',\r\n styleUrls: ['./smart-table-items-per-page-selector.component.scss']\r\n})\r\nexport class SmartTableItemsPerPageSelectorComponent {\r\n\r\n constructor() { }\r\n\r\n @Input()\r\n set itemsPerPage(value: number) {\r\n if (this._itemsPerPage != value) {\r\n this._itemsPerPage = value;\r\n this.itemsPerPageChange.emit(value);\r\n }\r\n }\r\n get itemsPerPage() {\r\n return this._itemsPerPage;\r\n }\r\n private _itemsPerPage = 5;\r\n\r\n @Input() itemsPerPageLabel: string = 'Items per page:';\r\n @Input() itemsPerPageOptions: number[] = [5, 10, 20, 50];\r\n @Output() itemsPerPageChange: EventEmitter<number> = new EventEmitter<number>();\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n row: true\r\n };\r\n }\r\n}\r\n","<label cLabel=\"col\" class=\"col-sm-auto\">{{itemsPerPageLabel}}</label>\r\n<div class=\"col-auto\">\r\n <select [(ngModel)]=\"itemsPerPage\" cSelect name=\"itemsPerPageSelector\">\r\n <option *ngFor=\"let option of itemsPerPageOptions; let i = index\" [ngValue]=\"option\">{{option}}</option>\r\n </select>\r\n</div>\r\n","import { Directive, ElementRef, HostBinding, Input, OnInit, Renderer2 } from '@angular/core';\r\nimport { Breakpoints, Colors } from '../coreui.types';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { ITable } from './table.type';\r\n\r\n@Directive({\r\n selector: 'table[cTable]'\r\n})\r\nexport class TableDirective implements ITable, OnInit {\r\n static ngAcceptInputType_bordered: BooleanInput;\r\n static ngAcceptInputType_borderless: BooleanInput;\r\n static ngAcceptInputType_hover: BooleanInput;\r\n static ngAcceptInputType_small: BooleanInput;\r\n static ngAcceptInputType_striped: BooleanInput;\r\n\r\n /**\r\n * Set the vertical alignment.\r\n * @type string\r\n * @values 'bottom' | 'middle' | 'top'\r\n */\r\n @Input() align?: 'bottom' | 'middle' | 'top';\r\n /**\r\n * Sets the border color of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() borderColor?: Colors;\r\n /**\r\n * Add borders on all sides of the table and cells.\r\n * @type boolean\r\n */\r\n @Input()\r\n set bordered(value: boolean) {\r\n this._bordered = coerceBooleanProperty(value);\r\n };\r\n get bordered() {\r\n return this._bordered;\r\n }\r\n private _bordered = false;\r\n /**\r\n * Remove borders on all sides of the table and cells.\r\n * @type boolean\r\n */\r\n @Input()\r\n set borderless(value: boolean) {\r\n this._borderless = coerceBooleanProperty(value);\r\n };\r\n get borderless() {\r\n return this._borderless;\r\n }\r\n private _borderless = false;\r\n /**\r\n * Put the `<caption>` on the top of the table.\r\n * @values 'top'\r\n */\r\n @Input() caption?: 'top';\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Enable a hover state on table rows within table body.\r\n * @type boolean\r\n */\r\n @Input()\r\n set hover(value: boolean) {\r\n this._hover = coerceBooleanProperty(value);\r\n };\r\n get hover() {\r\n return this._hover;\r\n }\r\n private _hover = false;\r\n /**\r\n * Make table responsive across all viewports or pick a maximum breakpoint with which to have a responsive table up to.\r\n * @type: {boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'}\r\n */\r\n @Input() responsive?: boolean | Omit<Breakpoints, 'xs'>;\r\n /**\r\n * Make table more compact by cutting all cell `padding` in half.\r\n * @type boolean\r\n */\r\n @Input()\r\n set small(value: boolean) {\r\n this._small = coerceBooleanProperty(value);\r\n };\r\n get small() {\r\n return this._small;\r\n }\r\n private _small = false;\r\n /**\r\n * Add zebra-striping to any table row within the table body`.\r\n * @type boolean\r\n */\r\n @Input()\r\n set striped(value: boolean) {\r\n this._striped = coerceBooleanProperty(value);\r\n };\r\n get striped() {\r\n return this._striped;\r\n }\r\n private _striped = false;\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef\r\n ) { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n table: true,\r\n [`align-${this.align}`]: !!this.align,\r\n [`caption-${this.caption}`]: !!this.caption,\r\n [`border-${this.borderColor}`]: !!this.borderColor,\r\n 'table-bordered': this.bordered,\r\n 'table-borderless': this.borderless,\r\n [`table-${this.color}`]: !!this.color,\r\n 'table-hover': this.hover,\r\n 'table-sm': this.small,\r\n 'table-striped': this.striped\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setResponsiveWrapper();\r\n }\r\n\r\n // todo\r\n setResponsiveWrapper(): void {\r\n if (!!this.responsive) {\r\n const nativeElement: HTMLElement = this.hostElement.nativeElement;\r\n const wrapper = this.renderer.createElement('div');\r\n const className = this.responsive === true ? 'table-responsive' : `table-responsive-${this.responsive}`;\r\n this.renderer.addClass(wrapper, className);\r\n const parentNode = this.renderer.parentNode(nativeElement);\r\n this.renderer.appendChild(parentNode, wrapper);\r\n this.renderer.insertBefore(parentNode, wrapper, nativeElement);\r\n this.renderer.appendChild(wrapper, nativeElement);\r\n }\r\n }\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { Alignment } from '../coreui.types';\r\n\r\n@Directive({\r\n selector: '[cAlign]'\r\n})\r\nexport class AlignDirective {\r\n /**\r\n * Set vertical alignment of inline, inline-block, inline-table, and table cell elements\r\n * @type Alignment\r\n */\r\n @Input('cAlign') align?: Alignment;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n [`align-${this.align}`]: !!this.align,\r\n };\r\n }\r\n\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Directive({\r\n selector: '[cTableActive]'\r\n})\r\nexport class TableActiveDirective {\r\n\r\n static ngAcceptInputType_active: BooleanInput;\r\n\r\n /**\r\n * Highlight a table row or cell\r\n * @type boolean\r\n */\r\n @Input('cTableActive')\r\n set active(value: boolean) {\r\n this._active = coerceBooleanProperty(value);\r\n };\r\n get active() {\r\n return this._active;\r\n };\r\n\r\n private _active = false;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n 'table-active': this.active,\r\n };\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import {\r\n AfterContentInit,\r\n Component,\r\n ContentChildren,\r\n EventEmitter,\r\n Input,\r\n IterableDiffer,\r\n IterableDiffers,\r\n Output,\r\n QueryList,\r\n TemplateRef,\r\n Type\r\n} from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty, coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\r\n\r\nimport { ITable } from '../../table/table.type';\r\nimport {\r\n IColumn,\r\n IColumnFilter,\r\n IColumnFilterValue,\r\n IItem,\r\n IItemInternal,\r\n ISmartTable,\r\n ISorter,\r\n ISorterValue,\r\n ITableFilter,\r\n ITableGroupProps,\r\n ItemsPerPageSelect\r\n} from '../smart-table.type';\r\nimport { TemplateIdDirective } from '../../shared';\r\n\r\n@Component({\r\n selector: 'c-smart-table',\r\n templateUrl: './smart-table.component.html',\r\n styleUrls: ['./smart-table.component.scss'],\r\n exportAs: 'cSmartTable'\r\n})\r\nexport class SmartTableComponent implements ISmartTable, AfterContentInit {\r\n\r\n static ngAcceptInputType_activePage: NumberInput;\r\n static ngAcceptInputType_cleaner: BooleanInput;\r\n static ngAcceptInputType_clickableRows: BooleanInput;\r\n static ngAcceptInputType_footer: BooleanInput;\r\n static ngAcceptInputType_header: BooleanInput;\r\n static ngAcceptInputType_itemsPerPage: NumberInput;\r\n static ngAcceptInputType_pagination: BooleanInput;\r\n static ngAcceptInputType_selectable: BooleanInput;\r\n\r\n constructor(\r\n private iterable: IterableDiffers\r\n ) {\r\n this.iterableDiffer = this.iterable.find(this.items).create();\r\n }\r\n\r\n private iterableDiffer: IterableDiffer<any> | null;\r\n\r\n @Input()\r\n set activePage(value: number) {\r\n this._activePage = coerceNumberProperty(value) || 1;\r\n this.activePageChange.emit(this._activePage);\r\n }\r\n get activePage(): number {\r\n return this._activePage;\r\n }\r\n private _activePage = 1;\r\n\r\n @Input()\r\n set cleaner(value: boolean) {\r\n this._cleaner = coerceBooleanProperty(value);\r\n }\r\n get cleaner(): boolean {\r\n return this._cleaner;\r\n }\r\n private _cleaner: boolean = false;\r\n\r\n @Input()\r\n set clickableRows(value: boolean) {\r\n this._clickableRows = coerceBooleanProperty(value);\r\n }\r\n get clickableRows(): boolean {\r\n return this._clickableRows;\r\n }\r\n private _clickableRows: boolean = false;\r\n\r\n @Input()\r\n set columns(value) {\r\n this._columns = value;\r\n }\r\n get columns() {\r\n return this._columns || this.rawColumnNames;\r\n }\r\n private _columns?: (string | IColumn)[];\r\n\r\n @Input() columnFilter?: boolean | IColumnFilter;\r\n\r\n @Input()\r\n set columnFilterValue(value: IColumnFilterValue) {\r\n this._columnFilterValue = value;\r\n this.columnFilterValueChange.emit({ ...value });\r\n this.tableFiltered; // emits tableFiltered change\r\n }\r\n get columnFilterValue(): IColumnFilterValue {\r\n return this._columnFilterValue;\r\n }\r\n private _columnFilterValue: IColumnFilterValue = {};\r\n\r\n @Input() columnSorter?: boolean | ISorter;\r\n\r\n @Input()\r\n set footer(value: boolean) {\r\n this._footer = coerceBooleanProperty(value);\r\n }\r\n get footer(): boolean {\r\n return this._footer;\r\n }\r\n private _footer: boolean = false;\r\n\r\n @Input()\r\n set header(value: boolean) {\r\n this._header = coerceBooleanProperty(value);\r\n }\r\n get header(): boolean {\r\n return this._header;\r\n }\r\n private _header: boolean = false;\r\n\r\n @Input()\r\n set items(value: IItem[]) {\r\n this._items = this.setItems(value) as Array<Type<IItemInternal>>;\r\n }\r\n get items() {\r\n return this._items;\r\n }\r\n private _items: IItemInternal[] = [] as Array<Type<IItemInternal>>;\r\n\r\n @Input()\r\n set itemsPerPage(value: number) {\r\n this._itemsPerPage = coerceNumberProperty(value);\r\n }\r\n get itemsPerPage(): number {\r\n return this._itemsPerPage;\r\n }\r\n private _itemsPerPage: number = 10;\r\n\r\n @Input() itemsPerPageLabel: string = 'Items per page:';\r\n @Input() itemsPerPageOptions: number[] = [5, 10, 20, 50];\r\n @Input() itemsPerPageSelect?: boolean | ItemsPerPageSelect;\r\n @Input() loading?: boolean;\r\n @Input() noItemsLabel: string | TemplateRef<any> = 'No items found';\r\n\r\n @Input()\r\n set pagination(value: boolean) {\r\n this._pagination = coerceBooleanProperty(value);\r\n }\r\n get pagination(): boolean {\r\n return this._pagination;\r\n }\r\n private _pagination: boolean = false;\r\n\r\n @Input()\r\n set selectable(value: boolean) {\r\n this._selectable = coerceBooleanProperty(value);\r\n }\r\n get selectable(): boolean {\r\n return this._selectable;\r\n }\r\n private _selectable: boolean = false;\r\n\r\n @Input()\r\n set sorterValue(value: ISorterValue) {\r\n this._sorterValue = value;\r\n this.sorterValueChange.emit({ ...value });\r\n }\r\n get sorterValue(): ISorterValue {\r\n return this._sorterValue;\r\n }\r\n private _sorterValue: ISorterValue = {};\r\n\r\n @Input() tableFilter?: boolean | ITableFilter;\r\n @Input() tableFilterLabel = 'Filter:';\r\n @Input() tableFilterPlaceholder = 'type string...';\r\n\r\n @Input()\r\n set tableFilterValue(value: string) {\r\n this._tableFilterValue = value;\r\n this.tableFilterValueChange.emit(value);\r\n this.tableFiltered; // emits tableFiltered change\r\n }\r\n get tableFilterValue(): string {\r\n return this._tableFilterValue;\r\n }\r\n private _tableFilterValue: string = '';\r\n\r\n @Input() tableBodyProps?: ITableGroupProps = {};\r\n @Input() tableFootProps?: ITableGroupProps = {};\r\n @Input() tableHeadProps?: ITableGroupProps = {};\r\n @Input() tableProps?: ITable = {};\r\n\r\n @Output() selectedItemsChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() sorterValueChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() activePageChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() itemsPerPageChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() rowClick: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() columnFilterValueChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() filteredItemsChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() tableFilterValueChange: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n @ContentChildren(TemplateIdDirective) columnTemplates!: QueryList<TemplateIdDirective>;\r\n templates: { [key: string]: (TemplateRef<any> | null) } = { tableDetails: null, tableData: null };\r\n\r\n ngAfterContentInit(): void {\r\n this.columnTemplates.forEach((child: TemplateIdDirective) => {\r\n this.templates[child.id] = child.templateRef;\r\n });\r\n }\r\n\r\n get selectedAll() {\r\n const selected = this.items.filter((item) => item._selected === true);\r\n return selected.length === 0 ? false : selected.length === this.items.length ? true : 'indeterminate';\r\n // return this._selectedAll;\r\n }\r\n set selectedAll(value) {\r\n const selected = this.items.filter((item) => item._selected === true);\r\n this.selectedItemsChange.emit(selected);\r\n this._selectedAll = selected.length === 0 ? false : selected.length === this.items.length ? true : 'indeterminate';\r\n }\r\n private _selectedAll: (boolean | string) = false;\r\n\r\n get tableFilterState() {\r\n return this.tableFilterValue ? this.tableFilterValue : '';\r\n }\r\n\r\n get columnFilterState() {\r\n return this.columnFilterValue ? this.columnFilterValue : {};\r\n }\r\n\r\n get numberOfPages(): number {\r\n return this._itemsPerPage ? Math.ceil(this.sortedItems.length / this._itemsPerPage) : 1;\r\n }\r\n\r\n get colspan(): number {\r\n return this._selectable ? this.rawColumnNames.length + 1 : this.rawColumnNames.length;\r\n }\r\n\r\n get firstItemOnActivePageIndex(): number {\r\n return this._activePage ? (this._activePage - 1) * this._itemsPerPage : 0;\r\n }\r\n\r\n get itemsOnActivePage(): IItemInternal[] {\r\n return this.sortedItems.slice(\r\n this.firstItemOnActivePageIndex,\r\n this.firstItemOnActivePageIndex + this._itemsPerPage\r\n );\r\n }\r\n\r\n get currentItems(): IItemInternal[] {\r\n return this._activePage ? this.itemsOnActivePage : this.sortedItems ?? [];\r\n // return this.items ?? [];\r\n }\r\n\r\n get genCols() {\r\n return Object.keys(this._items ? this._items[0] ?? {} : {}).filter((el) => el.charAt(0) !== '_');\r\n }\r\n\r\n get rawColumnNames() {\r\n return this._columns\r\n ? this._columns.map((column: any) => {\r\n if (typeof column === 'object') return column.key;\r\n else return column;\r\n })\r\n : this.genCols;\r\n }\r\n\r\n get itemsDataColumns() {\r\n return this.rawColumnNames.filter((name) => this.genCols.includes(name));\r\n }\r\n\r\n get sortedItems(): IItemInternal[] {\r\n const col = this.sorterValue.column;\r\n if (\r\n !col ||\r\n !this.itemsDataColumns.includes(col) ||\r\n (this.columnSorter &&\r\n typeof this.columnSorter === 'object' &&\r\n this.columnSorter.external)\r\n ) {\r\n return this.tableFiltered;\r\n }\r\n //if values in column are to be sorted by numeric value they all have to be type number\r\n // const flip = sorterState.asc ? 1 : -1\r\n const flip = this.sorterValue.state === 'asc' ? 1 : this.sorterValue.state === 'desc' ? -1 : 0;\r\n // @ts-ignore\r\n const sorted = this.tableFiltered.slice().sort((item: { [x: string]: any; }, item2: { [x: string]: any; }) => {\r\n const value = item[col];\r\n const value2 = item2[col];\r\n const a = typeof value === 'number' ? value : String(value).toLowerCase();\r\n const b = typeof value2 === 'number' ? value2 : String(value2).toLowerCase();\r\n return a > b ? 1 * flip : b > a ? -1 * flip : 0;\r\n });\r\n return sorted;\r\n }\r\n\r\n get columnFiltered(): IItemInternal[] {\r\n let _items = this._items;\r\n if (\r\n this.columnFilter &&\r\n typeof this.columnFilter === 'object' &&\r\n this.columnFilter.external\r\n ) {\r\n // @ts-ignore\r\n return _items;\r\n }\r\n Object.entries(this.columnFilterState).forEach(([key, value]) => {\r\n const columnFilter = String(value).toLowerCase();\r\n if (columnFilter && this.itemsDataColumns.includes(key)) {\r\n // @ts-ignore\r\n _items = _items.filter((item) => {\r\n return String(item[key]).toLowerCase().includes(columnFilter);\r\n });\r\n }\r\n });\r\n // @ts-ignore\r\n return _items;\r\n }\r\n\r\n get tableFiltered(): IItemInternal[] {\r\n let items = this.columnFiltered;\r\n if (\r\n !this.tableFilterState ||\r\n (this.tableFilter && typeof this.tableFilter === 'object' && this.tableFilter.external)\r\n ) {\r\n this.filteredItemsChange.emit(items);\r\n return items;\r\n }\r\n const filter = this.tableFilterState.toLowerCase();\r\n const valueContainFilter = (val: any) => String(val).toLowerCase().includes(filter);\r\n // @ts-ignore\r\n items = items.filter((item: { [x: string]: any; }) => {\r\n return !!this.itemsDataColumns.find((key) => valueContainFilter(item[key]));\r\n });\r\n this.filteredItemsChange.emit(items);\r\n return items;\r\n }\r\n\r\n get isFiltered() {\r\n return this.tableFilterState || this.sorterValue?.column || Object.values(this.columnFilterState).join('');\r\n }\r\n\r\n private setItems(items: IItem[]) {\r\n if (Array.isArray(items)) {\r\n return items.map((item: IItem, index: number) => {\r\n return { ...item, _id: index };\r\n });\r\n }\r\n return <IItemInternal>[];\r\n }\r\n\r\n handleSortChange($event: { columnKey: string; index: number; }) {\r\n this.handleSorterChange($event.columnKey, $event.index);\r\n }\r\n\r\n isSortable(i: number): boolean | undefined {\r\n const isDataColumn = this.itemsDataColumns.includes(this.rawColumnNames[i]);\r\n let column;\r\n if (this.columns) column = this.columns[i];\r\n return (\r\n this.columnSorter &&\r\n (!this.columns ||\r\n typeof column !== 'object' ||\r\n (typeof column === 'object' &&\r\n (typeof column.sorter === 'undefined' || column.sorter))) &&\r\n isDataColumn\r\n );\r\n }\r\n\r\n handleSorterChange(column: string, index: number): void {\r\n if (!this.isSortable(index)) {\r\n return;\r\n }\r\n //if column changed or sort was descending change asc to true\r\n const state = { ...this.sorterValue };\r\n\r\n if (state.column === column) {\r\n if (state.state === 0) {\r\n state.state = 'asc';\r\n } else if (state.state === 'asc') {\r\n state.state = 'desc';\r\n } else {\r\n if (typeof this.columnSorter === 'object' && !this.columnSorter.resetable) {\r\n state.state = 'asc';\r\n } else {\r\n state.state = 0;\r\n }\r\n }\r\n } else {\r\n state.column = column;\r\n state.state = 'asc';\r\n }\r\n this.sorterValue = { ...state };\r\n }\r\n\r\n setActivePage($event: number) {\r\n this.activePage = $event;\r\n }\r\n\r\n handleColumnFilterChange($event: any) {\r\n const { column, value } = $event;\r\n const isLazy = this.columnFilter && typeof this.columnFilter === 'object' && this.columnFilter.lazy === true;\r\n // if ((isLazy && type === 'input') || (!isLazy && type === 'change')) {\r\n if (isLazy) {\r\n return;\r\n }\r\n this.setActivePage(1);\r\n this.columnFilterValue = { ...this.columnFilterValue, [`${column}`]: value };\r\n }\r\n\r\n handleTableFilterChange($event: string) {\r\n const isLazy = this.tableFilter && typeof this.tableFilter === 'object' && this.tableFilter.lazy === true;\r\n // if ((isLazy && type === 'input') || (!isLazy && type === 'change')) {\r\n if (isLazy) {\r\n return;\r\n }\r\n this.setActivePage(1);\r\n this.tableFilterValue = $event;\r\n }\r\n\r\n clean($event: MouseEvent) {\r\n this.columnFilterValue = {};\r\n this.tableFilterValue = '';\r\n this.sorterValue = {};\r\n this.tableFiltered; //emits tableFiltered change\r\n }\r\n\r\n handleItemsPerPageChange(value: number) {\r\n if (value !== this._itemsPerPage) {\r\n this.setActivePage(1);\r\n this._itemsPerPage = value;\r\n this.itemsPerPageChange.emit(value);\r\n }\r\n }\r\n\r\n handleRowChecked($event: Event, item: IItemInternal) {\r\n item._selected = ($event.target as HTMLInputElement).checked;\r\n const selected = this.items.filter((item) => item._selected === true);\r\n this.selectedItemsChange.emit(selected);\r\n }\r\n\r\n handleSelectAllChange($event: any) {\r\n this._items = this.items.map((item: IItemInternal) => {\r\n return { ...item, _selected: $event };\r\n });\r\n this.selectedAll = $event;\r\n }\r\n\r\n tableDataCellProps(item: IItem, colName: string) {\r\n const props = item['_cellProps'] && {\r\n ...(item['_cellProps']['_all'] && { ...item['_cellProps']['_all'] }),\r\n ...(item['_cellProps'][colName] && { ...item['_cellProps'][colName] }),\r\n }\r\n return props\r\n }\r\n\r\n tableDataCellClasses(item: IItem, colName: string) {\r\n const column = this.columns.filter((column: IColumn) => column['key'] === colName);\r\n return column[0]?._classes;\r\n }\r\n\r\n getColumnName($event: MouseEvent): string {\r\n const target = $event.target as HTMLTextAreaElement;\r\n const closest = target.closest('tr');\r\n const children = closest ? Array.from(closest.children) : [];\r\n const clickedCell = children.filter((child) => child.contains(target))[0];\r\n return this.rawColumnNames[children.indexOf(clickedCell) - (this._selectable ? 1 : 0)];\r\n }\r\n\r\n handleRowClick(param: { $event: MouseEvent; item: IItemInternal; i: number }) {\r\n const { $event, item, i } = { ...param };\r\n const columnName = this.getColumnName(param.$event);\r\n this.rowClick.emit({ item: item, index: i + this.firstItemOnActivePageIndex, columnName, event: $event });\r\n }\r\n}\r\n","<div *ngIf=\"itemsPerPageSelect || tableFilter || cleaner\" class=\"row my-2 mx-0\">\r\n <ng-template [ngIf]=\"tableFilter || cleaner\">\r\n <div class=\"col-auto p-0\">\r\n <c-smart-table-filter\r\n (valueChange)=\"handleTableFilterChange($event)\"\r\n *ngIf=\"tableFilter\"\r\n [filterLabel]=\"tableFilterLabel\"\r\n [filterPlaceholder]=\"tableFilterPlaceholder\"\r\n [value]=\"tableFilterState\"\r\n >\r\n </c-smart-table-filter>\r\n </div>\r\n <div class=\"col-auto p-0\">\r\n <button\r\n (click)=\"clean($event)\"\r\n *ngIf=\"cleaner\"\r\n [disabled]=\"!isFiltered\"\r\n [ngClass]=\"{'ms-1': tableFilter}\"\r\n [tabindex]=\"0\"\r\n cButton\r\n color=\"transparent\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"filterIconTemplate\"></ng-container>\r\n </button>\r\n </div>\r\n </ng-template>\r\n</div>\r\n<div class=\"position-relative\">\r\n <table [align]=\"tableProps?.align\"\r\n [borderColor]=\"tableProps?.borderColor\"\r\n [bordered]=\"tableProps?.bordered\"\r\n [borderless]=\"tableProps?.borderless\"\r\n [caption]=\"tableProps?.caption\"\r\n [color]=\"tableProps?.color\"\r\n [hover]=\"tableProps?.hover\"\r\n [responsive]=\"tableProps?.responsive\"\r\n [small]=\"tableProps?.small\"\r\n [striped]=\"tableProps?.striped\"\r\n [cHtmlAttr]=\"tableProps?.attributes ?? {}\"\r\n [cTableColor]=\"tableProps?.color\"\r\n cTable\r\n >\r\n <c-smart-table-head\r\n (columnFilterStateChange)=\"handleColumnFilterChange($event)\"\r\n (selectAllChange)=\"handleSelectAllChange($event)\"\r\n (sorterStateChange)=\"handleSortChange($event)\"\r\n *ngIf=\"header\"\r\n [columnFilterState]=\"columnFilterState\"\r\n [columnFilter]=\"columnFilter\"\r\n [columns]=\"columns\"\r\n [selectAll]=\"selectedAll\"\r\n [selectable]=\"selectable\"\r\n [sorterValue]=\"sorterValue\"\r\n [cHtmlAttr]=\"tableHeadProps?.attributes ?? {}\"\r\n [cTableColor]=\"tableHeadProps?.color\"\r\n [cAlign]=\"tableHeadProps?.align\"\r\n ></c-smart-table-head>\r\n\r\n <ng-container *ngTemplateOutlet=\"tbodyDefaultTemplate\"></ng-container>\r\n\r\n <c-smart-table-head\r\n (selectAllChange)=\"handleSelectAllChange($event)\"\r\n (sorterStateChange)=\"handleSortChange($event)\"\r\n *ngIf=\"footer\"\r\n [columns]=\"columns\"\r\n [selectAll]=\"selectedAll\"\r\n [selectable]=\"selectable\"\r\n [sorterValue]=\"sorterValue\"\r\n [cHtmlAttr]=\"tableFootProps?.attributes ?? {}\"\r\n [cTableColor]=\"tableFootProps?.color\"\r\n [cAlign]=\"tableFootProps?.align\"\r\n component=\"tfoot\"\r\n ></c-smart-table-head>\r\n\r\n </table>\r\n <c-element-cover\r\n *ngIf=\"loading\"\r\n [boundaries]=\"[\r\n { sides: ['top'], query: 'td' },\r\n { sides: ['bottom'], query: 'tbody' }\r\n ]\"\r\n ></c-element-cover>\r\n</div>\r\n<ng-template [ngIf]=\"pagination || itemsPerPageSelect\">\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <c-smart-pagination\r\n (activePageChange)=\"setActivePage($event)\"\r\n *ngIf=\"pagination && numberOfPages > 1\"\r\n [activePage]=\"activePage\"\r\n [pages]=\"numberOfPages\">\r\n </c-smart-pagination>\r\n </div>\r\n <div class=\"col-auto ms-auto\">\r\n <c-smart-table-items-per-page-selector\r\n (itemsPerPageChange)=\"handleItemsPerPageChange($event)\"\r\n *ngIf=\"itemsPerPageSelect\"\r\n [itemsPerPageLabel]=\"itemsPerPageLabel\"\r\n [itemsPerPageOptions]=\"itemsPerPageOptions\"\r\n [itemsPerPage]=\"itemsPerPage\"\r\n >\r\n </c-smart-table-items-per-page-selector>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #tbodyDefaultTemplate>\r\n <tbody [cHtmlAttr]=\"tableBodyProps?.attributes ?? {}\"\r\n [cTableColor]=\"tableBodyProps?.color\"\r\n [cAlign]=\"tableBodyProps?.align\"\r\n >\r\n <ng-template ngFor let-item [ngForOf]=\"currentItems\" let-cnt=\"count\" let-i=\"index\" let-isEven=\"even\" let-isOdd=\"odd\">\r\n <tr [tabindex]=\"clickableRows ? 0 : -1\"\r\n [ngStyle]=\"{cursor: clickableRows ? 'pointer' : 'auto'}\"\r\n (click)=\"handleRowClick({$event, item, i})\"\r\n [cTableActive]=\"item._props?.active\"\r\n [cTableColor]=\"item._props?.color\"\r\n [cAlign]=\"item._props?.align\"\r\n >\r\n <td *ngIf=\"selectable\"\r\n [cTableActive]=\"item?.['_cellProps']?._all?.active\"\r\n [cTableColor]=\"item?.['_cellProps']?._all?.color\"\r\n [cAlign]=\"item?.['_cellProps']?._all?.align\"\r\n >\r\n <input (change)=\"handleRowChecked($event, item)\" [checked]=\"item._selected ?? false\" cFormCheckInput>\r\n </td>\r\n <ng-template ngFor let-columnName [ngForOf]=\"rawColumnNames\" let-i=\"index\" >\r\n <ng-container *ngTemplateOutlet=\"templates['tableData'] || columnDefaultTemplate; context: {item, columnName, tdContent: item[columnName] }\"></ng-container>\r\n </ng-template>\r\n </tr>\r\n <ng-template [ngIf]=\"templates['tableDetails']\">\r\n <!-- <ng-container *ngTemplateOutlet=\"rowDetailsDefaultTemplate\"></ng-container>-->\r\n <tr><td [colSpan]=\"colspan\" class=\"p-0\" tabindex=\"-1\" [ngStyle]=\"{borderBottomWidth: 0}\"></td></tr>\r\n <tr class=\"p-0\">\r\n <td [colSpan]=\"colspan\" class=\"p-0\" [ngStyle]=\"{border: 0}\">\r\n <ng-container *ngTemplateOutlet=\"templates['tableDetails']; context: {item, index: i}\"></ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </ng-template>\r\n <ng-container *ngTemplateOutlet=\"noItemsDefaultTemplate\"></ng-container>\r\n </tbody>\r\n</ng-template>\r\n\r\n<ng-template #columnDefaultTemplate let-item=\"item\" let-columnName=\"columnName\" let-tdContent=\"tdContent\">\r\n <td\r\n [cTableActive]=\"tableDataCellProps(item, columnName)?.['active']\"\r\n [cTableColor]=\"tableDataCellProps(item, columnName)?.color\"\r\n [cAlign]=\"tableDataCellProps(item, columnName)?.align\"\r\n [ngClass]=\"tableDataCellClasses(item, columnName)\"\r\n >\r\n {{tdContent}}\r\n </td>\r\n</ng-template>\r\n\r\n<!--<ng-template #rowDetailsDefaultTemplate let-item let-index>-->\r\n<!-- <tr><td [colSpan]=\"colspan\" class=\"p-0\" tabindex=\"-1\" [ngStyle]=\"{borderBottomWidth: 0}\"></td></tr>-->\r\n<!-- <tr class=\"p-0\">-->\r\n<!-- <td [colSpan]=\"colspan\" class=\"p-0\" [ngStyle]=\"{border: 0}\">-->\r\n<!-- <ng-container *ngTemplateOutlet=\"templates?.tableDetails\"></ng-container>-->\r\n<!-- </td>-->\r\n<!-- </tr>-->\r\n<!--</ng-template>-->\r\n\r\n<ng-template #noItemsDefaultTemplate>\r\n <tr *ngIf=\"!currentItems.length\">\r\n <td [colSpan]=\"colspan\" class=\"justify-content-center\">{{noItemsLabel}}</td>\r\n </tr>\r\n</ng-template>\r\n\r\n<!--todo: filterIconCustomTemplate-->\r\n<ng-template #filterIconTemplate>\r\n <svg class=\"icon icon-custom-size\" role=\"img\" viewBox=\"0 0 512 512\" width=\"18\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <polygon class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"40 16 40 53.828 109.024 136 150.815 136 76.896 48 459.51 48 304 242.388 304 401.373 241.373 464 240 464 240 368 208 368 208 496 254.627 496 336 414.627 336 253.612 496 53.612 496 16 40 16\"></polygon>\r\n <polygon class=\"ci-primary\"\r\n fill=\"var(--ci-primary-color, currentColor)\"\r\n points=\"166.403 248.225 226.864 187.763 204.237 165.135 143.775 225.597 83.313 165.135 60.687 187.763 121.148 248.225 60.687 308.687 83.313 331.314 143.775 270.852 204.237 331.314 226.864 308.687 166.403 248.225\"></polygon>\r\n </svg>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TableDirective } from './table.directive';\r\nimport { TableColorDirective } from './table-color.directive';\r\nimport { TableActiveDirective } from './table-active.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n TableDirective,\r\n TableColorDirective,\r\n TableActiveDirective\r\n ],\r\n exports: [\r\n TableDirective,\r\n TableColorDirective,\r\n TableActiveDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class TableModule { }\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { BackgroundColors } from '../coreui.types';\r\n\r\n@Directive({\r\n selector: '[cBgColor]'\r\n})\r\nexport class BgColorDirective {\r\n\r\n /**\r\n * Set the background of an element to any contextual class\r\n */\r\n @Input('cBgColor') color: BackgroundColors = '';\r\n /**\r\n * Add linear gradient as background image to the backgrounds.\r\n * @type boolean\r\n */\r\n @Input() gradient?: boolean;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n [`bg-${this.color}`]: !!this.color,\r\n 'bg-gradient': this.gradient,\r\n };\r\n }\r\n\r\n constructor() { }\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { Border, BorderColor, IBorderElement, BorderWidth } from './border.type';\r\n\r\n@Directive({\r\n selector: '[cBorder]'\r\n})\r\nexport class BorderDirective {\r\n /**\r\n * Add or remove an element’s borders\r\n * @type Border\r\n */\r\n @Input('cBorder') border: Border = true;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n if ( typeof this.border === 'boolean' ) {\r\n return { border: true };\r\n }\r\n if ( typeof this.border === 'number' || typeof this.border === 'string' ) {\r\n return {\r\n border: true,\r\n [`border-${this.border}`]: true\r\n };\r\n }\r\n if ( typeof this.border === 'object' ) {\r\n const borderObj = { top: undefined, end: undefined, bottom: undefined, start: undefined, color: undefined, ...this.border };\r\n // @ts-ignore\r\n const keys = Object.keys(borderObj).filter(key => borderObj[key] !== undefined);\r\n const classes = {};\r\n keys.forEach(key => {\r\n // @ts-ignore\r\n const val = borderObj[key];\r\n if ( typeof val === 'boolean') {\r\n // @ts-ignore\r\n classes[`border-${key}`] = true;\r\n } else if ( typeof val === 'number' || typeof val === 'string' ) {\r\n // @ts-ignore\r\n classes[`border-${key}-${val}`] = true;\r\n } else if ( typeof val === 'object' ) {\r\n if ('color' in val) {\r\n // @ts-ignore\r\n classes[`border-${key}-${val.color}`] = true;\r\n }\r\n if ('width' in val) {\r\n // @ts-ignore\r\n classes[`border-${key}-${val.width}`] = true;\r\n }\r\n }\r\n });\r\n return Object.entries(classes).length === 0 ? {border: false} : classes;\r\n }\r\n }\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { TextColors } from '../coreui.types';\r\n\r\n@Directive({\r\n selector: '[cTextColor]'\r\n})\r\nexport class TextColorDirective {\r\n\r\n /**\r\n * Set text-color of element\r\n * @type TextColors\r\n */\r\n @Input('cTextColor') color: TextColors = '';\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n const color = this.color;\r\n return {\r\n [`text-${color}`]: !!color\r\n };\r\n }\r\n\r\n constructor() {}\r\n}\r\n","import { Directive, HostBinding, Input } from '@angular/core';\r\nimport { Rounded, RoundedSize } from './rounded.type';\r\n\r\n@Directive({\r\n selector: '[cRounded]'\r\n})\r\nexport class RoundedDirective {\r\n\r\n /**\r\n * Set border radius variant and radius size\r\n * @type Rounded\r\n */\r\n @Input('cRounded') rounded: Rounded = true;\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n\r\n if ( typeof this.rounded === 'boolean' ) {\r\n return { rounded: true };\r\n }\r\n if ( typeof this.rounded === 'number' || typeof this.rounded === 'string' ) {\r\n return {\r\n [`rounded-${this.rounded}`]: true\r\n };\r\n }\r\n if ( typeof this.rounded === 'object' ) {\r\n const roundedObj = {\r\n top: undefined,\r\n end: undefined,\r\n bottom: undefined,\r\n start: undefined,\r\n circle: undefined,\r\n pill: undefined,\r\n size: undefined,\r\n ...this.rounded,\r\n };\r\n // @ts-ignore\r\n const keys = Object.keys(roundedObj).filter(key => roundedObj[key] !== undefined );\r\n const classes = {};\r\n keys.forEach(key => {\r\n // @ts-ignore\r\n const val = roundedObj[key];\r\n if (typeof val === 'boolean') {\r\n // @ts-ignore\r\n classes[`rounded-${key}`] = val;\r\n } else {\r\n // @ts-ignore\r\n classes[`rounded-${val}`] = true;\r\n }\r\n });\r\n console.log('rounded keys', keys, classes);\r\n return Object.entries(classes).length === 0 ? {rounded: false} : classes;\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BgColorDirective } from './bg-color.directive';\r\nimport { BorderDirective } from './border.directive';\r\nimport { RoundedDirective } from './rounded.directive';\r\nimport { TextColorDirective } from './text-color.directive';\r\nimport { AlignDirective } from './align.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n BgColorDirective,\r\n BorderDirective,\r\n RoundedDirective,\r\n TextColorDirective,\r\n AlignDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n BgColorDirective,\r\n BorderDirective,\r\n RoundedDirective,\r\n TextColorDirective,\r\n AlignDirective\r\n ]\r\n})\r\nexport class UtilitiesModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { SharedModule } from '../shared';\r\nimport { ElementCoverModule } from '../element-cover';\r\nimport { TableModule } from '../table';\r\nimport { PaginationModule } from '../pagination';\r\nimport { FormModule } from '../form';\r\nimport { ButtonModule } from '../button';\r\nimport { SmartPaginationModule } from '../smart-pagination';\r\nimport { SmartTableComponent } from './smart-table/smart-table.component';\r\nimport { SmartTableFilterComponent } from './smart-table-filter/smart-table-filter.component';\r\nimport { SmartTableItemsPerPageSelectorComponent } from './smart-table-items-per-page-selector/smart-table-items-per-page-selector.component';\r\nimport { SmartTableHeadComponent } from './smart-table-head/smart-table-head.component';\r\nimport { UtilitiesModule } from '../utilities';\r\n\r\n@NgModule({\r\n declarations: [\r\n SmartTableComponent,\r\n SmartTableFilterComponent,\r\n SmartTableItemsPerPageSelectorComponent,\r\n SmartTableHeadComponent,\r\n ],\r\n exports: [SmartTableComponent],\r\n imports: [\r\n CommonModule,\r\n ElementCoverModule,\r\n TableModule,\r\n PaginationModule,\r\n SmartPaginationModule,\r\n FormModule,\r\n FormsModule,\r\n ButtonModule,\r\n SharedModule,\r\n ReactiveFormsModule,\r\n UtilitiesModule\r\n ]\r\n})\r\nexport class SmartTableModule {}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { TabContentComponent } from './tab-content/tab-content.component';\r\n\r\nexport interface ITabContentState {\r\n activeIdx: number,\r\n tabContent: TabContentComponent\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TabService {\r\n\r\n private activeTabPaneIdx = new Subject<ITabContentState>();\r\n activeTabPaneIdx$ = this.activeTabPaneIdx.asObservable();\r\n\r\n constructor() { }\r\n\r\n setActiveTabIdx(tabContentState: ITabContentState) {\r\n this.activeTabPaneIdx.next(tabContentState);\r\n }\r\n}\r\n","import { ChangeDetectorRef, Component, HostBinding, OnDestroy, OnInit } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { TabContentComponent } from '../tab-content/tab-content.component';\r\nimport { ITabContentState, TabService } from '../tab.service';\r\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\n@Component({\r\n selector: 'c-tab-pane',\r\n templateUrl: './tab-pane.component.html',\r\n styleUrls: ['./tab-pane.component.scss'],\r\n exportAs: 'cTabPane'\r\n})\r\nexport class TabPaneComponent implements OnDestroy, OnInit {\r\n\r\n constructor(\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private tabService: TabService\r\n ) { }\r\n\r\n public tabPaneIdx!: number;\r\n public tabContent!: TabContentComponent;\r\n private tabServiceSubscription!: Subscription;\r\n\r\n set active(value: boolean) {\r\n const newValue = coerceBooleanProperty(value);\r\n if (this._active !== newValue) {\r\n this._active = newValue;\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n }\r\n get active(): boolean {\r\n return this._active;\r\n }\r\n private _active: boolean = false;\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n 'tab-pane': true,\r\n fade: true,\r\n show: this.active,\r\n active: this.active\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.subscribeTabService();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscribeTabService(false);\r\n }\r\n\r\n subscribeTabService(subscribe: boolean = true) {\r\n if (subscribe) {\r\n this.tabServiceSubscription = this.tabService.activeTabPaneIdx$.subscribe((tabContentState: ITabContentState) => {\r\n if (tabContentState.tabContent === this.tabContent) {\r\n this.active = (tabContentState.activeIdx === this.tabPaneIdx);\r\n }\r\n });\r\n } else {\r\n this.tabServiceSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import {\r\n AfterContentChecked,\r\n AfterContentInit,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChildren,\r\n EventEmitter,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n Output,\r\n QueryList,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { coerceNumberProperty } from '@angular/cdk/coercion';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { TabPaneComponent } from '../tab-pane/tab-pane.component';\r\nimport { TabService } from '../tab.service';\r\n\r\n@Component({\r\n selector: 'c-tab-content',\r\n templateUrl: './tab-content.component.html',\r\n styleUrls: ['./tab-content.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n exportAs: 'cTabContent'\r\n})\r\nexport class TabContentComponent implements AfterContentChecked, AfterContentInit, OnChanges, OnDestroy {\r\n\r\n /**\r\n * Set active tabPane index\r\n * @type number\r\n */\r\n @Input()\r\n set activeTabPaneIdx(value: number) {\r\n const newValue = coerceNumberProperty(value);\r\n if (this._activeTabPaneIdx != newValue) {\r\n this._activeTabPaneIdx = newValue;\r\n this.activeTabPaneIdxChange.emit(newValue);\r\n this.changeDetectorRef.markForCheck();\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n };\r\n get activeTabPaneIdx() {\r\n return this._activeTabPaneIdx;\r\n }\r\n private _activeTabPaneIdx = -1;\r\n\r\n /**\r\n * Event emited on the active tab pane index change.\r\n */\r\n @Output() activeTabPaneIdxChange: EventEmitter<number> = new EventEmitter<number>();\r\n\r\n @ContentChildren(TabPaneComponent) public panes!: QueryList<TabPaneComponent>;\r\n private tabServiceSubscription!: Subscription;\r\n\r\n constructor(\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private tabService: TabService\r\n ) { }\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n 'tab-content': true\r\n };\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.subscribeTabService();\r\n }\r\n\r\n ngAfterContentChecked(): void {\r\n this.panes?.forEach((tabPane, index) => {\r\n tabPane.tabContent = this;\r\n tabPane.tabPaneIdx = index;\r\n });\r\n this.refreshTabPaneActive(this.activeTabPaneIdx);\r\n this.tabService.setActiveTabIdx({ tabContent: this, activeIdx: this.activeTabPaneIdx });\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['activeTabPaneIdx']?.currentValue) {\r\n this.tabService.setActiveTabIdx({ tabContent: this, activeIdx: changes['activeTabPaneIdx'].currentValue });\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscribeTabService(false);\r\n }\r\n\r\n subscribeTabService(subscribe: boolean = true) {\r\n if (subscribe) {\r\n this.tabServiceSubscription = this.tabService.activeTabPaneIdx$.subscribe((tabContentState) => {\r\n if (this === tabContentState.tabContent) {\r\n this.activeTabPaneIdx = tabContentState.activeIdx;\r\n }\r\n });\r\n } else {\r\n this.tabServiceSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n refreshTabPaneActive(idx: number) {\r\n // hack for active state pane refresh todo?\r\n this.panes?.forEach((tabPane, index) => {\r\n tabPane.active = idx === index;\r\n });\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import {\r\n ChangeDetectorRef,\r\n Directive,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { TabService } from './tab.service';\r\n\r\n@Directive({\r\n selector: '[cTabContent]',\r\n})\r\nexport class TabContentRefDirective implements OnChanges, OnDestroy, OnInit {\r\n\r\n constructor(\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private tabService: TabService\r\n ) { }\r\n\r\n static ngAcceptInputType_disabled: BooleanInput;\r\n private tabServiceSubscription!: Subscription;\r\n\r\n /**\r\n * Template Ref\r\n * @type TemplateRef\r\n */\r\n @Input('cTabContent') tabContentRef!: any;\r\n\r\n /**\r\n * Set active state of tab content\r\n * @type boolean\r\n */\r\n @Input()\r\n set active(value: boolean) {\r\n const newValue = coerceBooleanProperty(value);\r\n if (this._active !== newValue) {\r\n this._active = newValue;\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n }\r\n get active() {\r\n return this._active;\r\n }\r\n private _active = false;\r\n\r\n /**\r\n * Set disabled state of tab content\r\n * @type boolean\r\n */\r\n @Input()\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n }\r\n get disabled(): boolean {\r\n return this._disabled || this.tabPaneIdx >= this.tabContentRef?.panes?.length;\r\n }\r\n private _disabled = false;\r\n\r\n /**\r\n * c-tab-pane index respectively\r\n * @type number\r\n */\r\n @Input() tabPaneIdx = -1;\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n active: this.active,\r\n disabled: this.disabled\r\n };\r\n }\r\n\r\n @HostBinding('attr.aria-disabled')\r\n get isDisabled(): boolean | null {\r\n return this.disabled || null;\r\n }\r\n\r\n @HostBinding('attr.disabled')\r\n get attrDisabled() {\r\n return this.disabled ? '' : null;\r\n };\r\n\r\n @HostBinding('attr.tabindex')\r\n get getTabindex(): string | null {\r\n return this.disabled ? '-1' : null;\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['active']?.currentValue) {\r\n this.setActiveTabPane();\r\n }\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n toggleOpen($event: any): void {\r\n $event.preventDefault();\r\n this.setActiveTabPane();\r\n }\r\n\r\n setActiveTabPane() {\r\n setTimeout(() => {\r\n if (this.tabPaneIdx < this.tabContentRef.panes.length) {\r\n this.active = true;\r\n this.tabService.setActiveTabIdx({ tabContent: this.tabContentRef, activeIdx: this.tabPaneIdx });\r\n } else {\r\n this.active = false;\r\n }\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.subscribeTabService();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscribeTabService(false);\r\n }\r\n\r\n subscribeTabService(subscribe: boolean = true) {\r\n if (subscribe) {\r\n this.tabServiceSubscription = this.tabService.activeTabPaneIdx$.subscribe((tabContentState) => {\r\n if (tabContentState.tabContent === this.tabContentRef) {\r\n this.active = (tabContentState.activeIdx === this.tabPaneIdx);\r\n }\r\n });\r\n } else {\r\n this.tabServiceSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TabContentComponent } from './tab-content/tab-content.component';\r\nimport { TabPaneComponent } from './tab-pane/tab-pane.component';\r\nimport { TabService } from './tab.service';\r\nimport { TabContentRefDirective } from './tab-content-ref.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n TabContentComponent,\r\n TabPaneComponent,\r\n TabContentRefDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n TabContentComponent,\r\n TabPaneComponent,\r\n TabContentRefDirective\r\n ],\r\n providers: [\r\n TabService\r\n ]\r\n})\r\nexport class TabsModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nimport { TToasterPlacement } from './toaster.component';\r\nimport { ToastComponent } from '../toast/toast.component';\r\n\r\nexport interface IToasterAction {\r\n placement?: TToasterPlacement;\r\n toast?: ToastComponent;\r\n show?: boolean;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ToasterService {\r\n\r\n private toasterState = new BehaviorSubject<IToasterAction>({});\r\n toasterState$ = this.toasterState.asObservable();\r\n\r\n constructor() {}\r\n\r\n setState(state: IToasterAction): void {\r\n this.toasterState.next({ ...state });\r\n }\r\n}\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n Renderer2,\r\n} from '@angular/core';\r\n\r\nimport { animate, AnimationEvent, state, style, transition, trigger } from '@angular/animations';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { ToasterService } from '../toaster/toaster.service';\r\nimport { TToasterPlacement } from '../toaster/toaster.component';\r\nimport { Colors } from '../../coreui.types';\r\n\r\ntype AnimateType = ('hide' | 'show');\r\n\r\n@Component({\r\n selector: 'c-toast',\r\n templateUrl: './toast.component.html',\r\n styleUrls: ['./toast.component.scss'],\r\n exportAs: 'cToast',\r\n animations: [\r\n trigger('fadeInOut', [\r\n state('show', style({opacity: 1, height: '*', padding: '*', border: '*', margin: '*', overflow: 'hidden'})),\r\n state('hide', style({opacity: 0, height: 0, padding: 0, border: 0, margin: 0, overflow: 'hidden'})),\r\n state('void', style({opacity: 0, height: 0, padding: 0, border: 0, margin: 0, overflow: 'hidden'})),\r\n transition('show => hide', [\r\n animate('{{ time }} {{ easing }}'),\r\n ], {\r\n params: {time: '300ms', easing: 'ease-out'}\r\n }),\r\n transition('hide => show', [animate('{{ time }} {{ easing }}')], {\r\n params: {time: '300ms', easing: 'ease-in'},\r\n }),\r\n transition('show => void', [animate('{{ time }} {{ easing }}')], {\r\n params: {time: '300ms', easing: 'ease-out'},\r\n }),\r\n transition('void => show', [animate('{{ time }} {{ easing }}')], {\r\n params: {time: '300ms', easing: 'ease-in'},\r\n }),\r\n ]),\r\n ],\r\n})\r\nexport class ToastComponent implements OnInit, OnDestroy {\r\n\r\n static ngAcceptInputType_visible: BooleanInput;\r\n\r\n public dynamic!: boolean;\r\n public placement!: TToasterPlacement;\r\n public hide!: boolean;\r\n\r\n /**\r\n * Auto hide the toast.\r\n * @type boolean\r\n */\r\n @Input() autohide = true;\r\n\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors = '';\r\n\r\n /**\r\n * Delay hiding the toast (ms).\r\n * @type number\r\n */\r\n @Input() delay = 5000;\r\n\r\n /**\r\n * Apply fade transition to the toast.\r\n * @type boolean\r\n */\r\n @Input() fade = true;\r\n\r\n /**\r\n * Toggle the visibility of component.\r\n * @type boolean\r\n */\r\n @Input()\r\n set visible(value: boolean) {\r\n const newValue = coerceBooleanProperty(value);\r\n if (this._visible !== newValue) {\r\n this._visible = newValue;\r\n newValue ? this.setTimer() : this.clearTimer();\r\n this.visibleChange.emit(newValue);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible = false;\r\n\r\n /**\r\n * @ignore\r\n */\r\n @Input() index?: number;\r\n\r\n /**\r\n * Event emitted on visibility change. [docs]\r\n * @type boolean\r\n */\r\n @Output() visibleChange = new EventEmitter<boolean>();\r\n\r\n /**\r\n * Event emitted on timer tick. [docs]\r\n * @type number\r\n */\r\n @Output() timer: EventEmitter<number> = new EventEmitter();\r\n\r\n private timerId: any;\r\n private clockId: any;\r\n private clockTimerId: any;\r\n\r\n constructor(\r\n public hostElement: ElementRef,\r\n public renderer: Renderer2,\r\n public toasterService: ToasterService,\r\n public changeDetectorRef: ChangeDetectorRef\r\n ) {}\r\n\r\n private _clock!: number;\r\n\r\n get clock(): number {\r\n return this._clock;\r\n }\r\n\r\n set clock(value) {\r\n this._clock = value;\r\n this.timer.emit(this._clock);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n @HostBinding('@.disabled')\r\n get animationDisabled(): boolean {\r\n return !this.fade;\r\n }\r\n\r\n @HostBinding('@fadeInOut')\r\n get animateType(): AnimateType {\r\n return this.visible ? 'show' : 'hide';\r\n }\r\n\r\n @HostListener('@fadeInOut.start', ['$event'])\r\n onAnimationStart($event: AnimationEvent): void {\r\n this.onAnimationEvent($event);\r\n }\r\n\r\n @HostListener('@fadeInOut.done', ['$event'])\r\n onAnimationDone($event: AnimationEvent): void {\r\n this.onAnimationEvent($event);\r\n }\r\n\r\n @HostListener('mouseover') onMouseOver(): void {\r\n this.clearTimer();\r\n }\r\n\r\n @HostListener('mouseout') onMouseOut(): void {\r\n this.setTimer();\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n toast: true,\r\n fade: this.fade,\r\n show: !this.hide,\r\n [`bg-${this.color}`]: !!this.color,\r\n 'border-0': !!this.color\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.visible) {\r\n this.toasterService.setState({\r\n toast: this,\r\n show: this.visible,\r\n placement: this.placement,\r\n });\r\n this.clearTimer();\r\n this.setTimer();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.clearTimer();\r\n }\r\n\r\n setTimer(): void {\r\n this.clearTimer();\r\n if (this.autohide && this.visible) {\r\n this.timerId = this.delay > 0 ? setTimeout(() => this.onClose(), this.delay) : null;\r\n this.setClock();\r\n }\r\n }\r\n\r\n clearTimer(): void {\r\n this.clearClock();\r\n clearTimeout(this.timerId);\r\n this.timerId = null;\r\n }\r\n\r\n onClose(): void {\r\n this.clearTimer();\r\n this.toasterService.setState({\r\n toast: this,\r\n show: false,\r\n placement: this.placement,\r\n });\r\n }\r\n\r\n setClock(): void {\r\n this.clearClock();\r\n this.clock = 0;\r\n this.clockId = setInterval(() => {\r\n this.clock += 1;\r\n this.changeDetectorRef.markForCheck();\r\n }, 1000);\r\n this.clockTimerId = setTimeout(() => {\r\n this.clearClock();\r\n }, this.delay);\r\n }\r\n\r\n clearClock(): void {\r\n clearTimeout(this.clockTimerId);\r\n clearInterval(this.clockId);\r\n this.clockId = null;\r\n }\r\n\r\n onAnimationEvent(event: AnimationEvent): void {\r\n this.hide = event.phaseName === 'start' && event.toState === 'show';\r\n if (event.phaseName === 'done') {\r\n this.hide = (event.toState === 'hide' || event.toState === 'void');\r\n if (event.toState === 'show') {\r\n this.hide = false;\r\n }\r\n }\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { Component, HostBinding, Optional } from '@angular/core';\r\nimport { ToastComponent } from '../toast/toast.component';\r\n\r\n@Component({\r\n selector: 'c-toast-body',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./toast-body.component.scss'],\r\n exportAs: 'cToastBody'\r\n})\r\nexport class ToastBodyComponent {\r\n\r\n @HostBinding('class.toast-body') toastBodyClass = true;\r\n\r\n constructor(\r\n @Optional() public toast?: ToastComponent\r\n ) { }\r\n\r\n}\r\n","import { Directive, HostListener, Input } from '@angular/core';\r\nimport { ToasterService } from './toaster/toaster.service';\r\n\r\n@Directive({\r\n selector: '[cToastClose]',\r\n exportAs: 'cToastClose'\r\n})\r\nexport class ToastCloseDirective {\r\n\r\n @Input('cToastClose') toast: any;\r\n\r\n constructor(private toasterService: ToasterService) { }\r\n\r\n @HostListener('click', ['$event'])\r\n toggleOpen($event: any): void {\r\n $event.preventDefault();\r\n this.toasterService.setState({ show: false, toast: this.toast });\r\n }\r\n\r\n}\r\n","import { Component, HostBinding, Input, Optional } from '@angular/core';\r\nimport { ToastComponent } from '../toast/toast.component';\r\n\r\n@Component({\r\n selector: 'c-toast-header',\r\n templateUrl: './toast-header.component.html',\r\n styleUrls: ['./toast-header.component.scss'],\r\n exportAs: 'cToastHeader'\r\n})\r\nexport class ToastHeaderComponent {\r\n\r\n /**\r\n * Add close button to a toast header\r\n * @type boolean\r\n */\r\n @Input() closeButton = true;\r\n\r\n @HostBinding('class.toast-header') toastHeaderClass = true;\r\n\r\n constructor(\r\n @Optional() public toast?: ToastComponent\r\n ) { }\r\n\r\n}\r\n","<ng-container>\r\n <ng-content></ng-content>\r\n <button *ngIf=\"closeButton\" [cToastClose]=\"toast\" [style]=\"{outline: 0}\" aria-label=\"close\" cButtonClose class=\"ms-auto\"></button>\r\n</ng-container>\r\n","import { Directive, ViewContainerRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cToasterHost]',\r\n exportAs: 'cToasterHost'\r\n})\r\nexport class ToasterHostDirective {\r\n\r\n constructor(\r\n public viewContainerRef: ViewContainerRef\r\n ) { }\r\n}\r\n","import {\r\n AfterContentChecked,\r\n Component,\r\n ComponentFactoryResolver,\r\n ComponentRef,\r\n ContentChildren,\r\n ElementRef,\r\n HostBinding,\r\n Injector,\r\n Input,\r\n NgModuleRef,\r\n OnDestroy,\r\n OnInit,\r\n QueryList,\r\n Renderer2,\r\n VERSION,\r\n ViewChild,\r\n ViewContainerRef\r\n} from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { IToasterAction, ToasterService } from './toaster.service';\r\nimport { ToasterHostDirective } from './toaster-host.directive';\r\nimport { ToastComponent } from '../toast/toast.component';\r\n\r\nexport enum ToasterPlacement {\r\n Static = 'static',\r\n TopStart = 'top-start',\r\n TopCenter = 'top-center',\r\n TopEnd = 'top-end',\r\n MiddleStart = 'middle-start',\r\n MiddleCenter = 'middle-center',\r\n MiddleEnd = 'middle-end',\r\n BottomStart = 'bottom-start',\r\n BottomCenter = 'bottom-center',\r\n BottomEnd = 'bottom-end',\r\n}\r\n\r\nexport type TToasterPlacement =\r\n | ToasterPlacement.Static\r\n | ToasterPlacement.TopStart\r\n | ToasterPlacement.TopCenter\r\n | ToasterPlacement.TopEnd\r\n | ToasterPlacement.MiddleStart\r\n | ToasterPlacement.MiddleCenter\r\n | ToasterPlacement.MiddleEnd\r\n | ToasterPlacement.BottomStart\r\n | ToasterPlacement.BottomCenter\r\n | ToasterPlacement.BottomEnd\r\n | string;\r\n\r\n@Component({\r\n selector: 'c-toaster',\r\n templateUrl: './toaster.component.html',\r\n exportAs: 'cToaster'\r\n})\r\nexport class ToasterComponent implements OnDestroy, OnInit, AfterContentChecked {\r\n\r\n stateToasterSubscription!: Subscription;\r\n placements = Object.values(ToasterPlacement);\r\n toasts!: QueryList<ViewContainerRef>;\r\n toastsDynamic: any[] = [];\r\n\r\n /**\r\n * Toaster placement\r\n * @type TToasterPlacement\r\n */\r\n @Input() placement: TToasterPlacement = ToasterPlacement.TopEnd;\r\n\r\n /**\r\n * Toaster position\r\n * @type (string | 'absolute' | 'fixed' | 'static')\r\n */\r\n @Input() position: (string | 'absolute' | 'fixed' | 'static') = 'absolute';\r\n\r\n @ViewChild(ToasterHostDirective, {static: true}) toasterHost!: ToasterHostDirective;\r\n @ContentChildren(ToastComponent, {read: ViewContainerRef}) contentToasts!: QueryList<ViewContainerRef>;\r\n\r\n constructor(\r\n private componentFactoryResolver: ComponentFactoryResolver,\r\n private hostElement: ElementRef,\r\n private renderer: Renderer2,\r\n private toasterService: ToasterService\r\n ) { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): any {\r\n return {\r\n toaster: true,\r\n 'toast-container': true,\r\n [`position-${this.position}`]: !!this.position,\r\n 'top-0': this.placement.includes('top'),\r\n 'top-50': this.placement.includes('middle'),\r\n 'bottom-0': this.placement.includes('bottom'),\r\n 'start-0': this.placement.includes('start'),\r\n 'start-50': this.placement.includes('center'),\r\n 'end-0': this.placement.includes('end'),\r\n 'translate-middle-x': this.placement.includes('center') && !this.placement.includes('middle'),\r\n 'translate-middle-y': this.placement.includes('middle') && !this.placement.includes('center'),\r\n 'translate-middle': this.placement.includes('middle') && this.placement.includes('center'),\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n this.stateToasterSubscribe(true);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.stateToasterSubscribe(false);\r\n }\r\n\r\n ngAfterContentChecked(): void {\r\n this.toasts = this.contentToasts;\r\n }\r\n\r\n addToast(toast: any, props: any, options?: { index?: number; injector?: Injector; ngModuleRef?: NgModuleRef<unknown>; projectableNodes?: Node[][]; }): ComponentRef<any> {\r\n let componentRef: ComponentRef<any>;\r\n if (parseInt(VERSION.major) < 13) {\r\n const factory = this.componentFactoryResolver.resolveComponentFactory(toast);\r\n componentRef = this.toasterHost.viewContainerRef.createComponent(factory, options?.index, options?.injector, options?.projectableNodes, options?.ngModuleRef);\r\n } else {\r\n // @ts-ignore\r\n componentRef = this.toasterHost.viewContainerRef.createComponent(toast, options);\r\n }\r\n this.toastsDynamic.push(componentRef);\r\n const index = this.toastsDynamic.indexOf(componentRef);\r\n for (const [key, value] of Object.entries(props)) {\r\n componentRef.instance[key] = value;\r\n }\r\n componentRef.instance['placement'] = this.placement;\r\n componentRef.instance['dynamic'] = true;\r\n componentRef.instance['index'] = index;\r\n componentRef.instance['visible'] = true;\r\n componentRef.instance['visibleChange'].emit(true);\r\n componentRef.changeDetectorRef?.detectChanges();\r\n return componentRef;\r\n }\r\n\r\n removeToast(state: IToasterAction): void {\r\n this.toastsDynamic?.forEach(item => {\r\n if (state.toast?.dynamic && (item.instance === state.toast)) {\r\n item.instance.visible = false;\r\n item.instance['visibleChange'].emit(false);\r\n setTimeout(() => {\r\n item.destroy();\r\n }, 300);\r\n }\r\n });\r\n\r\n this.toasts?.forEach(item => {\r\n if (item.element.nativeElement === state.toast?.hostElement.nativeElement) {\r\n if (!state.toast?.dynamic) {\r\n // @ts-ignore\r\n state.toast.visible = false;\r\n }\r\n }\r\n });\r\n }\r\n\r\n private stateToasterSubscribe(subscribe: boolean = true): void {\r\n if (subscribe) {\r\n this.stateToasterSubscription = this.toasterService.toasterState$.subscribe((state) => {\r\n if (state.show === false) {\r\n this.removeToast(state);\r\n }\r\n if (state.show === true && state.toast?.dynamic === undefined) {\r\n }\r\n });\r\n } else {\r\n this.stateToasterSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","<ng-template cToasterHost></ng-template>\r\n<ng-content cToasterHost></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ButtonModule } from '../button';\r\nimport { ToastComponent } from './toast/toast.component';\r\nimport { ToastHeaderComponent } from './toast-header/toast-header.component';\r\nimport { ToastBodyComponent } from './toast-body/toast-body.component';\r\nimport { ToasterComponent } from './toaster/toaster.component';\r\nimport { ToasterService } from './toaster/toaster.service';\r\nimport { ToasterHostDirective } from './toaster/toaster-host.directive';\r\nimport { ToastCloseDirective } from './toast-close.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n ToastComponent,\r\n ToastHeaderComponent,\r\n ToastBodyComponent,\r\n ToasterComponent,\r\n ToasterHostDirective,\r\n ToastCloseDirective\r\n ],\r\n imports: [CommonModule, ButtonModule],\r\n providers: [ToasterService],\r\n exports: [\r\n ToastComponent,\r\n ToastHeaderComponent,\r\n ToastBodyComponent,\r\n ToasterComponent,\r\n ToasterHostDirective,\r\n ToastCloseDirective\r\n ]\r\n})\r\nexport class ToastModule {\r\n}\r\n","import {\r\n AfterViewInit,\r\n Component,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n Renderer2,\r\n SimpleChanges,\r\n TemplateRef,\r\n ViewChild,\r\n ViewContainerRef\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'c-tooltip',\r\n templateUrl: './tooltip.component.html',\r\n})\r\nexport class TooltipComponent implements AfterViewInit, OnChanges, OnDestroy {\r\n\r\n /**\r\n * Content of tooltip\r\n * @type {string | TemplateRef}\r\n */\r\n @Input() content: string | TemplateRef<any> = '';\r\n /**\r\n * Toggle the visibility of popover component.\r\n * @type boolean\r\n */\r\n @Input() visible = false;\r\n @Input() @HostBinding('attr.id') id?: string;\r\n @Input() @HostBinding('attr.role') role = 'tooltip';\r\n\r\n @ViewChild('tooltipTemplate', {read: ViewContainerRef}) viewContainerRef!: ViewContainerRef;\r\n private textNode!: Text;\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n ) { }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): { [klass: string]: any; } {\r\n return {\r\n tooltip: true,\r\n fade: true,\r\n show: this.visible,\r\n 'bs-tooltip-auto': true\r\n };\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n setTimeout(() => {\r\n this.updateView(this.content);\r\n });\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['content']) {\r\n setTimeout(() => {\r\n this.updateView(this.content);\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.clear();\r\n }\r\n\r\n private clear(): void {\r\n this.viewContainerRef?.clear();\r\n if (!!this.textNode) {\r\n this.renderer.removeChild(this.textNode.parentNode, this.textNode);\r\n }\r\n }\r\n\r\n private updateView(content: string | TemplateRef<any>): void {\r\n this.clear();\r\n\r\n if (!content) {\r\n return;\r\n }\r\n\r\n if (content instanceof TemplateRef) {\r\n this.viewContainerRef.createEmbeddedView(content);\r\n } else {\r\n this.textNode = this.renderer.createText(content);\r\n\r\n const element = this.viewContainerRef.element.nativeElement;\r\n this.renderer.appendChild(element.parentNode, this.textNode);\r\n }\r\n }\r\n}\r\n","<div class=\"tooltip-arrow\" data-popper-arrow></div>\r\n<div class=\"tooltip-inner\">\r\n <ng-container #tooltipTemplate></ng-container>\r\n</div>\r\n","import {\r\n ComponentFactoryResolver,\r\n ComponentRef,\r\n Directive,\r\n ElementRef,\r\n HostBinding,\r\n Inject,\r\n Input, OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Renderer2,\r\n SimpleChanges,\r\n TemplateRef,\r\n ViewContainerRef\r\n} from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { createPopper, Instance, Options } from '@popperjs/core';\r\n\r\nimport { Triggers } from '../coreui.types';\r\nimport { TooltipComponent } from './tooltip/tooltip.component';\r\nimport { IListenersConfig, ListenersService } from '../services/listeners.service';\r\n\r\n@Directive({\r\n selector: '[cTooltip]',\r\n exportAs: 'cTooltip',\r\n providers: [ListenersService]\r\n})\r\nexport class TooltipDirective implements OnChanges, OnDestroy, OnInit {\r\n\r\n /**\r\n * Content of tooltip\r\n * @type {string | TemplateRef}\r\n */\r\n @Input('cTooltip') content: string | TemplateRef<any> = '';\r\n\r\n /**\r\n * Optional popper Options object, takes precedence over cPopoverPlacement prop\r\n * @type Partial<Options>\r\n */\r\n @Input('cTooltipOptions')\r\n set popperOptions(value: Partial<Options>) {\r\n this._popperOptions = {...this._popperOptions, placement: this.placement, ...value};\r\n };\r\n get popperOptions(): Partial<Options> {\r\n return {placement: this.placement, ...this._popperOptions};\r\n }\r\n\r\n /**\r\n * Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property.\r\n */\r\n @Input('cTooltipPlacement') placement: 'top' | 'bottom' | 'left' | 'right' = 'top';\r\n /**\r\n * Sets which event handlers you’d like provided to your toggle prop. You can specify one trigger or an array of them.\r\n * @type {'hover' | 'focus' | 'click'}\r\n */\r\n @Input('cTooltipTrigger') trigger: Triggers | Triggers[] = 'hover';\r\n\r\n /**\r\n * Toggle the visibility of tooltip component.\r\n */\r\n @Input('cTooltipVisible')\r\n set visible(value: boolean) {\r\n this._visible = value;\r\n value ? this.addTooltipElement() : this.removeTooltipElement();\r\n this.tooltipRef?.changeDetectorRef.markForCheck();\r\n }\r\n get visible() {\r\n return this._visible;\r\n }\r\n private _visible = false;\r\n\r\n @HostBinding('attr.aria-describedby') get ariaDescribedBy(): string | null {\r\n return this.tooltipId ? this.tooltipId : null;\r\n }\r\n\r\n private tooltip!: HTMLDivElement;\r\n private tooltipId!: string;\r\n private tooltipRef!: ComponentRef<TooltipComponent>;\r\n private popperInstance!: Instance;\r\n\r\n private _popperOptions: Partial<Options> = {\r\n modifiers: [\r\n {\r\n name: 'offset',\r\n options: {\r\n offset: [0, 0],\r\n },\r\n },\r\n ],\r\n };\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n private renderer: Renderer2,\r\n private hostElement: ElementRef,\r\n private componentFactoryResolver: ComponentFactoryResolver,\r\n private viewContainerRef: ViewContainerRef,\r\n private listenersService: ListenersService\r\n ) {}\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['visible']) {\r\n changes['visible'].currentValue ? this.addTooltipElement() : this.removeTooltipElement();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.clearListeners();\r\n this.destroyTooltipElement();\r\n }\r\n\r\n ngOnInit(): void {\r\n // this.createTooltipElement();\r\n this.setListeners();\r\n }\r\n\r\n private setListeners(): void {\r\n const config: IListenersConfig = {\r\n hostElement: this.hostElement,\r\n trigger: this.trigger,\r\n callbackToggle: () => {\r\n this.visible = !this.visible;\r\n },\r\n callbackOff: () => {\r\n this.visible = false;\r\n },\r\n callbackOn: () => {\r\n this.visible = true;\r\n }\r\n }\r\n this.listenersService.setListeners(config)\r\n }\r\n\r\n private clearListeners(): void {\r\n this.listenersService.clearListeners();\r\n }\r\n\r\n private getUID(prefix: string): string {\r\n let uid = prefix ?? 'random-id';\r\n do {\r\n uid = `${prefix}-${Math.floor(Math.random() * 1000000).toString(10)}`;\r\n } while (this.document.getElementById(uid));\r\n\r\n return uid;\r\n }\r\n\r\n private createTooltipElement(): void {\r\n if (!this.tooltipRef) {\r\n const tooltipComponent = this.componentFactoryResolver.resolveComponentFactory(TooltipComponent);\r\n this.tooltipRef = this.viewContainerRef.createComponent(tooltipComponent);\r\n }\r\n }\r\n\r\n private destroyTooltipElement(): void {\r\n this.tooltip?.remove();\r\n this.tooltipRef?.destroy();\r\n // @ts-ignore\r\n this.tooltipRef = undefined;\r\n this.popperInstance?.destroy();\r\n this.viewContainerRef.detach();\r\n this.viewContainerRef.clear();\r\n }\r\n\r\n private addTooltipElement(): void {\r\n if (!this.tooltipRef) {\r\n this.createTooltipElement();\r\n }\r\n this.tooltipRef.instance.content = this.content;\r\n this.tooltip = this.tooltipRef.location.nativeElement;\r\n\r\n setTimeout(() => {\r\n this.popperInstance = createPopper(\r\n this.hostElement.nativeElement,\r\n this.tooltip,\r\n { ...this.popperOptions }\r\n );\r\n setTimeout(() => {\r\n this.tooltipId = this.getUID('tooltip');\r\n this.tooltipRef.instance.id = this.tooltipId;\r\n this.tooltipRef.instance.visible = this.visible;\r\n this.renderer.appendChild(this.document.body, this.tooltip);\r\n this.popperInstance.forceUpdate();\r\n this.tooltipRef.changeDetectorRef.markForCheck();\r\n // this.tooltipRef.changeDetectorRef.detectChanges();\r\n }, 100);\r\n })\r\n }\r\n\r\n private removeTooltipElement(): void {\r\n if (!this.tooltipRef) {\r\n return\r\n }\r\n this.tooltipRef.instance.visible = this.visible;\r\n setTimeout(() => {\r\n // this.tooltipRef.changeDetectorRef.detectChanges();\r\n this.tooltipRef.instance.id = undefined;\r\n this.renderer.removeChild(this.document.body, this.tooltip);\r\n this.popperInstance?.destroy();\r\n this.tooltipId = '';\r\n }, 300);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TooltipComponent } from './tooltip/tooltip.component';\r\nimport { TooltipDirective } from './tooltip.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n TooltipComponent,\r\n TooltipDirective,\r\n ],\r\n exports: [\r\n TooltipComponent,\r\n TooltipDirective,\r\n ],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class TooltipModule { }\r\n","import { AfterContentInit, Component, ContentChildren, HostBinding, Input, QueryList } from '@angular/core';\r\n\r\nimport { Colors } from '../../coreui.types';\r\nimport { TemplateIdDirective } from '../../shared';\r\n\r\n@Component({\r\n selector: 'c-widget-stat-a',\r\n templateUrl: './widget-stat-a.component.html',\r\n styleUrls: ['./widget-stat-a.component.scss'],\r\n exportAs: 'cWidgetStatA'\r\n})\r\nexport class WidgetStatAComponent implements AfterContentInit {\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Title of the widget to display\r\n * @type string\r\n */\r\n @Input() title?: string;\r\n /**\r\n * Value for your widget to display\r\n * @type string\r\n */\r\n @Input() value?: string;\r\n\r\n templates: any = {};\r\n\r\n @ContentChildren(TemplateIdDirective, {descendants: true}) contentTemplates!: QueryList<TemplateIdDirective>;\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n 'card': true,\r\n [`bg-${this.color}`]: !!this.color,\r\n 'text-high-emphasis-inverse': !!this.color\r\n }\r\n }\r\n\r\n get bodyClasses() {\r\n return {\r\n 'pb-0': true,\r\n 'd-flex': true,\r\n 'justify-content-between': true,\r\n 'align-items-start': true,\r\n }\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.contentTemplates.forEach((child: TemplateIdDirective) => {\r\n this.templates[child.id] = child.templateRef;\r\n });\r\n }\r\n}\r\n","<ng-container>\r\n <c-card-body [ngClass]=\"bodyClasses\">\r\n <div>\r\n <div *ngIf=\"!!value || templates?.widgetValueTemplate\" class=\"fs-4 fw-semibold\">\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetValueTemplate || defaultWidgetValueTemplate\"></ng-container>\r\n </div>\r\n <div *ngIf=\"!!title || templates?.widgetTitleTemplate\">\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetTitleTemplate || defaultWidgetTitleTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetActionTemplate || defaultWidgetActionTemplate\"></ng-container>\r\n </c-card-body>\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetChartTemplate || defaultWidgetChartTemplate\"></ng-container>\r\n</ng-container>\r\n\r\n<ng-template #defaultWidgetTitleTemplate>\r\n {{title}}\r\n</ng-template>\r\n\r\n<ng-template #defaultWidgetValueTemplate>\r\n {{value}}\r\n</ng-template>\r\n\r\n<ng-template #defaultWidgetChartTemplate>\r\n <ng-content select=\".chart-wrapper\"></ng-content>\r\n</ng-template>\r\n\r\n<ng-template #defaultWidgetActionTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { Colors } from '../../coreui.types';\r\nimport { CardComponent } from '../../card';\r\n\r\n@Component({\r\n selector: 'c-widget-stat-b',\r\n templateUrl: './widget-stat-b.component.html',\r\n styleUrls: ['./widget-stat-b.component.scss'],\r\n exportAs: 'cWidgetStatB'\r\n})\r\nexport class WidgetStatBComponent extends CardComponent {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n static ngAcceptInputType_inverse: BooleanInput;\r\n\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() override color?: Colors;\r\n /**\r\n * Sets the text-color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() override textColor?: Colors | 'white' | 'muted';\r\n /**\r\n * Title of the widget to display\r\n * @type string\r\n */\r\n @Input() title?: string;\r\n /**\r\n * Helper text for your widget.\r\n * @type string\r\n */\r\n @Input() text?: string;\r\n /**\r\n * Value for your widget to display\r\n * @type string\r\n */\r\n @Input() value?: string;\r\n /**\r\n * Invert colors from their default dark shade.\r\n * @type boolean\r\n */\r\n @Input()\r\n get inverse(): boolean {\r\n return this._inverse;\r\n }\r\n set inverse(value: boolean) {\r\n this._inverse = coerceBooleanProperty(value);\r\n }\r\n private _inverse = false;\r\n\r\n @HostBinding('class')\r\n override get hostClasses() {\r\n return {\r\n 'card': true,\r\n [`bg-${this.color}`]: !!this.color,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n 'text-high-emphasis-inverse': !!this.color\r\n }\r\n }\r\n\r\n}\r\n","<c-card-body>\r\n <div *ngIf=\"!!value\" class=\"fs-4 fw-semibold\">{{value}}</div>\r\n <div *ngIf=\"!!title\">{{title}}</div>\r\n <ng-content></ng-content>\r\n <small *ngIf=\"text\" [ngClass]=\"inverse ? 'text-medium-emphasis-inverse' : 'text-medium-emphasis'\">\r\n {{text}}\r\n </small>\r\n</c-card-body>\r\n","import { AfterContentInit, Component, ContentChildren, HostBinding, Input, QueryList } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { CardComponent } from '../../card';\r\nimport { TemplateIdDirective } from '../../shared';\r\n\r\n@Component({\r\n selector: 'c-widget-stat-c',\r\n templateUrl: './widget-stat-c.component.html',\r\n styleUrls: ['./widget-stat-c.component.scss'],\r\n exportAs: 'cWidgetStatC'\r\n})\r\nexport class WidgetStatCComponent extends CardComponent implements AfterContentInit {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n static ngAcceptInputType_inverse: BooleanInput;\r\n\r\n /**\r\n * Icon for your component.\r\n * @type string\r\n */\r\n @Input() icon?: string;\r\n /**\r\n * Title of the widget to display\r\n * @type string\r\n */\r\n @Input() title?: string;\r\n /**\r\n * Value for your widget to display\r\n * @type string\r\n */\r\n @Input() value?: string | number;\r\n /**\r\n * Invert colors from their default dark shade.\r\n * @type boolean\r\n */\r\n @Input()\r\n get inverse(): boolean {\r\n return this._inverse;\r\n }\r\n set inverse(value: boolean) {\r\n this._inverse = coerceBooleanProperty(value);\r\n }\r\n private _inverse = false;\r\n\r\n templates: any = {};\r\n @ContentChildren(TemplateIdDirective, {descendants: true}) contentTemplates!: QueryList<TemplateIdDirective>;\r\n\r\n @HostBinding('class')\r\n get hostExtendedClass() {\r\n return {\r\n 'high-emphasis-inverse': this.inverse\r\n }\r\n }\r\n\r\n get iconClasses() {\r\n return {\r\n 'mb-4': !this.textColor,\r\n 'text-end': true,\r\n 'text-medium-emphasis': !this.inverse,\r\n 'text-medium-emphasis-inverse': this.inverse,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n }\r\n }\r\n\r\n get titleClasses() {\r\n return {\r\n 'text-medium-emphasis': !this.inverse,\r\n 'text-medium-emphasis-inverse': this.inverse,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n }\r\n }\r\n\r\n get valueClasses() {\r\n return {\r\n 'fs-4': !this.textColor,\r\n 'fw-semibold': true,\r\n 'text-high-emphasis': !this.inverse,\r\n 'text-high-emphasis-inverse': this.inverse,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n }\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.contentTemplates.forEach((child: TemplateIdDirective) => {\r\n this.templates[child.id] = child.templateRef;\r\n });\r\n }\r\n}\r\n","<c-card-body>\r\n <div *ngIf=\"icon || templates?.widgetIconTemplate\" [ngClass]=\"iconClasses\">\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetIconTemplate || defaultWidgetIconTemplate\"></ng-container>\r\n </div>\r\n <div *ngIf=\"!!value\" [ngClass]=\"valueClasses\">\r\n {{value}}\r\n </div>\r\n <div *ngIf=\"!!title\" [ngClass]=\"titleClasses\">\r\n {{title}}\r\n </div>\r\n <ng-container *ngIf=\"templates?.widgetProgressTemplate\">\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetProgressTemplate || defaultWidgetProgressTemplate\"></ng-container>\r\n </ng-container>\r\n</c-card-body>\r\n\r\n<ng-template #defaultWidgetIconTemplate>\r\n {{icon}}\r\n</ng-template>\r\n\r\n<ng-template #defaultWidgetProgressTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\r\nimport { Colors } from '../../coreui.types';\r\n\r\nexport type WidgetStatDValue = {\r\n title?: string,\r\n value?: number | string,\r\n}\r\n\r\n@Component({\r\n selector: 'c-widget-stat-d',\r\n templateUrl: './widget-stat-d.component.html',\r\n styleUrls: ['./widget-stat-d.component.scss'],\r\n exportAs: 'cWidgetStatD'\r\n})\r\nexport class WidgetStatDComponent {\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Values and subtitles for your component.\r\n * @type WidgetStatDValue\r\n */\r\n @Input() values?: WidgetStatDValue[];\r\n\r\n constructor() {\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n 'card': true\r\n }\r\n }\r\n\r\n get headerClasses() {\r\n return {\r\n 'position-relative': true,\r\n 'd-flex': true,\r\n 'justify-content-center': true,\r\n 'align-items-center': true,\r\n [`bg-${this.color}`]: this.color,\r\n }\r\n }\r\n\r\n}\r\n","<c-card-header [ngClass]=\"headerClasses\">\r\n <ng-content></ng-content>\r\n</c-card-header>\r\n<c-card-body cRow class=\"text-center\">\r\n <ng-template [ngForOf]=\"values\" let-i=\"index\" let-item ngFor>\r\n <div *ngIf=\"i % 2 !== 0\" class=\"vr\"></div>\r\n <c-col>\r\n <div class=\"fs-5 fw-semibold\">{{item.value}}</div>\r\n <div class=\"text-uppercase text-medium-emphasis small\">{{item.title}}</div>\r\n </c-col>\r\n </ng-template>\r\n</c-card-body>\r\n","import { Component, Input } from '@angular/core';\r\nimport { CardComponent } from '../../card';\r\n\r\n@Component({\r\n selector: 'c-widget-stat-e',\r\n templateUrl: './widget-stat-e.component.html',\r\n styleUrls: ['./widget-stat-e.component.scss'],\r\n exportAs: 'cWidgetStatE'\r\n})\r\nexport class WidgetStatEComponent extends CardComponent {\r\n\r\n constructor() {\r\n super();\r\n }\r\n /**\r\n * Title of the widget to display\r\n * @type string\r\n */\r\n @Input() title?: string;\r\n /**\r\n * Value for your widget to display\r\n * @type string | number\r\n */\r\n @Input() value?: string | number;\r\n\r\n get titleClasses() {\r\n return {\r\n 'text-medium-emphasis': !this.textColor,\r\n 'small': true,\r\n 'text-uppercase': true,\r\n 'fw-semibold': true,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n }\r\n }\r\n\r\n}\r\n","<c-card-body class=\"text-center\">\r\n <div *ngIf=\"!!title\" [ngClass]=\"titleClasses\">{{title}}</div>\r\n <div *ngIf=\"!!value\" class=\"fs-6 fw-semibold py-3\">{{value}}</div>\r\n <ng-content></ng-content>\r\n</c-card-body>\r\n","import { AfterContentInit, Component, ContentChildren, HostBinding, Input, QueryList } from '@angular/core';\r\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\r\n\r\nimport { TemplateIdDirective } from '../../shared';\r\nimport { Colors } from '../../coreui.types';\r\n\r\n@Component({\r\n selector: 'c-widget-stat-f',\r\n templateUrl: './widget-stat-f.component.html',\r\n styleUrls: ['./widget-stat-f.component.scss'],\r\n exportAs: 'cWidgetStatB'\r\n})\r\nexport class WidgetStatFComponent implements AfterContentInit {\r\n\r\n static ngAcceptInputType_padding: BooleanInput;\r\n /**\r\n * Sets the color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() color?: Colors;\r\n /**\r\n * Sets the text-color context of the component to one of CoreUI’s themed colors.\r\n * @type Colors\r\n */\r\n @Input() textColor?: Colors | 'white' | 'muted';\r\n /**\r\n * Footer for your widget\r\n * @type string\r\n */\r\n @Input() footer?: string;\r\n /**\r\n * Icon for your widget\r\n * @type string\r\n */\r\n @Input() icon?: string;\r\n /**\r\n * Title of the widget to display\r\n * @type string\r\n */\r\n /**\r\n * Set padding of your component.\r\n * @type boolean\r\n */\r\n @Input()\r\n get padding(): boolean {\r\n return this._padding;\r\n }\r\n set padding(value: boolean) {\r\n this._padding = coerceBooleanProperty(value);\r\n }\r\n private _padding = false;\r\n\r\n @Input() title?: string;\r\n /**\r\n * Value for your widget to display\r\n * @type string\r\n */\r\n @Input() value?: string | number;\r\n\r\n templates: any = {};\r\n @ContentChildren(TemplateIdDirective, {descendants: true}) contentTemplates!: QueryList<TemplateIdDirective>;\r\n\r\n @HostBinding('class')\r\n get hostClasses() {\r\n return {\r\n card: true\r\n }\r\n }\r\n\r\n get cardBodyClasses() {\r\n return {\r\n 'd-flex': true,\r\n 'align-items-center': true,\r\n 'p-0': !this.padding,\r\n }\r\n }\r\n\r\n get iconClasses() {\r\n return {\r\n 'me-3': !this.textColor,\r\n 'text-white': true,\r\n [`bg-${this.color}`]: !!this.color,\r\n 'p-3': this.padding,\r\n 'p-4': !this.padding,\r\n }\r\n }\r\n\r\n get titleClasses() {\r\n return {\r\n 'text-medium-emphasis': !this.textColor,\r\n 'small': true,\r\n 'text-uppercase': true,\r\n 'fw-semibold': true,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n }\r\n }\r\n\r\n get valueClasses() {\r\n return {\r\n 'fs-6': !this.textColor,\r\n 'fw-semibold': true,\r\n [`text-${this.textColor}`]: !!this.textColor,\r\n }\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.contentTemplates.forEach((child: TemplateIdDirective) => {\r\n this.templates[child.id] = child.templateRef;\r\n });\r\n }\r\n}\r\n","<ng-container>\r\n <c-card-body [ngClass]=\"cardBodyClasses\">\r\n <div [ngClass]=\"iconClasses\">\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetIconTemplate || defaultWidgetIconTemplate\"></ng-container>\r\n </div>\r\n <div>\r\n <div [ngClass]=\"valueClasses\">{{value}}</div>\r\n <div [ngClass]=\"titleClasses\">{{title}}</div>\r\n </div>\r\n </c-card-body>\r\n <c-card-footer *ngIf=\"footer || templates?.widgetFooterTemplate\">\r\n <ng-container *ngTemplateOutlet=\"templates?.widgetFooterTemplate || defaultFooterIconTemplate\"></ng-container>\r\n </c-card-footer>\r\n</ng-container>\r\n\r\n<ng-template #defaultWidgetIconTemplate>\r\n <span>{{icon}}</span>\r\n</ng-template>\r\n\r\n<ng-template #defaultFooterIconTemplate>\r\n <span>{{footer}}</span>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { CardModule } from '../card';\r\nimport { GridModule } from '../grid';\r\n\r\nimport { WidgetStatAComponent } from './widget-stat-a/widget-stat-a.component';\r\nimport { WidgetStatBComponent } from './widget-stat-b/widget-stat-b.component';\r\nimport { WidgetStatCComponent } from './widget-stat-c/widget-stat-c.component';\r\nimport { WidgetStatDComponent } from './widget-stat-d/widget-stat-d.component';\r\nimport { WidgetStatEComponent } from './widget-stat-e/widget-stat-e.component';\r\nimport { WidgetStatFComponent } from './widget-stat-f/widget-stat-f.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n WidgetStatAComponent,\r\n WidgetStatBComponent,\r\n WidgetStatCComponent,\r\n WidgetStatDComponent,\r\n WidgetStatEComponent,\r\n WidgetStatFComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n CardModule,\r\n GridModule,\r\n ],\r\n exports: [\r\n WidgetStatAComponent,\r\n WidgetStatBComponent,\r\n WidgetStatCComponent,\r\n WidgetStatDComponent,\r\n WidgetStatEComponent,\r\n WidgetStatFComponent\r\n ]\r\n})\r\nexport class WidgetModule {\r\n}\r\n","/*\r\n * Public API Surface of coreui-angular\r\n */\r\n\r\nexport * from './lib/coreui.types';\r\nexport * from './lib/shared';\r\nexport * from './lib/accordion';\r\nexport * from './lib/alert';\r\nexport * from './lib/avatar';\r\nexport * from './lib/badge';\r\nexport * from './lib/breadcrumb';\r\nexport * from './lib/button';\r\nexport * from './lib/button-group';\r\nexport * from './lib/callout';\r\nexport * from './lib/card';\r\nexport * from './lib/carousel';\r\nexport * from './lib/collapse';\r\nexport * from './lib/dropdown';\r\nexport * from './lib/element-cover';\r\nexport * from './lib/footer';\r\nexport * from './lib/form';\r\nexport * from './lib/grid';\r\nexport * from './lib/header';\r\nexport * from './lib/image';\r\nexport * from './lib/list-group';\r\nexport * from './lib/loading-button';\r\nexport * from './lib/multi-select';\r\nexport * from './lib/nav';\r\nexport * from './lib/navbar';\r\nexport * from './lib/modal';\r\nexport * from './lib/offcanvas';\r\nexport * from './lib/pagination';\r\nexport * from './lib/placeholder';\r\nexport * from './lib/popover';\r\nexport * from './lib/progress';\r\nexport * from './lib/services';\r\nexport * from './lib/sidebar';\r\nexport * from './lib/smart-pagination';\r\nexport * from './lib/smart-table';\r\nexport * from './lib/spinner';\r\nexport * from './lib/table';\r\nexport * from './lib/tabs';\r\nexport * from './lib/toast';\r\nexport * from './lib/tooltip';\r\nexport * from './lib/utilities';\r\nexport * from './lib/widget';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.AccordionService","nextId","i3.CollapseDirective","i4.AccordionButtonDirective","i1","i2.ButtonCloseDirective","i2","i3.HtmlAttributesDirective","i1.BreadcrumbRouterService","i2.BreadcrumbComponent","i3.BreadcrumbItemComponent","i4","i1.CarouselService","i2.CarouselState","i3.IntersectionService","i4.ListenersService","i1.CarouselState","i3","i1.DropdownService","i2.DropdownComponent","i1.SpinnerComponent","i2.MultiSelectService","i1.MultiSelectOptgroupLabelComponent","i1.MultiSelectService","i3.ButtonCloseDirective","i3.MultiSelectTagComponent","i5","i6.ButtonCloseDirective","i1.ModalService","i2.BackdropService","i3.ModalDialogComponent","i4.ModalContentComponent","i1.OffcanvasService","i1.ListenersService","i1.SidebarService","i2.SidebarService","i3.SidebarBackdropService","i1.SidebarNavHelper","i4.SidebarNavBadgePipe","i4.HtmlAttributesDirective","i6.SidebarNavLinkPipe","i7.SidebarNavBadgePipe","i8.SidebarNavIconPipe","i1.SidebarComponent","i2.SidebarNavHelper","i4.SidebarService","i5.SidebarNavDividerComponent","i6.SidebarNavTitleComponent","i7.SidebarNavLabelComponent","i8.SidebarNavLinkComponent","i9","i10.HtmlAttributesDirective","i11.SidebarNavItemClassPipe","i12","i13.SidebarNavBadgePipe","i14.SidebarNavIconPipe","i2.PageItemDirective","i3.PageLinkDirective","i1.FormLabelDirective","i2.FormControlDirective","i2.FormCheckInputDirective","i4.TableColorDirective","i5.FormControlDirective","i2.FormSelectDirective","i1.SmartTableFilterComponent","i2.SmartTableHeadComponent","i3.ElementCoverComponent","i4.SmartPaginationComponent","i5.SmartTableItemsPerPageSelectorComponent","i6","i7.ButtonDirective","i8.TableDirective","i9.HtmlAttributesDirective","i10.TableColorDirective","i11.AlignDirective","i12.TableActiveDirective","i13.FormCheckInputDirective","i1.TabService","i1.ToasterService","i1.ToastComponent","i4.ToastCloseDirective","i2.ToasterHostDirective","i1.CardBodyComponent","i1.CardHeaderComponent","i2.CardBodyComponent","i3.ColComponent","i5.RowDirective","i2.CardFooterComponent"],"mappings":"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"}
|