desy-angular 7.0.1 → 8.0.0
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/README.md +2 -2
- package/esm2022/desy-angular.mjs +2 -0
- package/{esm2020 → esm2022}/lib/desy-angular.module.mjs +37 -37
- package/esm2022/lib/desy-buttons/components/button/button.component.mjs +115 -0
- package/esm2022/lib/desy-buttons/components/button-loader/button-loader.component.mjs +63 -0
- package/esm2022/lib/desy-buttons/components/dropdown/dropdown.component.mjs +127 -0
- package/esm2022/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.mjs +39 -0
- package/{esm2020 → esm2022}/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.mjs +4 -4
- package/esm2022/lib/desy-buttons/components/listbox/listbox.component.mjs +334 -0
- package/esm2022/lib/desy-buttons/components/pill/pill.component.mjs +80 -0
- package/{esm2020 → esm2022}/lib/desy-buttons/components/toggle/toggle-off-state/toggle-off-state.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-buttons/components/toggle/toggle-on-state/toggle-on-state.component.mjs +4 -4
- package/esm2022/lib/desy-buttons/components/toggle/toggle.component.mjs +61 -0
- package/esm2022/lib/desy-buttons/desy-buttons.module.mjs +81 -0
- package/{esm2020 → esm2022}/lib/desy-commons/components/content/content.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-commons/components/description/description.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-commons/components/divider/divider.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-commons/components/icon/icon.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-commons/components/title/title.component.mjs +4 -4
- package/esm2022/lib/desy-commons/desy-commons.module.mjs +52 -0
- package/{esm2020 → esm2022}/lib/desy-forms/components/character-count/character-count.component.mjs +10 -10
- package/esm2022/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.mjs +222 -0
- package/esm2022/lib/desy-forms/components/checkboxes/checkboxes-parent.component.mjs +15 -0
- package/esm2022/lib/desy-forms/components/checkboxes/checkboxes.component.mjs +268 -0
- package/esm2022/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.mjs +55 -0
- package/esm2022/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.mjs +19 -0
- package/{esm2020 → esm2022}/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.mjs +4 -4
- package/esm2022/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.mjs +55 -0
- package/esm2022/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.mjs +51 -0
- package/esm2022/lib/desy-forms/components/date-input/date-input.component.mjs +293 -0
- package/esm2022/lib/desy-forms/components/error-message/error-message.component.mjs +31 -0
- package/{esm2020 → esm2022}/lib/desy-forms/components/fieldset/fieldset.component.mjs +10 -8
- package/{esm2020 → esm2022}/lib/desy-forms/components/fieldset/legend/legend.component.mjs +4 -4
- package/esm2022/lib/desy-forms/components/file-upload/file-upload.component.mjs +67 -0
- package/esm2022/lib/desy-forms/components/form-field/form-field.component.mjs +120 -0
- package/esm2022/lib/desy-forms/components/hint/hint.component.mjs +29 -0
- package/esm2022/lib/desy-forms/components/input/input.component.mjs +98 -0
- package/esm2022/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.mjs +20 -0
- package/esm2022/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.mjs +59 -0
- package/{esm2020 → esm2022}/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.mjs +4 -4
- package/esm2022/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.mjs +51 -0
- package/esm2022/lib/desy-forms/components/input-group/input-group.component.mjs +228 -0
- package/esm2022/lib/desy-forms/components/label/label.component.mjs +38 -0
- package/esm2022/lib/desy-forms/components/radios/radio-item/radio-item.component.mjs +170 -0
- package/esm2022/lib/desy-forms/components/radios/radios-parent.component.mjs +15 -0
- package/esm2022/lib/desy-forms/components/radios/radios.component.mjs +281 -0
- package/esm2022/lib/desy-forms/components/search-bar/search-bar.component.mjs +60 -0
- package/{esm2020 → esm2022}/lib/desy-forms/components/select/option/option.component.mjs +4 -4
- package/esm2022/lib/desy-forms/components/select/option-group/option-group.component.mjs +18 -0
- package/{esm2020 → esm2022}/lib/desy-forms/components/select/select-item/select-item.component.mjs +4 -4
- package/esm2022/lib/desy-forms/components/select/select.component.mjs +92 -0
- package/{esm2020 → esm2022}/lib/desy-forms/components/template-driven-wrapper/template-driven-wrapper.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-forms/components/textarea/textarea.component.mjs +12 -13
- package/esm2022/lib/desy-forms/components/tree/tree-checkbox/tree-checkbox.component.mjs +173 -0
- package/esm2022/lib/desy-forms/components/tree/tree-item/tree-item.component.mjs +377 -0
- package/esm2022/lib/desy-forms/components/tree/tree-items-generator/tree-items-generator.component.mjs +25 -0
- package/{esm2020 → esm2022}/lib/desy-forms/components/tree/tree-sub/tree-sub.component.mjs +4 -4
- package/esm2022/lib/desy-forms/components/tree/tree.component.mjs +356 -0
- package/esm2022/lib/desy-forms/desy-forms.module.mjs +207 -0
- package/esm2022/lib/desy-forms/directives/condition.directive.mjs +34 -0
- package/{esm2020 → esm2022}/lib/desy-forms/interfaces/item-date-input-data.mjs +1 -1
- package/{esm2020 → esm2022}/lib/desy-forms/interfaces/select-item-data.mjs +1 -1
- package/esm2022/lib/desy-modals/components/dialog/dialog.component.mjs +150 -0
- package/esm2022/lib/desy-modals/components/modal/modal-button-loader-primary/modal-button-loader-primary.component.mjs +25 -0
- package/esm2022/lib/desy-modals/components/modal/modal-button-loader-secondary/modal-button-loader-secondary.component.mjs +23 -0
- package/esm2022/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.mjs +23 -0
- package/esm2022/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.mjs +23 -0
- package/esm2022/lib/desy-modals/components/modal/modal.component.mjs +182 -0
- package/esm2022/lib/desy-modals/desy-modals.module.mjs +61 -0
- package/{esm2020 → esm2022}/lib/desy-modals/interfaces/dialog-options.mjs +1 -1
- package/esm2022/lib/desy-modals/interfaces/index.mjs +7 -0
- package/esm2022/lib/desy-modals/services/dialog.service.mjs +114 -0
- package/{esm2020 → esm2022}/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.mjs +4 -4
- package/esm2022/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.mjs +48 -0
- package/{esm2020 → esm2022}/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.mjs +4 -4
- package/esm2022/lib/desy-nav/components/error-summary/error-summary.component.mjs +64 -0
- package/{esm2020 → esm2022}/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.mjs +4 -4
- package/esm2022/lib/desy-nav/components/footer/footer-meta/footer-meta.component.mjs +31 -0
- package/{esm2020 → esm2022}/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.mjs +4 -4
- package/esm2022/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.mjs +19 -0
- package/esm2022/lib/desy-nav/components/footer/footer.component.mjs +74 -0
- package/{esm2020 → esm2022}/lib/desy-nav/components/header/header-custom-navigation/header-custom-navigation.component.mjs +4 -4
- package/esm2022/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.mjs +46 -0
- package/{esm2020 → esm2022}/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.mjs +4 -4
- package/esm2022/lib/desy-nav/components/header/header-navigation/header-navigation.component.mjs +36 -0
- package/{esm2020 → esm2022}/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.mjs +4 -4
- package/esm2022/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.mjs +93 -0
- package/esm2022/lib/desy-nav/components/header/header-subnav/header-subnav.component.mjs +41 -0
- package/esm2022/lib/desy-nav/components/header/header.component.mjs +107 -0
- package/esm2022/lib/desy-nav/components/links-list/links-list-item/links-list-item.component.mjs +40 -0
- package/esm2022/lib/desy-nav/components/links-list/links-list-item-sub/links-list-item-sub.component.mjs +14 -0
- package/esm2022/lib/desy-nav/components/links-list/links-list.component.mjs +42 -0
- package/{esm2020 → esm2022}/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.mjs +4 -4
- package/esm2022/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.mjs +78 -0
- package/esm2022/lib/desy-nav/components/menu-navigation/components/menu-navigation-item/menu-navigation-item.component.mjs +49 -0
- package/{esm2020 → esm2022}/lib/desy-nav/components/menu-navigation/components/menu-navigation-subitem/menu-navigation-subitem.component.mjs +4 -4
- package/esm2022/lib/desy-nav/components/menu-navigation/menu-navigation.component.mjs +602 -0
- package/esm2022/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.mjs +46 -0
- package/esm2022/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.mjs +18 -0
- package/{esm2020 → esm2022}/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.mjs +4 -4
- package/esm2022/lib/desy-nav/components/menu-vertical/menu-vertical.component.mjs +113 -0
- package/esm2022/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.mjs +51 -0
- package/{esm2020 → esm2022}/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.mjs +4 -4
- package/esm2022/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.mjs +36 -0
- package/{esm2020 → esm2022}/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.mjs +4 -4
- package/esm2022/lib/desy-nav/components/menubar/directives/menubaritem.directive.mjs +45 -0
- package/esm2022/lib/desy-nav/components/menubar/menubar.component.mjs +713 -0
- package/{esm2020 → esm2022}/lib/desy-nav/components/nav/nav-item/nav-item.component.mjs +4 -4
- package/esm2022/lib/desy-nav/components/nav/nav.component.mjs +115 -0
- package/{esm2020 → esm2022}/lib/desy-nav/components/notification/notification-item/notification-item.component.mjs +4 -4
- package/esm2022/lib/desy-nav/components/notification/notification.component.mjs +143 -0
- package/esm2022/lib/desy-nav/components/skip-link/skip-link.component.mjs +43 -0
- package/esm2022/lib/desy-nav/desy-nav.module.mjs +240 -0
- package/esm2022/lib/desy-nav/interfaces/header-skiplink-data.mjs +2 -0
- package/esm2022/lib/desy-pagination/components/pagination/pagination.component.mjs +191 -0
- package/{esm2020 → esm2022}/lib/desy-pagination/components/pagination-item-perpage/pagination-item-perpage.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-pagination/components/pagination-listbox-label/pagination-listbox-label.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-pagination/desy-pagination.module.mjs +15 -15
- package/{esm2020 → esm2022}/lib/desy-tables/components/table/components/table-caption.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-tables/components/table/components/table-cell.component.mjs +4 -4
- package/esm2022/lib/desy-tables/components/table/components/table-header.component.mjs +18 -0
- package/esm2022/lib/desy-tables/components/table/components/table-row.component.mjs +18 -0
- package/esm2022/lib/desy-tables/components/table/table.component.mjs +79 -0
- package/esm2022/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.mjs +50 -0
- package/esm2022/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.mjs +18 -0
- package/{esm2020 → esm2022}/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.mjs +4 -4
- package/esm2022/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.mjs +27 -0
- package/esm2022/lib/desy-tables/components/table-advanced/components/table-advanced-select.component.mjs +28 -0
- package/esm2022/lib/desy-tables/components/table-advanced/table-advanced.component.mjs +286 -0
- package/{esm2020 → esm2022}/lib/desy-tables/desy-tables.module.mjs +38 -38
- package/esm2022/lib/desy-tables/directives/cell.directive.mjs +25 -0
- package/esm2022/lib/desy-tables/directives/focus-clicked-cell.directive.mjs +81 -0
- package/esm2022/lib/desy-tables/directives/row.directive.mjs +22 -0
- package/{esm2020 → esm2022}/lib/desy-views/components/accordion/accordion-header/accordion-header.component.mjs +4 -4
- package/esm2022/lib/desy-views/components/accordion/accordion-item/accordion-item.component.mjs +61 -0
- package/esm2022/lib/desy-views/components/accordion/accordion.component.mjs +199 -0
- package/esm2022/lib/desy-views/components/accordion-history/accordion-history-item/accordion-history-item.component.mjs +41 -0
- package/esm2022/lib/desy-views/components/accordion-history/accordion-history.component.mjs +19 -0
- package/{esm2020 → esm2022}/lib/desy-views/components/accordion-history/accordion-item-hide-button/accordion-item-hide-button.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-views/components/accordion-history/accordion-item-show-button/accordion-item-show-button.component.mjs +4 -4
- package/esm2022/lib/desy-views/components/alert/alert.component.mjs +81 -0
- package/esm2022/lib/desy-views/components/collapsible/collapsible.component.mjs +81 -0
- package/{esm2020 → esm2022}/lib/desy-views/components/description-list/definition/definition.component.mjs +4 -4
- package/esm2022/lib/desy-views/components/description-list/description-item/description-item.component.mjs +36 -0
- package/esm2022/lib/desy-views/components/description-list/description-list.component.mjs +28 -0
- package/{esm2020 → esm2022}/lib/desy-views/components/description-list/term/term.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-views/components/details/details.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-views/components/item/item-content-right/item-content-right.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/desy-views/components/item/item-item/item-item.component.mjs +4 -4
- package/esm2022/lib/desy-views/components/item/item.component.mjs +121 -0
- package/{esm2020 → esm2022}/lib/desy-views/components/media-object/media-object-figure/media-object-figure.component.mjs +4 -4
- package/esm2022/lib/desy-views/components/media-object/media-object.component.mjs +117 -0
- package/{esm2020 → esm2022}/lib/desy-views/components/spinner/spinner.component.mjs +4 -4
- package/esm2022/lib/desy-views/components/status/status.component.mjs +107 -0
- package/esm2022/lib/desy-views/components/status-item/status-item.component.mjs +148 -0
- package/{esm2020 → esm2022}/lib/desy-views/components/tabs/panel/panel.component.mjs +4 -4
- package/esm2022/lib/desy-views/components/tabs/tab-item/tab-item.component.mjs +39 -0
- package/esm2022/lib/desy-views/components/tabs/tabs.component.mjs +200 -0
- package/{esm2020 → esm2022}/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.mjs +4 -4
- package/esm2022/lib/desy-views/components/tooltip/tooltip.component.mjs +206 -0
- package/{esm2020 → esm2022}/lib/desy-views/desy-views.module.mjs +67 -67
- package/esm2022/lib/desy-views/services/alert.service.mjs +88 -0
- package/esm2022/lib/shared/components/accessibility/accessibility.component.mjs +42 -0
- package/{esm2020 → esm2022}/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.mjs +4 -4
- package/esm2022/lib/shared/components/content-base/content-base.component.mjs +21 -0
- package/{esm2020 → esm2022}/lib/shared/components/text-or-html-required/text-or-html-required.component.mjs +4 -4
- package/esm2022/lib/shared/decorators/desy-content-child.decorator.mjs +30 -0
- package/esm2022/lib/shared/decorators/desy-on-input-change.decorator.mjs +15 -0
- package/esm2022/lib/shared/directives/attribute-change.directive.mjs +50 -0
- package/esm2022/lib/shared/directives/click-outside.directive.mjs +40 -0
- package/esm2022/lib/shared/directives/content-change.directive.mjs +41 -0
- package/esm2022/lib/shared/directives/custom-inner-content.directive.mjs +44 -0
- package/esm2022/lib/shared/directives/inner-content.directive.mjs +37 -0
- package/esm2022/lib/shared/pipes/external-href.pipe.mjs +28 -0
- package/esm2022/lib/shared/pipes/inner-html.pipe.mjs +21 -0
- package/{esm2020 → esm2022}/lib/shared/pipes/make-html-list.pipe.mjs +4 -4
- package/esm2022/lib/shared/shared.module.mjs +83 -0
- package/esm2022/lib/shared/utils/search-utils.mjs +66 -0
- package/esm2022/lib/shared/utils/string-utils.mjs +11 -0
- package/esm2022/public-api.mjs +197 -0
- package/{fesm2020 → fesm2022}/desy-angular.mjs +1964 -2068
- package/fesm2022/desy-angular.mjs.map +1 -0
- package/index.d.ts +0 -3
- package/lib/desy-buttons/components/button/button.component.d.ts +1 -1
- package/lib/desy-buttons/components/button-loader/button-loader.component.d.ts +1 -1
- package/lib/desy-buttons/components/dropdown/dropdown.component.d.ts +1 -1
- package/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.d.ts +3 -1
- package/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.d.ts +1 -1
- package/lib/desy-buttons/components/listbox/listbox.component.d.ts +16 -5
- package/lib/desy-buttons/components/pill/pill.component.d.ts +1 -1
- package/lib/desy-buttons/components/toggle/toggle-off-state/toggle-off-state.component.d.ts +1 -1
- package/lib/desy-buttons/components/toggle/toggle-on-state/toggle-on-state.component.d.ts +1 -1
- package/lib/desy-buttons/components/toggle/toggle.component.d.ts +1 -1
- package/lib/desy-commons/components/content/content.component.d.ts +1 -1
- package/lib/desy-commons/components/description/description.component.d.ts +1 -1
- package/lib/desy-commons/components/divider/divider.component.d.ts +1 -1
- package/lib/desy-commons/components/icon/icon.component.d.ts +1 -1
- package/lib/desy-commons/components/title/title.component.d.ts +1 -1
- package/lib/desy-forms/components/character-count/character-count.component.d.ts +1 -1
- package/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.d.ts +6 -4
- package/lib/desy-forms/components/checkboxes/checkboxes-parent.component.d.ts +13 -0
- package/lib/desy-forms/components/checkboxes/checkboxes.component.d.ts +13 -31
- package/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.d.ts +2 -1
- package/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.d.ts +1 -1
- package/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.d.ts +2 -1
- package/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.d.ts +2 -1
- package/lib/desy-forms/components/date-input/date-input.component.d.ts +5 -8
- package/lib/desy-forms/components/error-message/error-message.component.d.ts +1 -1
- package/lib/desy-forms/components/fieldset/fieldset.component.d.ts +1 -8
- package/lib/desy-forms/components/fieldset/legend/legend.component.d.ts +1 -1
- package/lib/desy-forms/components/file-upload/file-upload.component.d.ts +1 -6
- package/lib/desy-forms/components/form-field/form-field.component.d.ts +10 -10
- package/lib/desy-forms/components/hint/hint.component.d.ts +1 -1
- package/lib/desy-forms/components/input/input.component.d.ts +1 -1
- package/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.d.ts +2 -1
- package/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.d.ts +1 -1
- package/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.d.ts +2 -1
- package/lib/desy-forms/components/input-group/input-group.component.d.ts +3 -8
- package/lib/desy-forms/components/label/label.component.d.ts +1 -1
- package/lib/desy-forms/components/radios/radio-item/radio-item.component.d.ts +6 -5
- package/lib/desy-forms/components/radios/radios-parent.component.d.ts +13 -0
- package/lib/desy-forms/components/radios/radios.component.d.ts +14 -31
- package/lib/desy-forms/components/search-bar/search-bar.component.d.ts +3 -5
- package/lib/desy-forms/components/select/option/option.component.d.ts +2 -2
- package/lib/desy-forms/components/select/option-group/option-group.component.d.ts +1 -1
- package/lib/desy-forms/components/select/select-item/select-item.component.d.ts +1 -1
- package/lib/desy-forms/components/select/select.component.d.ts +1 -1
- package/lib/desy-forms/components/textarea/textarea.component.d.ts +1 -1
- package/lib/desy-forms/components/tree/tree-checkbox/tree-checkbox.component.d.ts +1 -1
- package/lib/desy-forms/components/tree/tree-item/tree-item.component.d.ts +2 -5
- package/lib/desy-forms/components/tree/tree-items-generator/tree-items-generator.component.d.ts +6 -2
- package/lib/desy-forms/components/tree/tree-sub/tree-sub.component.d.ts +1 -1
- package/lib/desy-forms/components/tree/tree.component.d.ts +2 -59
- package/lib/desy-forms/directives/condition.directive.d.ts +1 -6
- package/lib/desy-forms/interfaces/item-date-input-data.d.ts +1 -0
- package/lib/desy-forms/interfaces/select-item-data.d.ts +1 -1
- package/lib/desy-modals/components/dialog/dialog.component.d.ts +2 -1
- package/lib/desy-modals/components/modal/modal-button-loader-primary/modal-button-loader-primary.component.d.ts +1 -1
- package/lib/desy-modals/components/modal/modal-button-loader-secondary/modal-button-loader-secondary.component.d.ts +1 -1
- package/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.d.ts +1 -1
- package/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.d.ts +1 -1
- package/lib/desy-modals/components/modal/modal.component.d.ts +1 -1
- package/lib/desy-modals/interfaces/dialog-options.d.ts +1 -0
- package/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.d.ts +1 -1
- package/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.d.ts +1 -1
- package/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.d.ts +1 -1
- package/lib/desy-nav/components/error-summary/error-summary.component.d.ts +1 -1
- package/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.d.ts +1 -1
- package/lib/desy-nav/components/footer/footer-meta/footer-meta.component.d.ts +1 -1
- package/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.d.ts +1 -1
- package/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.d.ts +1 -1
- package/lib/desy-nav/components/footer/footer.component.d.ts +1 -1
- package/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.d.ts +1 -1
- package/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.d.ts +1 -1
- package/lib/desy-nav/components/header/header-navigation/header-navigation.component.d.ts +1 -1
- package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.d.ts +1 -8
- package/lib/desy-nav/components/header/header-subnav/header-subnav.component.d.ts +1 -1
- package/lib/desy-nav/components/header/header.component.d.ts +3 -2
- package/lib/desy-nav/components/links-list/links-list-item/links-list-item.component.d.ts +20 -0
- package/lib/desy-nav/components/links-list/links-list-item-sub/links-list-item-sub.component.d.ts +7 -0
- package/lib/desy-nav/components/links-list/links-list.component.d.ts +13 -0
- package/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.d.ts +1 -1
- package/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.d.ts +1 -1
- package/lib/desy-nav/components/menu-navigation/components/menu-navigation-item/menu-navigation-item.component.d.ts +1 -1
- package/lib/desy-nav/components/menu-navigation/components/menu-navigation-subitem/menu-navigation-subitem.component.d.ts +1 -1
- package/lib/desy-nav/components/menu-navigation/menu-navigation.component.d.ts +1 -1
- package/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.d.ts +1 -1
- package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.d.ts +1 -1
- package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.d.ts +1 -1
- package/lib/desy-nav/components/menu-vertical/menu-vertical.component.d.ts +1 -1
- package/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.d.ts +1 -1
- package/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.d.ts +1 -1
- package/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.d.ts +1 -1
- package/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.d.ts +1 -1
- package/lib/desy-nav/components/menubar/menubar.component.d.ts +1 -8
- package/lib/desy-nav/components/nav/nav-item/nav-item.component.d.ts +1 -1
- package/lib/desy-nav/components/nav/nav.component.d.ts +1 -1
- package/lib/desy-nav/components/notification/notification-item/notification-item.component.d.ts +1 -1
- package/lib/desy-nav/components/notification/notification.component.d.ts +1 -1
- package/lib/desy-nav/components/skip-link/skip-link.component.d.ts +2 -1
- package/lib/desy-nav/desy-nav.module.d.ts +29 -26
- package/lib/desy-nav/interfaces/header-skiplink-data.d.ts +7 -0
- package/lib/desy-pagination/components/pagination/pagination.component.d.ts +12 -7
- package/lib/desy-pagination/components/pagination-item-perpage/pagination-item-perpage.component.d.ts +1 -1
- package/lib/desy-pagination/components/pagination-listbox-label/pagination-listbox-label.component.d.ts +1 -1
- package/lib/desy-tables/components/table/components/table-caption.component.d.ts +1 -1
- package/lib/desy-tables/components/table/components/table-cell.component.d.ts +1 -1
- package/lib/desy-tables/components/table/table.component.d.ts +1 -1
- package/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.d.ts +1 -1
- package/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.d.ts +1 -1
- package/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.d.ts +1 -1
- package/lib/desy-tables/components/table-advanced/components/table-advanced-select.component.d.ts +1 -1
- package/lib/desy-tables/components/table-advanced/table-advanced.component.d.ts +1 -56
- package/lib/desy-tables/directives/cell.directive.d.ts +1 -4
- package/lib/desy-tables/directives/row.directive.d.ts +1 -8
- package/lib/desy-views/components/accordion/accordion-header/accordion-header.component.d.ts +1 -1
- package/lib/desy-views/components/accordion/accordion-item/accordion-item.component.d.ts +1 -1
- package/lib/desy-views/components/accordion/accordion.component.d.ts +1 -1
- package/lib/desy-views/components/accordion-history/accordion-history-item/accordion-history-item.component.d.ts +1 -1
- package/lib/desy-views/components/accordion-history/accordion-item-hide-button/accordion-item-hide-button.component.d.ts +1 -1
- package/lib/desy-views/components/accordion-history/accordion-item-show-button/accordion-item-show-button.component.d.ts +1 -1
- package/lib/desy-views/components/alert/alert.component.d.ts +1 -1
- package/lib/desy-views/components/collapsible/collapsible.component.d.ts +1 -1
- package/lib/desy-views/components/description-list/definition/definition.component.d.ts +1 -1
- package/lib/desy-views/components/description-list/description-item/description-item.component.d.ts +1 -1
- package/lib/desy-views/components/description-list/description-list.component.d.ts +1 -1
- package/lib/desy-views/components/description-list/term/term.component.d.ts +1 -1
- package/lib/desy-views/components/details/details.component.d.ts +1 -1
- package/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.d.ts +1 -1
- package/lib/desy-views/components/item/item.component.d.ts +2 -1
- package/lib/desy-views/components/media-object/media-object.component.d.ts +1 -1
- package/lib/desy-views/components/spinner/spinner.component.d.ts +1 -1
- package/lib/desy-views/components/status/status.component.d.ts +3 -1
- package/lib/desy-views/components/status-item/status-item.component.d.ts +1 -1
- package/lib/desy-views/components/tabs/panel/panel.component.d.ts +1 -1
- package/lib/desy-views/components/tabs/tab-item/tab-item.component.d.ts +1 -1
- package/lib/desy-views/components/tabs/tabs.component.d.ts +1 -1
- package/lib/desy-views/components/tooltip/tooltip.component.d.ts +1 -1
- package/lib/shared/components/accessibility/accessibility.component.d.ts +1 -4
- package/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.d.ts +1 -9
- package/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.d.ts +1 -7
- package/lib/shared/components/content-base/content-base.component.d.ts +0 -3
- package/lib/shared/components/text-or-html-required/text-or-html-required.component.d.ts +1 -5
- package/lib/shared/decorators/desy-content-child.decorator.d.ts +0 -11
- package/lib/shared/decorators/desy-on-input-change.decorator.d.ts +0 -4
- package/lib/shared/directives/attribute-change.directive.d.ts +2 -1
- package/lib/shared/directives/click-outside.directive.d.ts +1 -1
- package/lib/shared/directives/content-change.directive.d.ts +1 -5
- package/lib/shared/directives/custom-inner-content.directive.d.ts +1 -7
- package/lib/shared/directives/inner-content.directive.d.ts +1 -1
- package/lib/shared/pipes/external-href.pipe.d.ts +0 -4
- package/lib/shared/utils/search-utils.d.ts +0 -10
- package/lib/shared/utils/string-utils.d.ts +0 -7
- package/package.json +13 -19
- package/public-api.d.ts +4 -0
- package/esm2020/desy-angular.mjs +0 -5
- package/esm2020/lib/desy-buttons/components/button/button.component.mjs +0 -115
- package/esm2020/lib/desy-buttons/components/button-loader/button-loader.component.mjs +0 -63
- package/esm2020/lib/desy-buttons/components/dropdown/dropdown.component.mjs +0 -126
- package/esm2020/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.mjs +0 -32
- package/esm2020/lib/desy-buttons/components/listbox/listbox.component.mjs +0 -291
- package/esm2020/lib/desy-buttons/components/pill/pill.component.mjs +0 -80
- package/esm2020/lib/desy-buttons/components/toggle/toggle.component.mjs +0 -59
- package/esm2020/lib/desy-buttons/desy-buttons.module.mjs +0 -82
- package/esm2020/lib/desy-commons/desy-commons.module.mjs +0 -53
- package/esm2020/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.mjs +0 -240
- package/esm2020/lib/desy-forms/components/checkboxes/checkboxes.component.mjs +0 -264
- package/esm2020/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.mjs +0 -52
- package/esm2020/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.mjs +0 -19
- package/esm2020/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.mjs +0 -52
- package/esm2020/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.mjs +0 -48
- package/esm2020/lib/desy-forms/components/date-input/date-input.component.mjs +0 -266
- package/esm2020/lib/desy-forms/components/error-message/error-message.component.mjs +0 -31
- package/esm2020/lib/desy-forms/components/file-upload/file-upload.component.mjs +0 -72
- package/esm2020/lib/desy-forms/components/form-field/form-field.component.mjs +0 -124
- package/esm2020/lib/desy-forms/components/hint/hint.component.mjs +0 -29
- package/esm2020/lib/desy-forms/components/input/input.component.mjs +0 -99
- package/esm2020/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.mjs +0 -20
- package/esm2020/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.mjs +0 -53
- package/esm2020/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.mjs +0 -45
- package/esm2020/lib/desy-forms/components/input-group/input-group.component.mjs +0 -223
- package/esm2020/lib/desy-forms/components/label/label.component.mjs +0 -38
- package/esm2020/lib/desy-forms/components/radios/radio-item/radio-item.component.mjs +0 -185
- package/esm2020/lib/desy-forms/components/radios/radios.component.mjs +0 -270
- package/esm2020/lib/desy-forms/components/search-bar/search-bar.component.mjs +0 -66
- package/esm2020/lib/desy-forms/components/select/option-group/option-group.component.mjs +0 -18
- package/esm2020/lib/desy-forms/components/select/select.component.mjs +0 -93
- package/esm2020/lib/desy-forms/components/tree/tree-checkbox/tree-checkbox.component.mjs +0 -167
- package/esm2020/lib/desy-forms/components/tree/tree-item/tree-item.component.mjs +0 -397
- package/esm2020/lib/desy-forms/components/tree/tree-items-generator/tree-items-generator.component.mjs +0 -25
- package/esm2020/lib/desy-forms/components/tree/tree.component.mjs +0 -425
- package/esm2020/lib/desy-forms/desy-forms.module.mjs +0 -209
- package/esm2020/lib/desy-forms/directives/condition.directive.mjs +0 -34
- package/esm2020/lib/desy-forms/models/checkbox-service-item.component.mjs +0 -9
- package/esm2020/lib/desy-forms/models/radio-service-item.component.mjs +0 -9
- package/esm2020/lib/desy-forms/services/checkbox.service.mjs +0 -61
- package/esm2020/lib/desy-forms/services/radio.service.mjs +0 -53
- package/esm2020/lib/desy-modals/components/dialog/dialog.component.mjs +0 -130
- package/esm2020/lib/desy-modals/components/modal/modal-button-loader-primary/modal-button-loader-primary.component.mjs +0 -25
- package/esm2020/lib/desy-modals/components/modal/modal-button-loader-secondary/modal-button-loader-secondary.component.mjs +0 -23
- package/esm2020/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.mjs +0 -23
- package/esm2020/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.mjs +0 -23
- package/esm2020/lib/desy-modals/components/modal/modal.component.mjs +0 -178
- package/esm2020/lib/desy-modals/desy-modals.module.mjs +0 -62
- package/esm2020/lib/desy-modals/interfaces/index.mjs +0 -8
- package/esm2020/lib/desy-modals/services/dialog.service.mjs +0 -114
- package/esm2020/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.mjs +0 -47
- package/esm2020/lib/desy-nav/components/error-summary/error-summary.component.mjs +0 -62
- package/esm2020/lib/desy-nav/components/footer/footer-meta/footer-meta.component.mjs +0 -30
- package/esm2020/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.mjs +0 -19
- package/esm2020/lib/desy-nav/components/footer/footer.component.mjs +0 -71
- package/esm2020/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.mjs +0 -45
- package/esm2020/lib/desy-nav/components/header/header-navigation/header-navigation.component.mjs +0 -36
- package/esm2020/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.mjs +0 -95
- package/esm2020/lib/desy-nav/components/header/header-subnav/header-subnav.component.mjs +0 -41
- package/esm2020/lib/desy-nav/components/header/header.component.mjs +0 -103
- package/esm2020/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.mjs +0 -79
- package/esm2020/lib/desy-nav/components/menu-navigation/components/menu-navigation-item/menu-navigation-item.component.mjs +0 -49
- package/esm2020/lib/desy-nav/components/menu-navigation/menu-navigation.component.mjs +0 -616
- package/esm2020/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.mjs +0 -45
- package/esm2020/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.mjs +0 -18
- package/esm2020/lib/desy-nav/components/menu-vertical/menu-vertical.component.mjs +0 -113
- package/esm2020/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.mjs +0 -51
- package/esm2020/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.mjs +0 -36
- package/esm2020/lib/desy-nav/components/menubar/directives/menubaritem.directive.mjs +0 -45
- package/esm2020/lib/desy-nav/components/menubar/menubar.component.mjs +0 -727
- package/esm2020/lib/desy-nav/components/nav/nav.component.mjs +0 -116
- package/esm2020/lib/desy-nav/components/notification/notification.component.mjs +0 -141
- package/esm2020/lib/desy-nav/components/skip-link/skip-link.component.mjs +0 -37
- package/esm2020/lib/desy-nav/desy-nav.module.mjs +0 -221
- package/esm2020/lib/desy-pagination/components/pagination/pagination.component.mjs +0 -167
- package/esm2020/lib/desy-tables/components/table/components/table-header.component.mjs +0 -18
- package/esm2020/lib/desy-tables/components/table/components/table-row.component.mjs +0 -18
- package/esm2020/lib/desy-tables/components/table/table.component.mjs +0 -78
- package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.mjs +0 -47
- package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.mjs +0 -18
- package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.mjs +0 -27
- package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-select.component.mjs +0 -28
- package/esm2020/lib/desy-tables/components/table-advanced/table-advanced.component.mjs +0 -342
- package/esm2020/lib/desy-tables/directives/cell.directive.mjs +0 -28
- package/esm2020/lib/desy-tables/directives/focus-clicked-cell.directive.mjs +0 -81
- package/esm2020/lib/desy-tables/directives/row.directive.mjs +0 -29
- package/esm2020/lib/desy-views/components/accordion/accordion-item/accordion-item.component.mjs +0 -57
- package/esm2020/lib/desy-views/components/accordion/accordion.component.mjs +0 -198
- package/esm2020/lib/desy-views/components/accordion-history/accordion-history-item/accordion-history-item.component.mjs +0 -39
- package/esm2020/lib/desy-views/components/accordion-history/accordion-history.component.mjs +0 -19
- package/esm2020/lib/desy-views/components/alert/alert.component.mjs +0 -81
- package/esm2020/lib/desy-views/components/collapsible/collapsible.component.mjs +0 -81
- package/esm2020/lib/desy-views/components/description-list/description-item/description-item.component.mjs +0 -34
- package/esm2020/lib/desy-views/components/description-list/description-list.component.mjs +0 -28
- package/esm2020/lib/desy-views/components/item/item.component.mjs +0 -121
- package/esm2020/lib/desy-views/components/media-object/media-object.component.mjs +0 -115
- package/esm2020/lib/desy-views/components/status/status.component.mjs +0 -97
- package/esm2020/lib/desy-views/components/status-item/status-item.component.mjs +0 -143
- package/esm2020/lib/desy-views/components/tabs/tab-item/tab-item.component.mjs +0 -37
- package/esm2020/lib/desy-views/components/tabs/tabs.component.mjs +0 -199
- package/esm2020/lib/desy-views/components/tooltip/tooltip.component.mjs +0 -202
- package/esm2020/lib/desy-views/services/alert.service.mjs +0 -88
- package/esm2020/lib/shared/components/accessibility/accessibility.component.mjs +0 -45
- package/esm2020/lib/shared/components/content-base/content-base.component.mjs +0 -24
- package/esm2020/lib/shared/decorators/desy-content-child.decorator.mjs +0 -41
- package/esm2020/lib/shared/decorators/desy-on-input-change.decorator.mjs +0 -19
- package/esm2020/lib/shared/directives/attribute-change.directive.mjs +0 -45
- package/esm2020/lib/shared/directives/click-outside.directive.mjs +0 -40
- package/esm2020/lib/shared/directives/content-change.directive.mjs +0 -45
- package/esm2020/lib/shared/directives/custom-inner-content.directive.mjs +0 -60
- package/esm2020/lib/shared/directives/inner-content.directive.mjs +0 -37
- package/esm2020/lib/shared/pipes/external-href.pipe.mjs +0 -32
- package/esm2020/lib/shared/pipes/inner-html.pipe.mjs +0 -20
- package/esm2020/lib/shared/shared.module.mjs +0 -99
- package/esm2020/lib/shared/utils/search-utils.mjs +0 -78
- package/esm2020/lib/shared/utils/string-utils.mjs +0 -18
- package/esm2020/public-api.mjs +0 -221
- package/fesm2015/desy-angular.mjs +0 -11752
- package/fesm2015/desy-angular.mjs.map +0 -1
- package/fesm2020/desy-angular.mjs.map +0 -1
- package/lib/desy-forms/models/checkbox-service-item.component.d.ts +0 -13
- package/lib/desy-forms/models/radio-service-item.component.d.ts +0 -12
- package/lib/desy-forms/services/checkbox.service.d.ts +0 -14
- package/lib/desy-forms/services/radio.service.d.ts +0 -13
- /package/{esm2020 → esm2022}/lib/desy-buttons/interfaces/listbox-item-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-buttons/interfaces/listbox-label-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-commons/interfaces/content-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-commons/interfaces/description-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-commons/interfaces/divider-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-commons/interfaces/icon-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-commons/interfaces/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-commons/interfaces/title-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/components/tree/interfaces/itree-item.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/components/tree/interfaces/quit-tree-item-focus-options.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/accesibility-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/error-message-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/fieldset-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/hint-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/item-checkbox-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/item-divider-date-input-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/item-divider-input-group-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/item-input-group-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/item-radio-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/item-radio-with-template-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/label-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/legend-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-modals/interfaces/modal-button-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-modals/interfaces/modal-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-modals/interfaces/modal-icon-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-modals/interfaces/modal-options.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-modals/interfaces/open-dialog-result.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/breadcrumbs.data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/error-summary-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/footer-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/header-dropdown-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/header-navigation-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/header-navigation-item-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/header-offcanvas-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/header-subnav-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-horizontal-item-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-horizontal-item-event-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-navigation-item-sub-item-sub-item.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-navigation-item-sub-item.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-navigation.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-vertical-items-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-vertical-sub-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-vertical-sub-items-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menubar-item-sub-item-sub-item.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menubar-item-sub-item.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menubar-item-sub.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menubar-item.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/nav-item-event.data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/nav-item.data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/notification-items-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/notification-options.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-pagination/interfaces/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-pagination/interfaces/pagination-item.data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-tables/interfaces/cell-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-tables/interfaces/head-cell-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-tables/interfaces/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-tables/interfaces/recalculate-table-params.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-tables/interfaces/row-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-tables/interfaces/wrapper-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-views/interfaces/accordion-header.data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-views/interfaces/accordion-item.data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-views/interfaces/alert-options.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-views/interfaces/description-item.data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-views/interfaces/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-views/interfaces/open-alert-result.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-views/interfaces/status-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-views/interfaces/status-icon-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-views/interfaces/status-item-title-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-views/interfaces/tabs-items-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-views/interfaces/tabs-panel-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/desy-views/interfaces/term-definition.data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/shared/components/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/shared/interfaces/accesibility-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/shared/utils/focus-utils.mjs +0 -0
|
@@ -0,0 +1,377 @@
|
|
|
1
|
+
import { __decorate, __metadata } from "tslib";
|
|
2
|
+
import { ChangeDetectorRef, Component, ContentChildren, ElementRef, EventEmitter, forwardRef, HostBinding, Input, Output, ViewChild } from '@angular/core';
|
|
3
|
+
import { DesyContentChild } from "../../../../shared/decorators/desy-content-child.decorator";
|
|
4
|
+
import { TreeSubComponent } from "../tree-sub/tree-sub.component";
|
|
5
|
+
import { ITreeItem } from "../interfaces/itree-item";
|
|
6
|
+
import { HintComponent } from "../../hint/hint.component";
|
|
7
|
+
import { LabelComponent } from "../../label/label.component";
|
|
8
|
+
import { TreeCheckboxComponent } from "../tree-checkbox/tree-checkbox.component";
|
|
9
|
+
import { AccessibilityComponent } from "../../../../shared/components";
|
|
10
|
+
import { DesyOnInputChange } from "../../../../shared/decorators/desy-on-input-change.decorator";
|
|
11
|
+
import { SearchUtils } from "../../../../shared/utils/search-utils";
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
import * as i1 from "@angular/common";
|
|
14
|
+
import * as i2 from "../../../../shared/directives/custom-inner-content.directive";
|
|
15
|
+
import * as i3 from "../tree-checkbox/tree-checkbox.component";
|
|
16
|
+
import * as i4 from "../../../../shared/pipes/make-html-list.pipe";
|
|
17
|
+
export class TreeItemComponent extends AccessibilityComponent {
|
|
18
|
+
static { this._treeItemKeySuffix = 0; }
|
|
19
|
+
constructor(changeDetector, element) {
|
|
20
|
+
super();
|
|
21
|
+
this.changeDetector = changeDetector;
|
|
22
|
+
this.element = element;
|
|
23
|
+
this.checkedChange = new EventEmitter();
|
|
24
|
+
this.checkedChangeForTree = new EventEmitter();
|
|
25
|
+
this.expandedChange = new EventEmitter();
|
|
26
|
+
this.indeterminateCheckedChange = new EventEmitter();
|
|
27
|
+
this.treeItemKey = TreeItemComponent.generateStaticItemKey();
|
|
28
|
+
this.allParentsExpanded = true;
|
|
29
|
+
this.inheritedMatchesSearch = true;
|
|
30
|
+
this.treeDisabled = false;
|
|
31
|
+
this.quitFocus = new EventEmitter();
|
|
32
|
+
this.isFocus = false;
|
|
33
|
+
this.isHover = false;
|
|
34
|
+
this._matchesValidText = false;
|
|
35
|
+
}
|
|
36
|
+
ngOnChanges(changes) {
|
|
37
|
+
if (this.sub && this.sub.itemList) {
|
|
38
|
+
this.sub.itemList.forEach(item => item.refreshAllParentsExpandedRecursive(this.allParentsExpanded && this.expanded));
|
|
39
|
+
}
|
|
40
|
+
for (const propName in changes) {
|
|
41
|
+
if (changes.hasOwnProperty(propName)) {
|
|
42
|
+
switch (propName) {
|
|
43
|
+
case 'checked': {
|
|
44
|
+
setTimeout(() => {
|
|
45
|
+
this.setChecked(this.checked, false, false);
|
|
46
|
+
if (this.inheritedExpandedFirstLevel && this.checked && !this.expanded) {
|
|
47
|
+
this.expandSub(true);
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
break;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
focus() {
|
|
57
|
+
this.checkbox?.focus();
|
|
58
|
+
this.handleItemFocus(true);
|
|
59
|
+
}
|
|
60
|
+
setCheckedAutomaticallyDependingOnChildren() {
|
|
61
|
+
if (this.sub) {
|
|
62
|
+
this.sub.itemList.forEach(item => item.setCheckedAutomaticallyDependingOnChildren());
|
|
63
|
+
if (this.areAllChildrenChecked()) {
|
|
64
|
+
if (this.indeterminateChecked) {
|
|
65
|
+
this.setIndeterminateChecked(false);
|
|
66
|
+
}
|
|
67
|
+
if (!this.checked) {
|
|
68
|
+
this.setChecked(true, true);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
else if (this.hasChildrenCheckedOrIndeterminate()) {
|
|
72
|
+
if (!this.indeterminateChecked) {
|
|
73
|
+
this.setIndeterminateChecked(true);
|
|
74
|
+
}
|
|
75
|
+
if (this.checked) {
|
|
76
|
+
this.setChecked(false, true);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
if (this.indeterminateChecked) {
|
|
81
|
+
this.setIndeterminateChecked(false);
|
|
82
|
+
}
|
|
83
|
+
if (this.checked) {
|
|
84
|
+
this.setChecked(false, true);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
refreshAllParentsExpandedRecursive(value) {
|
|
90
|
+
this.allParentsExpanded = value;
|
|
91
|
+
if (this.sub) {
|
|
92
|
+
this.sub.itemList.forEach(item => item.refreshAllParentsExpandedRecursive(value && this.expanded));
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
detectChanges() {
|
|
96
|
+
this.changeDetector.detectChanges();
|
|
97
|
+
}
|
|
98
|
+
expandSub(value) {
|
|
99
|
+
this.expanded = value;
|
|
100
|
+
if (this.sub) {
|
|
101
|
+
this.sub.itemList.forEach(item => item.refreshAllParentsExpandedRecursive(this.allParentsExpanded && value));
|
|
102
|
+
}
|
|
103
|
+
this.expandedChange.emit(value);
|
|
104
|
+
}
|
|
105
|
+
handleCheckboxChange(checked) {
|
|
106
|
+
this.setChecked(checked, false);
|
|
107
|
+
if (this.inheritedExpandedFirstLevel && checked && !this.expanded) {
|
|
108
|
+
this.expandSub(true);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
handleIndeterminateCheckedChange(indeterminate) {
|
|
112
|
+
this.indeterminateCheckedChange.emit(indeterminate);
|
|
113
|
+
}
|
|
114
|
+
handleItemFocus(value, condition = true) {
|
|
115
|
+
if (condition) {
|
|
116
|
+
this.isFocus = value;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
handleItemHover(value, condition = true) {
|
|
120
|
+
if (condition) {
|
|
121
|
+
this.isHover = value;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
handleArrowUp(event, condition = true) {
|
|
125
|
+
if (condition) {
|
|
126
|
+
event.preventDefault();
|
|
127
|
+
this.quitFocus.emit({
|
|
128
|
+
nextElement: 'previous',
|
|
129
|
+
currentItem: this
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
handleHome(event, condition = true) {
|
|
134
|
+
if (condition) {
|
|
135
|
+
event.preventDefault();
|
|
136
|
+
this.quitFocus.emit({
|
|
137
|
+
nextElement: 'first',
|
|
138
|
+
currentItem: this
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
handleEnd(event, condition = true) {
|
|
143
|
+
if (condition) {
|
|
144
|
+
event.preventDefault();
|
|
145
|
+
this.quitFocus.emit({
|
|
146
|
+
nextElement: 'last',
|
|
147
|
+
currentItem: this
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
handleArrowDown(event, condition = true) {
|
|
152
|
+
if (condition) {
|
|
153
|
+
event.preventDefault();
|
|
154
|
+
this.quitFocus.emit({
|
|
155
|
+
nextElement: 'next',
|
|
156
|
+
currentItem: this
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
handleArrowRight(event, condition = true) {
|
|
161
|
+
if (condition && this.sub && this.sub.itemList?.length > 0) {
|
|
162
|
+
event.preventDefault();
|
|
163
|
+
if (this.expanded) {
|
|
164
|
+
this.quitFocus.emit({
|
|
165
|
+
nextElement: 'firstChild',
|
|
166
|
+
currentItem: this
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
this.expandSub(true);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
handleArrowLeft(event, condition = true) {
|
|
175
|
+
if (condition) {
|
|
176
|
+
event.preventDefault();
|
|
177
|
+
if (this.expanded) {
|
|
178
|
+
this.expandSub(false);
|
|
179
|
+
}
|
|
180
|
+
else if (this.subLevel > 0) {
|
|
181
|
+
this.quitFocus.emit({
|
|
182
|
+
nextElement: 'parent',
|
|
183
|
+
currentItem: this
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
setChecked(checked, ignoreInTree, emitEvent = true) {
|
|
189
|
+
if (!this.disabled) {
|
|
190
|
+
this.checked = checked;
|
|
191
|
+
}
|
|
192
|
+
if (!this.inheritedDecoupleChildFromParent && this.sub && this.sub.itemList && !this.indeterminateChecked) {
|
|
193
|
+
this.sub.itemList.forEach(item => {
|
|
194
|
+
item.setIndeterminateChecked(false);
|
|
195
|
+
item.setChecked(checked, true);
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
if (emitEvent) {
|
|
199
|
+
this.checkedChange.emit(checked);
|
|
200
|
+
}
|
|
201
|
+
if (!ignoreInTree) {
|
|
202
|
+
this.checkedChangeForTree.emit(checked);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
setIndeterminateChecked(indeterminate) {
|
|
206
|
+
if (!this.disabled) {
|
|
207
|
+
this.indeterminateChecked = indeterminate;
|
|
208
|
+
this.indeterminateCheckedChange.emit(indeterminate);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
setSubLevel(subLevel) {
|
|
212
|
+
this.subLevel = subLevel;
|
|
213
|
+
if (this.sub && this.sub.itemList) {
|
|
214
|
+
this.sub.itemList.forEach(item => item.setSubLevel(subLevel + 1));
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
setOrderRecursively(order) {
|
|
218
|
+
this.orderInTree = order;
|
|
219
|
+
let newOrder = order + 1;
|
|
220
|
+
if (this.sub && this.sub.itemList) {
|
|
221
|
+
this.sub.itemList.forEach(item => {
|
|
222
|
+
newOrder = item.setOrderRecursively(newOrder);
|
|
223
|
+
});
|
|
224
|
+
}
|
|
225
|
+
return newOrder;
|
|
226
|
+
}
|
|
227
|
+
setDefaultId(defaultId) {
|
|
228
|
+
this.defaultId = defaultId;
|
|
229
|
+
this.setDefaultIdRecursive();
|
|
230
|
+
}
|
|
231
|
+
setDefaultIdRecursive() {
|
|
232
|
+
if (this.sub && this.sub.itemList) {
|
|
233
|
+
this.sub.itemList.forEach((item, index) => {
|
|
234
|
+
item.setDefaultId(`sub-${this.getId()}-${index}`);
|
|
235
|
+
});
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
getId() {
|
|
239
|
+
return this.id ? this.id : this.defaultId;
|
|
240
|
+
}
|
|
241
|
+
isHidden() {
|
|
242
|
+
return !this.inheritedMatchesSearch && (!this.sub || this.areAllChildrenHidden());
|
|
243
|
+
}
|
|
244
|
+
areAllChildrenHidden() {
|
|
245
|
+
const children = this.sub.itemList;
|
|
246
|
+
return children.findIndex(child => !child.isHidden()) < 0;
|
|
247
|
+
}
|
|
248
|
+
areAllChildrenChecked() {
|
|
249
|
+
const children = this.sub.itemList;
|
|
250
|
+
return children.findIndex(child => !child.checked) < 0;
|
|
251
|
+
}
|
|
252
|
+
hasChildrenCheckedOrIndeterminate() {
|
|
253
|
+
const children = this.sub.itemList;
|
|
254
|
+
return children.findIndex(child => child.checked || child.indeterminateChecked) >= 0;
|
|
255
|
+
}
|
|
256
|
+
matchesText(value) {
|
|
257
|
+
let matches;
|
|
258
|
+
if (this.allParentsExpanded && !this.isHidden()) {
|
|
259
|
+
matches = this.checkbox?.matchesText(value);
|
|
260
|
+
}
|
|
261
|
+
else {
|
|
262
|
+
const itemText = this.hiddenWrapper.nativeElement.textContent;
|
|
263
|
+
matches = SearchUtils.containsAnyWordFrom(itemText, value);
|
|
264
|
+
}
|
|
265
|
+
this._matchesValidText = value ? matches : false;
|
|
266
|
+
return matches;
|
|
267
|
+
}
|
|
268
|
+
getKey() {
|
|
269
|
+
return this.treeItemKey;
|
|
270
|
+
}
|
|
271
|
+
getParentKey() {
|
|
272
|
+
let parentKey;
|
|
273
|
+
let parentElement = this.element.nativeElement.parentElement;
|
|
274
|
+
while (parentElement && parentElement.tagName !== 'BODY' && parentElement.tagName !== 'DESY-TREE-ITEM' && parentElement.tagName !== 'DESY-TREE') {
|
|
275
|
+
parentElement = parentElement.parentElement;
|
|
276
|
+
}
|
|
277
|
+
if (parentElement.tagName === 'BODY') {
|
|
278
|
+
throw new Error('Parent for tree-item not found');
|
|
279
|
+
}
|
|
280
|
+
if (parentElement.tagName === 'DESY-TREE') {
|
|
281
|
+
parentKey = 'root';
|
|
282
|
+
}
|
|
283
|
+
if (parentElement.tagName === 'DESY-TREE-ITEM') {
|
|
284
|
+
parentKey = parentElement.getAttribute('desy-tree-item-key');
|
|
285
|
+
}
|
|
286
|
+
return parentKey;
|
|
287
|
+
}
|
|
288
|
+
isActive() {
|
|
289
|
+
return this.active || this._matchesValidText;
|
|
290
|
+
}
|
|
291
|
+
static generateStaticItemKey() {
|
|
292
|
+
const key = 'tree-item-key-' + TreeItemComponent._treeItemKeySuffix;
|
|
293
|
+
TreeItemComponent._treeItemKeySuffix++;
|
|
294
|
+
return key;
|
|
295
|
+
}
|
|
296
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: TreeItemComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
297
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: TreeItemComponent, selector: "desy-tree-item", inputs: { id: "id", name: "name", value: "value", classes: "classes", active: "active", disabled: "disabled", title: "title", hasDividers: "hasDividers", isIndeterminate: "isIndeterminate", checked: "checked", expanded: "expanded", indeterminateChecked: "indeterminateChecked" }, outputs: { checkedChange: "checkedChange", expandedChange: "expandedChange", indeterminateCheckedChange: "indeterminateCheckedChange" }, host: { properties: { "attr.desy-tree-item-key": "this.treeItemKey" } }, providers: [
|
|
298
|
+
{
|
|
299
|
+
provide: ITreeItem,
|
|
300
|
+
useExisting: forwardRef(() => TreeItemComponent)
|
|
301
|
+
}
|
|
302
|
+
], queries: [{ propertyName: "sub", predicate: TreeSubComponent }, { propertyName: "hint", predicate: HintComponent }, { propertyName: "label", predicate: LabelComponent }], viewQueries: [{ propertyName: "hiddenWrapper", first: true, predicate: ["hiddenWrapper"], descendants: true }, { propertyName: "checkbox", first: true, predicate: TreeCheckboxComponent, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<li *ngIf=\"allParentsExpanded && !isHidden(); else hidden\"\n [id]=\"id\"\n [class]=\"'c-tree__item focus:outline-none'\"\n [ngClass]=\"{\n 'ml-4': subLevel === 0,\n 'ml-8': subLevel !== 0,\n 'c-tree__item--focus': isFocus && !sub,\n 'c-tree__item--hover': isHover && !sub\n }\"\n (focusin)=\"handleItemFocus(true, !sub)\"\n (focusout)=\"handleItemFocus(false, !sub)\"\n (mouseover)=\"handleItemHover(true, !sub)\"\n (mouseout)=\"handleItemHover(false, !sub)\"\n (keydown.home)=\"handleHome($event, !sub)\"\n (keydown.end)=\"handleEnd($event, !sub)\"\n (keydown.arrowup)=\"handleArrowUp($event, !sub)\"\n (keydown.arrowdown)=\"handleArrowDown($event, !sub)\"\n (keydown.arrowright)=\"handleArrowRight($event, !sub)\"\n (keydown.arrowleft)=\"handleArrowLeft($event, !sub)\"\n role=\"treeitem\"\n [attr.aria-expanded]=\"sub ? (expanded ? 'true' : 'false') : null\"\n [attr.aria-current]=\"isActive() && subLevel === 0 ? 'page' : null\">\n <div *ngIf=\"!sub && subLevel !== 0; else childrenTree\"\n [id]=\"id\"\n [class]=\"['block', classes] | makeHtmlList\"\n [attr.title]=\"title ? title : null\"\n [attr.disabled]=\"disabled || treeDisabled ? 'disabled' : null\"\n\n [attr.role]=\"role ? role : 'tree'\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : (disabled || treeDisabled ? 'true' : null)\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : (isActive() ? 'page' : null)\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.aria-modal]=\"ariaModal ? ariaModal : null\"\n [attr.tabindex]=\"tabindex ? tabindex : (disabled || treeDisabled ? '-1' : null)\">\n <ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n </div>\n</li>\n\n<ng-template #childrenTree>\n <div *ngIf=\"sub; else checkbox\" class=\"w-full h-full\"\n [ngClass]=\"{'c-tree__item--focus': isFocus && sub, 'c-tree__item--hover': isHover && sub}\"\n (focusin)=\"handleItemFocus(true)\"\n (focusout)=\"handleItemFocus(false)\"\n (mouseover)=\"handleItemHover(true)\"\n (mouseout)=\"handleItemHover(false)\"\n (keydown.home)=\"handleHome($event)\"\n (keydown.end)=\"handleEnd($event)\"\n (keydown.arrowup)=\"handleArrowUp($event)\"\n (keydown.arrowdown)=\"handleArrowDown($event)\"\n (keydown.arrowright)=\"handleArrowRight($event)\"\n (keydown.arrowLeft)=\"handleArrowLeft($event)\">\n <div [class]=\"['w-full flex items-center relative focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black text-left', classes] | makeHtmlList\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.aria-modal]=\"ariaModal ? ariaModal : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n <span class=\"absolute top-3 -left-4 flex items-center w-4 h-2.5 text-primary-base font-bold\">\n <svg (click)=\"expandSub(false)\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 10 10\" width=\"10\" height=\"10\" aria-hidden=\"true\" class=\"c-tree__minus\"><path fill=\"currentColor\" d=\"M9.286 5.714H.714a.714.714 0 010-1.428h8.572a.714.714 0 010 1.428z\"/></svg>\n <svg (click)=\"expandSub(true)\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 10 10\" width=\"10\" height=\"10\" aria-hidden=\"true\" class=\"c-tree__plus\"><path fill=\"currentColor\" d=\"M9.286 4.286H5.893a.179.179 0 01-.179-.179V.714a.714.714 0 00-1.428 0v3.393a.179.179 0 01-.179.179H.714a.714.714 0 000 1.428h3.393a.179.179 0 01.179.179v3.393a.714.714 0 001.428 0V5.893a.179.179 0 01.179-.179h3.393a.714.714 0 000-1.428z\"/></svg>\n </span>\n <ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n </div>\n </div>\n\n <ng-container *desyCustomInnerContent=\"{ component: sub }\"></ng-container>\n</ng-template>\n\n<!-- Se incorpora el contenido m\u00EDnimo para funcionar con el objetivo de mejorar el rendimiento -->\n<ng-template #hidden>\n <li class=\"hidden\">\n <div #hiddenWrapper>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <ng-container *desyCustomInnerContent=\"{ component: sub }\"></ng-container>\n </li>\n</ng-template>\n\n<ng-template #checkbox>\n <!--\n El *ngIf=\"name || parentName\" se realiza para no crear el checkbox hasta que se ha ejecutado el configureAllItems.\n Esto puede dar problemas porque, hasta que no se ejecuta esto, el desy-tree-checkbox no cuenta con el type actualizado (por defecto radio).\n Un ejemplo en el que esto puede ser problem\u00E1tico es al ser typo checkbox y darle un valor checked=true a varios los items, ya\n que el type todav\u00EDa no se ha transmitido aqu\u00ED. Como por defecto el type es radio, s\u00F3lo marcar\u00E1 el \u00FAltimo. Posteriormente,\n ya detectar\u00E1 el tipo y permitir\u00E1 seleccionar varios items, pero hasta entonces existe este problema.\n -->\n <desy-tree-checkbox *ngIf=\"name || parentName\"\n [name]=\"name ? name : parentName\"\n [id]=\"getId()\"\n [value]=\"value\"\n [classes]=\"classes\"\n [type]=\"type\"\n [(checked)]=\"checked\" (checkedChange)=\"handleCheckboxChange($event)\"\n [hasError]=\"inheritedHasError\"\n [disabled]=\"disabled || treeDisabled\"\n [hasDividers]=\"hasDividers\"\n [describedBy]=\"[inheritedDescribedBy, hint?.id] | makeHtmlList\"\n [isIndeterminate]=\"isIndeterminate\"\n [(indeterminateChecked)]=\"indeterminateChecked\"\n (indeterminateCheckedChange)=\"handleIndeterminateCheckedChange($event)\"\n\n [labelComponent]=\"label\"\n [hintComponent]=\"hint\"\n\n [role]=\"role\"\n [ariaLabel]=\"ariaLabel\"\n [ariaDescribedBy]=\"ariaDescribedBy\"\n [ariaLabelledBy]=\"ariaLabelledBy\"\n [ariaHidden]=\"ariaHidden\"\n [ariaDisabled]=\"ariaDisabled\"\n [ariaControls]=\"ariaControls\"\n [ariaCurrent]=\"ariaCurrent\"\n [ariaLive]=\"ariaLive\"\n [ariaExpanded]=\"ariaExpanded\"\n [ariaErrorMessage]=\"ariaErrorMessage\"\n [ariaHasPopup]=\"ariaHasPopup\"\n [ariaModal]=\"ariaModal\"\n [tabindex]=\"tabindex\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </desy-tree-checkbox>\n</ng-template>\n\n<ng-template #content>\n <div class=\"font-bold\" *ngIf=\"isActive(); else contentLabel\">\n <ng-container *ngTemplateOutlet=\"contentLabel\"></ng-container>\n </div>\n <ng-content select=\"desy-hint\"></ng-content>\n</ng-template>\n\n<ng-template #contentLabel>\n <ng-content select=\"desy-label\"></ng-content>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.CustomInnerContentDirective, selector: "[desyCustomInnerContent]", inputs: ["desyCustomInnerContent"] }, { kind: "component", type: i3.TreeCheckboxComponent, selector: "desy-tree-checkbox", inputs: ["id", "name", "type", "classes", "value", "checked", "isIndeterminate", "indeterminateChecked", "disabled", "hasDividers", "describedBy", "hasError", "labelComponent", "hintComponent"], outputs: ["checkedChange", "indeterminateCheckedChange"] }, { kind: "pipe", type: i4.MakeHtmlListPipe, name: "makeHtmlList" }] }); }
|
|
303
|
+
}
|
|
304
|
+
__decorate([
|
|
305
|
+
DesyOnInputChange('setDefaultIdRecursive'),
|
|
306
|
+
__metadata("design:type", String)
|
|
307
|
+
], TreeItemComponent.prototype, "id", void 0);
|
|
308
|
+
__decorate([
|
|
309
|
+
DesyContentChild({ onSetCallbackName: 'overrideSubValues' }),
|
|
310
|
+
__metadata("design:type", TreeSubComponent)
|
|
311
|
+
], TreeItemComponent.prototype, "sub", void 0);
|
|
312
|
+
__decorate([
|
|
313
|
+
DesyContentChild(),
|
|
314
|
+
__metadata("design:type", HintComponent)
|
|
315
|
+
], TreeItemComponent.prototype, "hint", void 0);
|
|
316
|
+
__decorate([
|
|
317
|
+
DesyContentChild(),
|
|
318
|
+
__metadata("design:type", LabelComponent)
|
|
319
|
+
], TreeItemComponent.prototype, "label", void 0);
|
|
320
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: TreeItemComponent, decorators: [{
|
|
321
|
+
type: Component,
|
|
322
|
+
args: [{ selector: 'desy-tree-item', providers: [
|
|
323
|
+
{
|
|
324
|
+
provide: ITreeItem,
|
|
325
|
+
useExisting: forwardRef(() => TreeItemComponent)
|
|
326
|
+
}
|
|
327
|
+
], template: "<li *ngIf=\"allParentsExpanded && !isHidden(); else hidden\"\n [id]=\"id\"\n [class]=\"'c-tree__item focus:outline-none'\"\n [ngClass]=\"{\n 'ml-4': subLevel === 0,\n 'ml-8': subLevel !== 0,\n 'c-tree__item--focus': isFocus && !sub,\n 'c-tree__item--hover': isHover && !sub\n }\"\n (focusin)=\"handleItemFocus(true, !sub)\"\n (focusout)=\"handleItemFocus(false, !sub)\"\n (mouseover)=\"handleItemHover(true, !sub)\"\n (mouseout)=\"handleItemHover(false, !sub)\"\n (keydown.home)=\"handleHome($event, !sub)\"\n (keydown.end)=\"handleEnd($event, !sub)\"\n (keydown.arrowup)=\"handleArrowUp($event, !sub)\"\n (keydown.arrowdown)=\"handleArrowDown($event, !sub)\"\n (keydown.arrowright)=\"handleArrowRight($event, !sub)\"\n (keydown.arrowleft)=\"handleArrowLeft($event, !sub)\"\n role=\"treeitem\"\n [attr.aria-expanded]=\"sub ? (expanded ? 'true' : 'false') : null\"\n [attr.aria-current]=\"isActive() && subLevel === 0 ? 'page' : null\">\n <div *ngIf=\"!sub && subLevel !== 0; else childrenTree\"\n [id]=\"id\"\n [class]=\"['block', classes] | makeHtmlList\"\n [attr.title]=\"title ? title : null\"\n [attr.disabled]=\"disabled || treeDisabled ? 'disabled' : null\"\n\n [attr.role]=\"role ? role : 'tree'\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : (disabled || treeDisabled ? 'true' : null)\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : (isActive() ? 'page' : null)\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.aria-modal]=\"ariaModal ? ariaModal : null\"\n [attr.tabindex]=\"tabindex ? tabindex : (disabled || treeDisabled ? '-1' : null)\">\n <ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n </div>\n</li>\n\n<ng-template #childrenTree>\n <div *ngIf=\"sub; else checkbox\" class=\"w-full h-full\"\n [ngClass]=\"{'c-tree__item--focus': isFocus && sub, 'c-tree__item--hover': isHover && sub}\"\n (focusin)=\"handleItemFocus(true)\"\n (focusout)=\"handleItemFocus(false)\"\n (mouseover)=\"handleItemHover(true)\"\n (mouseout)=\"handleItemHover(false)\"\n (keydown.home)=\"handleHome($event)\"\n (keydown.end)=\"handleEnd($event)\"\n (keydown.arrowup)=\"handleArrowUp($event)\"\n (keydown.arrowdown)=\"handleArrowDown($event)\"\n (keydown.arrowright)=\"handleArrowRight($event)\"\n (keydown.arrowLeft)=\"handleArrowLeft($event)\">\n <div [class]=\"['w-full flex items-center relative focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black text-left', classes] | makeHtmlList\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.aria-modal]=\"ariaModal ? ariaModal : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n <span class=\"absolute top-3 -left-4 flex items-center w-4 h-2.5 text-primary-base font-bold\">\n <svg (click)=\"expandSub(false)\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 10 10\" width=\"10\" height=\"10\" aria-hidden=\"true\" class=\"c-tree__minus\"><path fill=\"currentColor\" d=\"M9.286 5.714H.714a.714.714 0 010-1.428h8.572a.714.714 0 010 1.428z\"/></svg>\n <svg (click)=\"expandSub(true)\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 10 10\" width=\"10\" height=\"10\" aria-hidden=\"true\" class=\"c-tree__plus\"><path fill=\"currentColor\" d=\"M9.286 4.286H5.893a.179.179 0 01-.179-.179V.714a.714.714 0 00-1.428 0v3.393a.179.179 0 01-.179.179H.714a.714.714 0 000 1.428h3.393a.179.179 0 01.179.179v3.393a.714.714 0 001.428 0V5.893a.179.179 0 01.179-.179h3.393a.714.714 0 000-1.428z\"/></svg>\n </span>\n <ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n </div>\n </div>\n\n <ng-container *desyCustomInnerContent=\"{ component: sub }\"></ng-container>\n</ng-template>\n\n<!-- Se incorpora el contenido m\u00EDnimo para funcionar con el objetivo de mejorar el rendimiento -->\n<ng-template #hidden>\n <li class=\"hidden\">\n <div #hiddenWrapper>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <ng-container *desyCustomInnerContent=\"{ component: sub }\"></ng-container>\n </li>\n</ng-template>\n\n<ng-template #checkbox>\n <!--\n El *ngIf=\"name || parentName\" se realiza para no crear el checkbox hasta que se ha ejecutado el configureAllItems.\n Esto puede dar problemas porque, hasta que no se ejecuta esto, el desy-tree-checkbox no cuenta con el type actualizado (por defecto radio).\n Un ejemplo en el que esto puede ser problem\u00E1tico es al ser typo checkbox y darle un valor checked=true a varios los items, ya\n que el type todav\u00EDa no se ha transmitido aqu\u00ED. Como por defecto el type es radio, s\u00F3lo marcar\u00E1 el \u00FAltimo. Posteriormente,\n ya detectar\u00E1 el tipo y permitir\u00E1 seleccionar varios items, pero hasta entonces existe este problema.\n -->\n <desy-tree-checkbox *ngIf=\"name || parentName\"\n [name]=\"name ? name : parentName\"\n [id]=\"getId()\"\n [value]=\"value\"\n [classes]=\"classes\"\n [type]=\"type\"\n [(checked)]=\"checked\" (checkedChange)=\"handleCheckboxChange($event)\"\n [hasError]=\"inheritedHasError\"\n [disabled]=\"disabled || treeDisabled\"\n [hasDividers]=\"hasDividers\"\n [describedBy]=\"[inheritedDescribedBy, hint?.id] | makeHtmlList\"\n [isIndeterminate]=\"isIndeterminate\"\n [(indeterminateChecked)]=\"indeterminateChecked\"\n (indeterminateCheckedChange)=\"handleIndeterminateCheckedChange($event)\"\n\n [labelComponent]=\"label\"\n [hintComponent]=\"hint\"\n\n [role]=\"role\"\n [ariaLabel]=\"ariaLabel\"\n [ariaDescribedBy]=\"ariaDescribedBy\"\n [ariaLabelledBy]=\"ariaLabelledBy\"\n [ariaHidden]=\"ariaHidden\"\n [ariaDisabled]=\"ariaDisabled\"\n [ariaControls]=\"ariaControls\"\n [ariaCurrent]=\"ariaCurrent\"\n [ariaLive]=\"ariaLive\"\n [ariaExpanded]=\"ariaExpanded\"\n [ariaErrorMessage]=\"ariaErrorMessage\"\n [ariaHasPopup]=\"ariaHasPopup\"\n [ariaModal]=\"ariaModal\"\n [tabindex]=\"tabindex\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </desy-tree-checkbox>\n</ng-template>\n\n<ng-template #content>\n <div class=\"font-bold\" *ngIf=\"isActive(); else contentLabel\">\n <ng-container *ngTemplateOutlet=\"contentLabel\"></ng-container>\n </div>\n <ng-content select=\"desy-hint\"></ng-content>\n</ng-template>\n\n<ng-template #contentLabel>\n <ng-content select=\"desy-label\"></ng-content>\n</ng-template>\n" }]
|
|
328
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { hiddenWrapper: [{
|
|
329
|
+
type: ViewChild,
|
|
330
|
+
args: ['hiddenWrapper']
|
|
331
|
+
}], id: [{
|
|
332
|
+
type: Input
|
|
333
|
+
}], name: [{
|
|
334
|
+
type: Input
|
|
335
|
+
}], value: [{
|
|
336
|
+
type: Input
|
|
337
|
+
}], classes: [{
|
|
338
|
+
type: Input
|
|
339
|
+
}], active: [{
|
|
340
|
+
type: Input
|
|
341
|
+
}], disabled: [{
|
|
342
|
+
type: Input
|
|
343
|
+
}], title: [{
|
|
344
|
+
type: Input
|
|
345
|
+
}], hasDividers: [{
|
|
346
|
+
type: Input
|
|
347
|
+
}], isIndeterminate: [{
|
|
348
|
+
type: Input
|
|
349
|
+
}], checked: [{
|
|
350
|
+
type: Input
|
|
351
|
+
}], checkedChange: [{
|
|
352
|
+
type: Output
|
|
353
|
+
}], expanded: [{
|
|
354
|
+
type: Input
|
|
355
|
+
}], expandedChange: [{
|
|
356
|
+
type: Output
|
|
357
|
+
}], indeterminateChecked: [{
|
|
358
|
+
type: Input
|
|
359
|
+
}], indeterminateCheckedChange: [{
|
|
360
|
+
type: Output
|
|
361
|
+
}], sub: [{
|
|
362
|
+
type: ContentChildren,
|
|
363
|
+
args: [TreeSubComponent]
|
|
364
|
+
}], hint: [{
|
|
365
|
+
type: ContentChildren,
|
|
366
|
+
args: [HintComponent]
|
|
367
|
+
}], label: [{
|
|
368
|
+
type: ContentChildren,
|
|
369
|
+
args: [LabelComponent]
|
|
370
|
+
}], checkbox: [{
|
|
371
|
+
type: ViewChild,
|
|
372
|
+
args: [TreeCheckboxComponent]
|
|
373
|
+
}], treeItemKey: [{
|
|
374
|
+
type: HostBinding,
|
|
375
|
+
args: ['attr.desy-tree-item-key']
|
|
376
|
+
}] } });
|
|
377
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy90cmVlL3RyZWUtaXRlbS90cmVlLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL3RyZWUvdHJlZS1pdGVtL3RyZWUtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxFQUFFLFVBQVUsRUFDM0IsWUFBWSxFQUNaLFVBQVUsRUFBRSxXQUFXLEVBQ3ZCLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQzVGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ2hFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDeEQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBRTNELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQy9FLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ3JFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQzs7Ozs7O0FBWWxFLE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxzQkFBc0I7YUFFNUMsdUJBQWtCLEdBQUcsQ0FBQyxDQUFDO0lBb0V0QyxZQUFvQixjQUFpQyxFQUFVLE9BQW1CO1FBQ2hGLEtBQUssRUFBRSxDQUFDO1FBRFUsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBQVUsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQXJEeEUsa0JBQWEsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNyRSx5QkFBb0IsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUd4RCxtQkFBYyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBRzVELCtCQUEwQixHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBcUJ6RSxnQkFBVyxHQUFXLGlCQUFpQixDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFZekUsdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBQzFCLDJCQUFzQixHQUFHLElBQUksQ0FBQztRQUU5QixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUdyQixjQUFTLEdBQTJDLElBQUksWUFBWSxFQUE0QixDQUFDO1FBRWpHLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNSLHNCQUFpQixHQUFHLEtBQUssQ0FBQztJQUtsQyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRTtZQUNqQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBRSxJQUEwQixDQUFDLGtDQUFrQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztTQUM3STtRQUVELEtBQUssTUFBTSxRQUFRLElBQUksT0FBTyxFQUFFO1lBQzlCLElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDcEMsUUFBUSxRQUFRLEVBQUU7b0JBQ2hCLEtBQUssU0FBUyxDQUFDLENBQUM7d0JBRWQsVUFBVSxDQUFDLEdBQUcsRUFBRTs0QkFDZCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDOzRCQUM1QyxJQUFJLElBQUksQ0FBQywyQkFBMkIsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtnQ0FDdEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQzs2QkFDdEI7d0JBQ0gsQ0FBQyxDQUFDLENBQUM7d0JBQ0gsTUFBTTtxQkFDUDtpQkFDRjthQUNGO1NBQ0Y7SUFDSCxDQUFDO0lBTUQsS0FBSztRQUNILElBQUksQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsMENBQTBDO1FBQ3hDLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNaLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFFLElBQTBCLENBQUMsMENBQTBDLEVBQUUsQ0FBQyxDQUFDO1lBQzVHLElBQUksSUFBSSxDQUFDLHFCQUFxQixFQUFFLEVBQUU7Z0JBQ2hDLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFO29CQUM3QixJQUFJLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7aUJBQ3JDO2dCQUVELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO29CQUNqQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztpQkFDN0I7YUFDRjtpQkFBTSxJQUFJLElBQUksQ0FBQyxpQ0FBaUMsRUFBRSxFQUFFO2dCQUNuRCxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFO29CQUM5QixJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQ3BDO2dCQUVELElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtvQkFDaEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7aUJBQzlCO2FBQ0Y7aUJBQU07Z0JBQ0wsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUU7b0JBQzdCLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDckM7Z0JBRUQsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO29CQUNoQixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztpQkFDOUI7YUFDRjtTQUNGO0lBQ0gsQ0FBQztJQUVELGtDQUFrQyxDQUFDLEtBQUs7UUFDdEMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztRQUNoQyxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDWixJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBRSxJQUEwQixDQUFDLGtDQUFrQyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztTQUMzSDtJQUNILENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWM7UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUUsSUFBMEIsQ0FBQyxrQ0FBa0MsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQztTQUNySTtRQUNELElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFNRCxvQkFBb0IsQ0FBQyxPQUFnQjtRQUNuQyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNoQyxJQUFJLElBQUksQ0FBQywyQkFBMkIsSUFBSSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEI7SUFDSCxDQUFDO0lBRUQsZ0NBQWdDLENBQUMsYUFBc0I7UUFDckQsSUFBSSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsZUFBZSxDQUFDLEtBQUssRUFBRSxTQUFTLEdBQUMsSUFBSTtRQUNuQyxJQUFJLFNBQVMsRUFBRTtZQUNiLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1NBQ3RCO0lBQ0gsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFLLEVBQUUsU0FBUyxHQUFDLElBQUk7UUFDbkMsSUFBSSxTQUFTLEVBQUU7WUFDYixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztTQUN0QjtJQUNILENBQUM7SUFFRCxhQUFhLENBQUMsS0FBWSxFQUFFLFNBQVMsR0FBQyxJQUFJO1FBQ3hDLElBQUksU0FBUyxFQUFFO1lBQ2IsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO2dCQUNsQixXQUFXLEVBQUUsVUFBVTtnQkFDdkIsV0FBVyxFQUFFLElBQUk7YUFDbEIsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVksRUFBRSxTQUFTLEdBQUMsSUFBSTtRQUNyQyxJQUFJLFNBQVMsRUFBRTtZQUNiLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztnQkFDbEIsV0FBVyxFQUFFLE9BQU87Z0JBQ3BCLFdBQVcsRUFBRSxJQUFJO2FBQ2xCLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFZLEVBQUUsU0FBUyxHQUFDLElBQUk7UUFDcEMsSUFBSSxTQUFTLEVBQUU7WUFDYixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7Z0JBQ2xCLFdBQVcsRUFBRSxNQUFNO2dCQUNuQixXQUFXLEVBQUUsSUFBSTthQUNsQixDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxlQUFlLENBQUMsS0FBWSxFQUFFLFNBQVMsR0FBQyxJQUFJO1FBQzFDLElBQUksU0FBUyxFQUFFO1lBQ2IsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO2dCQUNsQixXQUFXLEVBQUUsTUFBTTtnQkFDbkIsV0FBVyxFQUFFLElBQUk7YUFDbEIsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBWSxFQUFFLFNBQVMsR0FBQyxJQUFJO1FBQzNDLElBQUksU0FBUyxJQUFJLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUMxRCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNqQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztvQkFDbEIsV0FBVyxFQUFFLFlBQVk7b0JBQ3pCLFdBQVcsRUFBRSxJQUFJO2lCQUNsQixDQUFDLENBQUM7YUFDSjtpQkFBTTtnQkFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3RCO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsZUFBZSxDQUFDLEtBQVksRUFBRSxTQUFTLEdBQUMsSUFBSTtRQUMxQyxJQUFJLFNBQVMsRUFBRTtZQUNiLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDdkI7aUJBQU0sSUFBSSxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsRUFBRTtnQkFDNUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7b0JBQ2xCLFdBQVcsRUFBRSxRQUFRO29CQUNyQixXQUFXLEVBQUUsSUFBSTtpQkFDbEIsQ0FBQyxDQUFDO2FBQ0o7U0FDRjtJQUNILENBQUM7SUFPRCxVQUFVLENBQUMsT0FBZ0IsRUFBRSxZQUFxQixFQUFFLFNBQVMsR0FBRyxJQUFJO1FBQ2xFLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1NBQ3hCO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxnQ0FBZ0MsSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQ3pHLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDOUIsSUFBMEIsQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDMUQsSUFBMEIsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFBO1lBQ3ZELENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFFRCxJQUFJLFNBQVMsRUFBRTtZQUNiLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ2xDO1FBRUQsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNqQixJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3pDO0lBQ0gsQ0FBQztJQUVELHVCQUF1QixDQUFDLGFBQXNCO1FBQzVDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxhQUFhLENBQUM7WUFDMUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUNyRDtJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsUUFBZ0I7UUFDMUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDekIsSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFO1lBQ2pDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFFLElBQTBCLENBQUMsV0FBVyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzFGO0lBQ0gsQ0FBQztJQUVELG1CQUFtQixDQUFDLEtBQWE7UUFDL0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDekIsSUFBSSxRQUFRLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUN6QixJQUFJLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUU7WUFDakMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUMvQixRQUFRLEdBQUksSUFBMEIsQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN2RSxDQUFDLENBQUMsQ0FBQztTQUNKO1FBQ0QsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUVELFlBQVksQ0FBQyxTQUFpQjtRQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMzQixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRTtZQUNqQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7Z0JBQ3ZDLElBQTBCLENBQUMsWUFBWSxDQUFDLE9BQU8sSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDM0UsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxLQUFLO1FBQ0gsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzVDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7UUFDbkMsT0FBTyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBRSxLQUEyQixDQUFDLFFBQVEsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7UUFDbkMsT0FBTyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBRSxLQUEyQixDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQsaUNBQWlDO1FBQy9CLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQ25DLE9BQU8sUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFFLEtBQTJCLENBQUMsT0FBTyxJQUFLLEtBQTJCLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckksQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFhO1FBQ3ZCLElBQUksT0FBZ0IsQ0FBQztRQUNyQixJQUFJLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUMvQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDN0M7YUFBTTtZQUNMLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQztZQUM5RCxPQUFPLEdBQUcsV0FBVyxDQUFDLG1CQUFtQixDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztTQUM1RDtRQUNELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ2pELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxTQUFpQixDQUFDO1FBQ3RCLElBQUksYUFBYSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQztRQUM3RCxPQUFPLGFBQWEsSUFBSSxhQUFhLENBQUMsT0FBTyxLQUFLLE1BQU0sSUFBSSxhQUFhLENBQUMsT0FBTyxLQUFLLGdCQUFnQixJQUFJLGFBQWEsQ0FBQyxPQUFPLEtBQUssV0FBVyxFQUFFO1lBQy9JLGFBQWEsR0FBRyxhQUFhLENBQUMsYUFBYSxDQUFDO1NBQzdDO1FBRUQsSUFBSSxhQUFhLENBQUMsT0FBTyxLQUFLLE1BQU0sRUFBRTtZQUNwQyxNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7U0FDbkQ7UUFFRCxJQUFJLGFBQWEsQ0FBQyxPQUFPLEtBQUssV0FBVyxFQUFFO1lBQ3pDLFNBQVMsR0FBRyxNQUFNLENBQUM7U0FDcEI7UUFFRCxJQUFJLGFBQWEsQ0FBQyxPQUFPLEtBQUssZ0JBQWdCLEVBQUU7WUFDOUMsU0FBUyxHQUFHLGFBQWEsQ0FBQyxZQUFZLENBQUMsb0JBQW9CLENBQUMsQ0FBQztTQUM5RDtRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUMvQyxDQUFDO0lBVU8sTUFBTSxDQUFDLHFCQUFxQjtRQUNsQyxNQUFNLEdBQUcsR0FBRyxnQkFBZ0IsR0FBRyxpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FBQztRQUNwRSxpQkFBaUIsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQ3ZDLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQzs4R0F4WVUsaUJBQWlCO2tHQUFqQixpQkFBaUIsbWhCQVBqQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxTQUFTO2dCQUNsQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDO2FBQ2pEO1NBQ0YsOENBNkJnQixnQkFBZ0IsdUNBR2hCLGFBQWEsd0NBR2IsY0FBYyx3S0FFcEIscUJBQXFCLDRGQ25FbEMsMm1RQW1KQTs7QUQ5R0U7SUFBQyxpQkFBaUIsQ0FBQyx1QkFBdUIsQ0FBQzs7NkNBQ3ZCO0FBb0JwQjtJQUFDLGdCQUFnQixDQUFDLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUMsQ0FBQzs4QkFDcEIsZ0JBQWdCOzhDQUFDO0FBRXpEO0lBQUMsZ0JBQWdCLEVBQUU7OEJBQ21CLGFBQWE7K0NBQUM7QUFFcEQ7SUFBQyxnQkFBZ0IsRUFBRTs4QkFDcUIsY0FBYztnREFBQzsyRkFqQzVDLGlCQUFpQjtrQkFWN0IsU0FBUzsrQkFDRSxnQkFBZ0IsYUFFZjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsU0FBUzs0QkFDbEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsa0JBQWtCLENBQUM7eUJBQ2pEO3FCQUNGO2lJQUsyQixhQUFhO3NCQUF4QyxTQUFTO3VCQUFDLGVBQWU7Z0JBR2pCLEVBQUU7c0JBQVYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVHLE9BQU87c0JBQWYsS0FBSztnQkFDSSxhQUFhO3NCQUF0QixNQUFNO2dCQUdFLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksY0FBYztzQkFBdkIsTUFBTTtnQkFFRSxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0ksMEJBQTBCO3NCQUFuQyxNQUFNO2dCQUc0QixHQUFHO3NCQUFyQyxlQUFlO3VCQUFDLGdCQUFnQjtnQkFHRCxJQUFJO3NCQUFuQyxlQUFlO3VCQUFDLGFBQWE7Z0JBR0csS0FBSztzQkFBckMsZUFBZTt1QkFBQyxjQUFjO2dCQUVHLFFBQVE7c0JBQXpDLFNBQVM7dUJBQUMscUJBQXFCO2dCQVV2QixXQUFXO3NCQURuQixXQUFXO3VCQUFDLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLCBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Rlc3lDb250ZW50Q2hpbGR9IGZyb20gXCIuLi8uLi8uLi8uLi9zaGFyZWQvZGVjb3JhdG9ycy9kZXN5LWNvbnRlbnQtY2hpbGQuZGVjb3JhdG9yXCI7XG5pbXBvcnQge1RyZWVTdWJDb21wb25lbnR9IGZyb20gXCIuLi90cmVlLXN1Yi90cmVlLXN1Yi5jb21wb25lbnRcIjtcbmltcG9ydCB7SVRyZWVJdGVtfSBmcm9tIFwiLi4vaW50ZXJmYWNlcy9pdHJlZS1pdGVtXCI7XG5pbXBvcnQge0hpbnRDb21wb25lbnR9IGZyb20gXCIuLi8uLi9oaW50L2hpbnQuY29tcG9uZW50XCI7XG5pbXBvcnQge0xhYmVsQ29tcG9uZW50fSBmcm9tIFwiLi4vLi4vbGFiZWwvbGFiZWwuY29tcG9uZW50XCI7XG5pbXBvcnQge1F1aXRUcmVlSXRlbUZvY3VzT3B0aW9uc30gZnJvbSBcIi4uL2ludGVyZmFjZXMvcXVpdC10cmVlLWl0ZW0tZm9jdXMtb3B0aW9uc1wiO1xuaW1wb3J0IHtUcmVlQ2hlY2tib3hDb21wb25lbnR9IGZyb20gXCIuLi90cmVlLWNoZWNrYm94L3RyZWUtY2hlY2tib3guY29tcG9uZW50XCI7XG5pbXBvcnQge0FjY2Vzc2liaWxpdHlDb21wb25lbnR9IGZyb20gXCIuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50c1wiO1xuaW1wb3J0IHtEZXN5T25JbnB1dENoYW5nZX0gZnJvbSBcIi4uLy4uLy4uLy4uL3NoYXJlZC9kZWNvcmF0b3JzL2Rlc3ktb24taW5wdXQtY2hhbmdlLmRlY29yYXRvclwiO1xuaW1wb3J0IHtTZWFyY2hVdGlsc30gZnJvbSBcIi4uLy4uLy4uLy4uL3NoYXJlZC91dGlscy9zZWFyY2gtdXRpbHNcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGVzeS10cmVlLWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vdHJlZS1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogSVRyZWVJdGVtLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHJlZUl0ZW1Db21wb25lbnQpXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFRyZWVJdGVtQ29tcG9uZW50IGV4dGVuZHMgQWNjZXNzaWJpbGl0eUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgSVRyZWVJdGVtIHtcblxuICBwcml2YXRlIHN0YXRpYyBfdHJlZUl0ZW1LZXlTdWZmaXggPSAwOyAvLyBTdWZpam8gZXN0w6F0aWNvIHBhcmEgZ2VuZXJhciBzaWVtcHJlIGNsYXZlcyBkaXN0aW50YXNcbiAgQFZpZXdDaGlsZCgnaGlkZGVuV3JhcHBlcicpIGhpZGRlbldyYXBwZXI6IEVsZW1lbnRSZWY7XG5cbiAgQERlc3lPbklucHV0Q2hhbmdlKCdzZXREZWZhdWx0SWRSZWN1cnNpdmUnKVxuICBASW5wdXQoKSBpZDogc3RyaW5nO1xuICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcbiAgQElucHV0KCkgYWN0aXZlOiBib29sZWFuO1xuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcbiAgQElucHV0KCkgaGFzRGl2aWRlcnM6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlzSW5kZXRlcm1pbmF0ZTogYm9vbGVhbjtcblxuICBASW5wdXQoKSBjaGVja2VkOiBib29sZWFuO1xuICBAT3V0cHV0KCkgY2hlY2tlZENoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgY2hlY2tlZENoYW5nZUZvclRyZWU6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgQElucHV0KCkgZXhwYW5kZWQ6IGJvb2xlYW47XG4gIEBPdXRwdXQoKSBleHBhbmRlZENoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBASW5wdXQoKSBpbmRldGVybWluYXRlQ2hlY2tlZDogYm9vbGVhbjtcbiAgQE91dHB1dCgpIGluZGV0ZXJtaW5hdGVDaGVja2VkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIEBEZXN5Q29udGVudENoaWxkKHsgb25TZXRDYWxsYmFja05hbWU6ICdvdmVycmlkZVN1YlZhbHVlcyd9KVxuICBAQ29udGVudENoaWxkcmVuKFRyZWVTdWJDb21wb25lbnQpIHN1YjogVHJlZVN1YkNvbXBvbmVudDtcblxuICBARGVzeUNvbnRlbnRDaGlsZCgpXG4gIEBDb250ZW50Q2hpbGRyZW4oSGludENvbXBvbmVudCkgaGludDogSGludENvbXBvbmVudDtcblxuICBARGVzeUNvbnRlbnRDaGlsZCgpXG4gIEBDb250ZW50Q2hpbGRyZW4oTGFiZWxDb21wb25lbnQpIGxhYmVsOiBMYWJlbENvbXBvbmVudDtcblxuICBAVmlld0NoaWxkKFRyZWVDaGVja2JveENvbXBvbmVudCkgY2hlY2tib3g6IFRyZWVDaGVja2JveENvbXBvbmVudDtcblxuICAvKlxuICAgKiBJZGVudGlmaWNhZG9yIGRlbCB3cmFwcGVyIGRlbCBjb21wb25lbnRlLiBTZSB1dGlsaXphIHBhcmEgcmVjb3JyZXIgZWwgw6FyYm9sIGVuIHNlbnRpZG8gaW52ZXJzbyB5IHF1ZSBjYWRhIGl0ZW1cbiAgICogc2VwYSBjdcOhbCBlcyBzdSBpdGVtL8OhcmJvbCBwYWRyZS5cbiAgICogRXN0byBlcyBuZWNlc2FyaW8geWEgcXVlLCBhIGxhIGhvcmEgZGUgY29uc3RydWlyIHVuIMOhcmJvbCBkaW7DoW1pY28gY29uIHRlbXBsYXRlcyxcbiAgICogZWwgZGVjb3JhZG9yIEBDb250ZW50Q2hpbGRyZW4gbm8gZnVuY2lvbmEgY29ycmVjdGFtZW50ZSB5IG5vIGxvcyBkZXRlY3RhLlxuICAgKiBEZWpvIGVsIGVubGFjZSBkZSB1biBwcm9ibGVtYSBzaW1pbGFyOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8yMTc1MVxuICAgKi9cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRlc3ktdHJlZS1pdGVtLWtleScpXG4gIHJlYWRvbmx5IHRyZWVJdGVtS2V5OiBzdHJpbmcgPSBUcmVlSXRlbUNvbXBvbmVudC5nZW5lcmF0ZVN0YXRpY0l0ZW1LZXkoKTtcblxuICB0eXBlOiAncmFkaW8nfCdjaGVja2JveCd8bnVsbHx1bmRlZmluZWQ7XG4gIHN1YkxldmVsOiBudW1iZXI7IC8vIE5pdmVsIGRlbnRybyBkZWwgYXJib2wuIDAgc29uIGxvcyBpdGVtcyBhIG5pdmVsIGRlIHJhaXouXG5cbiAgLy8gUHJvcGllZGFkZXMgZGVmaW5pZGFzIHBvciBlbCBjb21wb25lbnRlIMOhcmJvbCBxdWUgZWwgaXRlbSBwdWVkZSB1dGlsaXphciwgc29icmVzY3JpYmlyIG8gYW1wbGlhclxuICBwYXJlbnROYW1lOiBzdHJpbmc7XG4gIGRlZmF1bHRJZDtcbiAgaW5oZXJpdGVkRXhwYW5kZWRGaXJzdExldmVsOiBib29sZWFuO1xuICBpbmhlcml0ZWREZWNvdXBsZUNoaWxkRnJvbVBhcmVudDogYm9vbGVhbjtcbiAgaW5oZXJpdGVkRGVzY3JpYmVkQnk6IHN0cmluZztcbiAgaW5oZXJpdGVkSGFzRXJyb3I6IGJvb2xlYW47XG4gIGFsbFBhcmVudHNFeHBhbmRlZCA9IHRydWU7IC8vIFRydWUgc2kgZWwgZWxlbWVudG8gZXMgdmlzaWJsZSBzZWfDum4gbG9zIGVsZW1lbnRvcyBleHBhbmRpZG9zXG4gIGluaGVyaXRlZE1hdGNoZXNTZWFyY2ggPSB0cnVlOyAvLyBUcnVlIHNpIGVsIGVsZW1lbnRvIGVzIHZpc2libGUgc2Vnw7puIGxvcyBjcml0ZXJpb3MgZGUgYsO6c3F1ZWRhXG4gIG9yZGVySW5UcmVlOiBudW1iZXI7XG4gIHRyZWVEaXNhYmxlZCA9IGZhbHNlO1xuXG4gIC8vIEV2ZW50byBwYXJhIGVtaXRpciBhbCBjb21wb25lbnRlIGFyYm9sIGN1YW5kbyBzZSBwcmV0ZW5kZSBhYmFuZG9uYXIgZWwgZm9jbyBkZWwgaXRlbVxuICBxdWl0Rm9jdXM6IEV2ZW50RW1pdHRlcjxRdWl0VHJlZUl0ZW1Gb2N1c09wdGlvbnM+ID0gbmV3IEV2ZW50RW1pdHRlcjxRdWl0VHJlZUl0ZW1Gb2N1c09wdGlvbnM+KCk7XG5cbiAgaXNGb2N1cyA9IGZhbHNlO1xuICBpc0hvdmVyID0gZmFsc2U7XG4gIHByaXZhdGUgX21hdGNoZXNWYWxpZFRleHQgPSBmYWxzZTsgLy8gVHJ1ZSBzaSBlbCBjb250ZW5pZG8gZGVsIGl0ZW0gZW5jYWphIGNvbiBsb3MgY3JpdGVyaW9zIGRlIGLDunNxdWVkYSB5IHNlIGVzdMOhIGZpbHRyYW5kb1xuXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3ViICYmIHRoaXMuc3ViLml0ZW1MaXN0KSB7XG4gICAgICB0aGlzLnN1Yi5pdGVtTGlzdC5mb3JFYWNoKGl0ZW0gPT4gKGl0ZW0gYXMgVHJlZUl0ZW1Db21wb25lbnQpLnJlZnJlc2hBbGxQYXJlbnRzRXhwYW5kZWRSZWN1cnNpdmUodGhpcy5hbGxQYXJlbnRzRXhwYW5kZWQgJiYgdGhpcy5leHBhbmRlZCkpO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgcHJvcE5hbWUgaW4gY2hhbmdlcykge1xuICAgICAgaWYgKGNoYW5nZXMuaGFzT3duUHJvcGVydHkocHJvcE5hbWUpKSB7XG4gICAgICAgIHN3aXRjaCAocHJvcE5hbWUpIHtcbiAgICAgICAgICBjYXNlICdjaGVja2VkJzoge1xuICAgICAgICAgICAgLy8gUmVhc2lnbmFtb3MgZWwgdmFsb3IgZGUgY2hlY2tlZCBjdWFuZG8gZGV0ZWN0YW1vcyBlbCBjYW1iaW8gZW4gbGEgZW50cmFkYVxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuc2V0Q2hlY2tlZCh0aGlzLmNoZWNrZWQsIGZhbHNlLCBmYWxzZSk7XG4gICAgICAgICAgICAgIGlmICh0aGlzLmluaGVyaXRlZEV4cGFuZGVkRmlyc3RMZXZlbCAmJiB0aGlzLmNoZWNrZWQgJiYgIXRoaXMuZXhwYW5kZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmV4cGFuZFN1Yih0cnVlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKlxuICAgKiBNw6l0b2RvcyBleHB1ZXN0b3MgcXVlIHBlcm1pdGVuIGNvbmZpZ3VyYXIgYWwgw610ZW0gZGUgZm9ybWEgZXh0ZXJuYVxuICAgKi9cblxuICBmb2N1cygpOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrYm94Py5mb2N1cygpO1xuICAgIHRoaXMuaGFuZGxlSXRlbUZvY3VzKHRydWUpO1xuICB9XG5cbiAgc2V0Q2hlY2tlZEF1dG9tYXRpY2FsbHlEZXBlbmRpbmdPbkNoaWxkcmVuKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN1Yikge1xuICAgICAgdGhpcy5zdWIuaXRlbUxpc3QuZm9yRWFjaChpdGVtID0+IChpdGVtIGFzIFRyZWVJdGVtQ29tcG9uZW50KS5zZXRDaGVja2VkQXV0b21hdGljYWxseURlcGVuZGluZ09uQ2hpbGRyZW4oKSk7XG4gICAgICBpZiAodGhpcy5hcmVBbGxDaGlsZHJlbkNoZWNrZWQoKSkge1xuICAgICAgICBpZiAodGhpcy5pbmRldGVybWluYXRlQ2hlY2tlZCkge1xuICAgICAgICAgIHRoaXMuc2V0SW5kZXRlcm1pbmF0ZUNoZWNrZWQoZmFsc2UpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF0aGlzLmNoZWNrZWQpIHtcbiAgICAgICAgICB0aGlzLnNldENoZWNrZWQodHJ1ZSwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAodGhpcy5oYXNDaGlsZHJlbkNoZWNrZWRPckluZGV0ZXJtaW5hdGUoKSkge1xuICAgICAgICBpZiAoIXRoaXMuaW5kZXRlcm1pbmF0ZUNoZWNrZWQpIHtcbiAgICAgICAgICB0aGlzLnNldEluZGV0ZXJtaW5hdGVDaGVja2VkKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuY2hlY2tlZCkge1xuICAgICAgICAgIHRoaXMuc2V0Q2hlY2tlZChmYWxzZSwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICh0aGlzLmluZGV0ZXJtaW5hdGVDaGVja2VkKSB7XG4gICAgICAgICAgdGhpcy5zZXRJbmRldGVybWluYXRlQ2hlY2tlZChmYWxzZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5jaGVja2VkKSB7XG4gICAgICAgICAgdGhpcy5zZXRDaGVja2VkKGZhbHNlLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJlZnJlc2hBbGxQYXJlbnRzRXhwYW5kZWRSZWN1cnNpdmUodmFsdWUpOiB2b2lkIHtcbiAgICB0aGlzLmFsbFBhcmVudHNFeHBhbmRlZCA9IHZhbHVlO1xuICAgIGlmICh0aGlzLnN1Yikge1xuICAgICAgdGhpcy5zdWIuaXRlbUxpc3QuZm9yRWFjaChpdGVtID0+IChpdGVtIGFzIFRyZWVJdGVtQ29tcG9uZW50KS5yZWZyZXNoQWxsUGFyZW50c0V4cGFuZGVkUmVjdXJzaXZlKHZhbHVlICYmIHRoaXMuZXhwYW5kZWQpKTtcbiAgICB9XG4gIH1cblxuICBkZXRlY3RDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgZXhwYW5kU3ViKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5leHBhbmRlZCA9IHZhbHVlO1xuICAgIGlmICh0aGlzLnN1Yikge1xuICAgICAgdGhpcy5zdWIuaXRlbUxpc3QuZm9yRWFjaChpdGVtID0+IChpdGVtIGFzIFRyZWVJdGVtQ29tcG9uZW50KS5yZWZyZXNoQWxsUGFyZW50c0V4cGFuZGVkUmVjdXJzaXZlKHRoaXMuYWxsUGFyZW50c0V4cGFuZGVkICYmIHZhbHVlKSk7XG4gICAgfVxuICAgIHRoaXMuZXhwYW5kZWRDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICAvKlxuICAgKiBHZXN0aW9uIGRlIGV2ZW50b3NcbiAgICovXG5cbiAgaGFuZGxlQ2hlY2tib3hDaGFuZ2UoY2hlY2tlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuc2V0Q2hlY2tlZChjaGVja2VkLCBmYWxzZSk7XG4gICAgaWYgKHRoaXMuaW5oZXJpdGVkRXhwYW5kZWRGaXJzdExldmVsICYmIGNoZWNrZWQgJiYgIXRoaXMuZXhwYW5kZWQpIHtcbiAgICAgIHRoaXMuZXhwYW5kU3ViKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUluZGV0ZXJtaW5hdGVDaGVja2VkQ2hhbmdlKGluZGV0ZXJtaW5hdGU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmluZGV0ZXJtaW5hdGVDaGVja2VkQ2hhbmdlLmVtaXQoaW5kZXRlcm1pbmF0ZSk7XG4gIH1cblxuICBoYW5kbGVJdGVtRm9jdXModmFsdWUsIGNvbmRpdGlvbj10cnVlKTogdm9pZCB7XG4gICAgaWYgKGNvbmRpdGlvbikge1xuICAgICAgdGhpcy5pc0ZvY3VzID0gdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlSXRlbUhvdmVyKHZhbHVlLCBjb25kaXRpb249dHJ1ZSk6IHZvaWQge1xuICAgIGlmIChjb25kaXRpb24pIHtcbiAgICAgIHRoaXMuaXNIb3ZlciA9IHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUFycm93VXAoZXZlbnQ6IEV2ZW50LCBjb25kaXRpb249dHJ1ZSk6IHZvaWQge1xuICAgIGlmIChjb25kaXRpb24pIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnF1aXRGb2N1cy5lbWl0KHtcbiAgICAgICAgbmV4dEVsZW1lbnQ6ICdwcmV2aW91cycsXG4gICAgICAgIGN1cnJlbnRJdGVtOiB0aGlzXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBoYW5kbGVIb21lKGV2ZW50OiBFdmVudCwgY29uZGl0aW9uPXRydWUpOiB2b2lkIHtcbiAgICBpZiAoY29uZGl0aW9uKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5xdWl0Rm9jdXMuZW1pdCh7XG4gICAgICAgIG5leHRFbGVtZW50OiAnZmlyc3QnLFxuICAgICAgICBjdXJyZW50SXRlbTogdGhpc1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlRW5kKGV2ZW50OiBFdmVudCwgY29uZGl0aW9uPXRydWUpOiB2b2lkIHtcbiAgICBpZiAoY29uZGl0aW9uKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5xdWl0Rm9jdXMuZW1pdCh7XG4gICAgICAgIG5leHRFbGVtZW50OiAnbGFzdCcsXG4gICAgICAgIGN1cnJlbnRJdGVtOiB0aGlzXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBoYW5kbGVBcnJvd0Rvd24oZXZlbnQ6IEV2ZW50LCBjb25kaXRpb249dHJ1ZSk6IHZvaWQge1xuICAgIGlmIChjb25kaXRpb24pIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnF1aXRGb2N1cy5lbWl0KHtcbiAgICAgICAgbmV4dEVsZW1lbnQ6ICduZXh0JyxcbiAgICAgICAgY3VycmVudEl0ZW06IHRoaXNcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUFycm93UmlnaHQoZXZlbnQ6IEV2ZW50LCBjb25kaXRpb249dHJ1ZSk6IHZvaWQge1xuICAgIGlmIChjb25kaXRpb24gJiYgdGhpcy5zdWIgJiYgdGhpcy5zdWIuaXRlbUxpc3Q/Lmxlbmd0aCA+IDApIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBpZiAodGhpcy5leHBhbmRlZCkge1xuICAgICAgICB0aGlzLnF1aXRGb2N1cy5lbWl0KHtcbiAgICAgICAgICBuZXh0RWxlbWVudDogJ2ZpcnN0Q2hpbGQnLFxuICAgICAgICAgIGN1cnJlbnRJdGVtOiB0aGlzXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5leHBhbmRTdWIodHJ1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlQXJyb3dMZWZ0KGV2ZW50OiBFdmVudCwgY29uZGl0aW9uPXRydWUpOiB2b2lkIHtcbiAgICBpZiAoY29uZGl0aW9uKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgaWYgKHRoaXMuZXhwYW5kZWQpIHtcbiAgICAgICAgdGhpcy5leHBhbmRTdWIoZmFsc2UpO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLnN1YkxldmVsID4gMCkge1xuICAgICAgICB0aGlzLnF1aXRGb2N1cy5lbWl0KHtcbiAgICAgICAgICBuZXh0RWxlbWVudDogJ3BhcmVudCcsXG4gICAgICAgICAgY3VycmVudEl0ZW06IHRoaXNcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvKlxuICAgKiBTZXR0ZXJzIGFuZCBnZXR0ZXJzXG4gICAqL1xuXG4gIHNldENoZWNrZWQoY2hlY2tlZDogYm9vbGVhbiwgaWdub3JlSW5UcmVlOiBib29sZWFuLCBlbWl0RXZlbnQgPSB0cnVlKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmNoZWNrZWQgPSBjaGVja2VkO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5pbmhlcml0ZWREZWNvdXBsZUNoaWxkRnJvbVBhcmVudCAmJiB0aGlzLnN1YiAmJiB0aGlzLnN1Yi5pdGVtTGlzdCAmJiAhdGhpcy5pbmRldGVybWluYXRlQ2hlY2tlZCkge1xuICAgICAgdGhpcy5zdWIuaXRlbUxpc3QuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgKGl0ZW0gYXMgVHJlZUl0ZW1Db21wb25lbnQpLnNldEluZGV0ZXJtaW5hdGVDaGVja2VkKGZhbHNlKTtcbiAgICAgICAgKGl0ZW0gYXMgVHJlZUl0ZW1Db21wb25lbnQpLnNldENoZWNrZWQoY2hlY2tlZCwgdHJ1ZSlcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChlbWl0RXZlbnQpIHtcbiAgICAgIHRoaXMuY2hlY2tlZENoYW5nZS5lbWl0KGNoZWNrZWQpO1xuICAgIH1cblxuICAgIGlmICghaWdub3JlSW5UcmVlKSB7XG4gICAgICB0aGlzLmNoZWNrZWRDaGFuZ2VGb3JUcmVlLmVtaXQoY2hlY2tlZCk7XG4gICAgfVxuICB9XG5cbiAgc2V0SW5kZXRlcm1pbmF0ZUNoZWNrZWQoaW5kZXRlcm1pbmF0ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5pbmRldGVybWluYXRlQ2hlY2tlZCA9IGluZGV0ZXJtaW5hdGU7XG4gICAgICB0aGlzLmluZGV0ZXJtaW5hdGVDaGVja2VkQ2hhbmdlLmVtaXQoaW5kZXRlcm1pbmF0ZSk7XG4gICAgfVxuICB9XG5cbiAgc2V0U3ViTGV2ZWwoc3ViTGV2ZWw6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuc3ViTGV2ZWwgPSBzdWJMZXZlbDtcbiAgICBpZiAodGhpcy5zdWIgJiYgdGhpcy5zdWIuaXRlbUxpc3QpIHtcbiAgICAgIHRoaXMuc3ViLml0ZW1MaXN0LmZvckVhY2goaXRlbSA9PiAoaXRlbSBhcyBUcmVlSXRlbUNvbXBvbmVudCkuc2V0U3ViTGV2ZWwoc3ViTGV2ZWwgKyAxKSk7XG4gICAgfVxuICB9XG5cbiAgc2V0T3JkZXJSZWN1cnNpdmVseShvcmRlcjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICB0aGlzLm9yZGVySW5UcmVlID0gb3JkZXI7XG4gICAgbGV0IG5ld09yZGVyID0gb3JkZXIgKyAxO1xuICAgIGlmICh0aGlzLnN1YiAmJiB0aGlzLnN1Yi5pdGVtTGlzdCkge1xuICAgICAgdGhpcy5zdWIuaXRlbUxpc3QuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgbmV3T3JkZXIgPSAoaXRlbSBhcyBUcmVlSXRlbUNvbXBvbmVudCkuc2V0T3JkZXJSZWN1cnNpdmVseShuZXdPcmRlcik7XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIG5ld09yZGVyO1xuICB9XG5cbiAgc2V0RGVmYXVsdElkKGRlZmF1bHRJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5kZWZhdWx0SWQgPSBkZWZhdWx0SWQ7XG4gICAgdGhpcy5zZXREZWZhdWx0SWRSZWN1cnNpdmUoKTtcbiAgfVxuXG4gIHNldERlZmF1bHRJZFJlY3Vyc2l2ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdWIgJiYgdGhpcy5zdWIuaXRlbUxpc3QpIHtcbiAgICAgIHRoaXMuc3ViLml0ZW1MaXN0LmZvckVhY2goKGl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgIChpdGVtIGFzIFRyZWVJdGVtQ29tcG9uZW50KS5zZXREZWZhdWx0SWQoYHN1Yi0ke3RoaXMuZ2V0SWQoKX0tJHtpbmRleH1gKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGdldElkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWQgPyB0aGlzLmlkIDogdGhpcy5kZWZhdWx0SWQ7XG4gIH1cblxuICBpc0hpZGRlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuaW5oZXJpdGVkTWF0Y2hlc1NlYXJjaCAmJiAoIXRoaXMuc3ViIHx8IHRoaXMuYXJlQWxsQ2hpbGRyZW5IaWRkZW4oKSk7XG4gIH1cblxuICBhcmVBbGxDaGlsZHJlbkhpZGRlbigpOiBib29sZWFuIHtcbiAgICBjb25zdCBjaGlsZHJlbiA9IHRoaXMuc3ViLml0ZW1MaXN0O1xuICAgIHJldHVybiBjaGlsZHJlbi5maW5kSW5kZXgoY2hpbGQgPT4gIShjaGlsZCBhcyBUcmVlSXRlbUNvbXBvbmVudCkuaXNIaWRkZW4oKSkgPCAwO1xuICB9XG5cbiAgYXJlQWxsQ2hpbGRyZW5DaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGNoaWxkcmVuID0gdGhpcy5zdWIuaXRlbUxpc3Q7XG4gICAgcmV0dXJuIGNoaWxkcmVuLmZpbmRJbmRleChjaGlsZCA9PiAhKGNoaWxkIGFzIFRyZWVJdGVtQ29tcG9uZW50KS5jaGVja2VkKSA8IDA7XG4gIH1cblxuICBoYXNDaGlsZHJlbkNoZWNrZWRPckluZGV0ZXJtaW5hdGUoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgY2hpbGRyZW4gPSB0aGlzLnN1Yi5pdGVtTGlzdDtcbiAgICByZXR1cm4gY2hpbGRyZW4uZmluZEluZGV4KGNoaWxkID0+IChjaGlsZCBhcyBUcmVlSXRlbUNvbXBvbmVudCkuY2hlY2tlZCB8fCAoY2hpbGQgYXMgVHJlZUl0ZW1Db21wb25lbnQpLmluZGV0ZXJtaW5hdGVDaGVja2VkKSA+PSAwO1xuICB9XG5cbiAgbWF0Y2hlc1RleHQodmFsdWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGxldCBtYXRjaGVzOiBib29sZWFuO1xuICAgIGlmICh0aGlzLmFsbFBhcmVudHNFeHBhbmRlZCAmJiAhdGhpcy5pc0hpZGRlbigpKSB7XG4gICAgICBtYXRjaGVzID0gdGhpcy5jaGVja2JveD8ubWF0Y2hlc1RleHQodmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBpdGVtVGV4dCA9IHRoaXMuaGlkZGVuV3JhcHBlci5uYXRpdmVFbGVtZW50LnRleHRDb250ZW50O1xuICAgICAgbWF0Y2hlcyA9IFNlYXJjaFV0aWxzLmNvbnRhaW5zQW55V29yZEZyb20oaXRlbVRleHQsIHZhbHVlKTtcbiAgICB9XG4gICAgdGhpcy5fbWF0Y2hlc1ZhbGlkVGV4dCA9IHZhbHVlID8gbWF0Y2hlcyA6IGZhbHNlO1xuICAgIHJldHVybiBtYXRjaGVzO1xuICB9XG5cbiAgZ2V0S2V5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudHJlZUl0ZW1LZXk7XG4gIH1cblxuICBnZXRQYXJlbnRLZXkoKTogc3RyaW5nIHtcbiAgICBsZXQgcGFyZW50S2V5OiBzdHJpbmc7XG4gICAgbGV0IHBhcmVudEVsZW1lbnQgPSB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50O1xuICAgIHdoaWxlIChwYXJlbnRFbGVtZW50ICYmIHBhcmVudEVsZW1lbnQudGFnTmFtZSAhPT0gJ0JPRFknICYmIHBhcmVudEVsZW1lbnQudGFnTmFtZSAhPT0gJ0RFU1ktVFJFRS1JVEVNJyAmJiBwYXJlbnRFbGVtZW50LnRhZ05hbWUgIT09ICdERVNZLVRSRUUnKSB7XG4gICAgICBwYXJlbnRFbGVtZW50ID0gcGFyZW50RWxlbWVudC5wYXJlbnRFbGVtZW50O1xuICAgIH1cblxuICAgIGlmIChwYXJlbnRFbGVtZW50LnRhZ05hbWUgPT09ICdCT0RZJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdQYXJlbnQgZm9yIHRyZWUtaXRlbSBub3QgZm91bmQnKTtcbiAgICB9XG5cbiAgICBpZiAocGFyZW50RWxlbWVudC50YWdOYW1lID09PSAnREVTWS1UUkVFJykge1xuICAgICAgcGFyZW50S2V5ID0gJ3Jvb3QnO1xuICAgIH1cblxuICAgIGlmIChwYXJlbnRFbGVtZW50LnRhZ05hbWUgPT09ICdERVNZLVRSRUUtSVRFTScpIHtcbiAgICAgIHBhcmVudEtleSA9IHBhcmVudEVsZW1lbnQuZ2V0QXR0cmlidXRlKCdkZXN5LXRyZWUtaXRlbS1rZXknKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGFyZW50S2V5O1xuICB9XG5cbiAgaXNBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlIHx8IHRoaXMuX21hdGNoZXNWYWxpZFRleHQ7XG4gIH1cblxuICAvKlxuICAgKiBNw6l0b2RvcyBwcml2YWRvc1xuICAgKi9cblxuICAvKipcbiAgICogR2VuZXJhIHVuYSBjbGF2ZSDDum5pY2EgcGFyYSBlbCBjb21wb25lbnRlXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIHN0YXRpYyBnZW5lcmF0ZVN0YXRpY0l0ZW1LZXkoKTogc3RyaW5nIHtcbiAgICBjb25zdCBrZXkgPSAndHJlZS1pdGVtLWtleS0nICsgVHJlZUl0ZW1Db21wb25lbnQuX3RyZWVJdGVtS2V5U3VmZml4O1xuICAgIFRyZWVJdGVtQ29tcG9uZW50Ll90cmVlSXRlbUtleVN1ZmZpeCsrO1xuICAgIHJldHVybiBrZXk7XG4gIH1cbn1cbiIsIjxsaSAqbmdJZj1cImFsbFBhcmVudHNFeHBhbmRlZCAmJiAhaXNIaWRkZW4oKTsgZWxzZSBoaWRkZW5cIlxuICAgIFtpZF09XCJpZFwiXG4gICAgW2NsYXNzXT1cIidjLXRyZWVfX2l0ZW0gZm9jdXM6b3V0bGluZS1ub25lJ1wiXG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgJ21sLTQnOiBzdWJMZXZlbCA9PT0gMCxcbiAgICAgICdtbC04Jzogc3ViTGV2ZWwgIT09IDAsXG4gICAgICAnYy10cmVlX19pdGVtLS1mb2N1cyc6IGlzRm9jdXMgJiYgIXN1YixcbiAgICAgICdjLXRyZWVfX2l0ZW0tLWhvdmVyJzogaXNIb3ZlciAmJiAhc3ViXG4gICAgfVwiXG4gICAgKGZvY3VzaW4pPVwiaGFuZGxlSXRlbUZvY3VzKHRydWUsICFzdWIpXCJcbiAgICAoZm9jdXNvdXQpPVwiaGFuZGxlSXRlbUZvY3VzKGZhbHNlLCAhc3ViKVwiXG4gICAgKG1vdXNlb3Zlcik9XCJoYW5kbGVJdGVtSG92ZXIodHJ1ZSwgIXN1YilcIlxuICAgIChtb3VzZW91dCk9XCJoYW5kbGVJdGVtSG92ZXIoZmFsc2UsICFzdWIpXCJcbiAgICAoa2V5ZG93bi5ob21lKT1cImhhbmRsZUhvbWUoJGV2ZW50LCAhc3ViKVwiXG4gICAgKGtleWRvd24uZW5kKT1cImhhbmRsZUVuZCgkZXZlbnQsICFzdWIpXCJcbiAgICAoa2V5ZG93bi5hcnJvd3VwKT1cImhhbmRsZUFycm93VXAoJGV2ZW50LCAhc3ViKVwiXG4gICAgKGtleWRvd24uYXJyb3dkb3duKT1cImhhbmRsZUFycm93RG93bigkZXZlbnQsICFzdWIpXCJcbiAgICAoa2V5ZG93bi5hcnJvd3JpZ2h0KT1cImhhbmRsZUFycm93UmlnaHQoJGV2ZW50LCAhc3ViKVwiXG4gICAgKGtleWRvd24uYXJyb3dsZWZ0KT1cImhhbmRsZUFycm93TGVmdCgkZXZlbnQsICFzdWIpXCJcbiAgICByb2xlPVwidHJlZWl0ZW1cIlxuICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwic3ViID8gKGV4cGFuZGVkID8gJ3RydWUnIDogJ2ZhbHNlJykgOiBudWxsXCJcbiAgICBbYXR0ci5hcmlhLWN1cnJlbnRdPVwiaXNBY3RpdmUoKSAmJiBzdWJMZXZlbCA9PT0gMCA/ICdwYWdlJyA6IG51bGxcIj5cbiAgPGRpdiAqbmdJZj1cIiFzdWIgJiYgc3ViTGV2ZWwgIT09IDA7IGVsc2UgY2hpbGRyZW5UcmVlXCJcbiAgICAgICBbaWRdPVwiaWRcIlxuICAgICAgIFtjbGFzc109XCJbJ2Jsb2NrJywgY2xhc3Nlc10gfCBtYWtlSHRtbExpc3RcIlxuICAgICAgIFthdHRyLnRpdGxlXT1cInRpdGxlID8gdGl0bGUgOiBudWxsXCJcbiAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCB8fCB0cmVlRGlzYWJsZWQgPyAnZGlzYWJsZWQnIDogbnVsbFwiXG5cbiAgICAgICBbYXR0ci5yb2xlXT1cInJvbGUgPyByb2xlIDogJ3RyZWUnXCJcbiAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImFyaWFEZXNjcmliZWRCeSA/IGFyaWFEZXNjcmliZWRCeSA6IG51bGxcIlxuICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRCeSA/IGFyaWFMYWJlbGxlZEJ5IDogbnVsbFwiXG4gICAgICAgW2F0dHIuYXJpYS1oaWRkZW5dPVwiYXJpYUhpZGRlbiA/IGFyaWFIaWRkZW4gOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImFyaWFEaXNhYmxlZCA/IGFyaWFEaXNhYmxlZCA6IChkaXNhYmxlZCB8fCB0cmVlRGlzYWJsZWQgPyAndHJ1ZScgOiBudWxsKVwiXG4gICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCJhcmlhQ29udHJvbHMgPyBhcmlhQ29udHJvbHMgOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWN1cnJlbnRdPVwiYXJpYUN1cnJlbnQgPyBhcmlhQ3VycmVudCA6IChpc0FjdGl2ZSgpID8gJ3BhZ2UnIDogbnVsbClcIlxuICAgICAgIFthdHRyLmFyaWEtbGl2ZV09XCJhcmlhTGl2ZSA/IGFyaWFMaXZlIDogbnVsbFwiXG4gICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJhcmlhRXhwYW5kZWQgPyBhcmlhRXhwYW5kZWQgOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWVycm9ybWVzc2FnZV09XCJhcmlhRXJyb3JNZXNzYWdlID8gYXJpYUVycm9yTWVzc2FnZSA6IG51bGxcIlxuICAgICAgIFthdHRyLmFyaWEtaGFzcG9wdXBdPVwiYXJpYUhhc1BvcHVwID8gYXJpYUhhc1BvcHVwIDogbnVsbFwiXG4gICAgICAgW2F0dHIuYXJpYS1tb2RhbF09XCJhcmlhTW9kYWwgPyBhcmlhTW9kYWwgOiBudWxsXCJcbiAgICAgICBbYXR0ci50YWJpbmRleF09XCJ0YWJpbmRleCA/IHRhYmluZGV4IDogKGRpc2FibGVkIHx8IHRyZWVEaXNhYmxlZCA/ICctMScgOiBudWxsKVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjaGVja2JveFwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvbGk+XG5cbjxuZy10ZW1wbGF0ZSAjY2hpbGRyZW5UcmVlPlxuICA8ZGl2ICpuZ0lmPVwic3ViOyBlbHNlIGNoZWNrYm94XCIgY2xhc3M9XCJ3LWZ1bGwgaC1mdWxsXCJcbiAgICAgICBbbmdDbGFzc109XCJ7J2MtdHJlZV9faXRlbS0tZm9jdXMnOiBpc0ZvY3VzICYmIHN1YiwgJ2MtdHJlZV9faXRlbS0taG92ZXInOiBpc0hvdmVyICYmIHN1Yn1cIlxuICAgICAgIChmb2N1c2luKT1cImhhbmRsZUl0ZW1Gb2N1cyh0cnVlKVwiXG4gICAgICAgKGZvY3Vzb3V0KT1cImhhbmRsZUl0ZW1Gb2N1cyhmYWxzZSlcIlxuICAgICAgIChtb3VzZW92ZXIpPVwiaGFuZGxlSXRlbUhvdmVyKHRydWUpXCJcbiAgICAgICAobW91c2VvdXQpPVwiaGFuZGxlSXRlbUhvdmVyKGZhbHNlKVwiXG4gICAgICAgKGtleWRvd24uaG9tZSk9XCJoYW5kbGVIb21lKCRldmVudClcIlxuICAgICAgIChrZXlkb3duLmVuZCk9XCJoYW5kbGVFbmQoJGV2ZW50KVwiXG4gICAgICAgKGtleWRvd24uYXJyb3d1cCk9XCJoYW5kbGVBcnJvd1VwKCRldmVudClcIlxuICAgICAgIChrZXlkb3duLmFycm93ZG93bik9XCJoYW5kbGVBcnJvd0Rvd24oJGV2ZW50KVwiXG4gICAgICAgKGtleWRvd24uYXJyb3dyaWdodCk9XCJoYW5kbGVBcnJvd1JpZ2h0KCRldmVudClcIlxuICAgICAgIChrZXlkb3duLmFycm93TGVmdCk9XCJoYW5kbGVBcnJvd0xlZnQoJGV2ZW50KVwiPlxuICAgIDxkaXYgW2NsYXNzXT1cIlsndy1mdWxsIGZsZXggaXRlbXMtY2VudGVyIHJlbGF0aXZlIGZvY3VzOmJnLXdhcm5pbmctYmFzZSBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6c2hhZG93LW91dGxpbmUtZm9jdXMgZm9jdXM6dGV4dC1ibGFjayB0ZXh0LWxlZnQnLCBjbGFzc2VzXSB8IG1ha2VIdG1sTGlzdFwiXG4gICAgICAgICBbYXR0ci5yb2xlXT1cInJvbGUgPyByb2xlIDogbnVsbFwiXG4gICAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImFyaWFEZXNjcmliZWRCeSA/IGFyaWFEZXNjcmliZWRCeSA6IG51bGxcIlxuICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5ID8gYXJpYUxhYmVsbGVkQnkgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLmFyaWEtaGlkZGVuXT1cImFyaWFIaWRkZW4gPyBhcmlhSGlkZGVuIDogbnVsbFwiXG4gICAgICAgICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImFyaWFEaXNhYmxlZCA/IGFyaWFEaXNhYmxlZCA6IG51bGxcIlxuICAgICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCJhcmlhQ29udHJvbHMgPyBhcmlhQ29udHJvbHMgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLmFyaWEtY3VycmVudF09XCJhcmlhQ3VycmVudCA/IGFyaWFDdXJyZW50IDogbnVsbFwiXG4gICAgICAgICBbYXR0ci5hcmlhLWxpdmVdPVwiYXJpYUxpdmUgPyBhcmlhTGl2ZSA6IG51bGxcIlxuICAgICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJhcmlhRXhwYW5kZWQgPyBhcmlhRXhwYW5kZWQgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLmFyaWEtZXJyb3JtZXNzYWdlXT1cImFyaWFFcnJvck1lc3NhZ2UgPyBhcmlhRXJyb3JNZXNzYWdlIDogbnVsbFwiXG4gICAgICAgICBbYXR0ci5hcmlhLWhhc3BvcHVwXT1cImFyaWFIYXNQb3B1cCA/IGFyaWFIYXNQb3B1cCA6IG51bGxcIlxuICAgICAgICAgW2F0dHIuYXJpYS1tb2RhbF09XCJhcmlhTW9kYWwgPyBhcmlhTW9kYWwgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLnRhYmluZGV4XT1cInRhYmluZGV4ID8gdGFiaW5kZXggOiBudWxsXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cImFic29sdXRlIHRvcC0zIC1sZWZ0LTQgZmxleCBpdGVtcy1jZW50ZXIgdy00IGgtMi41IHRleHQtcHJpbWFyeS1iYXNlIGZvbnQtYm9sZFwiPlxuICAgICAgICA8c3ZnIChjbGljayk9XCJleHBhbmRTdWIoZmFsc2UpXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTAgMTBcIiB3aWR0aD1cIjEwXCIgaGVpZ2h0PVwiMTBcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBjbGFzcz1cImMtdHJlZV9fbWludXNcIj48cGF0aCBmaWxsPVwiY3VycmVudENvbG9yXCIgZD1cIk05LjI4NiA1LjcxNEguNzE0YS43MTQuNzE0IDAgMDEwLTEuNDI4aDguNTcyYS43MTQuNzE0IDAgMDEwIDEuNDI4elwiLz48L3N2Zz5cbiAgICAgICAgPHN2ZyAoY2xpY2spPVwiZXhwYW5kU3ViKHRydWUpXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTAgMTBcIiB3aWR0aD1cIjEwXCIgaGVpZ2h0PVwiMTBcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBjbGFzcz1cImMtdHJlZV9fcGx1c1wiPjxwYXRoIGZpbGw9XCJjdXJyZW50Q29sb3JcIiBkPVwiTTkuMjg2IDQuMjg2SDUuODkzYS4xNzkuMTc5IDAgMDEtLjE3OS0uMTc5Vi43MTRhLjcxNC43MTQgMCAwMC0xLjQyOCAwdjMuMzkzYS4xNzkuMTc5IDAgMDEtLjE3OS4xNzlILjcxNGEuNzE0LjcxNCAwIDAwMCAxLjQyOGgzLjM5M2EuMTc5LjE3OSAwIDAxLjE3OS4xNzl2My4zOTNhLjcxNC43MTQgMCAwMDEuNDI4IDBWNS44OTNhLjE3OS4xNzkgMCAwMS4xNzktLjE3OWgzLjM5M2EuNzE0LjcxNCAwIDAwMC0xLjQyOHpcIi8+PC9zdmc+XG4gICAgICA8L3NwYW4+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY2hlY2tib3hcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cInsgY29tcG9uZW50OiBzdWIgfVwiPjwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPCEtLSBTZSBpbmNvcnBvcmEgZWwgY29udGVuaWRvIG3DrW5pbW8gcGFyYSBmdW5jaW9uYXIgY29uIGVsIG9iamV0aXZvIGRlIG1lam9yYXIgZWwgcmVuZGltaWVudG8gLS0+XG48bmctdGVtcGxhdGUgI2hpZGRlbj5cbiAgPGxpIGNsYXNzPVwiaGlkZGVuXCI+XG4gICAgPGRpdiAjaGlkZGVuV3JhcHBlcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cInsgY29tcG9uZW50OiBzdWIgfVwiPjwvbmctY29udGFpbmVyPlxuICA8L2xpPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNjaGVja2JveD5cbiAgPCEtLVxuICAgIEVsICpuZ0lmPVwibmFtZSB8fCBwYXJlbnROYW1lXCIgc2UgcmVhbGl6YSBwYXJhIG5vIGNyZWFyIGVsIGNoZWNrYm94IGhhc3RhIHF1ZSBzZSBoYSBlamVjdXRhZG8gZWwgY29uZmlndXJlQWxsSXRlbXMuXG4gICAgRXN0byBwdWVkZSBkYXIgcHJvYmxlbWFzIHBvcnF1ZSwgaGFzdGEgcXVlIG5vIHNlIGVqZWN1dGEgZXN0bywgZWwgZGVzeS10cmVlLWNoZWNrYm94IG5vIGN1ZW50YSBjb24gZWwgdHlwZSBhY3R1YWxpemFkbyAocG9yIGRlZmVjdG8gcmFkaW8pLlxuICAgIFVuIGVqZW1wbG8gZW4gZWwgcXVlIGVzdG8gcHVlZGUgc2VyIHByb2JsZW3DoXRpY28gZXMgYWwgc2VyIHR5cG8gY2hlY2tib3ggeSBkYXJsZSB1biB2YWxvciBjaGVja2VkPXRydWUgYSB2YXJpb3MgbG9zIGl0ZW1zLCB5YVxuICAgIHF1ZSBlbCB0eXBlIHRvZGF2w61hIG5vIHNlIGhhIHRyYW5zbWl0aWRvIGFxdcOtLiBDb21vIHBvciBkZWZlY3RvIGVsIHR5cGUgZXMgcmFkaW8sIHPDs2xvIG1hcmNhcsOhIGVsIMO6bHRpbW8uIFBvc3Rlcmlvcm1lbnRlLFxuICAgIHlhIGRldGVjdGFyw6EgZWwgdGlwbyB5IHBlcm1pdGlyw6Egc2VsZWNjaW9uYXIgdmFyaW9zIGl0ZW1zLCBwZXJvIGhhc3RhIGVudG9uY2VzIGV4aXN0ZSBlc3RlIHByb2JsZW1hLlxuICAtLT5cbiAgPGRlc3ktdHJlZS1jaGVja2JveCAqbmdJZj1cIm5hbWUgfHwgcGFyZW50TmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwibmFtZSA/IG5hbWUgOiBwYXJlbnROYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiZ2V0SWQoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICBbY2xhc3Nlc109XCJjbGFzc2VzXCJcbiAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCJ0eXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICBbKGNoZWNrZWQpXT1cImNoZWNrZWRcIiAoY2hlY2tlZENoYW5nZSk9XCJoYW5kbGVDaGVja2JveENoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICBbaGFzRXJyb3JdPVwiaW5oZXJpdGVkSGFzRXJyb3JcIlxuICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCB8fCB0cmVlRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgIFtoYXNEaXZpZGVyc109XCJoYXNEaXZpZGVyc1wiXG4gICAgICAgICAgICAgICAgICAgICAgW2Rlc2NyaWJlZEJ5XT1cIltpbmhlcml0ZWREZXNjcmliZWRCeSwgaGludD8uaWRdIHwgbWFrZUh0bWxMaXN0XCJcbiAgICAgICAgICAgICAgICAgICAgICBbaXNJbmRldGVybWluYXRlXT1cImlzSW5kZXRlcm1pbmF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgWyhpbmRldGVybWluYXRlQ2hlY2tlZCldPVwiaW5kZXRlcm1pbmF0ZUNoZWNrZWRcIlxuICAgICAgICAgICAgICAgICAgICAgIChpbmRldGVybWluYXRlQ2hlY2tlZENoYW5nZSk9XCJoYW5kbGVJbmRldGVybWluYXRlQ2hlY2tlZENoYW5nZSgkZXZlbnQpXCJcblxuICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbENvbXBvbmVudF09XCJsYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgW2hpbnRDb21wb25lbnRdPVwiaGludFwiXG5cbiAgICAgICAgICAgICAgICAgICAgICBbcm9sZV09XCJyb2xlXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFEZXNjcmliZWRCeV09XCJhcmlhRGVzY3JpYmVkQnlcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhTGFiZWxsZWRCeV09XCJhcmlhTGFiZWxsZWRCeVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFIaWRkZW5dPVwiYXJpYUhpZGRlblwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFEaXNhYmxlZF09XCJhcmlhRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhQ29udHJvbHNdPVwiYXJpYUNvbnRyb2xzXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUN1cnJlbnRdPVwiYXJpYUN1cnJlbnRcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhTGl2ZV09XCJhcmlhTGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFFeHBhbmRlZF09XCJhcmlhRXhwYW5kZWRcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhRXJyb3JNZXNzYWdlXT1cImFyaWFFcnJvck1lc3NhZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhSGFzUG9wdXBdPVwiYXJpYUhhc1BvcHVwXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYU1vZGFsXT1cImFyaWFNb2RhbFwiXG4gICAgICAgICAgICAgICAgICAgICAgW3RhYmluZGV4XT1cInRhYmluZGV4XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kZXN5LXRyZWUtY2hlY2tib3g+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2NvbnRlbnQ+XG4gIDxkaXYgY2xhc3M9XCJmb250LWJvbGRcIiAqbmdJZj1cImlzQWN0aXZlKCk7IGVsc2UgY29udGVudExhYmVsXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRMYWJlbFwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZGVzeS1oaW50XCI+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNjb250ZW50TGFiZWw+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImRlc3ktbGFiZWxcIj48L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input, TemplateRef, ViewChild, ViewContainerRef } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class TreeItemsGeneratorComponent {
|
|
5
|
+
constructor(viewContainerRef) {
|
|
6
|
+
this.viewContainerRef = viewContainerRef;
|
|
7
|
+
}
|
|
8
|
+
ngOnInit() {
|
|
9
|
+
this.viewContainerRef.createEmbeddedView(this.content);
|
|
10
|
+
}
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: TreeItemsGeneratorComponent, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: TreeItemsGeneratorComponent, selector: "desy-tree-items-generator", inputs: { items: "items", itemTemplate: "itemTemplate" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, static: true }], ngImport: i0, template: "<ng-template #content>\n <ng-container *ngIf=\"items && itemTemplate\">\n <ng-container *ngFor=\"let item of items\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: {$implicit: item}\"></ng-container>\n </ng-container>\n </ng-container>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: TreeItemsGeneratorComponent, decorators: [{
|
|
15
|
+
type: Component,
|
|
16
|
+
args: [{ selector: 'desy-tree-items-generator', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template #content>\n <ng-container *ngIf=\"items && itemTemplate\">\n <ng-container *ngFor=\"let item of items\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: {$implicit: item}\"></ng-container>\n </ng-container>\n </ng-container>\n</ng-template>\n" }]
|
|
17
|
+
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; }, propDecorators: { content: [{
|
|
18
|
+
type: ViewChild,
|
|
19
|
+
args: ['content', { static: true }]
|
|
20
|
+
}], items: [{
|
|
21
|
+
type: Input
|
|
22
|
+
}], itemTemplate: [{
|
|
23
|
+
type: Input
|
|
24
|
+
}] } });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1pdGVtcy1nZW5lcmF0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL3RyZWUvdHJlZS1pdGVtcy1nZW5lcmF0b3IvdHJlZS1pdGVtcy1nZW5lcmF0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL3RyZWUvdHJlZS1pdGVtcy1nZW5lcmF0b3IvdHJlZS1pdGVtcy1nZW5lcmF0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxFQUVMLFdBQVcsRUFDWCxTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2pCLE1BQU0sZUFBZSxDQUFDOzs7QUFZdkIsTUFBTSxPQUFPLDJCQUEyQjtJQU90QyxZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUFJLENBQUM7SUFFM0QsUUFBUTtRQUNOLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekQsQ0FBQzs4R0FYVSwyQkFBMkI7a0dBQTNCLDJCQUEyQiw2T0NwQnhDLHlSQU9BOzsyRkRhYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0UsMkJBQTJCLG1CQUVwQix1QkFBdUIsQ0FBQyxNQUFNO3VHQUlQLE9BQU87c0JBQTlDLFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFFN0IsS0FBSztzQkFBYixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3Q29udGFpbmVyUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUcmVlSXRlbUNvbXBvbmVudH0gZnJvbSBcIi4uL3RyZWUtaXRlbS90cmVlLWl0ZW0uY29tcG9uZW50XCI7XG5cbmludGVyZmFjZSBUZW1wbGF0ZUNvbnRleHQge1xuICAkaW1wbGljaXQ6IFRyZWVJdGVtQ29tcG9uZW50OyAvLyBVc2UgdGhlICRpbXBsaWNpdCBwcm9wZXJ0eSB0byBwYXNzIHRoZSBjb250ZXh0XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Rlc3ktdHJlZS1pdGVtcy1nZW5lcmF0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vdHJlZS1pdGVtcy1nZW5lcmF0b3IuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBUcmVlSXRlbXNHZW5lcmF0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBWaWV3Q2hpbGQoJ2NvbnRlbnQnLCB7IHN0YXRpYzogdHJ1ZSB9KSBjb250ZW50OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBJbnB1dCgpIGl0ZW1zOiBhbnlbXTtcbiAgQElucHV0KCkgaXRlbVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxUZW1wbGF0ZUNvbnRleHQ+O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZikgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLmNvbnRlbnQpO1xuICB9XG5cbn1cbiIsIjxuZy10ZW1wbGF0ZSAjY29udGVudD5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW1zICYmIGl0ZW1UZW1wbGF0ZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXNcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtVGVtcGxhdGU7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGl0ZW19XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -3,13 +3,13 @@ import { ContentBaseComponent } from "../../../../shared/components";
|
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "../../../../shared/pipes/make-html-list.pipe";
|
|
5
5
|
export class TreeSubComponent extends ContentBaseComponent {
|
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: TreeSubComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
7
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: TreeSubComponent, selector: "desy-tree-sub", inputs: { classes: "classes" }, usesInheritance: true, ngImport: i0, template: "<ng-template #contentTemplate>\n <ul [class]=\"['c-tree__itemgroup', classes] | makeHtmlList\"\n [attr.role]=\"role ? role : 'group'\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.aria-modal]=\"ariaModal ? ariaModal : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n <ng-content></ng-content>\n </ul>\n</ng-template>\n", dependencies: [{ kind: "pipe", type: i1.MakeHtmlListPipe, name: "makeHtmlList" }] }); }
|
|
6
8
|
}
|
|
7
|
-
|
|
8
|
-
TreeSubComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TreeSubComponent, selector: "desy-tree-sub", inputs: { classes: "classes" }, usesInheritance: true, ngImport: i0, template: "<ng-template #contentTemplate>\n <ul [class]=\"['c-tree__itemgroup', classes] | makeHtmlList\"\n [attr.role]=\"role ? role : 'group'\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.aria-modal]=\"ariaModal ? ariaModal : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n <ng-content></ng-content>\n </ul>\n</ng-template>\n", dependencies: [{ kind: "pipe", type: i1.MakeHtmlListPipe, name: "makeHtmlList" }] });
|
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TreeSubComponent, decorators: [{
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: TreeSubComponent, decorators: [{
|
|
10
10
|
type: Component,
|
|
11
11
|
args: [{ selector: 'desy-tree-sub', template: "<ng-template #contentTemplate>\n <ul [class]=\"['c-tree__itemgroup', classes] | makeHtmlList\"\n [attr.role]=\"role ? role : 'group'\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.aria-modal]=\"ariaModal ? ariaModal : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n <ng-content></ng-content>\n </ul>\n</ng-template>\n" }]
|
|
12
12
|
}], propDecorators: { classes: [{
|
|
13
13
|
type: Input
|
|
14
14
|
}] } });
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1zdWIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL3RyZWUvdHJlZS1zdWIvdHJlZS1zdWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL3RyZWUvdHJlZS1zdWIvdHJlZS1zdWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sK0JBQStCLENBQUM7OztBQU1uRSxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsb0JBQW9COzhHQUE3QyxnQkFBZ0I7a0dBQWhCLGdCQUFnQiw0R0NYN0IsNjlCQWtCQTs7MkZEUGEsZ0JBQWdCO2tCQUo1QixTQUFTOytCQUNFLGVBQWU7OEJBS2hCLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtJVHJlZUl0ZW19IGZyb20gXCIuLi9pbnRlcmZhY2VzL2l0cmVlLWl0ZW1cIjtcbmltcG9ydCB7Q29udGVudEJhc2VDb21wb25lbnR9IGZyb20gXCIuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50c1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkZXN5LXRyZWUtc3ViJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RyZWUtc3ViLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBUcmVlU3ViQ29tcG9uZW50IGV4dGVuZHMgQ29udGVudEJhc2VDb21wb25lbnQge1xuXG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcblxuICBpdGVtTGlzdDogSVRyZWVJdGVtW107XG5cbn1cbiIsIjxuZy10ZW1wbGF0ZSAjY29udGVudFRlbXBsYXRlPlxuICA8dWwgW2NsYXNzXT1cIlsnYy10cmVlX19pdGVtZ3JvdXAnLCBjbGFzc2VzXSB8IG1ha2VIdG1sTGlzdFwiXG4gICAgICBbYXR0ci5yb2xlXT1cInJvbGUgPyByb2xlIDogJ2dyb3VwJ1wiXG4gICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImFyaWFEZXNjcmliZWRCeSA/IGFyaWFEZXNjcmliZWRCeSA6IG51bGxcIlxuICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5ID8gYXJpYUxhYmVsbGVkQnkgOiBudWxsXCJcbiAgICAgIFthdHRyLmFyaWEtaGlkZGVuXT1cImFyaWFIaWRkZW4gPyBhcmlhSGlkZGVuIDogbnVsbFwiXG4gICAgICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImFyaWFEaXNhYmxlZCA/IGFyaWFEaXNhYmxlZCA6IG51bGxcIlxuICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCJhcmlhQ29udHJvbHMgPyBhcmlhQ29udHJvbHMgOiBudWxsXCJcbiAgICAgIFthdHRyLmFyaWEtY3VycmVudF09XCJhcmlhQ3VycmVudCA/IGFyaWFDdXJyZW50IDogbnVsbFwiXG4gICAgICBbYXR0ci5hcmlhLWxpdmVdPVwiYXJpYUxpdmUgPyBhcmlhTGl2ZSA6IG51bGxcIlxuICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJhcmlhRXhwYW5kZWQgPyBhcmlhRXhwYW5kZWQgOiBudWxsXCJcbiAgICAgIFthdHRyLmFyaWEtZXJyb3JtZXNzYWdlXT1cImFyaWFFcnJvck1lc3NhZ2UgPyBhcmlhRXJyb3JNZXNzYWdlIDogbnVsbFwiXG4gICAgICBbYXR0ci5hcmlhLWhhc3BvcHVwXT1cImFyaWFIYXNQb3B1cCA/IGFyaWFIYXNQb3B1cCA6IG51bGxcIlxuICAgICAgW2F0dHIuYXJpYS1tb2RhbF09XCJhcmlhTW9kYWwgPyBhcmlhTW9kYWwgOiBudWxsXCJcbiAgICAgIFthdHRyLnRhYmluZGV4XT1cInRhYmluZGV4ID8gdGFiaW5kZXggOiBudWxsXCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L3VsPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|