desy-angular 7.0.1 → 7.1.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/esm2020/lib/desy-angular.module.mjs +4 -4
- package/esm2020/lib/desy-buttons/components/button/button.component.mjs +5 -5
- package/esm2020/lib/desy-buttons/components/button-loader/button-loader.component.mjs +3 -3
- package/esm2020/lib/desy-buttons/components/dropdown/dropdown.component.mjs +6 -7
- package/esm2020/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.mjs +11 -4
- package/esm2020/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.mjs +3 -3
- package/esm2020/lib/desy-buttons/components/listbox/listbox.component.mjs +142 -94
- package/esm2020/lib/desy-buttons/components/pill/pill.component.mjs +3 -3
- package/esm2020/lib/desy-buttons/components/toggle/toggle-off-state/toggle-off-state.component.mjs +3 -3
- package/esm2020/lib/desy-buttons/components/toggle/toggle-on-state/toggle-on-state.component.mjs +3 -3
- package/esm2020/lib/desy-buttons/components/toggle/toggle.component.mjs +3 -3
- package/esm2020/lib/desy-buttons/desy-buttons.module.mjs +4 -4
- package/esm2020/lib/desy-commons/components/content/content.component.mjs +3 -3
- package/esm2020/lib/desy-commons/components/description/description.component.mjs +3 -3
- package/esm2020/lib/desy-commons/components/divider/divider.component.mjs +3 -3
- package/esm2020/lib/desy-commons/components/icon/icon.component.mjs +3 -3
- package/esm2020/lib/desy-commons/components/title/title.component.mjs +3 -3
- package/esm2020/lib/desy-commons/desy-commons.module.mjs +4 -4
- package/esm2020/lib/desy-forms/components/character-count/character-count.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.mjs +25 -43
- package/esm2020/lib/desy-forms/components/checkboxes/checkboxes-parent.component.mjs +23 -0
- package/esm2020/lib/desy-forms/components/checkboxes/checkboxes.component.mjs +98 -67
- package/esm2020/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.mjs +6 -4
- package/esm2020/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.mjs +6 -4
- package/esm2020/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.mjs +6 -4
- package/esm2020/lib/desy-forms/components/date-input/date-input.component.mjs +29 -6
- package/esm2020/lib/desy-forms/components/error-message/error-message.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/fieldset/fieldset.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/fieldset/legend/legend.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/file-upload/file-upload.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/form-field/form-field.component.mjs +4 -4
- package/esm2020/lib/desy-forms/components/hint/hint.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/input/input.component.mjs +6 -6
- package/esm2020/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.mjs +10 -5
- package/esm2020/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.mjs +10 -5
- package/esm2020/lib/desy-forms/components/input-group/input-group.component.mjs +12 -6
- package/esm2020/lib/desy-forms/components/label/label.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/radios/radio-item/radio-item.component.mjs +22 -34
- package/esm2020/lib/desy-forms/components/radios/radios-parent.component.mjs +23 -0
- package/esm2020/lib/desy-forms/components/radios/radios.component.mjs +109 -71
- package/esm2020/lib/desy-forms/components/search-bar/search-bar.component.mjs +7 -13
- package/esm2020/lib/desy-forms/components/select/option/option.component.mjs +4 -4
- package/esm2020/lib/desy-forms/components/select/option-group/option-group.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/select/select-item/select-item.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/select/select.component.mjs +7 -7
- package/esm2020/lib/desy-forms/components/template-driven-wrapper/template-driven-wrapper.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/textarea/textarea.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/tree/tree-checkbox/tree-checkbox.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/tree/tree-item/tree-item.component.mjs +7 -6
- package/esm2020/lib/desy-forms/components/tree/tree-items-generator/tree-items-generator.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/tree/tree-sub/tree-sub.component.mjs +3 -3
- package/esm2020/lib/desy-forms/components/tree/tree.component.mjs +12 -4
- package/esm2020/lib/desy-forms/desy-forms.module.mjs +6 -6
- package/esm2020/lib/desy-forms/directives/condition.directive.mjs +3 -3
- package/esm2020/lib/desy-forms/interfaces/item-date-input-data.mjs +1 -1
- package/esm2020/lib/desy-forms/interfaces/select-item-data.mjs +1 -1
- package/esm2020/lib/desy-modals/components/dialog/dialog.component.mjs +24 -4
- package/esm2020/lib/desy-modals/components/modal/modal-button-loader-primary/modal-button-loader-primary.component.mjs +3 -3
- package/esm2020/lib/desy-modals/components/modal/modal-button-loader-secondary/modal-button-loader-secondary.component.mjs +3 -3
- package/esm2020/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.mjs +3 -3
- package/esm2020/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.mjs +3 -3
- package/esm2020/lib/desy-modals/components/modal/modal.component.mjs +3 -3
- package/esm2020/lib/desy-modals/desy-modals.module.mjs +4 -4
- package/esm2020/lib/desy-modals/interfaces/dialog-options.mjs +1 -1
- package/esm2020/lib/desy-modals/services/dialog.service.mjs +3 -3
- package/esm2020/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/error-summary/error-summary.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/footer/footer-meta/footer-meta.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/footer/footer.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/header/header-custom-navigation/header-custom-navigation.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.mjs +5 -5
- package/esm2020/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/header/header-navigation/header-navigation.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/header/header-subnav/header-subnav.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/header/header.component.mjs +8 -10
- package/esm2020/lib/desy-nav/components/links-list/links-list-item/links-list-item.component.mjs +40 -0
- package/esm2020/lib/desy-nav/components/links-list/links-list-item-sub/links-list-item-sub.component.mjs +14 -0
- package/esm2020/lib/desy-nav/components/links-list/links-list.component.mjs +42 -0
- package/esm2020/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/menu-navigation/components/menu-navigation-item/menu-navigation-item.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/menu-navigation/components/menu-navigation-subitem/menu-navigation-subitem.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/menu-navigation/menu-navigation.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/menu-vertical/menu-vertical.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/menubar/directives/menubaritem.directive.mjs +3 -3
- package/esm2020/lib/desy-nav/components/menubar/menubar.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/nav/nav-item/nav-item.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/nav/nav.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/notification/notification-item/notification-item.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/notification/notification.component.mjs +3 -3
- package/esm2020/lib/desy-nav/components/skip-link/skip-link.component.mjs +11 -5
- package/esm2020/lib/desy-nav/desy-nav.module.mjs +25 -6
- package/esm2020/lib/desy-nav/interfaces/header-skiplink-data.mjs +2 -0
- package/esm2020/lib/desy-pagination/components/pagination/pagination.component.mjs +53 -30
- package/esm2020/lib/desy-pagination/components/pagination-item-perpage/pagination-item-perpage.component.mjs +3 -3
- package/esm2020/lib/desy-pagination/components/pagination-listbox-label/pagination-listbox-label.component.mjs +3 -3
- package/esm2020/lib/desy-pagination/desy-pagination.module.mjs +4 -4
- package/esm2020/lib/desy-tables/components/table/components/table-caption.component.mjs +3 -3
- package/esm2020/lib/desy-tables/components/table/components/table-cell.component.mjs +3 -3
- package/esm2020/lib/desy-tables/components/table/components/table-header.component.mjs +3 -3
- package/esm2020/lib/desy-tables/components/table/components/table-row.component.mjs +3 -3
- package/esm2020/lib/desy-tables/components/table/table.component.mjs +3 -3
- package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.mjs +3 -3
- package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.mjs +3 -3
- package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.mjs +3 -3
- package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.mjs +3 -3
- package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-select.component.mjs +3 -3
- package/esm2020/lib/desy-tables/components/table-advanced/table-advanced.component.mjs +3 -3
- package/esm2020/lib/desy-tables/desy-tables.module.mjs +4 -4
- package/esm2020/lib/desy-tables/directives/cell.directive.mjs +3 -3
- package/esm2020/lib/desy-tables/directives/focus-clicked-cell.directive.mjs +3 -3
- package/esm2020/lib/desy-tables/directives/row.directive.mjs +3 -3
- package/esm2020/lib/desy-views/components/accordion/accordion-header/accordion-header.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/accordion/accordion-item/accordion-item.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/accordion/accordion.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/accordion-history/accordion-history-item/accordion-history-item.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/accordion-history/accordion-history.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/accordion-history/accordion-item-hide-button/accordion-item-hide-button.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/accordion-history/accordion-item-show-button/accordion-item-show-button.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/alert/alert.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/collapsible/collapsible.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/description-list/definition/definition.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/description-list/description-item/description-item.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/description-list/description-list.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/description-list/term/term.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/details/details.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/item/item-content-right/item-content-right.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/item/item-item/item-item.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/item/item.component.mjs +11 -16
- package/esm2020/lib/desy-views/components/media-object/media-object-figure/media-object-figure.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/media-object/media-object.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/spinner/spinner.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/status/status.component.mjs +14 -5
- package/esm2020/lib/desy-views/components/status-item/status-item.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/tabs/panel/panel.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/tabs/tab-item/tab-item.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/tabs/tabs.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.mjs +3 -3
- package/esm2020/lib/desy-views/components/tooltip/tooltip.component.mjs +3 -3
- package/esm2020/lib/desy-views/desy-views.module.mjs +4 -4
- package/esm2020/lib/desy-views/services/alert.service.mjs +3 -3
- package/esm2020/lib/shared/components/accessibility/accessibility.component.mjs +3 -3
- package/esm2020/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.mjs +3 -3
- package/esm2020/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.mjs +3 -3
- package/esm2020/lib/shared/components/content-base/content-base.component.mjs +3 -3
- package/esm2020/lib/shared/components/text-or-html-required/text-or-html-required.component.mjs +3 -3
- package/esm2020/lib/shared/directives/attribute-change.directive.mjs +24 -19
- package/esm2020/lib/shared/directives/click-outside.directive.mjs +3 -3
- package/esm2020/lib/shared/directives/content-change.directive.mjs +3 -3
- package/esm2020/lib/shared/directives/custom-inner-content.directive.mjs +3 -3
- package/esm2020/lib/shared/directives/inner-content.directive.mjs +3 -3
- package/esm2020/lib/shared/pipes/external-href.pipe.mjs +5 -5
- package/esm2020/lib/shared/pipes/inner-html.pipe.mjs +3 -3
- package/esm2020/lib/shared/pipes/make-html-list.pipe.mjs +3 -3
- package/esm2020/lib/shared/shared.module.mjs +4 -4
- package/esm2020/public-api.mjs +5 -1
- package/fesm2015/desy-angular.mjs +1205 -1002
- package/fesm2015/desy-angular.mjs.map +1 -1
- package/fesm2020/desy-angular.mjs +1205 -1000
- package/fesm2020/desy-angular.mjs.map +1 -1
- package/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.d.ts +3 -1
- package/lib/desy-buttons/components/listbox/listbox.component.d.ts +15 -4
- package/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.d.ts +5 -3
- package/lib/desy-forms/components/checkboxes/checkboxes-parent.component.d.ts +21 -0
- package/lib/desy-forms/components/checkboxes/checkboxes.component.d.ts +19 -11
- 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-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 -1
- package/lib/desy-forms/components/form-field/form-field.component.d.ts +9 -9
- package/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.d.ts +1 -0
- package/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.d.ts +1 -0
- package/lib/desy-forms/components/input-group/input-group.component.d.ts +2 -0
- package/lib/desy-forms/components/radios/radio-item/radio-item.component.d.ts +5 -4
- package/lib/desy-forms/components/radios/radios-parent.component.d.ts +21 -0
- package/lib/desy-forms/components/radios/radios.component.d.ts +19 -10
- package/lib/desy-forms/components/search-bar/search-bar.component.d.ts +2 -4
- package/lib/desy-forms/components/select/option/option.component.d.ts +1 -1
- package/lib/desy-forms/components/tree/tree-item/tree-item.component.d.ts +1 -0
- package/lib/desy-forms/components/tree/tree.component.d.ts +4 -0
- 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/interfaces/dialog-options.d.ts +1 -0
- 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/skip-link/skip-link.component.d.ts +1 -0
- 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-views/components/item/item.component.d.ts +1 -0
- package/lib/desy-views/components/status/status.component.d.ts +3 -1
- package/lib/shared/directives/attribute-change.directive.d.ts +2 -1
- package/package.json +1 -1
- package/public-api.d.ts +4 -0
- 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/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
|
@@ -1,55 +1,50 @@
|
|
|
1
|
-
import { Component, ContentChildren, EventEmitter,
|
|
1
|
+
import { Component, ContentChildren, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
2
|
import { ContentBaseComponent } from '../../../../shared/components';
|
|
3
3
|
import { LabelComponent } from '../../label/label.component';
|
|
4
4
|
import { ContentComponent } from '../../../../desy-commons/components/content/content.component';
|
|
5
5
|
import { animate, animateChild, query, state, style, transition, trigger } from '@angular/animations';
|
|
6
6
|
import { HintComponent } from '../../hint/hint.component';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "
|
|
8
|
+
import * as i1 from "../radios-parent.component";
|
|
9
9
|
import * as i2 from "@angular/common";
|
|
10
10
|
import * as i3 from "../../../../shared/directives/custom-inner-content.directive";
|
|
11
11
|
import * as i4 from "../../label/label.component";
|
|
12
12
|
import * as i5 from "../../../../shared/pipes/make-html-list.pipe";
|
|
13
|
-
// TODO los hijos no pueden contener al padre, los metodos hay que pasarlos al padre (radios)
|
|
14
13
|
export class RadioItemComponent extends ContentBaseComponent {
|
|
15
|
-
constructor(
|
|
14
|
+
constructor(radios, changeDetectorRef) {
|
|
16
15
|
super();
|
|
16
|
+
this.radios = radios;
|
|
17
17
|
this.changeDetectorRef = changeDetectorRef;
|
|
18
|
-
this.radioService = radioService;
|
|
19
18
|
this.checkedChange = new EventEmitter();
|
|
20
19
|
this.index = 0;
|
|
21
20
|
}
|
|
22
21
|
ngOnInit() {
|
|
23
|
-
this.
|
|
22
|
+
this.radios.markForUpdateRadiosIds();
|
|
24
23
|
}
|
|
25
24
|
ngOnDestroy() {
|
|
26
|
-
this.
|
|
25
|
+
this.radios.markForUpdateRadiosIds();
|
|
27
26
|
}
|
|
28
27
|
ngOnChanges(changes) {
|
|
29
28
|
if (this.checked !== this.lastChecked && this.isInit()) {
|
|
30
29
|
this.setChecked(this.checked);
|
|
31
|
-
this.
|
|
30
|
+
this.radios.updateValueFromRadioItems();
|
|
32
31
|
}
|
|
33
32
|
else if (this.lastValue !== undefined && this.lastValue !== this.value) {
|
|
34
|
-
this.
|
|
33
|
+
this.radios.updateValueFromRadioItems();
|
|
35
34
|
}
|
|
36
35
|
this.lastValue = this.value;
|
|
37
36
|
if (this.id !== this.radioId) {
|
|
38
|
-
this.
|
|
37
|
+
this.radios.markForUpdateRadiosIds();
|
|
39
38
|
}
|
|
40
39
|
}
|
|
41
40
|
ngAfterViewInit() {
|
|
42
41
|
this.setChecked(this.checked);
|
|
43
|
-
this.
|
|
42
|
+
this.radios.updateValueFromRadioItems();
|
|
44
43
|
}
|
|
45
44
|
setChecked(checked) {
|
|
46
45
|
this.checked = checked;
|
|
47
46
|
this.lastChecked = checked;
|
|
48
47
|
this.checkedChange.emit(checked);
|
|
49
|
-
if (this.checked) {
|
|
50
|
-
let index = this.radioService.getRadioServiceItem(this.name);
|
|
51
|
-
this.radioService.radioServiceItems[index].nextValue = this.value;
|
|
52
|
-
}
|
|
53
48
|
this.changeDetectorRef.detectChanges();
|
|
54
49
|
}
|
|
55
50
|
/*
|
|
@@ -60,7 +55,7 @@ export class RadioItemComponent extends ContentBaseComponent {
|
|
|
60
55
|
}
|
|
61
56
|
hasChanged() {
|
|
62
57
|
this.setChecked(this.isInputChecked());
|
|
63
|
-
this.
|
|
58
|
+
this.radios.updateValueFromRadioItems();
|
|
64
59
|
}
|
|
65
60
|
isInit() {
|
|
66
61
|
return !!this.inputElement;
|
|
@@ -69,12 +64,11 @@ export class RadioItemComponent extends ContentBaseComponent {
|
|
|
69
64
|
return this.inputElement ? this.inputElement.nativeElement.checked : null;
|
|
70
65
|
}
|
|
71
66
|
updateRadioId(index) {
|
|
72
|
-
let i = this.radioService.getRadioServiceItem(this.name);
|
|
73
67
|
if (this.id) {
|
|
74
68
|
this.radioId = this.id;
|
|
75
69
|
}
|
|
76
70
|
else {
|
|
77
|
-
const idPrefix = this.
|
|
71
|
+
const idPrefix = this.radios.idPrefix ? this.radios.idPrefix : this.radios.name;
|
|
78
72
|
if (index === 0) {
|
|
79
73
|
this.radioId = idPrefix;
|
|
80
74
|
}
|
|
@@ -94,24 +88,20 @@ export class RadioItemComponent extends ContentBaseComponent {
|
|
|
94
88
|
* Funciones para aportar información desde el componente checkboxes que lo contiene
|
|
95
89
|
*/
|
|
96
90
|
hasDividers() {
|
|
97
|
-
|
|
98
|
-
return i !== -1 ? this.radioService.radioServiceItems[i].dividers : null;
|
|
91
|
+
return this.radios.hasDividers;
|
|
99
92
|
}
|
|
100
93
|
hasError() {
|
|
101
|
-
|
|
102
|
-
return i !== -1 ? this.radioService.radioServiceItems[i].error : null;
|
|
94
|
+
return this.radios.hasErrorsMessage();
|
|
103
95
|
}
|
|
104
96
|
getNameRadio() {
|
|
105
|
-
|
|
106
|
-
return i !== -1 ? this.radioService.radioServiceItems[i].nameRadio : null;
|
|
97
|
+
return this.radios.name;
|
|
107
98
|
}
|
|
108
99
|
getDescribedBy() {
|
|
109
|
-
|
|
110
|
-
return i !== -1 ? (!this.radioService.radioServiceItems[i].fieldSet ? this.radioService.radioServiceItems[i].describedBy : null) : null;
|
|
100
|
+
return !this.radios.hasFieldset() ? this.radios.describedBy : null;
|
|
111
101
|
}
|
|
112
102
|
}
|
|
113
|
-
RadioItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
114
|
-
RadioItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
103
|
+
RadioItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RadioItemComponent, deps: [{ token: i1.RadiosParentComponent }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
104
|
+
RadioItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: RadioItemComponent, selector: "desy-radio-item", inputs: { id: "id", name: "name", value: "value", conditional: "conditional", disabled: "disabled", divider: "divider", classes: "classes", checked: "checked" }, outputs: { checkedChange: "checkedChange" }, queries: [{ propertyName: "labelComponentList", predicate: LabelComponent }, { propertyName: "hintComponentList", predicate: HintComponent }, { propertyName: "conditionalContentList", predicate: ContentComponent }], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div [ngClass]=\"{'border-t border-b border-neutral-base -mb-px': hasDividers()}\" [class]=\"classes\">\n <div *ngIf=\"divider\"><p>{{ divider }}</p></div>\n <div *ngIf=\"!divider\">\n <div class=\"relative flex items-start py-base\">\n <div class=\"flex items-center mx-sm\">\n <input #input class=\"w-6 h-6 text-primary-base transition duration-150 ease-in-out border-black focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-offset-0 focus:ring-warning-base disabled:bg-neutral-base disabled:border-neutral-base text-primary-base\"\n [attr.id]=\"radioId\"\n [attr.name]=\"name ? name : getNameRadio()\"\n type=\"radio\"\n [value]=\"value\" (change)=\"hasChanged()\"\n [checked]=\"checked\"\n [attr.disabled]=\"disabled || parentDisabled ? true : null\"\n [attr.aria-controls]=\"conditionalContentList && conditionalContentList.length > 0 ? 'conditional-' + this.radioId : null\"\n [attr.aria-describedby]=\"[getDescribedBy(), getItemHintId()] | makeHtmlList:null\"\n [attr.aria-invalid]=\"hasError ? true : null\"\n \n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : 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-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.tabindex]=\"tabindex ? tabindex : null\">\n </div>\n \n <div class=\"pt-0.5 leading-5\">\n <ng-container *ngIf=\"labelComponentList && labelComponentList.length > 0\">\n <ng-content select=\"desy-label\"></ng-content>\n </ng-container>\n <ng-container *ngIf=\"!(labelComponentList && labelComponentList.length > 0)\">\n <desy-label [for]=\"radioId\">\n <ng-content></ng-content>\n </desy-label>\n </ng-container>\n \n <ng-content select=\"desy-hint\"></ng-content>\n </div>\n </div>\n </div>\n <div *ngIf=\"conditional && conditionalContentList && conditionalContentList.length > 0 && checked\" @displayConditional\n class=\"mb-lg ml-5 pt-sm pb-base pl-6 origin-top-left border-l-2 border-primary-base\"\n [attr.id]=\"'conditional-' + this.radioId\">\n <ng-container *desyCustomInnerContent=\"{ component: conditionalContentList.first }\"></ng-container>\n </div>\n</div>\n\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.CustomInnerContentDirective, selector: "[desyCustomInnerContent]", inputs: ["desyCustomInnerContent"] }, { kind: "component", type: i4.LabelComponent, selector: "desy-label", inputs: ["id", "classes", "html", "text", "isPageHeading", "headingLevel", "for"] }, { kind: "pipe", type: i5.MakeHtmlListPipe, name: "makeHtmlList" }], animations: [
|
|
115
105
|
trigger('displayConditional', [
|
|
116
106
|
state('void', style({
|
|
117
107
|
opacity: '0.0',
|
|
@@ -129,7 +119,7 @@ RadioItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ver
|
|
|
129
119
|
])
|
|
130
120
|
])
|
|
131
121
|
] });
|
|
132
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
122
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RadioItemComponent, decorators: [{
|
|
133
123
|
type: Component,
|
|
134
124
|
args: [{ selector: 'desy-radio-item', animations: [
|
|
135
125
|
trigger('displayConditional', [
|
|
@@ -148,10 +138,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
148
138
|
query('@*', animateChild(), { optional: true })
|
|
149
139
|
])
|
|
150
140
|
])
|
|
151
|
-
], template: "<div [ngClass]=\"{'border-t border-b border-neutral-base -mb-px': hasDividers()}\" [class]=\"classes\">\n <div *ngIf=\"divider\"><p>{{ divider }}</p></div>\n <div *ngIf=\"!divider\">\n <div class=\"relative flex items-start py-base\">\n <div class=\"flex items-center mx-sm\">\n <input #input class=\"w-6 h-6 text-primary-base transition duration-150 ease-in-out border-black focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-offset-0 focus:ring-warning-base disabled:bg-neutral-base disabled:border-neutral-base text-primary-base\"\n [attr.id]=\"radioId\"\n [attr.name]=\"name ? name : getNameRadio()\"\n type=\"radio\"\n [value]=\"value\" (change)=\"hasChanged()\"\n [checked]=\"checked\"\n [attr.disabled]=\"disabled ? true : null\"\n [attr.aria-controls]=\"conditionalContentList && conditionalContentList.length > 0 ? 'conditional-' + this.radioId : null\"\n [attr.aria-describedby]=\"[getDescribedBy(), getItemHintId()] | makeHtmlList:null\"\n [attr.aria-invalid]=\"hasError ? true : null\"\n \n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : 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-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.tabindex]=\"tabindex ? tabindex : null\">\n </div>\n \n <div class=\"pt-0.5 leading-5\">\n <ng-container *ngIf=\"labelComponentList && labelComponentList.length > 0\">\n <ng-content select=\"desy-label\"></ng-content>\n </ng-container>\n <ng-container *ngIf=\"!(labelComponentList && labelComponentList.length > 0)\">\n <desy-label [for]=\"radioId\">\n <ng-content></ng-content>\n </desy-label>\n </ng-container>\n \n <ng-content select=\"desy-hint\"></ng-content>\n </div>\n </div>\n </div>\n <div *ngIf=\"conditional && conditionalContentList && conditionalContentList.length > 0 && checked\" @displayConditional\n class=\"mb-lg ml-5 pt-sm pb-base pl-6 origin-top-left border-l-2 border-primary-base\"\n [attr.id]=\"'conditional-' + this.radioId\">\n <ng-container *desyCustomInnerContent=\"{ component: conditionalContentList.first }\"></ng-container>\n </div>\n</div>\n\n" }]
|
|
152
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef,
|
|
153
|
-
type: Host
|
|
154
|
-
}] }, { type: i1.RadioService }]; }, propDecorators: { inputElement: [{
|
|
141
|
+
], template: "<div [ngClass]=\"{'border-t border-b border-neutral-base -mb-px': hasDividers()}\" [class]=\"classes\">\n <div *ngIf=\"divider\"><p>{{ divider }}</p></div>\n <div *ngIf=\"!divider\">\n <div class=\"relative flex items-start py-base\">\n <div class=\"flex items-center mx-sm\">\n <input #input class=\"w-6 h-6 text-primary-base transition duration-150 ease-in-out border-black focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-offset-0 focus:ring-warning-base disabled:bg-neutral-base disabled:border-neutral-base text-primary-base\"\n [attr.id]=\"radioId\"\n [attr.name]=\"name ? name : getNameRadio()\"\n type=\"radio\"\n [value]=\"value\" (change)=\"hasChanged()\"\n [checked]=\"checked\"\n [attr.disabled]=\"disabled || parentDisabled ? true : null\"\n [attr.aria-controls]=\"conditionalContentList && conditionalContentList.length > 0 ? 'conditional-' + this.radioId : null\"\n [attr.aria-describedby]=\"[getDescribedBy(), getItemHintId()] | makeHtmlList:null\"\n [attr.aria-invalid]=\"hasError ? true : null\"\n \n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : 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-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.tabindex]=\"tabindex ? tabindex : null\">\n </div>\n \n <div class=\"pt-0.5 leading-5\">\n <ng-container *ngIf=\"labelComponentList && labelComponentList.length > 0\">\n <ng-content select=\"desy-label\"></ng-content>\n </ng-container>\n <ng-container *ngIf=\"!(labelComponentList && labelComponentList.length > 0)\">\n <desy-label [for]=\"radioId\">\n <ng-content></ng-content>\n </desy-label>\n </ng-container>\n \n <ng-content select=\"desy-hint\"></ng-content>\n </div>\n </div>\n </div>\n <div *ngIf=\"conditional && conditionalContentList && conditionalContentList.length > 0 && checked\" @displayConditional\n class=\"mb-lg ml-5 pt-sm pb-base pl-6 origin-top-left border-l-2 border-primary-base\"\n [attr.id]=\"'conditional-' + this.radioId\">\n <ng-container *desyCustomInnerContent=\"{ component: conditionalContentList.first }\"></ng-container>\n </div>\n</div>\n\n" }]
|
|
142
|
+
}], ctorParameters: function () { return [{ type: i1.RadiosParentComponent }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { inputElement: [{
|
|
155
143
|
type: ViewChild,
|
|
156
144
|
args: ['input']
|
|
157
145
|
}], id: [{
|
|
@@ -182,4 +170,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
182
170
|
}], checkedChange: [{
|
|
183
171
|
type: Output
|
|
184
172
|
}] } });
|
|
185
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8taXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvcmFkaW9zL3JhZGlvLWl0ZW0vcmFkaW8taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvcmFkaW9zL3JhZGlvLWl0ZW0vcmFkaW8taXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsU0FBUyxFQUNULGVBQWUsRUFFZixZQUFZLEVBQ1osSUFBSSxFQUNKLEtBQUssRUFFTCxNQUFNLEVBR04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ25FLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUMvRixPQUFPLEVBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDcEcsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7O0FBRXhELDZGQUE2RjtBQXdCN0YsTUFBTSxPQUFPLGtCQUFtQixTQUFRLG9CQUFvQjtJQXdCMUQsWUFBNEIsaUJBQW9DLEVBQVUsWUFBMEI7UUFDbEcsS0FBSyxFQUFFLENBQUM7UUFEa0Isc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBUDFGLGtCQUFhLEdBQXNC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Qzs2QkFDMUIsQ0FBQzs0QkFDRixVQUFVLENBQUMsUUFBUSxFQUFFO2dDQUNuQixLQUFLLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDOzZCQUM5QyxDQUFDO3lCQUNILENBQUM7cUJBQ0g7OzBCQTBCWSxJQUFJO3VFQXRCRyxZQUFZO3NCQUEvQixTQUFTO3VCQUFDLE9BQU87Z0JBRVQsRUFBRTtzQkFBVixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRTJCLGtCQUFrQjtzQkFBbEQsZUFBZTt1QkFBQyxjQUFjO2dCQUNDLGlCQUFpQjtzQkFBaEQsZUFBZTt1QkFBQyxhQUFhO2dCQUNLLHNCQUFzQjtzQkFBeEQsZUFBZTt1QkFBQyxnQkFBZ0I7Z0JBRXhCLE9BQU87c0JBQWYsS0FBSztnQkFDSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3QsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtJdGVtUmFkaW9EYXRhfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7Q29udGVudEJhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzJztcbmltcG9ydCB7TGFiZWxDb21wb25lbnR9IGZyb20gJy4uLy4uL2xhYmVsL2xhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQge0NvbnRlbnRDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uLy4uL2Rlc3ktY29tbW9ucy9jb21wb25lbnRzL2NvbnRlbnQvY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHthbmltYXRlLCBhbmltYXRlQ2hpbGQsIHF1ZXJ5LCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXJ9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtIaW50Q29tcG9uZW50fSBmcm9tICcuLi8uLi9oaW50L2hpbnQuY29tcG9uZW50JztcbmltcG9ydCB7IFJhZGlvU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3JhZGlvLnNlcnZpY2UnO1xuLy8gVE9ETyBsb3MgaGlqb3Mgbm8gcHVlZGVuIGNvbnRlbmVyIGFsIHBhZHJlLCBsb3MgbWV0b2RvcyBoYXkgcXVlIHBhc2FybG9zIGFsIHBhZHJlIChyYWRpb3MpXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Rlc3ktcmFkaW8taXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnLi9yYWRpby1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ2Rpc3BsYXlDb25kaXRpb25hbCcsIFtcbiAgICAgIHN0YXRlKCd2b2lkJywgc3R5bGUoe1xuICAgICAgICBvcGFjaXR5OiAnMC4wJyxcbiAgICAgICAgdHJhbnNmb3JtOiAnc2NhbGUoMC45NSknXG4gICAgICB9KSksXG4gICAgICBzdGF0ZSgnKicsIHN0eWxlKHtcbiAgICAgICAgb3BhY2l0eTogJzEuMCcsXG4gICAgICAgIHRyYW5zZm9ybTogJ3NjYWxlKDEuMCknXG4gICAgICB9KSksXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgIGFuaW1hdGUoJzEwMG1zIGVhc2Utb3V0JylcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbignKiA9PiAqJywgW1xuICAgICAgICBxdWVyeSgnQConLCBhbmltYXRlQ2hpbGQoKSwge29wdGlvbmFsOiB0cnVlfSlcbiAgICAgIF0pXG4gICAgXSlcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBSYWRpb0l0ZW1Db21wb25lbnQgZXh0ZW5kcyBDb250ZW50QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIEl0ZW1SYWRpb0RhdGEge1xuXG4gIEBWaWV3Q2hpbGQoJ2lucHV0JykgaW5wdXRFbGVtZW50OiBFbGVtZW50UmVmO1xuXG4gIEBJbnB1dCgpIGlkOiBzdHJpbmc7XG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZztcbiAgQElucHV0KCkgdmFsdWU6IGFueTtcbiAgQElucHV0KCkgY29uZGl0aW9uYWw6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBkaXZpZGVyOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcblxuICBAQ29udGVudENoaWxkcmVuKExhYmVsQ29tcG9uZW50KSBsYWJlbENvbXBvbmVudExpc3Q6IFF1ZXJ5TGlzdDxMYWJlbENvbXBvbmVudD47XG4gIEBDb250ZW50Q2hpbGRyZW4oSGludENvbXBvbmVudCkgaGludENvbXBvbmVudExpc3Q6IFF1ZXJ5TGlzdDxIaW50Q29tcG9uZW50PjtcbiAgQENvbnRlbnRDaGlsZHJlbihDb250ZW50Q29tcG9uZW50KSBjb25kaXRpb25hbENvbnRlbnRMaXN0OiBRdWVyeUxpc3Q8Q29udGVudENvbXBvbmVudD47XG5cbiAgQElucHV0KCkgY2hlY2tlZDogYm9vbGVhbjtcbiAgQE91dHB1dCgpIGNoZWNrZWRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgaW5kZXggPSAwO1xuICBsYXN0Q2hlY2tlZDtcbiAgbGFzdFZhbHVlO1xuICByYWRpb0lkO1xuXG4gIGNvbnN0cnVjdG9yKEBIb3N0KCkgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgcmFkaW9TZXJ2aWNlOiBSYWRpb1NlcnZpY2UpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yYWRpb1NlcnZpY2UubWFya0ZvclVwZGF0ZUNoZWNrYm94SWRzKHRoaXMubmFtZSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnJhZGlvU2VydmljZS5tYXJrRm9yVXBkYXRlQ2hlY2tib3hJZHModGhpcy5uYW1lKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgaWYgKHRoaXMuY2hlY2tlZCAhPT0gdGhpcy5sYXN0Q2hlY2tlZCAmJiB0aGlzLmlzSW5pdCgpKSB7XG4gICAgICAgdGhpcy5zZXRDaGVja2VkKHRoaXMuY2hlY2tlZCk7XG4gICAgICAgdGhpcy5yYWRpb1NlcnZpY2UudXBkYXRlVmFsdWVGcm9tUmFkaW9JdGVtcyh0aGlzLm5hbWUpO1xuICAgICB9IGVsc2UgaWYgKHRoaXMubGFzdFZhbHVlICE9PSB1bmRlZmluZWQgJiYgdGhpcy5sYXN0VmFsdWUgIT09IHRoaXMudmFsdWUpIHtcbiAgICAgICB0aGlzLnJhZGlvU2VydmljZS51cGRhdGVWYWx1ZUZyb21SYWRpb0l0ZW1zKHRoaXMubmFtZSk7XG4gICAgIH1cbiAgICAgdGhpcy5sYXN0VmFsdWUgPSB0aGlzLnZhbHVlO1xuXG4gICAgIGlmICh0aGlzLmlkICE9PSB0aGlzLnJhZGlvSWQpIHtcbiAgICAgIHRoaXMucmFkaW9TZXJ2aWNlLm1hcmtGb3JVcGRhdGVDaGVja2JveElkcyh0aGlzLm5hbWUpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldENoZWNrZWQodGhpcy5jaGVja2VkKTtcbiAgICB0aGlzLnJhZGlvU2VydmljZS51cGRhdGVWYWx1ZUZyb21SYWRpb0l0ZW1zKHRoaXMubmFtZSk7XG4gIH1cblxuICBzZXRDaGVja2VkKGNoZWNrZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrZWQgPSBjaGVja2VkO1xuICAgIHRoaXMubGFzdENoZWNrZWQgPSBjaGVja2VkO1xuICAgIHRoaXMuY2hlY2tlZENoYW5nZS5lbWl0KGNoZWNrZWQpO1xuICAgIGlmKHRoaXMuY2hlY2tlZCl7XG4gICAgICBsZXQgaW5kZXggPSB0aGlzLnJhZGlvU2VydmljZS5nZXRSYWRpb1NlcnZpY2VJdGVtKHRoaXMubmFtZSk7XG4gICAgICB0aGlzLnJhZGlvU2VydmljZS5yYWRpb1NlcnZpY2VJdGVtc1tpbmRleF0ubmV4dFZhbHVlID0gdGhpcy52YWx1ZTtcbiAgICB9XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICAvKlxuICAgKiBGdW5jaW9uZXMgcGFyYSBhcG9ydGFyIGluZm9ybWFjacOzbiBkZXNkZSBlbCBjb21wb25lbnRlIGNoZWNrYm94ZXMgcXVlIGxvIGNvbnRpZW5lXG4gICAqL1xuXG4gIGdldEl0ZW1IaW50SWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5oaW50Q29tcG9uZW50TGlzdCAmJiB0aGlzLmhpbnRDb21wb25lbnRMaXN0Lmxlbmd0aCA+IDAgJiYgdGhpcy5yYWRpb0lkID8gdGhpcy5yYWRpb0lkICsgJy1pdGVtLWhpbnQnIDogbnVsbDtcbiAgfVxuXG4gIGhhc0NoYW5nZWQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRDaGVja2VkKHRoaXMuaXNJbnB1dENoZWNrZWQoKSk7XG4gICAgdGhpcy5yYWRpb1NlcnZpY2UudXBkYXRlVmFsdWVGcm9tUmFkaW9JdGVtcyh0aGlzLm5hbWUpO1xuICB9XG5cbiAgaXNJbml0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuaW5wdXRFbGVtZW50O1xuICB9XG5cbiAgaXNJbnB1dENoZWNrZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaW5wdXRFbGVtZW50ID8gdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5jaGVja2VkIDogbnVsbDtcbiAgfVxuXG4gIHVwZGF0ZVJhZGlvSWQoaW5kZXg/OiBudW1iZXIpOiB2b2lkIHtcbiAgICBsZXQgaSA9IHRoaXMucmFkaW9TZXJ2aWNlLmdldFJhZGlvU2VydmljZUl0ZW0odGhpcy5uYW1lKTtcbiAgIGlmICh0aGlzLmlkKSB7XG4gICAgICAgdGhpcy5yYWRpb0lkID0gdGhpcy5pZDtcbiAgICAgfSBlbHNlIHtcbiAgICAgICBjb25zdCBpZFByZWZpeCA9IHRoaXMucmFkaW9TZXJ2aWNlLnJhZGlvU2VydmljZUl0ZW1zW2ldLmlkUHJlZml4ID8gdGhpcy5yYWRpb1NlcnZpY2UucmFkaW9TZXJ2aWNlSXRlbXNbaV0uaWRQcmVmaXggOiB0aGlzLnJhZGlvU2VydmljZS5yYWRpb1NlcnZpY2VJdGVtc1tpXS5uYW1lUmFkaW87XG4gICAgICAgaWYgKGluZGV4ID09PSAwKSB7XG4gICAgICAgICB0aGlzLnJhZGlvSWQgPSBpZFByZWZpeDtcbiAgICAgICB9IGVsc2Uge1xuICAgICAgICAgdGhpcy5yYWRpb0lkID0gYCR7aWRQcmVmaXh9LSR7aW5kZXh9YDtcbiAgICAgICB9XG4gICAgIH1cblxuICAgICBpZiAodGhpcy5sYWJlbENvbXBvbmVudExpc3QgJiYgdGhpcy5sYWJlbENvbXBvbmVudExpc3QubGVuZ3RoID4gMCkge1xuICAgICAgIHRoaXMubGFiZWxDb21wb25lbnRMaXN0LmZpcnN0LmZvciA9IHRoaXMucmFkaW9JZDtcbiAgICAgfVxuXG4gICAgIGlmICh0aGlzLmhpbnRDb21wb25lbnRMaXN0ICYmIHRoaXMuaGludENvbXBvbmVudExpc3QubGVuZ3RoID4gMCkge1xuICAgICAgIHRoaXMuaGludENvbXBvbmVudExpc3QuZmlyc3QuaWQgPSB0aGlzLmdldEl0ZW1IaW50SWQoKTtcbiAgICAgfVxuXG4gICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgLypcbiAgKiBGdW5jaW9uZXMgcGFyYSBhcG9ydGFyIGluZm9ybWFjacOzbiBkZXNkZSBlbCBjb21wb25lbnRlIGNoZWNrYm94ZXMgcXVlIGxvIGNvbnRpZW5lXG4gICovXG5cbiAgaGFzRGl2aWRlcnMoKTogYm9vbGVhbiB7XG4gICAgbGV0IGkgPSB0aGlzLnJhZGlvU2VydmljZS5nZXRSYWRpb1NlcnZpY2VJdGVtKHRoaXMubmFtZSk7XG4gICAgcmV0dXJuIGkgIT09IC0xID8gdGhpcy5yYWRpb1NlcnZpY2UucmFkaW9TZXJ2aWNlSXRlbXNbaV0uZGl2aWRlcnMgOiBudWxsO1xuICB9XG5cbiAgaGFzRXJyb3IoKTogYm9vbGVhbiB7XG4gICAgbGV0IGkgPSB0aGlzLnJhZGlvU2VydmljZS5nZXRSYWRpb1NlcnZpY2VJdGVtKHRoaXMubmFtZSk7XG4gICAgcmV0dXJuIGkgIT09IC0xID8gdGhpcy5yYWRpb1NlcnZpY2UucmFkaW9TZXJ2aWNlSXRlbXNbaV0uZXJyb3IgOiBudWxsO1xuICB9XG5cbiAgZ2V0TmFtZVJhZGlvKCk6IHN0cmluZyB7XG4gICAgbGV0IGkgPSB0aGlzLnJhZGlvU2VydmljZS5nZXRSYWRpb1NlcnZpY2VJdGVtKHRoaXMubmFtZSk7XG4gICAgcmV0dXJuIGkgIT09IC0xID8gdGhpcy5yYWRpb1NlcnZpY2UucmFkaW9TZXJ2aWNlSXRlbXNbaV0ubmFtZVJhZGlvIDogbnVsbDtcbiAgfVxuXG4gIGdldERlc2NyaWJlZEJ5KCk6IHN0cmluZyB7XG4gICAgbGV0IGkgPSB0aGlzLnJhZGlvU2VydmljZS5nZXRSYWRpb1NlcnZpY2VJdGVtKHRoaXMubmFtZSk7XG4gICAgcmV0dXJuIGkgIT09IC0xID8gKCF0aGlzLnJhZGlvU2VydmljZS5yYWRpb1NlcnZpY2VJdGVtc1tpXS5maWVsZFNldCA/IHRoaXMucmFkaW9TZXJ2aWNlLnJhZGlvU2VydmljZUl0ZW1zW2ldLmRlc2NyaWJlZEJ5IDogbnVsbCkgOiBudWxsO1xuICB9XG5cbn1cbiIsIjxkaXYgW25nQ2xhc3NdPVwieydib3JkZXItdCBib3JkZXItYiBib3JkZXItbmV1dHJhbC1iYXNlIC1tYi1weCc6IGhhc0RpdmlkZXJzKCl9XCIgW2NsYXNzXT1cImNsYXNzZXNcIj5cbiAgPGRpdiAqbmdJZj1cImRpdmlkZXJcIj48cD57eyBkaXZpZGVyIH19PC9wPjwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiIWRpdmlkZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwicmVsYXRpdmUgZmxleCBpdGVtcy1zdGFydCBweS1iYXNlXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgbXgtc21cIj5cbiAgICAgICAgPGlucHV0ICNpbnB1dCBjbGFzcz1cInctNiBoLTYgdGV4dC1wcmltYXJ5LWJhc2UgdHJhbnNpdGlvbiBkdXJhdGlvbi0xNTAgZWFzZS1pbi1vdXQgYm9yZGVyLWJsYWNrIGZvY3VzOmJvcmRlci1ibGFjayBmb2N1czpzaGFkb3ctb3V0bGluZS1mb2N1cy1pbnB1dCBmb2N1czpyaW5nLTQgZm9jdXM6cmluZy1vZmZzZXQtMCBmb2N1czpyaW5nLXdhcm5pbmctYmFzZSBkaXNhYmxlZDpiZy1uZXV0cmFsLWJhc2UgZGlzYWJsZWQ6Ym9yZGVyLW5ldXRyYWwtYmFzZSB0ZXh0LXByaW1hcnktYmFzZVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwicmFkaW9JZFwiXG4gICAgICAgICAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lID8gbmFtZSA6IGdldE5hbWVSYWRpbygpXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiIChjaGFuZ2UpPVwiaGFzQ2hhbmdlZCgpXCJcbiAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJjaGVja2VkXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCA/IHRydWUgOiBudWxsXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cImNvbmRpdGlvbmFsQ29udGVudExpc3QgJiYgY29uZGl0aW9uYWxDb250ZW50TGlzdC5sZW5ndGggPiAwID8gJ2NvbmRpdGlvbmFsLScgKyB0aGlzLnJhZGlvSWQgOiBudWxsXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cIltnZXREZXNjcmliZWRCeSgpLCBnZXRJdGVtSGludElkKCldIHwgbWFrZUh0bWxMaXN0Om51bGxcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtaW52YWxpZF09XCJoYXNFcnJvciA/IHRydWUgOiBudWxsXCJcbiAgXG4gICAgICAgICAgICAgICAgW2F0dHIucm9sZV09XCJyb2xlID8gcm9sZSA6IG51bGxcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsID8gYXJpYUxhYmVsIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5ID8gYXJpYUxhYmVsbGVkQnkgOiBudWxsXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWhpZGRlbl09XCJhcmlhSGlkZGVuID8gYXJpYUhpZGRlbiA6IG51bGxcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiYXJpYURpc2FibGVkID8gYXJpYURpc2FibGVkIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1jdXJyZW50XT1cImFyaWFDdXJyZW50ID8gYXJpYUN1cnJlbnQgOiBudWxsXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxpdmVdPVwiYXJpYUxpdmUgPyBhcmlhTGl2ZSA6IG51bGxcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiYXJpYUV4cGFuZGVkID8gYXJpYUV4cGFuZGVkIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1lcnJvcm1lc3NhZ2VdPVwiYXJpYUVycm9yTWVzc2FnZSA/IGFyaWFFcnJvck1lc3NhZ2UgOiBudWxsXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWhhc3BvcHVwXT1cImFyaWFIYXNQb3B1cCA/IGFyaWFIYXNQb3B1cCA6IG51bGxcIlxuICAgICAgICAgICAgICAgIFthdHRyLnRhYmluZGV4XT1cInRhYmluZGV4ID8gdGFiaW5kZXggOiBudWxsXCI+XG4gICAgICAgIDwvZGl2PlxuICBcbiAgICAgICAgPGRpdiBjbGFzcz1cInB0LTAuNSBsZWFkaW5nLTVcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYWJlbENvbXBvbmVudExpc3QgJiYgbGFiZWxDb21wb25lbnRMaXN0Lmxlbmd0aCA+IDBcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJkZXN5LWxhYmVsXCI+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIShsYWJlbENvbXBvbmVudExpc3QgJiYgbGFiZWxDb21wb25lbnRMaXN0Lmxlbmd0aCA+IDApXCI+XG4gICAgICAgICAgICAgICAgPGRlc3ktbGFiZWwgW2Zvcl09XCJyYWRpb0lkXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgICAgICAgICA8L2Rlc3ktbGFiZWw+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgXG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJkZXN5LWhpbnRcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cImNvbmRpdGlvbmFsICYmIGNvbmRpdGlvbmFsQ29udGVudExpc3QgJiYgY29uZGl0aW9uYWxDb250ZW50TGlzdC5sZW5ndGggPiAwICYmIGNoZWNrZWRcIiAgQGRpc3BsYXlDb25kaXRpb25hbFxuICAgICAgY2xhc3M9XCJtYi1sZyBtbC01IHB0LXNtIHBiLWJhc2UgcGwtNiBvcmlnaW4tdG9wLWxlZnQgYm9yZGVyLWwtMiBib3JkZXItcHJpbWFyeS1iYXNlXCJcbiAgICAgIFthdHRyLmlkXT1cIidjb25kaXRpb25hbC0nICsgdGhpcy5yYWRpb0lkXCI+XG4gICAgICA8bmctY29udGFpbmVyICpkZXN5Q3VzdG9tSW5uZXJDb250ZW50PVwieyBjb21wb25lbnQ6IGNvbmRpdGlvbmFsQ29udGVudExpc3QuZmlyc3QgfVwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG4iXX0=
|
|
173
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8taXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvcmFkaW9zL3JhZGlvLWl0ZW0vcmFkaW8taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvcmFkaW9zL3JhZGlvLWl0ZW0vcmFkaW8taXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsU0FBUyxFQUNULGVBQWUsRUFFZixZQUFZLEVBRVosS0FBSyxFQUVMLE1BQU0sRUFHTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDbkUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLCtEQUErRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7Ozs7Ozs7QUEwQnhELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxvQkFBb0I7SUEwQjFELFlBQW9CLE1BQTZCLEVBQVUsaUJBQW9DO1FBQzdGLEtBQUssRUFBRSxDQUFDO1FBRFUsV0FBTSxHQUFOLE1BQU0sQ0FBdUI7UUFBVSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBVHJGLGtCQUFhLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFFckUsVUFBSyxHQUFHLENBQUMsQ0FBQztJQVNWLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE1BQU0sQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDL0IsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3RELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQy9CLElBQUksQ0FBQyxNQUFNLENBQUMseUJBQXlCLEVBQUUsQ0FBQztTQUN4QzthQUFNLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ3pFLElBQUksQ0FBQyxNQUFNLENBQUMseUJBQXlCLEVBQUUsQ0FBQztTQUN4QztRQUNELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUU1QixJQUFJLElBQUksQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLHNCQUFzQixFQUFFLENBQUM7U0FDdEM7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxNQUFNLENBQUMseUJBQXlCLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRUQsVUFBVSxDQUFDLE9BQWdCO1FBQ3pCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDO1FBQzNCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7O09BRUc7SUFFSCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsaUJBQWlCLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUMxSCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDNUUsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFjO1FBQzFCLElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNWLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQztTQUN4QjthQUFNO1lBQ04sTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztZQUMvRSxJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUM7YUFDekI7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLFFBQVEsSUFBSSxLQUFLLEVBQUUsQ0FBQzthQUN2QztTQUNGO1FBRUQsSUFBSSxJQUFJLENBQUMsa0JBQWtCLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDakUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUNsRDtRQUVELElBQUksSUFBSSxDQUFDLGlCQUFpQixJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQy9ELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN4RDtRQUVELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRUQ7O01BRUU7SUFFRixXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztJQUNqQyxDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztJQUMxQixDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3JFLENBQUM7OytHQTlIVSxrQkFBa0I7bUdBQWxCLGtCQUFrQix5U0FZWixjQUFjLG9EQUNkLGFBQWEseURBQ2IsZ0JBQWdCLGdMQzVEbkMsdzdGQWtEQSxxa0JEdkJjO1FBQ1YsT0FBTyxDQUFDLG9CQUFvQixFQUFFO1lBQzVCLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDO2dCQUNsQixPQUFPLEVBQUUsS0FBSztnQkFDZCxTQUFTLEVBQUUsYUFBYTthQUN6QixDQUFDLENBQUM7WUFDSCxLQUFLLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQztnQkFDZixPQUFPLEVBQUUsS0FBSztnQkFDZCxTQUFTLEVBQUUsWUFBWTthQUN4QixDQUFDLENBQUM7WUFDSCxVQUFVLENBQUMsUUFBUSxFQUFFO2dCQUNuQixPQUFPLENBQUMsZ0JBQWdCLENBQUM7YUFDMUIsQ0FBQztZQUNGLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0JBQ25CLEtBQUssQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUM7YUFDOUMsQ0FBQztTQUNILENBQUM7S0FDSDsyRkFFVSxrQkFBa0I7a0JBdEI5QixTQUFTOytCQUNFLGlCQUFpQixjQUVmO3dCQUNWLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRTs0QkFDNUIsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUM7Z0NBQ2xCLE9BQU8sRUFBRSxLQUFLO2dDQUNkLFNBQVMsRUFBRSxhQUFhOzZCQUN6QixDQUFDLENBQUM7NEJBQ0gsS0FBSyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUM7Z0NBQ2YsT0FBTyxFQUFFLEtBQUs7Z0NBQ2QsU0FBUyxFQUFFLFlBQVk7NkJBQ3hCLENBQUMsQ0FBQzs0QkFDSCxVQUFVLENBQUMsUUFBUSxFQUFFO2dDQUNuQixPQUFPLENBQUMsZ0JBQWdCLENBQUM7NkJBQzFCLENBQUM7NEJBQ0YsVUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDbkIsS0FBSyxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsRUFBRSxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQzs2QkFDOUMsQ0FBQzt5QkFDSCxDQUFDO3FCQUNIOzRJQUltQixZQUFZO3NCQUEvQixTQUFTO3VCQUFDLE9BQU87Z0JBRVQsRUFBRTtzQkFBVixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRTJCLGtCQUFrQjtzQkFBbEQsZUFBZTt1QkFBQyxjQUFjO2dCQUNDLGlCQUFpQjtzQkFBaEQsZUFBZTt1QkFBQyxhQUFhO2dCQUNLLHNCQUFzQjtzQkFBeEQsZUFBZTt1QkFBQyxnQkFBZ0I7Z0JBRXhCLE9BQU87c0JBQWYsS0FBSztnQkFDSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3QsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtJdGVtUmFkaW9EYXRhfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7Q29udGVudEJhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzJztcbmltcG9ydCB7TGFiZWxDb21wb25lbnR9IGZyb20gJy4uLy4uL2xhYmVsL2xhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQge0NvbnRlbnRDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uLy4uL2Rlc3ktY29tbW9ucy9jb21wb25lbnRzL2NvbnRlbnQvY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHthbmltYXRlLCBhbmltYXRlQ2hpbGQsIHF1ZXJ5LCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXJ9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtIaW50Q29tcG9uZW50fSBmcm9tICcuLi8uLi9oaW50L2hpbnQuY29tcG9uZW50JztcbmltcG9ydCB7IFJhZGlvc1BhcmVudENvbXBvbmVudCB9IGZyb20gJy4uL3JhZGlvcy1wYXJlbnQuY29tcG9uZW50JztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkZXN5LXJhZGlvLWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vcmFkaW8taXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdkaXNwbGF5Q29uZGl0aW9uYWwnLCBbXG4gICAgICBzdGF0ZSgndm9pZCcsIHN0eWxlKHtcbiAgICAgICAgb3BhY2l0eTogJzAuMCcsXG4gICAgICAgIHRyYW5zZm9ybTogJ3NjYWxlKDAuOTUpJ1xuICAgICAgfSkpLFxuICAgICAgc3RhdGUoJyonLCBzdHlsZSh7XG4gICAgICAgIG9wYWNpdHk6ICcxLjAnLFxuICAgICAgICB0cmFuc2Zvcm06ICdzY2FsZSgxLjApJ1xuICAgICAgfSkpLFxuICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xuICAgICAgICBhbmltYXRlKCcxMDBtcyBlYXNlLW91dCcpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJyogPT4gKicsIFtcbiAgICAgICAgcXVlcnkoJ0AqJywgYW5pbWF0ZUNoaWxkKCksIHtvcHRpb25hbDogdHJ1ZX0pXG4gICAgICBdKVxuICAgIF0pXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUmFkaW9JdGVtQ29tcG9uZW50IGV4dGVuZHMgQ29udGVudEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBBZnRlclZpZXdJbml0LCBJdGVtUmFkaW9EYXRhIHtcblxuICBAVmlld0NoaWxkKCdpbnB1dCcpIGlucHV0RWxlbWVudDogRWxlbWVudFJlZjtcblxuICBASW5wdXQoKSBpZDogc3RyaW5nO1xuICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHZhbHVlOiBhbnk7XG4gIEBJbnB1dCgpIGNvbmRpdGlvbmFsOiBib29sZWFuO1xuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcbiAgQElucHV0KCkgZGl2aWRlcjogc3RyaW5nO1xuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihMYWJlbENvbXBvbmVudCkgbGFiZWxDb21wb25lbnRMaXN0OiBRdWVyeUxpc3Q8TGFiZWxDb21wb25lbnQ+O1xuICBAQ29udGVudENoaWxkcmVuKEhpbnRDb21wb25lbnQpIGhpbnRDb21wb25lbnRMaXN0OiBRdWVyeUxpc3Q8SGludENvbXBvbmVudD47XG4gIEBDb250ZW50Q2hpbGRyZW4oQ29udGVudENvbXBvbmVudCkgY29uZGl0aW9uYWxDb250ZW50TGlzdDogUXVlcnlMaXN0PENvbnRlbnRDb21wb25lbnQ+O1xuXG4gIEBJbnB1dCgpIGNoZWNrZWQ6IGJvb2xlYW47XG4gIEBPdXRwdXQoKSBjaGVja2VkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGluZGV4ID0gMDtcbiAgbGFzdENoZWNrZWQ7XG4gIGxhc3RWYWx1ZTtcbiAgcmFkaW9JZDtcblxuICBwYXJlbnREaXNhYmxlZDogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJhZGlvczogUmFkaW9zUGFyZW50Q29tcG9uZW50LCBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnJhZGlvcy5tYXJrRm9yVXBkYXRlUmFkaW9zSWRzKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnJhZGlvcy5tYXJrRm9yVXBkYXRlUmFkaW9zSWRzKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgIGlmICh0aGlzLmNoZWNrZWQgIT09IHRoaXMubGFzdENoZWNrZWQgJiYgdGhpcy5pc0luaXQoKSkge1xuICAgICAgIHRoaXMuc2V0Q2hlY2tlZCh0aGlzLmNoZWNrZWQpO1xuICAgICAgdGhpcy5yYWRpb3MudXBkYXRlVmFsdWVGcm9tUmFkaW9JdGVtcygpO1xuICAgICB9IGVsc2UgaWYgKHRoaXMubGFzdFZhbHVlICE9PSB1bmRlZmluZWQgJiYgdGhpcy5sYXN0VmFsdWUgIT09IHRoaXMudmFsdWUpIHtcbiAgICAgIHRoaXMucmFkaW9zLnVwZGF0ZVZhbHVlRnJvbVJhZGlvSXRlbXMoKTtcbiAgICAgfVxuICAgICB0aGlzLmxhc3RWYWx1ZSA9IHRoaXMudmFsdWU7XG5cbiAgICAgaWYgKHRoaXMuaWQgIT09IHRoaXMucmFkaW9JZCkge1xuICAgICAgdGhpcy5yYWRpb3MubWFya0ZvclVwZGF0ZVJhZGlvc0lkcygpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldENoZWNrZWQodGhpcy5jaGVja2VkKTtcbiAgICB0aGlzLnJhZGlvcy51cGRhdGVWYWx1ZUZyb21SYWRpb0l0ZW1zKCk7XG4gIH1cblxuICBzZXRDaGVja2VkKGNoZWNrZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrZWQgPSBjaGVja2VkO1xuICAgIHRoaXMubGFzdENoZWNrZWQgPSBjaGVja2VkO1xuICAgIHRoaXMuY2hlY2tlZENoYW5nZS5lbWl0KGNoZWNrZWQpO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgLypcbiAgICogRnVuY2lvbmVzIHBhcmEgYXBvcnRhciBpbmZvcm1hY2nDs24gZGVzZGUgZWwgY29tcG9uZW50ZSBjaGVja2JveGVzIHF1ZSBsbyBjb250aWVuZVxuICAgKi9cblxuICBnZXRJdGVtSGludElkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaGludENvbXBvbmVudExpc3QgJiYgdGhpcy5oaW50Q29tcG9uZW50TGlzdC5sZW5ndGggPiAwICYmIHRoaXMucmFkaW9JZCA/IHRoaXMucmFkaW9JZCArICctaXRlbS1oaW50JyA6IG51bGw7XG4gIH1cblxuICBoYXNDaGFuZ2VkKCk6IHZvaWQge1xuICAgIHRoaXMuc2V0Q2hlY2tlZCh0aGlzLmlzSW5wdXRDaGVja2VkKCkpO1xuICAgIHRoaXMucmFkaW9zLnVwZGF0ZVZhbHVlRnJvbVJhZGlvSXRlbXMoKTtcbiAgfVxuXG4gIGlzSW5pdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmlucHV0RWxlbWVudDtcbiAgfVxuXG4gIGlzSW5wdXRDaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlucHV0RWxlbWVudCA/IHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2hlY2tlZCA6IG51bGw7XG4gIH1cblxuICB1cGRhdGVSYWRpb0lkKGluZGV4PzogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaWQpIHtcbiAgICAgICB0aGlzLnJhZGlvSWQgPSB0aGlzLmlkO1xuICAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgaWRQcmVmaXggPSB0aGlzLnJhZGlvcy5pZFByZWZpeCA/IHRoaXMucmFkaW9zLmlkUHJlZml4IDogdGhpcy5yYWRpb3MubmFtZTtcbiAgICAgICBpZiAoaW5kZXggPT09IDApIHtcbiAgICAgICAgIHRoaXMucmFkaW9JZCA9IGlkUHJlZml4O1xuICAgICAgIH0gZWxzZSB7XG4gICAgICAgICB0aGlzLnJhZGlvSWQgPSBgJHtpZFByZWZpeH0tJHtpbmRleH1gO1xuICAgICAgIH1cbiAgICAgfVxuXG4gICAgIGlmICh0aGlzLmxhYmVsQ29tcG9uZW50TGlzdCAmJiB0aGlzLmxhYmVsQ29tcG9uZW50TGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICAgdGhpcy5sYWJlbENvbXBvbmVudExpc3QuZmlyc3QuZm9yID0gdGhpcy5yYWRpb0lkO1xuICAgICB9XG5cbiAgICAgaWYgKHRoaXMuaGludENvbXBvbmVudExpc3QgJiYgdGhpcy5oaW50Q29tcG9uZW50TGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICAgdGhpcy5oaW50Q29tcG9uZW50TGlzdC5maXJzdC5pZCA9IHRoaXMuZ2V0SXRlbUhpbnRJZCgpO1xuICAgICB9XG5cbiAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICAvKlxuICAqIEZ1bmNpb25lcyBwYXJhIGFwb3J0YXIgaW5mb3JtYWNpw7NuIGRlc2RlIGVsIGNvbXBvbmVudGUgY2hlY2tib3hlcyBxdWUgbG8gY29udGllbmVcbiAgKi9cblxuICBoYXNEaXZpZGVycygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5yYWRpb3MuaGFzRGl2aWRlcnM7XG4gIH1cblxuICBoYXNFcnJvcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5yYWRpb3MuaGFzRXJyb3JzTWVzc2FnZSgpO1xuICB9XG5cbiAgZ2V0TmFtZVJhZGlvKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmFkaW9zLm5hbWU7XG4gIH1cblxuICBnZXREZXNjcmliZWRCeSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAhdGhpcy5yYWRpb3MuaGFzRmllbGRzZXQoKSA/IHRoaXMucmFkaW9zLmRlc2NyaWJlZEJ5IDogbnVsbDtcbiAgfVxuXG59XG4iLCI8ZGl2IFtuZ0NsYXNzXT1cInsnYm9yZGVyLXQgYm9yZGVyLWIgYm9yZGVyLW5ldXRyYWwtYmFzZSAtbWItcHgnOiBoYXNEaXZpZGVycygpfVwiIFtjbGFzc109XCJjbGFzc2VzXCI+XG4gIDxkaXYgKm5nSWY9XCJkaXZpZGVyXCI+PHA+e3sgZGl2aWRlciB9fTwvcD48L2Rpdj5cbiAgPGRpdiAqbmdJZj1cIiFkaXZpZGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cInJlbGF0aXZlIGZsZXggaXRlbXMtc3RhcnQgcHktYmFzZVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIG14LXNtXCI+XG4gICAgICAgIDxpbnB1dCAjaW5wdXQgY2xhc3M9XCJ3LTYgaC02IHRleHQtcHJpbWFyeS1iYXNlIHRyYW5zaXRpb24gZHVyYXRpb24tMTUwIGVhc2UtaW4tb3V0IGJvcmRlci1ibGFjayBmb2N1czpib3JkZXItYmxhY2sgZm9jdXM6c2hhZG93LW91dGxpbmUtZm9jdXMtaW5wdXQgZm9jdXM6cmluZy00IGZvY3VzOnJpbmctb2Zmc2V0LTAgZm9jdXM6cmluZy13YXJuaW5nLWJhc2UgZGlzYWJsZWQ6YmctbmV1dHJhbC1iYXNlIGRpc2FibGVkOmJvcmRlci1uZXV0cmFsLWJhc2UgdGV4dC1wcmltYXJ5LWJhc2VcIlxuICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cInJhZGlvSWRcIlxuICAgICAgICAgICAgICAgIFthdHRyLm5hbWVdPVwibmFtZSA/IG5hbWUgOiBnZXROYW1lUmFkaW8oKVwiXG4gICAgICAgICAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIiAoY2hhbmdlKT1cImhhc0NoYW5nZWQoKVwiXG4gICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiY2hlY2tlZFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgcGFyZW50RGlzYWJsZWQgPyB0cnVlIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCJjb25kaXRpb25hbENvbnRlbnRMaXN0ICYmIGNvbmRpdGlvbmFsQ29udGVudExpc3QubGVuZ3RoID4gMCA/ICdjb25kaXRpb25hbC0nICsgdGhpcy5yYWRpb0lkIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJbZ2V0RGVzY3JpYmVkQnkoKSwgZ2V0SXRlbUhpbnRJZCgpXSB8IG1ha2VIdG1sTGlzdDpudWxsXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWludmFsaWRdPVwiaGFzRXJyb3IgPyB0cnVlIDogbnVsbFwiXG4gIFxuICAgICAgICAgICAgICAgIFthdHRyLnJvbGVdPVwicm9sZSA/IHJvbGUgOiBudWxsXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbCA/IGFyaWFMYWJlbCA6IG51bGxcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRCeSA/IGFyaWFMYWJlbGxlZEJ5IDogbnVsbFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1oaWRkZW5dPVwiYXJpYUhpZGRlbiA/IGFyaWFIaWRkZW4gOiBudWxsXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImFyaWFEaXNhYmxlZCA/IGFyaWFEaXNhYmxlZCA6IG51bGxcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtY3VycmVudF09XCJhcmlhQ3VycmVudCA/IGFyaWFDdXJyZW50IDogbnVsbFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1saXZlXT1cImFyaWFMaXZlID8gYXJpYUxpdmUgOiBudWxsXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImFyaWFFeHBhbmRlZCA/IGFyaWFFeHBhbmRlZCA6IG51bGxcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtZXJyb3JtZXNzYWdlXT1cImFyaWFFcnJvck1lc3NhZ2UgPyBhcmlhRXJyb3JNZXNzYWdlIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCJhcmlhSGFzUG9wdXAgPyBhcmlhSGFzUG9wdXAgOiBudWxsXCJcbiAgICAgICAgICAgICAgICBbYXR0ci50YWJpbmRleF09XCJ0YWJpbmRleCA/IHRhYmluZGV4IDogbnVsbFwiPlxuICAgICAgICA8L2Rpdj5cbiAgXG4gICAgICAgIDxkaXYgY2xhc3M9XCJwdC0wLjUgbGVhZGluZy01XCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibGFiZWxDb21wb25lbnRMaXN0ICYmIGxhYmVsQ29tcG9uZW50TGlzdC5sZW5ndGggPiAwXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZGVzeS1sYWJlbFwiPjwvbmctY29udGVudD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiEobGFiZWxDb21wb25lbnRMaXN0ICYmIGxhYmVsQ29tcG9uZW50TGlzdC5sZW5ndGggPiAwKVwiPlxuICAgICAgICAgICAgICAgIDxkZXN5LWxhYmVsIFtmb3JdPVwicmFkaW9JZFwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgPC9kZXN5LWxhYmVsPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gIFxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZGVzeS1oaW50XCI+PC9uZy1jb250ZW50PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJjb25kaXRpb25hbCAmJiBjb25kaXRpb25hbENvbnRlbnRMaXN0ICYmIGNvbmRpdGlvbmFsQ29udGVudExpc3QubGVuZ3RoID4gMCAmJiBjaGVja2VkXCIgIEBkaXNwbGF5Q29uZGl0aW9uYWxcbiAgICAgIGNsYXNzPVwibWItbGcgbWwtNSBwdC1zbSBwYi1iYXNlIHBsLTYgb3JpZ2luLXRvcC1sZWZ0IGJvcmRlci1sLTIgYm9yZGVyLXByaW1hcnktYmFzZVwiXG4gICAgICBbYXR0ci5pZF09XCInY29uZGl0aW9uYWwtJyArIHRoaXMucmFkaW9JZFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cInsgY29tcG9uZW50OiBjb25kaXRpb25hbENvbnRlbnRMaXN0LmZpcnN0IH1cIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuIl19
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { FormFieldComponent } from '../form-field/form-field.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Clase abstracta que permite comunicar al radio-item con el radios
|
|
6
|
+
* sin que existan dependencias circulares.
|
|
7
|
+
* El esquema de dependencias resulta:
|
|
8
|
+
* - RadiosComponent -> RadiosParentComponent
|
|
9
|
+
* - RadiosComponent -> RadiosItemComponent
|
|
10
|
+
* - RadiosItemComponent -> RadiosParentComponent
|
|
11
|
+
*/
|
|
12
|
+
export class RadiosParentComponent extends FormFieldComponent {
|
|
13
|
+
}
|
|
14
|
+
RadiosParentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RadiosParentComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
15
|
+
RadiosParentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: RadiosParentComponent, selector: "desy-radios-parent", usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RadiosParentComponent, decorators: [{
|
|
17
|
+
type: Component,
|
|
18
|
+
args: [{
|
|
19
|
+
selector: 'desy-radios-parent',
|
|
20
|
+
template: ''
|
|
21
|
+
}]
|
|
22
|
+
}] });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW9zLXBhcmVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvcmFkaW9zL3JhZGlvcy1wYXJlbnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7O0FBRXhFOzs7Ozs7O0dBT0c7QUFLSCxNQUFNLE9BQWdCLHFCQUFzQixTQUFRLGtCQUF1Qjs7a0hBQXJELHFCQUFxQjtzR0FBckIscUJBQXFCLGlGQUYvQixFQUFFOzJGQUVRLHFCQUFxQjtrQkFKMUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixRQUFRLEVBQUUsRUFBRTtpQkFDYiIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuY29tcG9uZW50JztcblxuLyoqXG4gKiBDbGFzZSBhYnN0cmFjdGEgcXVlIHBlcm1pdGUgY29tdW5pY2FyIGFsIHJhZGlvLWl0ZW0gY29uIGVsIHJhZGlvc1xuICogc2luIHF1ZSBleGlzdGFuIGRlcGVuZGVuY2lhcyBjaXJjdWxhcmVzLlxuICogRWwgZXNxdWVtYSBkZSBkZXBlbmRlbmNpYXMgcmVzdWx0YTpcbiAqICAtIFJhZGlvc0NvbXBvbmVudCAtPiBSYWRpb3NQYXJlbnRDb21wb25lbnRcbiAqICAtIFJhZGlvc0NvbXBvbmVudCAtPiBSYWRpb3NJdGVtQ29tcG9uZW50XG4gKiAgLSBSYWRpb3NJdGVtQ29tcG9uZW50IC0+IFJhZGlvc1BhcmVudENvbXBvbmVudFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkZXN5LXJhZGlvcy1wYXJlbnQnLFxuICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUmFkaW9zUGFyZW50Q29tcG9uZW50IGV4dGVuZHMgRm9ybUZpZWxkQ29tcG9uZW50PGFueT4ge1xuICBpZFByZWZpeD86IHN0cmluZztcbiAgbmFtZT86IHN0cmluZztcbiAgaGFzRGl2aWRlcnM/OiBib29sZWFuO1xuICBkZXNjcmliZWRCeT86IHN0cmluZztcblxuICBhYnN0cmFjdCBoYXNGaWVsZHNldCgpOiBib29sZWFuO1xuXG4gIGFic3RyYWN0IG1hcmtGb3JVcGRhdGVSYWRpb3NJZHMoKTogdm9pZDtcbiAgYWJzdHJhY3QgdXBkYXRlVmFsdWVGcm9tUmFkaW9JdGVtcygpOiB2b2lkO1xufSJdfQ==
|