desy-angular 2.0.2 → 5.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/bundles/desy-angular.umd.js +5961 -1898
- package/bundles/desy-angular.umd.js.map +1 -1
- package/bundles/desy-angular.umd.min.js +2 -2
- package/bundles/desy-angular.umd.min.js.map +1 -1
- package/desy-angular.d.ts +30 -17
- package/desy-angular.metadata.json +1 -1
- package/esm2015/desy-angular.js +31 -18
- package/esm2015/lib/desy-angular.module.js +6 -3
- package/esm2015/lib/desy-buttons/components/button/button.component.js +9 -20
- package/esm2015/lib/desy-buttons/components/button-loader/button-loader.component.js +8 -3
- package/esm2015/lib/desy-buttons/components/dropdown/dropdown.component.js +76 -17
- package/esm2015/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.js +26 -0
- package/esm2015/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.js +14 -0
- package/esm2015/lib/desy-buttons/components/listbox/listbox.component.js +287 -0
- package/esm2015/lib/desy-buttons/components/pill/pill.component.js +8 -10
- package/esm2015/lib/desy-buttons/desy-buttons.module.js +15 -4
- package/esm2015/lib/desy-buttons/interfaces/listbox-item-data.js +2 -0
- package/esm2015/lib/desy-buttons/interfaces/listbox-label-data.js +2 -0
- package/esm2015/lib/desy-commons/components/content/content.component.js +14 -0
- package/esm2015/lib/desy-commons/components/description/description.component.js +14 -0
- package/esm2015/lib/desy-commons/components/icon/icon.component.js +14 -0
- package/esm2015/lib/desy-commons/components/title/title.component.js +14 -0
- package/esm2015/lib/desy-commons/desy-commons.module.js +33 -0
- package/esm2015/lib/desy-commons/interfaces/content-data.js +2 -0
- package/esm2015/lib/desy-commons/interfaces/description-data.js +2 -0
- package/esm2015/lib/desy-commons/interfaces/icon-data.js +2 -0
- package/esm2015/lib/desy-commons/interfaces/index.js +5 -0
- package/esm2015/lib/desy-commons/interfaces/title-data.js +2 -0
- package/esm2015/lib/desy-forms/components/character-count/character-count.component.js +2 -2
- package/esm2015/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.js +190 -0
- package/esm2015/lib/desy-forms/components/checkboxes/checkboxes.component.js +181 -74
- package/esm2015/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.js +46 -0
- package/esm2015/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.js +19 -0
- package/esm2015/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.js +13 -0
- package/esm2015/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.js +46 -0
- package/esm2015/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.js +44 -0
- package/esm2015/lib/desy-forms/components/date-input/date-input.component.js +132 -27
- package/esm2015/lib/desy-forms/components/error-message/error-message.component.js +17 -5
- package/esm2015/lib/desy-forms/components/fieldset/fieldset.component.js +27 -4
- package/esm2015/lib/desy-forms/components/fieldset/legend/legend.component.js +6 -5
- package/esm2015/lib/desy-forms/components/file-upload/file-upload.component.js +1 -1
- package/esm2015/lib/desy-forms/components/form-field/form-field.component.js +45 -7
- package/esm2015/lib/desy-forms/components/hint/hint.component.js +18 -6
- package/esm2015/lib/desy-forms/components/input/input.component.js +2 -3
- package/esm2015/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.js +20 -0
- package/esm2015/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.js +46 -0
- package/esm2015/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.js +13 -0
- package/esm2015/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.js +42 -0
- package/esm2015/lib/desy-forms/components/input-group/input-group.component.js +115 -21
- package/esm2015/lib/desy-forms/components/label/label.component.js +21 -8
- package/esm2015/lib/desy-forms/components/radios/radio-item/radio-item.component.js +147 -0
- package/esm2015/lib/desy-forms/components/radios/radios.component.js +198 -12
- package/esm2015/lib/desy-forms/components/search-bar/search-bar.component.js +14 -4
- package/esm2015/lib/desy-forms/components/select/option/option.component.js +17 -0
- package/esm2015/lib/desy-forms/components/select/option-group/option-group.component.js +17 -0
- package/esm2015/lib/desy-forms/components/select/select-item/select-item.component.js +14 -0
- package/esm2015/lib/desy-forms/components/select/select.component.js +33 -18
- package/esm2015/lib/desy-forms/components/template-driven-wrapper/template-driven-wrapper.component.js +1 -1
- package/esm2015/lib/desy-forms/components/textarea/textarea.component.js +1 -1
- package/esm2015/lib/desy-forms/desy-forms.module.js +43 -6
- package/esm2015/lib/desy-forms/directives/condition.directive.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/accesibility-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/error-message-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/fieldset-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/hint-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/index.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/item-checkbox-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/item-date-input-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/item-divider-date-input-data.js +2 -0
- package/esm2015/lib/desy-forms/interfaces/item-divider-input-group-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/item-input-group-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/item-radio-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/item-radio-with-template-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/label-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/legend-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/select-item-data.js +1 -1
- package/esm2015/lib/desy-modals/components/dialog/dialog.component.js +1 -1
- package/esm2015/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.js +19 -0
- package/esm2015/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.js +19 -0
- package/esm2015/lib/desy-modals/components/modal/modal.component.js +106 -21
- package/esm2015/lib/desy-modals/desy-modals.module.js +7 -1
- package/esm2015/lib/desy-modals/interfaces/dialog-options.js +1 -1
- package/esm2015/lib/desy-modals/interfaces/index.js +1 -1
- package/esm2015/lib/desy-modals/interfaces/modal-button-data.js +1 -1
- package/esm2015/lib/desy-modals/interfaces/modal-data.js +1 -1
- package/esm2015/lib/desy-modals/interfaces/modal-icon-data.js +1 -1
- package/esm2015/lib/desy-modals/interfaces/modal-options.js +1 -1
- package/esm2015/lib/desy-modals/interfaces/open-dialog-result.js +1 -1
- package/esm2015/lib/desy-modals/services/dialog.service.js +1 -1
- package/esm2015/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.js +15 -0
- package/esm2015/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.js +18 -16
- package/esm2015/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.js +15 -0
- package/esm2015/lib/desy-nav/components/error-summary/error-summary.component.js +34 -13
- package/esm2015/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.js +16 -0
- package/esm2015/lib/desy-nav/components/footer/footer-meta/footer-meta.component.js +23 -0
- package/esm2015/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.js +16 -0
- package/esm2015/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.js +16 -0
- package/esm2015/lib/desy-nav/components/footer/footer.component.js +31 -8
- package/esm2015/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.js +26 -36
- package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.js +19 -0
- package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation.component.js +14 -7
- package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.js +25 -0
- package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.js +11 -0
- package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.js +76 -14
- package/esm2015/lib/desy-nav/components/header/header-subnav/header-subnav.component.js +26 -36
- package/esm2015/lib/desy-nav/components/header/header.component.js +38 -7
- package/esm2015/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.js +28 -0
- package/esm2015/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.js +41 -21
- package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.js +32 -0
- package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.js +16 -0
- package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.js +24 -0
- package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical.component.js +43 -93
- package/esm2015/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.js +36 -0
- package/esm2015/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.js +14 -0
- package/esm2015/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.js +29 -0
- package/esm2015/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.js +23 -0
- package/esm2015/lib/desy-nav/components/menubar/directives/menubaritem.directive.js +37 -0
- package/esm2015/lib/desy-nav/components/menubar/menubar.component.js +656 -0
- package/esm2015/lib/desy-nav/components/nav/nav-item/nav-item.component.js +30 -0
- package/esm2015/lib/desy-nav/components/nav/nav.component.js +44 -22
- package/esm2015/lib/desy-nav/components/notification/notification-item/notification-item.component.js +18 -0
- package/esm2015/lib/desy-nav/components/notification/notification.component.js +49 -22
- package/esm2015/lib/desy-nav/components/skip-link/skip-link.component.js +24 -5
- package/esm2015/lib/desy-nav/desy-nav.module.js +78 -12
- package/esm2015/lib/desy-nav/interfaces/breadcrumbs.data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/error-summary-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/footer-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/header-dropdown-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/header-navigation-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/header-navigation-item-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/header-offcanvas-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/header-subnav-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/index.js +1 -5
- package/esm2015/lib/desy-nav/interfaces/menu-horizontal-item-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/menu-horizontal-item-event-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/menu-vertical-items-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/menu-vertical-sub-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/menu-vertical-sub-items-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/menubar-item-sub-item-sub-item.js +2 -0
- package/esm2015/lib/desy-nav/interfaces/menubar-item-sub-item.js +2 -0
- package/esm2015/lib/desy-nav/interfaces/menubar-item-sub.js +2 -0
- package/esm2015/lib/desy-nav/interfaces/menubar-item.js +2 -0
- package/esm2015/lib/desy-nav/interfaces/nav-item-event.data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/nav-item.data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/notification-items-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/notification-options.js +1 -1
- package/esm2015/lib/desy-pagination/components/pagination/pagination.component.js +41 -76
- package/esm2015/lib/desy-pagination/desy-pagination.module.js +1 -1
- package/esm2015/lib/desy-pagination/interfaces/index.js +1 -1
- package/esm2015/lib/desy-pagination/interfaces/pagination-item.data.js +1 -1
- package/esm2015/lib/desy-tables/components/table/components/table-caption.component.js +14 -0
- package/esm2015/lib/desy-tables/components/table/components/table-cell.component.js +17 -0
- package/esm2015/lib/desy-tables/components/table/components/table-header.component.js +14 -0
- package/esm2015/lib/desy-tables/components/table/components/table-row.component.js +14 -0
- package/esm2015/lib/desy-tables/components/table/table.component.js +47 -14
- package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.js +20 -0
- package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.js +14 -0
- package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.js +17 -0
- package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.js +20 -0
- package/esm2015/lib/desy-tables/components/table-advanced/table-advanced.component.js +173 -149
- package/esm2015/lib/desy-tables/desy-tables.module.js +31 -3
- package/esm2015/lib/desy-tables/directives/cell.directive.js +26 -0
- package/esm2015/lib/desy-tables/directives/focus-clicked-cell.directive.js +12 -8
- package/esm2015/lib/desy-tables/directives/row.directive.js +24 -0
- package/esm2015/lib/desy-tables/interfaces/cell-data.js +1 -1
- package/esm2015/lib/desy-tables/interfaces/head-cell-data.js +1 -1
- package/esm2015/lib/desy-tables/interfaces/index.js +2 -1
- package/esm2015/lib/desy-tables/interfaces/recalculate-table-params.js +2 -0
- package/esm2015/lib/desy-tables/interfaces/row-data.js +1 -1
- package/esm2015/lib/desy-tables/interfaces/wrapper-data.js +2 -0
- package/esm2015/lib/desy-views/components/accordion/accordion-header/accordion-header.component.js +14 -0
- package/esm2015/lib/desy-views/components/accordion/accordion-item/accordion-item.component.js +33 -0
- package/esm2015/lib/desy-views/components/accordion/accordion.component.js +84 -56
- package/esm2015/lib/desy-views/components/alert/alert.component.js +28 -23
- package/esm2015/lib/desy-views/components/collapsible/collapsible.component.js +6 -10
- package/esm2015/lib/desy-views/components/description-list/definition/definition.component.js +15 -0
- package/esm2015/lib/desy-views/components/description-list/description-item/description-item.component.js +26 -0
- package/esm2015/lib/desy-views/components/description-list/description-list.component.js +13 -23
- package/esm2015/lib/desy-views/components/description-list/term/term.component.js +15 -0
- package/esm2015/lib/desy-views/components/details/details.component.js +1 -1
- package/esm2015/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.js +14 -0
- package/esm2015/lib/desy-views/components/item/item-content-right/item-content-right.component.js +11 -0
- package/esm2015/lib/desy-views/components/item/item-item/item-item.component.js +11 -0
- package/esm2015/lib/desy-views/components/item/item.component.js +57 -24
- package/esm2015/lib/desy-views/components/media-object/media-object.component.js +1 -1
- package/esm2015/lib/desy-views/components/spinner/spinner.component.js +1 -1
- package/esm2015/lib/desy-views/components/status/status.component.js +2 -2
- package/esm2015/lib/desy-views/components/status-item/status-item.component.js +39 -26
- package/esm2015/lib/desy-views/components/tabs/panel/panel.component.js +15 -0
- package/esm2015/lib/desy-views/components/tabs/tab-item/tab-item.component.js +28 -0
- package/esm2015/lib/desy-views/components/tabs/tabs.component.js +58 -36
- package/esm2015/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.js +11 -0
- package/esm2015/lib/desy-views/components/tooltip/tooltip.component.js +132 -0
- package/esm2015/lib/desy-views/desy-views.module.js +41 -1
- package/esm2015/lib/desy-views/interfaces/accordion-header.data.js +1 -1
- package/esm2015/lib/desy-views/interfaces/accordion-item.data.js +1 -1
- package/esm2015/lib/desy-views/interfaces/alert-options.js +1 -1
- package/esm2015/lib/desy-views/interfaces/description-item.data.js +2 -0
- package/esm2015/lib/desy-views/interfaces/index.js +4 -4
- package/esm2015/lib/desy-views/interfaces/open-alert-result.js +1 -1
- package/esm2015/lib/desy-views/interfaces/status-data.js +1 -1
- package/esm2015/lib/desy-views/interfaces/status-icon-data.js +1 -1
- package/esm2015/lib/desy-views/interfaces/status-item-title-data.js +1 -1
- package/esm2015/lib/desy-views/interfaces/tabs-items-data.js +1 -1
- package/esm2015/lib/desy-views/interfaces/tabs-panel-data.js +1 -1
- package/esm2015/lib/desy-views/interfaces/term-definition.data.js +2 -0
- package/esm2015/lib/desy-views/services/alert.service.js +1 -1
- package/esm2015/lib/shared/components/accessibility/accessibility.component.js +1 -1
- package/esm2015/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.js +27 -0
- package/esm2015/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.js +1 -1
- package/esm2015/lib/shared/components/content-base/content-base.component.js +20 -0
- package/esm2015/lib/shared/components/index.js +3 -1
- package/esm2015/lib/shared/components/text-or-html-required/text-or-html-required.component.js +1 -1
- package/esm2015/lib/shared/decorators/desy-content-child.decorator.js +41 -0
- package/esm2015/lib/shared/decorators/desy-on-input-change.decorator.js +19 -0
- package/esm2015/lib/shared/directives/attribute-change.directive.js +43 -0
- package/esm2015/lib/shared/directives/click-outside.directive.js +1 -1
- package/esm2015/lib/shared/directives/content-change.directive.js +43 -0
- package/esm2015/lib/shared/directives/content-empty.directive.js +86 -0
- package/esm2015/lib/shared/directives/custom-inner-content.directive.js +62 -0
- package/esm2015/lib/shared/directives/inner-content.directive.js +5 -3
- package/esm2015/lib/shared/interfaces/accesibility-data.js +1 -1
- package/esm2015/lib/shared/pipes/external-href.pipe.js +28 -0
- package/esm2015/lib/shared/pipes/inner-html.pipe.js +1 -1
- package/esm2015/lib/shared/pipes/make-html-list.pipe.js +1 -1
- package/esm2015/lib/shared/shared.module.js +23 -4
- package/esm2015/lib/shared/utils/focus-utils.js +1 -1
- package/esm2015/lib/shared/utils/search-utils.js +1 -1
- package/esm2015/lib/shared/utils/string-utils.js +18 -0
- package/esm2015/public-api.js +88 -29
- package/fesm2015/desy-angular.js +5759 -2069
- package/fesm2015/desy-angular.js.map +1 -1
- package/lib/desy-buttons/components/button/button.component.d.ts +6 -7
- package/lib/desy-buttons/components/button-loader/button-loader.component.d.ts +1 -0
- package/lib/desy-buttons/components/dropdown/dropdown.component.d.ts +9 -7
- package/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.d.ts +12 -0
- package/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.d.ts +4 -0
- package/lib/desy-buttons/components/listbox/listbox.component.d.ts +53 -0
- package/lib/desy-buttons/components/pill/pill.component.d.ts +3 -3
- package/lib/desy-buttons/interfaces/listbox-item-data.d.ts +9 -0
- package/lib/{desy-nav/interfaces/notification-title-data.d.ts → desy-buttons/interfaces/listbox-label-data.d.ts} +1 -1
- package/lib/desy-commons/components/content/content.component.d.ts +5 -0
- package/lib/desy-commons/components/description/description.component.d.ts +5 -0
- package/lib/desy-commons/components/icon/icon.component.d.ts +5 -0
- package/lib/desy-commons/components/title/title.component.d.ts +5 -0
- package/lib/desy-commons/desy-commons.module.d.ts +2 -0
- package/lib/{desy-nav/interfaces/notification-content-data.d.ts → desy-commons/interfaces/content-data.d.ts} +1 -1
- package/lib/desy-commons/interfaces/description-data.d.ts +5 -0
- package/lib/desy-commons/interfaces/icon-data.d.ts +4 -0
- package/lib/desy-commons/interfaces/index.d.ts +4 -0
- package/lib/desy-commons/interfaces/title-data.d.ts +6 -0
- package/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.d.ts +47 -0
- package/lib/desy-forms/components/checkboxes/checkboxes.component.d.ts +53 -15
- package/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.d.ts +22 -0
- package/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.d.ts +7 -0
- package/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.d.ts +4 -0
- package/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.d.ts +22 -0
- package/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.d.ts +19 -0
- package/lib/desy-forms/components/date-input/date-input.component.d.ts +21 -4
- package/lib/desy-forms/components/error-message/error-message.component.d.ts +8 -2
- package/lib/desy-forms/components/fieldset/fieldset.component.d.ts +12 -4
- package/lib/desy-forms/components/fieldset/legend/legend.component.d.ts +3 -2
- package/lib/desy-forms/components/form-field/form-field.component.d.ts +7 -18
- package/lib/desy-forms/components/hint/hint.component.d.ts +8 -2
- package/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.d.ts +8 -0
- package/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.d.ts +20 -0
- package/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.d.ts +4 -0
- package/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.d.ts +16 -0
- package/lib/desy-forms/components/input-group/input-group.component.d.ts +24 -6
- package/lib/desy-forms/components/label/label.component.d.ts +12 -5
- package/lib/desy-forms/components/radios/radio-item/radio-item.component.d.ts +43 -0
- package/lib/desy-forms/components/radios/radios.component.d.ts +56 -11
- package/lib/desy-forms/components/search-bar/search-bar.component.d.ts +7 -3
- package/lib/desy-forms/components/select/option/option.component.d.ts +7 -0
- package/lib/desy-forms/components/select/option-group/option-group.component.d.ts +7 -0
- package/lib/desy-forms/components/select/select-item/select-item.component.d.ts +4 -0
- package/lib/desy-forms/components/select/select.component.d.ts +9 -2
- package/lib/desy-forms/interfaces/error-message-data.d.ts +5 -5
- package/lib/desy-forms/interfaces/fieldset-data.d.ts +5 -4
- package/lib/desy-forms/interfaces/hint-data.d.ts +4 -4
- package/lib/desy-forms/interfaces/item-checkbox-data.d.ts +1 -0
- package/lib/desy-forms/interfaces/item-date-input-data.d.ts +3 -0
- package/lib/desy-forms/interfaces/item-divider-date-input-data.d.ts +5 -0
- package/lib/desy-forms/interfaces/item-input-group-data.d.ts +1 -2
- package/lib/desy-forms/interfaces/item-radio-data.d.ts +15 -12
- package/lib/desy-forms/interfaces/legend-data.d.ts +4 -4
- package/lib/desy-forms/interfaces/select-item-data.d.ts +2 -1
- package/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.d.ts +7 -0
- package/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.d.ts +7 -0
- package/lib/desy-modals/components/modal/modal.component.d.ts +27 -2
- package/lib/desy-modals/interfaces/modal-button-data.d.ts +2 -2
- package/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.d.ts +6 -0
- package/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.d.ts +7 -4
- package/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.d.ts +6 -0
- package/lib/desy-nav/components/error-summary/error-summary.component.d.ts +12 -4
- package/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.d.ts +7 -0
- package/lib/desy-nav/components/footer/footer-meta/footer-meta.component.d.ts +10 -0
- package/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.d.ts +7 -0
- package/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.d.ts +8 -0
- package/lib/desy-nav/components/footer/footer.component.d.ts +15 -3
- package/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.d.ts +10 -6
- package/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.d.ts +10 -0
- package/lib/desy-nav/components/header/header-navigation/header-navigation.component.d.ts +6 -2
- package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.d.ts +6 -0
- package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.d.ts +3 -0
- package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.d.ts +30 -9
- package/lib/desy-nav/components/header/header-subnav/header-subnav.component.d.ts +11 -8
- package/lib/desy-nav/components/header/header.component.d.ts +16 -5
- package/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.d.ts +15 -0
- package/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.d.ts +6 -5
- package/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.d.ts +18 -0
- package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.d.ts +8 -0
- package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.d.ts +15 -0
- package/lib/desy-nav/components/menu-vertical/menu-vertical.component.d.ts +13 -18
- package/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.d.ts +23 -0
- package/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.d.ts +4 -0
- package/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.d.ts +15 -0
- package/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.d.ts +10 -0
- package/lib/desy-nav/components/menubar/directives/menubaritem.directive.d.ts +16 -0
- package/lib/desy-nav/components/menubar/menubar.component.d.ts +88 -0
- package/lib/desy-nav/components/nav/nav-item/nav-item.component.d.ts +17 -0
- package/lib/desy-nav/components/nav/nav.component.d.ts +7 -5
- package/lib/desy-nav/components/notification/notification-item/notification-item.component.d.ts +9 -0
- package/lib/desy-nav/components/notification/notification.component.d.ts +25 -11
- package/lib/desy-nav/components/skip-link/skip-link.component.d.ts +9 -2
- package/lib/desy-nav/interfaces/breadcrumbs.data.d.ts +4 -4
- package/lib/desy-nav/interfaces/error-summary-data.d.ts +4 -4
- package/lib/desy-nav/interfaces/footer-data.d.ts +7 -10
- package/lib/desy-nav/interfaces/header-dropdown-data.d.ts +5 -1
- package/lib/desy-nav/interfaces/header-offcanvas-data.d.ts +0 -1
- package/lib/desy-nav/interfaces/header-subnav-data.d.ts +6 -1
- package/lib/desy-nav/interfaces/index.d.ts +0 -4
- package/lib/desy-nav/interfaces/menu-vertical-items-data.d.ts +15 -13
- package/lib/desy-nav/interfaces/menu-vertical-sub-data.d.ts +3 -4
- package/lib/desy-nav/interfaces/menu-vertical-sub-items-data.d.ts +15 -12
- package/lib/desy-nav/interfaces/menubar-item-sub-item-sub-item.d.ts +6 -0
- package/lib/desy-nav/interfaces/menubar-item-sub-item.d.ts +9 -0
- package/lib/desy-nav/interfaces/menubar-item-sub.d.ts +6 -0
- package/lib/desy-nav/interfaces/menubar-item.d.ts +18 -0
- package/lib/desy-nav/interfaces/nav-item.data.d.ts +2 -1
- package/lib/desy-nav/interfaces/notification-items-data.d.ts +8 -5
- package/lib/desy-nav/interfaces/notification-options.d.ts +5 -8
- package/lib/desy-pagination/components/pagination/pagination.component.d.ts +7 -12
- package/lib/desy-tables/components/table/components/table-caption.component.d.ts +4 -0
- package/lib/desy-tables/components/table/components/table-cell.component.d.ts +8 -0
- package/lib/desy-tables/components/table/components/table-header.component.d.ts +5 -0
- package/lib/desy-tables/components/table/components/table-row.component.d.ts +5 -0
- package/lib/desy-tables/components/table/table.component.d.ts +16 -4
- package/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.d.ts +13 -0
- package/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.d.ts +5 -0
- package/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.d.ts +8 -0
- package/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.d.ts +8 -0
- package/lib/desy-tables/components/table-advanced/table-advanced.component.d.ts +66 -39
- package/lib/desy-tables/directives/cell.directive.d.ts +14 -0
- package/lib/desy-tables/directives/focus-clicked-cell.directive.d.ts +3 -3
- package/lib/desy-tables/directives/row.directive.d.ts +16 -0
- package/lib/desy-tables/interfaces/head-cell-data.d.ts +2 -2
- package/lib/desy-tables/interfaces/index.d.ts +1 -0
- package/lib/desy-tables/interfaces/recalculate-table-params.d.ts +11 -0
- package/lib/desy-tables/interfaces/row-data.d.ts +1 -0
- package/lib/desy-tables/interfaces/wrapper-data.d.ts +4 -0
- package/lib/desy-views/components/accordion/accordion-header/accordion-header.component.d.ts +5 -0
- package/lib/desy-views/components/accordion/accordion-item/accordion-item.component.d.ts +13 -0
- package/lib/desy-views/components/accordion/accordion.component.d.ts +20 -11
- package/lib/desy-views/components/alert/alert.component.d.ts +6 -4
- package/lib/desy-views/components/collapsible/collapsible.component.d.ts +4 -6
- package/lib/desy-views/components/description-list/definition/definition.component.d.ts +6 -0
- package/lib/desy-views/components/description-list/description-item/description-item.component.d.ts +9 -0
- package/lib/desy-views/components/description-list/description-list.component.d.ts +9 -6
- package/lib/desy-views/components/description-list/term/term.component.d.ts +6 -0
- package/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.d.ts +5 -0
- package/lib/desy-views/components/item/item-content-right/item-content-right.component.d.ts +3 -0
- package/lib/desy-views/components/item/item-item/item-item.component.d.ts +3 -0
- package/lib/desy-views/components/item/item.component.d.ts +28 -9
- package/lib/desy-views/components/status-item/status-item.component.d.ts +17 -6
- package/lib/desy-views/components/tabs/panel/panel.component.d.ts +6 -0
- package/lib/desy-views/components/tabs/tab-item/tab-item.component.d.ts +12 -0
- package/lib/desy-views/components/tabs/tabs.component.d.ts +15 -3
- package/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.d.ts +3 -0
- package/lib/desy-views/components/tooltip/tooltip.component.d.ts +35 -0
- package/lib/desy-views/interfaces/accordion-header.data.d.ts +3 -3
- package/lib/desy-views/interfaces/accordion-item.data.d.ts +8 -8
- package/lib/desy-views/interfaces/description-item.data.d.ts +8 -0
- package/lib/desy-views/interfaces/index.d.ts +3 -3
- package/lib/desy-views/interfaces/tabs-items-data.d.ts +5 -5
- package/lib/desy-views/interfaces/tabs-panel-data.d.ts +4 -4
- package/lib/desy-views/interfaces/term-definition.data.d.ts +7 -0
- package/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.d.ts +26 -0
- package/lib/shared/components/content-base/content-base.component.d.ts +9 -0
- package/lib/shared/components/index.d.ts +2 -0
- package/lib/shared/decorators/desy-content-child.decorator.d.ts +15 -0
- package/lib/shared/decorators/desy-on-input-change.decorator.d.ts +5 -0
- package/lib/shared/directives/attribute-change.directive.d.ts +10 -0
- package/lib/shared/directives/content-change.directive.d.ts +19 -0
- package/lib/shared/directives/content-empty.directive.d.ts +26 -0
- package/lib/shared/directives/custom-inner-content.directive.d.ts +22 -0
- package/lib/shared/directives/inner-content.directive.d.ts +1 -0
- package/lib/shared/pipes/external-href.pipe.d.ts +8 -0
- package/lib/shared/utils/string-utils.d.ts +10 -0
- package/package.json +16 -11
- package/public-api.d.ts +75 -25
- package/esm2015/lib/desy-forms/components/checkboxes/item-checkbox/item-checkbox.component.js +0 -100
- package/esm2015/lib/desy-forms/components/radios/item-radio/item-radio.component.js +0 -89
- package/esm2015/lib/desy-nav/components/header/header-offcanvas-button/header-offcanvas-button.component.js +0 -62
- package/esm2015/lib/desy-nav/interfaces/notification-content-data.js +0 -2
- package/esm2015/lib/desy-nav/interfaces/notification-description-data.js +0 -2
- package/esm2015/lib/desy-nav/interfaces/notification-icon-data.js +0 -2
- package/esm2015/lib/desy-nav/interfaces/notification-title-data.js +0 -2
- package/esm2015/lib/desy-views/interfaces/description.data.js +0 -2
- package/esm2015/lib/desy-views/interfaces/item-data.js +0 -2
- package/esm2015/lib/desy-views/interfaces/item-description.data.js +0 -2
- package/esm2015/lib/shared/utils/navigation-utils.js +0 -18
- package/lib/desy-forms/components/checkboxes/item-checkbox/item-checkbox.component.d.ts +0 -39
- package/lib/desy-forms/components/radios/item-radio/item-radio.component.d.ts +0 -36
- package/lib/desy-nav/components/header/header-offcanvas-button/header-offcanvas-button.component.d.ts +0 -19
- package/lib/desy-nav/interfaces/notification-description-data.d.ts +0 -5
- package/lib/desy-nav/interfaces/notification-icon-data.d.ts +0 -3
- package/lib/desy-views/interfaces/description.data.d.ts +0 -7
- package/lib/desy-views/interfaces/item-data.d.ts +0 -19
- package/lib/desy-views/interfaces/item-description.data.d.ts +0 -8
- package/lib/shared/utils/navigation-utils.d.ts +0 -3
|
@@ -7,14 +7,34 @@ import { DesyFormsModule } from '../desy-forms/desy-forms.module';
|
|
|
7
7
|
import { TableComponent } from './components/table/table.component';
|
|
8
8
|
import { TableAdvancedComponent } from './components/table-advanced/table-advanced.component';
|
|
9
9
|
import { FocusClickedCellDirective } from './directives/focus-clicked-cell.directive';
|
|
10
|
+
import { TableCellComponent } from './components/table/components/table-cell.component';
|
|
11
|
+
import { TableHeaderComponent } from './components/table/components/table-header.component';
|
|
12
|
+
import { TableRowComponent } from './components/table/components/table-row.component';
|
|
13
|
+
import { TableCaptionComponent } from './components/table/components/table-caption.component';
|
|
14
|
+
import { TableAdvancedHeaderComponent } from './components/table-advanced/components/table-advanced-header.component';
|
|
15
|
+
import { TableAdvancedHeaderCellComponent } from './components/table-advanced/components/table-advanced-header-cell.component';
|
|
16
|
+
import { TableAdvancedRowComponent } from './components/table-advanced/components/table-advanced-row.component';
|
|
17
|
+
import { CellDirective } from './directives/cell.directive';
|
|
18
|
+
import { RowDirective } from './directives/row.directive';
|
|
19
|
+
import { TableAdvancedRowCellComponent } from './components/table-advanced/components/table-advanced-row-cell.component';
|
|
10
20
|
export class DesyTablesModule {
|
|
11
21
|
}
|
|
12
22
|
DesyTablesModule.decorators = [
|
|
13
23
|
{ type: NgModule, args: [{
|
|
14
24
|
declarations: [
|
|
15
25
|
TableComponent,
|
|
26
|
+
TableCaptionComponent,
|
|
27
|
+
TableCellComponent,
|
|
28
|
+
TableHeaderComponent,
|
|
29
|
+
TableRowComponent,
|
|
16
30
|
TableAdvancedComponent,
|
|
17
|
-
|
|
31
|
+
TableAdvancedHeaderComponent,
|
|
32
|
+
TableAdvancedHeaderCellComponent,
|
|
33
|
+
TableAdvancedRowComponent,
|
|
34
|
+
TableAdvancedRowCellComponent,
|
|
35
|
+
FocusClickedCellDirective,
|
|
36
|
+
CellDirective,
|
|
37
|
+
RowDirective,
|
|
18
38
|
],
|
|
19
39
|
imports: [
|
|
20
40
|
CommonModule,
|
|
@@ -26,8 +46,16 @@ DesyTablesModule.decorators = [
|
|
|
26
46
|
],
|
|
27
47
|
exports: [
|
|
28
48
|
TableComponent,
|
|
29
|
-
|
|
49
|
+
TableCaptionComponent,
|
|
50
|
+
TableCellComponent,
|
|
51
|
+
TableHeaderComponent,
|
|
52
|
+
TableRowComponent,
|
|
53
|
+
TableAdvancedComponent,
|
|
54
|
+
TableAdvancedHeaderComponent,
|
|
55
|
+
TableAdvancedHeaderCellComponent,
|
|
56
|
+
TableAdvancedRowComponent,
|
|
57
|
+
TableAdvancedRowCellComponent
|
|
30
58
|
]
|
|
31
59
|
},] }
|
|
32
60
|
];
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzeS10YWJsZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS10YWJsZXMvZGVzeS10YWJsZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDOUYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDdEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDeEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDdEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDOUYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sd0VBQXdFLENBQUM7QUFDdEgsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sNkVBQTZFLENBQUM7QUFDL0gsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0scUVBQXFFLENBQUM7QUFDaEgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSwwRUFBMEUsQ0FBQztBQXlDdkgsTUFBTSxPQUFPLGdCQUFnQjs7O1lBdEM1QixRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFO29CQUNaLGNBQWM7b0JBQ2QscUJBQXFCO29CQUNyQixrQkFBa0I7b0JBQ2xCLG9CQUFvQjtvQkFDcEIsaUJBQWlCO29CQUNqQixzQkFBc0I7b0JBQ3RCLDRCQUE0QjtvQkFDNUIsZ0NBQWdDO29CQUNoQyx5QkFBeUI7b0JBQ3pCLDZCQUE2QjtvQkFFN0IseUJBQXlCO29CQUN6QixhQUFhO29CQUNiLFlBQVk7aUJBQ2I7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osV0FBVztvQkFDWCxtQkFBbUI7b0JBQ25CLFVBQVU7b0JBQ1YsWUFBWTtvQkFDWixlQUFlO2lCQUNoQjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsY0FBYztvQkFDZCxxQkFBcUI7b0JBQ3JCLGtCQUFrQjtvQkFDbEIsb0JBQW9CO29CQUNwQixpQkFBaUI7b0JBQ2pCLHNCQUFzQjtvQkFDdEIsNEJBQTRCO29CQUM1QixnQ0FBZ0M7b0JBQ2hDLHlCQUF5QjtvQkFDekIsNkJBQTZCO2lCQUM5QjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEExMXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XHJcbmltcG9ydCB7IFNoYXJlZE1vZHVsZSB9IGZyb20gJy4uL3NoYXJlZC9zaGFyZWQubW9kdWxlJztcclxuaW1wb3J0IHsgRGVzeUZvcm1zTW9kdWxlIH0gZnJvbSAnLi4vZGVzeS1mb3Jtcy9kZXN5LWZvcm1zLm1vZHVsZSc7XHJcblxyXG5pbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS90YWJsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYWJsZUFkdmFuY2VkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLWFkdmFuY2VkL3RhYmxlLWFkdmFuY2VkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvY3VzQ2xpY2tlZENlbGxEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZm9jdXMtY2xpY2tlZC1jZWxsLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFRhYmxlQ2VsbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS9jb21wb25lbnRzL3RhYmxlLWNlbGwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGFibGVIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUvY29tcG9uZW50cy90YWJsZS1oZWFkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGFibGVSb3dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUvY29tcG9uZW50cy90YWJsZS1yb3cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGFibGVDYXB0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtY2FwdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYWJsZUFkdmFuY2VkSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLWFkdmFuY2VkL2NvbXBvbmVudHMvdGFibGUtYWR2YW5jZWQtaGVhZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRhYmxlQWR2YW5jZWRIZWFkZXJDZWxsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLWFkdmFuY2VkL2NvbXBvbmVudHMvdGFibGUtYWR2YW5jZWQtaGVhZGVyLWNlbGwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGFibGVBZHZhbmNlZFJvd0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS1hZHZhbmNlZC9jb21wb25lbnRzL3RhYmxlLWFkdmFuY2VkLXJvdy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDZWxsRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2NlbGwuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgUm93RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3Jvdy5kaXJlY3RpdmUnO1xyXG5pbXBvcnQge1RhYmxlQWR2YW5jZWRSb3dDZWxsQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUtYWR2YW5jZWQvY29tcG9uZW50cy90YWJsZS1hZHZhbmNlZC1yb3ctY2VsbC5jb21wb25lbnQnO1xyXG5cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBUYWJsZUNvbXBvbmVudCxcclxuICAgIFRhYmxlQ2FwdGlvbkNvbXBvbmVudCxcclxuICAgIFRhYmxlQ2VsbENvbXBvbmVudCxcclxuICAgIFRhYmxlSGVhZGVyQ29tcG9uZW50LFxyXG4gICAgVGFibGVSb3dDb21wb25lbnQsXHJcbiAgICBUYWJsZUFkdmFuY2VkQ29tcG9uZW50LFxyXG4gICAgVGFibGVBZHZhbmNlZEhlYWRlckNvbXBvbmVudCxcclxuICAgIFRhYmxlQWR2YW5jZWRIZWFkZXJDZWxsQ29tcG9uZW50LFxyXG4gICAgVGFibGVBZHZhbmNlZFJvd0NvbXBvbmVudCxcclxuICAgIFRhYmxlQWR2YW5jZWRSb3dDZWxsQ29tcG9uZW50LFxyXG5cclxuICAgIEZvY3VzQ2xpY2tlZENlbGxEaXJlY3RpdmUsXHJcbiAgICBDZWxsRGlyZWN0aXZlLFxyXG4gICAgUm93RGlyZWN0aXZlLFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgQTExeU1vZHVsZSxcclxuICAgIFNoYXJlZE1vZHVsZSxcclxuICAgIERlc3lGb3Jtc01vZHVsZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgVGFibGVDb21wb25lbnQsXHJcbiAgICBUYWJsZUNhcHRpb25Db21wb25lbnQsXHJcbiAgICBUYWJsZUNlbGxDb21wb25lbnQsXHJcbiAgICBUYWJsZUhlYWRlckNvbXBvbmVudCxcclxuICAgIFRhYmxlUm93Q29tcG9uZW50LFxyXG4gICAgVGFibGVBZHZhbmNlZENvbXBvbmVudCxcclxuICAgIFRhYmxlQWR2YW5jZWRIZWFkZXJDb21wb25lbnQsXHJcbiAgICBUYWJsZUFkdmFuY2VkSGVhZGVyQ2VsbENvbXBvbmVudCxcclxuICAgIFRhYmxlQWR2YW5jZWRSb3dDb21wb25lbnQsXHJcbiAgICBUYWJsZUFkdmFuY2VkUm93Q2VsbENvbXBvbmVudFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIERlc3lUYWJsZXNNb2R1bGUgeyB9XHJcbiJdfQ==
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Directive, ElementRef, Input } from '@angular/core';
|
|
2
|
+
/**
|
|
3
|
+
* Permite gestionar celdas de una fila de la tabla
|
|
4
|
+
*/
|
|
5
|
+
export class CellDirective {
|
|
6
|
+
constructor(element) {
|
|
7
|
+
this.element = element;
|
|
8
|
+
}
|
|
9
|
+
getContent() {
|
|
10
|
+
return this.element.nativeElement.textContent;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
CellDirective.decorators = [
|
|
14
|
+
{ type: Directive, args: [{
|
|
15
|
+
selector: '[desyCell]'
|
|
16
|
+
},] }
|
|
17
|
+
];
|
|
18
|
+
CellDirective.ctorParameters = () => [
|
|
19
|
+
{ type: ElementRef }
|
|
20
|
+
];
|
|
21
|
+
CellDirective.propDecorators = {
|
|
22
|
+
row: [{ type: Input }],
|
|
23
|
+
rowIndex: [{ type: Input }],
|
|
24
|
+
columnIndex: [{ type: Input }]
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LXRhYmxlcy9kaXJlY3RpdmVzL2NlbGwuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUkzRDs7R0FFRztBQUlILE1BQU0sT0FBTyxhQUFhO0lBTXhCLFlBQW9CLE9BQW1CO1FBQW5CLFlBQU8sR0FBUCxPQUFPLENBQVk7SUFBSSxDQUFDO0lBRXJDLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQztJQUNoRCxDQUFDOzs7WUFiRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFlBQVk7YUFDdkI7OztZQVRrQixVQUFVOzs7a0JBWTFCLEtBQUs7dUJBQ0wsS0FBSzswQkFDTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtSb3dEYXRhfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHtUYWJsZUFkdmFuY2VkUm93Q29tcG9uZW50fSBmcm9tICcuLi9jb21wb25lbnRzL3RhYmxlLWFkdmFuY2VkL2NvbXBvbmVudHMvdGFibGUtYWR2YW5jZWQtcm93LmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICogUGVybWl0ZSBnZXN0aW9uYXIgY2VsZGFzIGRlIHVuYSBmaWxhIGRlIGxhIHRhYmxhXHJcbiAqL1xyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tkZXN5Q2VsbF0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDZWxsRGlyZWN0aXZlIHtcclxuXHJcbiAgQElucHV0KCkgcm93OiBSb3dEYXRhfFRhYmxlQWR2YW5jZWRSb3dDb21wb25lbnQ7XHJcbiAgQElucHV0KCkgcm93SW5kZXg6IG51bWJlcjtcclxuICBASW5wdXQoKSBjb2x1bW5JbmRleDogbnVtYmVyO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWYpIHsgfVxyXG5cclxuICBwdWJsaWMgZ2V0Q29udGVudCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnRleHRDb250ZW50O1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -22,15 +22,19 @@ export class FocusClickedCellDirective {
|
|
|
22
22
|
else if (event.code === 'ArrowUp') {
|
|
23
23
|
tr = this.el.nativeElement.parentNode.previousElementSibling;
|
|
24
24
|
}
|
|
25
|
-
next = tr.children[this.findIndex()];
|
|
25
|
+
next = tr ? tr.children[this.findIndex()] : null;
|
|
26
|
+
event.preventDefault();
|
|
26
27
|
}
|
|
27
28
|
if (event.code === 'ArrowRight' || event.code === 'ArrowLeft') {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
next = this.el.nativeElement;
|
|
30
|
+
do {
|
|
31
|
+
if (event.code === 'ArrowRight') {
|
|
32
|
+
next = next.nextElementSibling;
|
|
33
|
+
}
|
|
34
|
+
else if (event.code === 'ArrowLeft') {
|
|
35
|
+
next = next.previousElementSibling;
|
|
36
|
+
}
|
|
37
|
+
} while (next && !next.getAttribute('tabindex'));
|
|
34
38
|
}
|
|
35
39
|
if (next && next.getAttribute('tabindex')) {
|
|
36
40
|
this.inactiveTabindex();
|
|
@@ -71,4 +75,4 @@ FocusClickedCellDirective.propDecorators = {
|
|
|
71
75
|
onClick: [{ type: HostListener, args: ['click',] }],
|
|
72
76
|
manageArrows: [{ type: HostListener, args: ['keydown', ['$event'],] }]
|
|
73
77
|
};
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9jdXMtY2xpY2tlZC1jZWxsLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktdGFibGVzL2RpcmVjdGl2ZXMvZm9jdXMtY2xpY2tlZC1jZWxsLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFLcEUsTUFBTSxPQUFPLHlCQUF5QjtJQUVwQyxZQUFvQixFQUFjO1FBQWQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtJQUFHLENBQUM7SUFHdEMsT0FBTztRQUNMLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUMsMEJBQTBCO1FBQ2xFLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQywyQ0FBMkM7UUFDdEgsS0FBSyxNQUFNLFFBQVEsSUFBSSxZQUFZLEVBQUU7WUFDbkMsUUFBUSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxlQUFlO1NBQ3pEO1FBQ0QsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFHRCxZQUFZLENBQUMsS0FBSztRQUNoQixJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssV0FBVyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssU0FBUyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssWUFBWSxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssV0FBVyxFQUFDO1lBQ3RILElBQUksSUFBSSxHQUFHLElBQUksQ0FBQztZQUNoQixJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssV0FBVyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssU0FBUyxFQUFDO2dCQUN6RCxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUM7Z0JBQ2QsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLFdBQVcsRUFBRTtvQkFDOUIsRUFBRSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQztpQkFDMUQ7cUJBQU0sSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLFNBQVMsRUFBRTtvQkFDbkMsRUFBRSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDOUQ7Z0JBRUQsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUNqRCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7YUFDeEI7WUFFRCxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssWUFBWSxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssV0FBVyxFQUFFO2dCQUM3RCxJQUFJLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUM7Z0JBQzdCLEdBQUc7b0JBQ0QsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLFlBQVksRUFBRTt3QkFDL0IsSUFBSSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztxQkFDaEM7eUJBQU0sSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLFdBQVcsRUFBRTt3QkFDckMsSUFBSSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztxQkFDcEM7aUJBQ0YsUUFBUSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxFQUFFO2FBQ2xEO1lBRUQsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsRUFBQztnQkFDeEMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUNuQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDZDtTQUNGO0lBQ0gsQ0FBQztJQUVPLGNBQWM7UUFDcEIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVPLFNBQVM7UUFDZixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQztRQUNyQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7UUFDcEQsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDZixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDakQsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6QyxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLEVBQUM7Z0JBQ2hDLEtBQUssR0FBRyxDQUFDLENBQUM7Z0JBQ1YsTUFBTTthQUNQO1NBQ0o7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7OztZQXhFRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjthQUNuQzs7O1lBSm1CLFVBQVU7OztzQkFTM0IsWUFBWSxTQUFDLE9BQU87MkJBVXBCLFlBQVksU0FBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbZGVzeUZvY3VzQ2xpY2tlZENlbGxdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9jdXNDbGlja2VkQ2VsbERpcmVjdGl2ZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYpIHt9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcclxuICBvbkNsaWNrKCk6IHZvaWQge1xyXG4gICAgY29uc3QgaG9zdEVsZW0gPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7IC8vIGxhIHRhYmxhIC0gb2Zmc2V0UGFyZW50XHJcbiAgICBjb25zdCBlbGVtbnRzRm9jdXMgPSBob3N0RWxlbS5vZmZzZXRQYXJlbnQucXVlcnlTZWxlY3RvckFsbCgnW3RhYmluZGV4XScpOyAvLyBidXNjYW1vcyB0b2RvcyBxdWUgcHVlZGVuIHRlbmVyIHRhYmluZGV4XHJcbiAgICBmb3IgKGNvbnN0IGl0ZXJhdG9yIG9mIGVsZW1udHNGb2N1cykge1xyXG4gICAgICBpdGVyYXRvci5zZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JywgJy0xJyk7IC8vIHNlIGxlcyBxdWl0YVxyXG4gICAgfVxyXG4gICAgdGhpcy5hY3RpdmVUYWJpbmRleCgpO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXHJcbiAgbWFuYWdlQXJyb3dzKGV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAoZXZlbnQuY29kZSA9PT0gJ0Fycm93RG93bicgfHwgZXZlbnQuY29kZSA9PT0gJ0Fycm93VXAnIHx8IGV2ZW50LmNvZGUgPT09ICdBcnJvd1JpZ2h0JyB8fCBldmVudC5jb2RlID09PSAnQXJyb3dMZWZ0Jyl7XHJcbiAgICAgIGxldCBuZXh0ID0gbnVsbDtcclxuICAgICAgaWYgKGV2ZW50LmNvZGUgPT09ICdBcnJvd0Rvd24nIHx8IGV2ZW50LmNvZGUgPT09ICdBcnJvd1VwJyl7XHJcbiAgICAgICAgbGV0IHRyID0gbnVsbDtcclxuICAgICAgICBpZiAoZXZlbnQuY29kZSA9PT0gJ0Fycm93RG93bicpIHtcclxuICAgICAgICAgIHRyID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnBhcmVudE5vZGUubmV4dEVsZW1lbnRTaWJsaW5nO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZXZlbnQuY29kZSA9PT0gJ0Fycm93VXAnKSB7XHJcbiAgICAgICAgICB0ciA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5wYXJlbnROb2RlLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBuZXh0ID0gdHIgPyB0ci5jaGlsZHJlblt0aGlzLmZpbmRJbmRleCgpXSA6IG51bGw7XHJcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKGV2ZW50LmNvZGUgPT09ICdBcnJvd1JpZ2h0JyB8fCBldmVudC5jb2RlID09PSAnQXJyb3dMZWZ0Jykge1xyXG4gICAgICAgIG5leHQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgZG8ge1xyXG4gICAgICAgICAgaWYgKGV2ZW50LmNvZGUgPT09ICdBcnJvd1JpZ2h0Jykge1xyXG4gICAgICAgICAgICBuZXh0ID0gbmV4dC5uZXh0RWxlbWVudFNpYmxpbmc7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKGV2ZW50LmNvZGUgPT09ICdBcnJvd0xlZnQnKSB7XHJcbiAgICAgICAgICAgIG5leHQgPSBuZXh0LnByZXZpb3VzRWxlbWVudFNpYmxpbmc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSB3aGlsZSAobmV4dCAmJiAhbmV4dC5nZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JykpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAobmV4dCAmJiBuZXh0LmdldEF0dHJpYnV0ZSgndGFiaW5kZXgnKSl7XHJcbiAgICAgICAgdGhpcy5pbmFjdGl2ZVRhYmluZGV4KCk7XHJcbiAgICAgICAgbmV4dC5zZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JywgJzAnKTtcclxuICAgICAgICBuZXh0LmZvY3VzKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWN0aXZlVGFiaW5kZXgoKTogdm9pZCB7XHJcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCd0YWJpbmRleCcsICcwJyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluYWN0aXZlVGFiaW5kZXgoKTogdm9pZCB7XHJcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCd0YWJpbmRleCcsICctMScpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmaW5kSW5kZXgoKTogbnVtYmVyIHtcclxuICAgIGNvbnN0IG15bm9kZSA9IHRoaXMuZWwubmF0aXZlRWxlbWVudDtcclxuICAgIGNvbnN0IHBhcmVudE5vZGUgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucGFyZW50Tm9kZTtcclxuICAgIGxldCBpbmRleCA9IC0xO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJlbnROb2RlLmNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgY29uc3Qgb3RoZXJOb2RlID0gcGFyZW50Tm9kZS5jaGlsZHJlbltpXTtcclxuICAgICAgICBpZiAobXlub2RlLmlzRXF1YWxOb2RlKG90aGVyTm9kZSkpe1xyXG4gICAgICAgICAgaW5kZXggPSBpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGluZGV4O1xyXG4gIH1cclxuXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ContentChildren, Directive, Input } from '@angular/core';
|
|
2
|
+
import { CellDirective } from './cell.directive';
|
|
3
|
+
/**
|
|
4
|
+
* Permite gestionar filas de la tabla
|
|
5
|
+
*/
|
|
6
|
+
export class RowDirective {
|
|
7
|
+
/**
|
|
8
|
+
* Devuelve la celda ubicada en la columna indicada
|
|
9
|
+
* @param column índice de la columna
|
|
10
|
+
*/
|
|
11
|
+
getCell(column) {
|
|
12
|
+
return this.contentCells.find(cell => cell.columnIndex === column);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
RowDirective.decorators = [
|
|
16
|
+
{ type: Directive, args: [{
|
|
17
|
+
selector: '[desyRow]'
|
|
18
|
+
},] }
|
|
19
|
+
];
|
|
20
|
+
RowDirective.propDecorators = {
|
|
21
|
+
contentCells: [{ type: ContentChildren, args: [CellDirective,] }],
|
|
22
|
+
desyRow: [{ type: Input }]
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktdGFibGVzL2RpcmVjdGl2ZXMvcm93LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsZUFBZSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBSS9DOztHQUVHO0FBSUgsTUFBTSxPQUFPLFlBQVk7SUFNdkI7OztPQUdHO0lBQ0ksT0FBTyxDQUFDLE1BQWM7UUFDM0IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLEtBQUssTUFBTSxDQUFDLENBQUM7SUFDckUsQ0FBQzs7O1lBZkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxXQUFXO2FBQ3RCOzs7MkJBR0UsZUFBZSxTQUFDLGFBQWE7c0JBQzdCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbnRlbnRDaGlsZHJlbiwgRGlyZWN0aXZlLCBJbnB1dCwgUXVlcnlMaXN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtDZWxsRGlyZWN0aXZlfSBmcm9tICcuL2NlbGwuZGlyZWN0aXZlJztcclxuaW1wb3J0IHtSb3dEYXRhfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHtUYWJsZUFkdmFuY2VkUm93Q29tcG9uZW50fSBmcm9tICcuLi9jb21wb25lbnRzL3RhYmxlLWFkdmFuY2VkL2NvbXBvbmVudHMvdGFibGUtYWR2YW5jZWQtcm93LmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICogUGVybWl0ZSBnZXN0aW9uYXIgZmlsYXMgZGUgbGEgdGFibGFcclxuICovXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2Rlc3lSb3ddJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgUm93RGlyZWN0aXZlIHtcclxuXHJcbiAgQENvbnRlbnRDaGlsZHJlbihDZWxsRGlyZWN0aXZlKSBjb250ZW50Q2VsbHM6IFF1ZXJ5TGlzdDxDZWxsRGlyZWN0aXZlPjtcclxuICBASW5wdXQoKSBkZXN5Um93OiBSb3dEYXRhfFRhYmxlQWR2YW5jZWRSb3dDb21wb25lbnQ7XHJcblxyXG5cclxuICAvKipcclxuICAgKiBEZXZ1ZWx2ZSBsYSBjZWxkYSB1YmljYWRhIGVuIGxhIGNvbHVtbmEgaW5kaWNhZGFcclxuICAgKiBAcGFyYW0gY29sdW1uIMOtbmRpY2UgZGUgbGEgY29sdW1uYVxyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXRDZWxsKGNvbHVtbjogbnVtYmVyKTogQ2VsbERpcmVjdGl2ZSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb250ZW50Q2VsbHMuZmluZChjZWxsID0+IGNlbGwuY29sdW1uSW5kZXggPT09IGNvbHVtbik7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS10YWJsZXMvaW50ZXJmYWNlcy9jZWxsLWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjY2VzaWJpbGl0eURhdGEgfSBmcm9tICcuLi8uLi9zaGFyZWQvaW50ZXJmYWNlcy9hY2Nlc2liaWxpdHktZGF0YSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENlbGxEYXRhIGV4dGVuZHMgQWNjZXNpYmlsaXR5RGF0YSB7XHJcbiAgICB0ZXh0Pzogc3RyaW5nO1xyXG4gICAgaHRtbD86IHN0cmluZztcclxuICAgIGNsYXNzZXM/OiBzdHJpbmc7XHJcbiAgICBpZD86IHN0cmluZztcclxuICAgIGNvbHNwYW4/OiBudW1iZXI7XHJcbiAgICByb3dzcGFuPzogbnVtYmVyO1xyXG59XHJcbiJdfQ==
|
|
@@ -4,4 +4,4 @@ export var OrderBy;
|
|
|
4
4
|
OrderBy["asc"] = "asc";
|
|
5
5
|
OrderBy["desc"] = "desc";
|
|
6
6
|
})(OrderBy || (OrderBy = {}));
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZC1jZWxsLWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LXRhYmxlcy9pbnRlcmZhY2VzL2hlYWQtY2VsbC1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWFBLE1BQU0sQ0FBTixJQUFZLE9BSVg7QUFKRCxXQUFZLE9BQU87SUFDZix3QkFBYSxDQUFBO0lBQ2Isc0JBQVcsQ0FBQTtJQUNYLHdCQUFhLENBQUE7QUFDakIsQ0FBQyxFQUpXLE9BQU8sS0FBUCxPQUFPLFFBSWxCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2VsbERhdGEgfSBmcm9tICcuL2NlbGwtZGF0YSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEhlYWRDZWxsRGF0YSBleHRlbmRzIENlbGxEYXRhIHtcclxuICAgIG9yZGVyQnk/OiBPcmRlckJ5OyAvLyBQb3NzaWJsZSB2YWx1ZXMgYG5vbmVgLCBgYXNjYCwgYGRlc2NgLlxyXG4gICAgaGFzRmlsdGVyPzogYm9vbGVhbjtcclxuICAgIGZpbHRlckNsYXNzZXM/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSGVhZENlbGxNb2RlbERhdGEgZXh0ZW5kcyBIZWFkQ2VsbERhdGEge1xyXG4gICAgdmFsdWVGaWx0ZXI/OiBzdHJpbmc7XHJcbiAgICBhY3RpdmVGaWx0ZXI/OiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBPcmRlckJ5IHtcclxuICAgIG5vbmUgPSAnbm9uZScsXHJcbiAgICBhc2MgPSAnYXNjJyxcclxuICAgIGRlc2MgPSAnZGVzYydcclxufVxyXG4iXX0=
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from './head-cell-data';
|
|
2
2
|
export * from './cell-data';
|
|
3
3
|
export * from './row-data';
|
|
4
|
-
|
|
4
|
+
export * from './wrapper-data';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LXRhYmxlcy9pbnRlcmZhY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaGVhZC1jZWxsLWRhdGEnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NlbGwtZGF0YSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcm93LWRhdGEnO1xyXG5leHBvcnQgKiBmcm9tICcuL3dyYXBwZXItZGF0YSc7XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjYWxjdWxhdGUtdGFibGUtcGFyYW1zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS10YWJsZXMvaW50ZXJmYWNlcy9yZWNhbGN1bGF0ZS10YWJsZS1wYXJhbXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7T3JkZXJCeX0gZnJvbSAnLi9oZWFkLWNlbGwtZGF0YSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFJlY2FsY3VsYXRlVGFibGVQYXJhbXMge1xyXG5cclxuICBmaWx0ZXJzOiB7XHJcbiAgICBjb2x1bW5JbmRleDogbnVtYmVyLFxyXG4gICAgZmlsdGVyVGV4dDogc3RyaW5nXHJcbiAgfVtdO1xyXG5cclxuICBzb3J0OiB7XHJcbiAgICBjb2x1bW5JbmRleDogbnVtYmVyLFxyXG4gICAgb3JkZXI6IE9yZGVyQnlcclxuICB9O1xyXG59XHJcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LXRhYmxlcy9pbnRlcmZhY2VzL3Jvdy1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZWxsRGF0YSB9IGZyb20gJy4vY2VsbC1kYXRhJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUm93RGF0YSB7XHJcbiAgICBpZD86IHN0cmluZztcclxuICAgIGNlbGxzTGlzdDogQ2VsbERhdGFbXTtcclxuICAgIGNoZWNrZWQ/OiBib29sZWFuO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JhcHBlci1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS10YWJsZXMvaW50ZXJmYWNlcy93cmFwcGVyLWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjY2VzaWJpbGl0eURhdGEgfSBmcm9tICcuLi8uLi9zaGFyZWQvaW50ZXJmYWNlcy9hY2Nlc2liaWxpdHktZGF0YSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFdyYXBwZXJEYXRhIGV4dGVuZHMgQWNjZXNpYmlsaXR5RGF0YSB7XHJcbiAgICBjbGFzc2VzPzogc3RyaW5nO1xyXG59XHJcbiJdfQ==
|
package/esm2015/lib/desy-views/components/accordion/accordion-header/accordion-header.component.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { ContentBaseComponent } from '../../../../shared/components';
|
|
3
|
+
export class AccordionHeaderComponent extends ContentBaseComponent {
|
|
4
|
+
}
|
|
5
|
+
AccordionHeaderComponent.decorators = [
|
|
6
|
+
{ type: Component, args: [{
|
|
7
|
+
selector: 'desy-accordion-header',
|
|
8
|
+
template: '<ng-template #contentTemplate><ng-content></ng-content></ng-template>'
|
|
9
|
+
},] }
|
|
10
|
+
];
|
|
11
|
+
AccordionHeaderComponent.propDecorators = {
|
|
12
|
+
classes: [{ type: Input }]
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LXZpZXdzL2NvbXBvbmVudHMvYWNjb3JkaW9uL2FjY29yZGlvbi1oZWFkZXIvYWNjb3JkaW9uLWhlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0MsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFPbkUsTUFBTSxPQUFPLHdCQUF5QixTQUFRLG9CQUFvQjs7O1lBSmpFLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsdUJBQXVCO2dCQUNqQyxRQUFRLEVBQUUsdUVBQXVFO2FBQ2xGOzs7c0JBR0UsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7Q29udGVudEJhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzJztcclxuaW1wb3J0IHtBY2NvcmRpb25IZWFkZXJEYXRhfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGVzeS1hY2NvcmRpb24taGVhZGVyJyxcclxuICB0ZW1wbGF0ZTogJzxuZy10ZW1wbGF0ZSAjY29udGVudFRlbXBsYXRlPjxuZy1jb250ZW50PjwvbmctY29udGVudD48L25nLXRlbXBsYXRlPidcclxufSlcclxuZXhwb3J0IGNsYXNzIEFjY29yZGlvbkhlYWRlckNvbXBvbmVudCBleHRlbmRzIENvbnRlbnRCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgQWNjb3JkaW9uSGVhZGVyRGF0YSB7XHJcblxyXG4gIEBJbnB1dCgpIGNsYXNzZXM/OiBzdHJpbmc7XHJcblxyXG59XHJcbiJdfQ==
|
package/esm2015/lib/desy-views/components/accordion/accordion-item/accordion-item.component.js
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { Component, ContentChildren, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
+
import { AccordionHeaderComponent } from '../accordion-header/accordion-header.component';
|
|
4
|
+
import { DesyContentChild } from '../../../../shared/decorators/desy-content-child.decorator';
|
|
5
|
+
import { ContentComponent } from '../../../../desy-commons/components/content/content.component';
|
|
6
|
+
import { AccessibilityComponent } from '../../../../shared/components';
|
|
7
|
+
export class AccordionItemComponent extends AccessibilityComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
super(...arguments);
|
|
10
|
+
this.openChange = new EventEmitter();
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
AccordionItemComponent.decorators = [
|
|
14
|
+
{ type: Component, args: [{
|
|
15
|
+
selector: 'desy-accordion-item',
|
|
16
|
+
template: ''
|
|
17
|
+
},] }
|
|
18
|
+
];
|
|
19
|
+
AccordionItemComponent.propDecorators = {
|
|
20
|
+
id: [{ type: Input }],
|
|
21
|
+
open: [{ type: Input }],
|
|
22
|
+
classes: [{ type: Input }],
|
|
23
|
+
openChange: [{ type: Output }],
|
|
24
|
+
headerComponent: [{ type: ContentChildren, args: [AccordionHeaderComponent,] }],
|
|
25
|
+
contentComponent: [{ type: ContentChildren, args: [ContentComponent,] }]
|
|
26
|
+
};
|
|
27
|
+
__decorate([
|
|
28
|
+
DesyContentChild()
|
|
29
|
+
], AccordionItemComponent.prototype, "headerComponent", void 0);
|
|
30
|
+
__decorate([
|
|
31
|
+
DesyContentChild()
|
|
32
|
+
], AccordionItemComponent.prototype, "contentComponent", void 0);
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS12aWV3cy9jb21wb25lbnRzL2FjY29yZGlvbi9hY2NvcmRpb24taXRlbS9hY2NvcmRpb24taXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXRGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3hGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQzVGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLCtEQUErRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBTXJFLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxzQkFBc0I7SUFKbEU7O1FBVVksZUFBVSxHQUEwQixJQUFJLFlBQVksRUFBVyxDQUFDO0lBUTVFLENBQUM7OztZQWxCQSxTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtnQkFDL0IsUUFBUSxFQUFFLEVBQUU7YUFDYjs7O2lCQUdFLEtBQUs7bUJBQ0wsS0FBSztzQkFDTCxLQUFLO3lCQUVMLE1BQU07OEJBR04sZUFBZSxTQUFDLHdCQUF3QjsrQkFHeEMsZUFBZSxTQUFDLGdCQUFnQjs7QUFIVTtJQUQxQyxnQkFBZ0IsRUFBRTsrREFDa0U7QUFHbEQ7SUFEbEMsZ0JBQWdCLEVBQUU7Z0VBQ21EIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtBY2NvcmRpb25JdGVtRGF0YX0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7QWNjb3JkaW9uSGVhZGVyQ29tcG9uZW50fSBmcm9tICcuLi9hY2NvcmRpb24taGVhZGVyL2FjY29yZGlvbi1oZWFkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHtEZXN5Q29udGVudENoaWxkfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvZGVjb3JhdG9ycy9kZXN5LWNvbnRlbnQtY2hpbGQuZGVjb3JhdG9yJztcclxuaW1wb3J0IHtDb250ZW50Q29tcG9uZW50fSBmcm9tICcuLi8uLi8uLi8uLi9kZXN5LWNvbW1vbnMvY29tcG9uZW50cy9jb250ZW50L2NvbnRlbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHtBY2Nlc3NpYmlsaXR5Q29tcG9uZW50fSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Rlc3ktYWNjb3JkaW9uLWl0ZW0nLFxyXG4gIHRlbXBsYXRlOiAnJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFjY29yZGlvbkl0ZW1Db21wb25lbnQgZXh0ZW5kcyBBY2Nlc3NpYmlsaXR5Q29tcG9uZW50IGltcGxlbWVudHMgQWNjb3JkaW9uSXRlbURhdGEge1xyXG5cclxuICBASW5wdXQoKSBpZDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIG9wZW46IGJvb2xlYW47XHJcbiAgQElucHV0KCkgY2xhc3Nlczogc3RyaW5nO1xyXG5cclxuICBAT3V0cHV0KCkgb3BlbkNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBARGVzeUNvbnRlbnRDaGlsZCgpXHJcbiAgQENvbnRlbnRDaGlsZHJlbihBY2NvcmRpb25IZWFkZXJDb21wb25lbnQpIGhlYWRlckNvbXBvbmVudDogQWNjb3JkaW9uSGVhZGVyQ29tcG9uZW50O1xyXG5cclxuICBARGVzeUNvbnRlbnRDaGlsZCgpXHJcbiAgQENvbnRlbnRDaGlsZHJlbihDb250ZW50Q29tcG9uZW50KSBjb250ZW50Q29tcG9uZW50OiBDb250ZW50Q29tcG9uZW50O1xyXG5cclxufVxyXG4iXX0=
|
|
@@ -1,97 +1,120 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { Component, ContentChildren, Input, ViewChildren } from '@angular/core';
|
|
3
|
+
import { AccessibilityComponent } from '../../../shared/components';
|
|
4
|
+
import { AccordionHeaderComponent } from './accordion-header/accordion-header.component';
|
|
5
|
+
import { DesyContentChild } from '../../../shared/decorators/desy-content-child.decorator';
|
|
6
|
+
import { AccordionItemComponent } from './accordion-item/accordion-item.component';
|
|
3
7
|
export class AccordionComponent extends AccessibilityComponent {
|
|
4
8
|
constructor() {
|
|
5
9
|
super(...arguments);
|
|
6
10
|
this.showAll = true;
|
|
7
11
|
}
|
|
8
12
|
ngOnChanges(changes) {
|
|
9
|
-
if (!this.
|
|
10
|
-
throw new Error(`
|
|
11
|
-
}
|
|
12
|
-
else {
|
|
13
|
-
this.items.forEach(item => {
|
|
14
|
-
if (!item.html && !item.text) {
|
|
15
|
-
throw new Error(`html or text are required`);
|
|
16
|
-
}
|
|
17
|
-
if (!item.headerHtml && !item.headerText) {
|
|
18
|
-
throw new Error(`headerHtml or headerText are required`);
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
if (this.heading) {
|
|
23
|
-
if (!this.heading.html && !this.heading.text) {
|
|
24
|
-
throw new Error(`heading.html or heading.text are required`);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
getIdPrefix() {
|
|
29
|
-
if (this.idPrefix) {
|
|
30
|
-
return this.idPrefix;
|
|
13
|
+
if (!this.idPrefix) {
|
|
14
|
+
throw new Error(`idPrefix is required`);
|
|
31
15
|
}
|
|
32
16
|
}
|
|
33
|
-
getItemId(index) {
|
|
17
|
+
getItemId(item, index) {
|
|
34
18
|
let id;
|
|
35
|
-
if (
|
|
36
|
-
id =
|
|
19
|
+
if (item.id) {
|
|
20
|
+
id = item.id;
|
|
37
21
|
}
|
|
38
22
|
else {
|
|
39
|
-
|
|
23
|
+
if (index === 0) {
|
|
24
|
+
id = this.idPrefix ? this.idPrefix : undefined;
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
id = this.idPrefix ? this.idPrefix + '-' + index : index;
|
|
28
|
+
}
|
|
40
29
|
}
|
|
41
30
|
return id;
|
|
42
31
|
}
|
|
43
32
|
changeAll() {
|
|
44
|
-
this.
|
|
33
|
+
const items = this.getItems();
|
|
34
|
+
items.forEach(item => {
|
|
35
|
+
const isChange = item.open !== this.showAll;
|
|
45
36
|
item.open = this.showAll;
|
|
37
|
+
if (isChange && item instanceof AccordionItemComponent) {
|
|
38
|
+
item.openChange.emit(item.open);
|
|
39
|
+
}
|
|
46
40
|
});
|
|
47
41
|
this.showAll = !this.showAll;
|
|
48
42
|
}
|
|
49
|
-
|
|
50
|
-
if (this.
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
43
|
+
toggleItem(item) {
|
|
44
|
+
if (!item.open || this.allowToggle) {
|
|
45
|
+
const newOpenValue = !item.open;
|
|
46
|
+
if (!this.allowMultiple) {
|
|
47
|
+
const items = this.getItems();
|
|
48
|
+
items.forEach(it => {
|
|
49
|
+
const wasOpen = it.open;
|
|
50
|
+
it.open = false;
|
|
51
|
+
if (wasOpen && it !== item && it instanceof AccordionItemComponent) {
|
|
52
|
+
it.openChange.emit(it.open);
|
|
53
|
+
}
|
|
60
54
|
});
|
|
61
|
-
|
|
55
|
+
}
|
|
56
|
+
item.open = newOpenValue;
|
|
57
|
+
if (item instanceof AccordionItemComponent) {
|
|
58
|
+
item.openChange.emit(item.open);
|
|
62
59
|
}
|
|
63
60
|
}
|
|
64
61
|
}
|
|
65
62
|
focusFirstItem(event) {
|
|
66
|
-
|
|
67
|
-
event.preventDefault();
|
|
68
|
-
}
|
|
63
|
+
event.preventDefault();
|
|
69
64
|
this.itemSelectors.toArray()[0].nativeElement.focus();
|
|
70
65
|
}
|
|
71
66
|
focusLastItem(event) {
|
|
72
|
-
|
|
73
|
-
event.preventDefault();
|
|
74
|
-
}
|
|
67
|
+
event.preventDefault();
|
|
75
68
|
this.itemSelectors.toArray()[this.itemSelectors.length - 1].nativeElement.focus();
|
|
76
69
|
}
|
|
77
|
-
focusNextItem(focusedItem) {
|
|
78
|
-
|
|
79
|
-
|
|
70
|
+
focusNextItem(event, focusedItem) {
|
|
71
|
+
event.preventDefault();
|
|
72
|
+
const selectors = this.itemSelectors.toArray();
|
|
73
|
+
if (selectors[(focusedItem + 1) % selectors.length] != null) {
|
|
74
|
+
selectors[(focusedItem + 1) % selectors.length].nativeElement.focus();
|
|
80
75
|
}
|
|
81
76
|
}
|
|
82
|
-
focusPreviousItem(focusedItem) {
|
|
83
|
-
|
|
84
|
-
|
|
77
|
+
focusPreviousItem(event, focusedItem) {
|
|
78
|
+
event.preventDefault();
|
|
79
|
+
const selectors = this.itemSelectors.toArray();
|
|
80
|
+
if (selectors[(focusedItem + selectors.length - 1) % selectors.length] != null) {
|
|
81
|
+
selectors[(focusedItem + selectors.length - 1) % selectors.length].nativeElement.focus();
|
|
85
82
|
}
|
|
86
83
|
}
|
|
87
84
|
selectItem(i) {
|
|
88
85
|
this.currentItem = i;
|
|
89
86
|
}
|
|
87
|
+
getTitleClasses() {
|
|
88
|
+
let classes = 'c-h2 mb-base';
|
|
89
|
+
if (this.headingComponent && this.headingComponent.classes) {
|
|
90
|
+
classes = this.headingComponent.classes;
|
|
91
|
+
}
|
|
92
|
+
else if (this.heading && this.heading.classes) {
|
|
93
|
+
classes = this.heading.classes;
|
|
94
|
+
}
|
|
95
|
+
return classes;
|
|
96
|
+
}
|
|
97
|
+
getItems() {
|
|
98
|
+
const items = this.itemComponentList && this.itemComponentList.length > 0 ? this.itemComponentList.toArray() : this.items;
|
|
99
|
+
if (!items || items.length === 0) {
|
|
100
|
+
throw new Error(`items are required`);
|
|
101
|
+
}
|
|
102
|
+
return items;
|
|
103
|
+
}
|
|
104
|
+
getItemHeader(item) {
|
|
105
|
+
return item instanceof AccordionItemComponent ? item.headerComponent : null;
|
|
106
|
+
}
|
|
107
|
+
getItemContent(item) {
|
|
108
|
+
return item instanceof AccordionItemComponent ? item.contentComponent : null;
|
|
109
|
+
}
|
|
110
|
+
handleRequiredEmpty(text) {
|
|
111
|
+
throw new Error(text);
|
|
112
|
+
}
|
|
90
113
|
}
|
|
91
114
|
AccordionComponent.decorators = [
|
|
92
115
|
{ type: Component, args: [{
|
|
93
116
|
selector: 'desy-accordion',
|
|
94
|
-
template: "<div [class]=\"classes\"\r\n [attr.role]=\"role\"\r\n [attr.aria-describedby]=\"ariaDescribedBy\"\r\n [attr.aria-errormessage]=\"ariaErrorMessage\"\r\n [attr.aria-label]=\"ariaLabel\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy\"\r\n [attr.aria-hidden]=\"ariaHidden\"\r\n [attr.aria-disabled]=\"ariaDisabled\"\r\n [attr.aria-controls]=\"ariaControls\"\r\n [attr.aria-current]=\"ariaCurrent\"\r\n [attr.aria-live]=\"ariaLive\"\r\n [attr.aria-expanded]=\"ariaExpanded\"\r\n [attr.aria-haspopup]=\"ariaHasPopup\"\r\n [attr.tabindex]=\"tabindex\">\r\n <div class=\"flex justify-between\" *ngIf=\"heading\">\r\n
|
|
117
|
+
template: "<div [class]=\"classes\"\r\n [attr.role]=\"role\"\r\n [attr.aria-describedby]=\"ariaDescribedBy\"\r\n [attr.aria-errormessage]=\"ariaErrorMessage\"\r\n [attr.aria-label]=\"ariaLabel\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy\"\r\n [attr.aria-hidden]=\"ariaHidden\"\r\n [attr.aria-disabled]=\"ariaDisabled\"\r\n [attr.aria-controls]=\"ariaControls\"\r\n [attr.aria-current]=\"ariaCurrent\"\r\n [attr.aria-live]=\"ariaLive\"\r\n [attr.aria-expanded]=\"ariaExpanded\"\r\n [attr.aria-haspopup]=\"ariaHasPopup\"\r\n [attr.tabindex]=\"tabindex\">\r\n <div class=\"flex justify-between\">\r\n <ng-container *ngIf=\"headingComponent || heading\">\r\n <ng-container [ngSwitch]=\"headingLevel > 0 && headingLevel < 6 ? headingLevel : 2\">\r\n <h1 *ngSwitchCase=\"1\" [class]=\"getTitleClasses()\" (desyContentEmpty)=\"handleRequiredEmpty('heading content, html or text are required')\">\r\n <ng-container *desyCustomInnerContent=\"{\r\n component: headingComponent ? headingComponent : null,\r\n html: heading ? heading.html : null,\r\n text: heading ? heading.text : null\r\n }\"></ng-container>\r\n </h1>\r\n <h2 *ngSwitchCase=\"2\" [class]=\"getTitleClasses()\" (desyContentEmpty)=\"handleRequiredEmpty('heading content, html or text are required')\">\r\n <ng-container *desyCustomInnerContent=\"{\r\n component: headingComponent ? headingComponent : null,\r\n html: heading ? heading.html : null,\r\n text: heading ? heading.text : null\r\n }\"></ng-container>\r\n </h2>\r\n <h3 *ngSwitchCase=\"3\" [class]=\"getTitleClasses()\" (desyContentEmpty)=\"handleRequiredEmpty('heading content, html or text are required')\">\r\n <ng-container *desyCustomInnerContent=\"{\r\n component: headingComponent ? headingComponent : null,\r\n html: heading ? heading.html : null,\r\n text: heading ? heading.text : null\r\n }\"></ng-container>\r\n </h3>\r\n <h4 *ngSwitchCase=\"4\" [class]=\"getTitleClasses()\" (desyContentEmpty)=\"handleRequiredEmpty('heading content, html or text are required')\">\r\n <ng-container *desyCustomInnerContent=\"{\r\n component: headingComponent ? headingComponent : null,\r\n html: heading ? heading.html : null,\r\n text: heading ? heading.text : null\r\n }\"></ng-container>\r\n </h4>\r\n <h5 *ngSwitchCase=\"5\" [class]=\"getTitleClasses()\" (desyContentEmpty)=\"handleRequiredEmpty('heading content, html or text are required')\">\r\n <ng-container *desyCustomInnerContent=\"{\r\n component: headingComponent ? headingComponent : null,\r\n html: heading ? heading.html : null,\r\n text: heading ? heading.text : null\r\n }\"></ng-container>\r\n </h5>\r\n </ng-container>\r\n <button *ngIf=\"showControl\" (click)=\"changeAll()\"\r\n class=\"ml-auto py-base text-sm text-neutral-dark underline focus:text-black focus:bg-warning-base focus:outline-none focus:shadow-outline-focus\">\r\n {{showAll ? 'Mostrar' : 'Ocultar'}} todo\r\n </button>\r\n </ng-container>\r\n </div>\r\n <div class=\"Accordion\">\r\n <div *ngFor=\"let item of getItems(); index as i\" class=\"-my-px px-xs py-sm border-t border-b border-neutral-base\"\r\n (keydown.home)=\"focusFirstItem($event)\"\r\n (keydown.end)=\"focusLastItem($event)\"\r\n (keydown.arrowup)=\"focusPreviousItem($event, i)\"\r\n (keydown.arrowdown)=\"focusNextItem($event, i)\"\r\n (click)=\"selectItem(i)\">\r\n\r\n <ng-container [ngSwitch]=\"headingLevel > 0 && headingLevel < 6 ? headingLevel : 2\">\r\n <h2 *ngSwitchCase=\"1\"><ng-container *ngTemplateOutlet=\"itemHeaderContent; context: {item: item, id: getItemId(item, i), index: i}\"></ng-container></h2>\r\n <h3 *ngSwitchCase=\"2\"><ng-container *ngTemplateOutlet=\"itemHeaderContent; context: {item: item, id: getItemId(item, i), index: i}\"></ng-container></h3>\r\n <h4 *ngSwitchCase=\"3\"><ng-container *ngTemplateOutlet=\"itemHeaderContent; context: {item: item, id: getItemId(item, i), index: i}\"></ng-container></h4>\r\n <h5 *ngSwitchCase=\"4\"><ng-container *ngTemplateOutlet=\"itemHeaderContent; context: {item: item, id: getItemId(item, i), index: i}\"></ng-container></h5>\r\n <h6 *ngSwitchCase=\"5\"><ng-container *ngTemplateOutlet=\"itemHeaderContent; context: {item: item, id: getItemId(item, i), index: i}\"></ng-container></h6>\r\n </ng-container>\r\n <p class=\"sr-only\" aria-hidden=\"true\">Haz click en el bot\u00F3n anterior para mostrar u ocultar</p>\r\n <div *ngIf=\"item.open\" class=\"Accordion-panel\"\r\n (desyContentEmpty)=\"handleRequiredEmpty('item content, html or text are required at position ' + i)\"\r\n [attr.id]=\"getItemId(item, i)\"\r\n [attr.role]=\"(item.role ? role : 'accordion')\"\r\n [attr.aria-selected]=\"currentItem === i ? 'true' : 'false'\"\r\n [attr.aria-describedby]=\"item.ariaDescribedBy\"\r\n [attr.aria-errormessage]=\"item.ariaErrorMessage\"\r\n [attr.aria-label]=\"item.ariaLabel\"\r\n [attr.aria-labelledby]=\"item.ariaLabelledBy\"\r\n [attr.aria-hidden]=\"item.ariaHidden\"\r\n [attr.aria-controls]=\"'accordion-' + getItemId(item, i)\"\r\n [attr.aria-current]=\"item.ariaCurrent\"\r\n [attr.aria-live]=\"item.ariaLive\"\r\n [attr.aria-expanded]=\"item.ariaExpanded\"\r\n [attr.aria-haspopup]=\"item.ariaHasPopup\">\r\n <ng-container *desyCustomInnerContent=\"{ component: getItemContent(item), html: item.html, text: item.text }\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #itemHeaderContent let-item=\"item\" let-id=\"id\" let-index=\"index\">\r\n <button #itemSelector [id]=\"id + '-title'\" class=\"Accordion-trigger group relative w-full py-sm font-semibold text-left cursor-pointer focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black\"\r\n (desyContentEmpty)=\"handleRequiredEmpty('item heading content, html or text are required at position ' + index)\"\r\n [attr.aria-controls]=\"id\" [attr.aria-expanded]=\"item.open\" (click)=\"toggleItem(item)\">\r\n <ng-container *desyCustomInnerContent=\"{ component: getItemHeader(item), html: item.headerHtml, text: item.headerText }\"></ng-container>\r\n <span #desyContentEmptyIgnore *ngIf=\"allowToggle || !item.open\" class=\"absolute inset-y-0 right-0 py-sm font-normal text-sm text-neutral-dark underline group-focus:text-black pointer-events-none\" aria-hidden=\"true\">\r\n {{ item.open ? 'Ocultar' : 'Mostrar' }}\r\n </span>\r\n </button>\r\n</ng-template>\r\n"
|
|
95
118
|
},] }
|
|
96
119
|
];
|
|
97
120
|
AccordionComponent.propDecorators = {
|
|
@@ -100,9 +123,14 @@ AccordionComponent.propDecorators = {
|
|
|
100
123
|
allowToggle: [{ type: Input }],
|
|
101
124
|
allowMultiple: [{ type: Input }],
|
|
102
125
|
heading: [{ type: Input }],
|
|
126
|
+
headingLevel: [{ type: Input }],
|
|
103
127
|
showControl: [{ type: Input }],
|
|
104
128
|
items: [{ type: Input }],
|
|
105
129
|
classes: [{ type: Input }],
|
|
106
|
-
|
|
130
|
+
headingComponent: [{ type: ContentChildren, args: [AccordionHeaderComponent,] }],
|
|
131
|
+
itemComponentList: [{ type: ContentChildren, args: [AccordionItemComponent,] }]
|
|
107
132
|
};
|
|
108
|
-
|
|
133
|
+
__decorate([
|
|
134
|
+
DesyContentChild()
|
|
135
|
+
], AccordionComponent.prototype, "headingComponent", void 0);
|
|
136
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktdmlld3MvY29tcG9uZW50cy9hY2NvcmRpb24vYWNjb3JkaW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxlQUFlLEVBQWMsS0FBSyxFQUF1QyxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFL0gsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFbEUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sK0NBQStDLENBQUM7QUFDdkYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seURBQXlELENBQUM7QUFDekYsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFRakYsTUFBTSxPQUFPLGtCQUFtQixTQUFRLHNCQUFzQjtJQUo5RDs7UUFxQkUsWUFBTyxHQUFHLElBQUksQ0FBQztJQWtIakIsQ0FBQztJQS9HQyxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1NBQ3pDO0lBQ0gsQ0FBQztJQUVELFNBQVMsQ0FBQyxJQUFJLEVBQUUsS0FBYTtRQUMzQixJQUFJLEVBQUUsQ0FBQztRQUNQLElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNYLEVBQUUsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDO1NBQ2Q7YUFBTTtZQUNMLElBQUksS0FBSyxLQUFLLENBQUMsRUFBRTtnQkFDZixFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO2FBQ2hEO2lCQUFNO2dCQUNMLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQzthQUMxRDtTQUNGO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsU0FBUztRQUNQLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM5QixLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ25CLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUM1QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDekIsSUFBSSxRQUFRLElBQUksSUFBSSxZQUFZLHNCQUFzQixFQUFFO2dCQUN0RCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDakM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQy9CLENBQUM7SUFFRCxVQUFVLENBQUMsSUFBdUI7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNsQyxNQUFNLFlBQVksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUU7Z0JBQ3ZCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDOUIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRTtvQkFDakIsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQztvQkFDeEIsRUFBRSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7b0JBQ2hCLElBQUksT0FBTyxJQUFJLEVBQUUsS0FBSyxJQUFJLElBQUksRUFBRSxZQUFZLHNCQUFzQixFQUFFO3dCQUNsRSxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7cUJBQzdCO2dCQUNILENBQUMsQ0FBQyxDQUFDO2FBQ0o7WUFDRCxJQUFJLENBQUMsSUFBSSxHQUFHLFlBQVksQ0FBQztZQUN6QixJQUFJLElBQUksWUFBWSxzQkFBc0IsRUFBRTtnQkFDMUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ2pDO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQUs7UUFDbEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3hELENBQUM7SUFFRCxhQUFhLENBQUMsS0FBSztRQUNqQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDcEYsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFLLEVBQUUsV0FBbUI7UUFDdEMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDL0MsSUFBSSxTQUFTLENBQUMsQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRTtZQUMzRCxTQUFTLENBQUMsQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUN2RTtJQUNILENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsV0FBbUI7UUFDMUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDL0MsSUFBSSxTQUFTLENBQUMsQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxFQUFFO1lBQzlFLFNBQVMsQ0FBQyxDQUFDLFdBQVcsR0FBRyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDMUY7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFFLENBQVM7UUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLE9BQU8sR0FBRyxjQUFjLENBQUM7UUFDN0IsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRTtZQUMxRCxPQUFPLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQztTQUN6QzthQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtZQUMvQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7U0FDaEM7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQzFILElBQUksQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1NBQ3ZDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsYUFBYSxDQUFDLElBQXVCO1FBQ25DLE9BQU8sSUFBSSxZQUFZLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDOUUsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUF1QjtRQUNwQyxPQUFPLElBQUksWUFBWSxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDL0UsQ0FBQztJQUVELG1CQUFtQixDQUFDLElBQVk7UUFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDOzs7WUF0SUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxnQkFBZ0I7Z0JBQzFCLHExTkFBeUM7YUFDMUM7Ozs0QkFHRSxZQUFZLFNBQUMsY0FBYzt1QkFFM0IsS0FBSzswQkFDTCxLQUFLOzRCQUNMLEtBQUs7c0JBQ0wsS0FBSzsyQkFDTCxLQUFLOzBCQUNMLEtBQUs7b0JBQ0wsS0FBSztzQkFDTCxLQUFLOytCQUdMLGVBQWUsU0FBQyx3QkFBd0I7Z0NBQ3hDLGVBQWUsU0FBQyxzQkFBc0I7O0FBREk7SUFEMUMsZ0JBQWdCLEVBQUU7NERBQ21FIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZiwgSW5wdXQsIE9uQ2hhbmdlcywgUXVlcnlMaXN0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGRyZW59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0FjY29yZGlvbkhlYWRlckRhdGF9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQge0FjY2Vzc2liaWxpdHlDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzJztcclxuaW1wb3J0IHtBY2NvcmRpb25JdGVtRGF0YX0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7QWNjb3JkaW9uSGVhZGVyQ29tcG9uZW50fSBmcm9tICcuL2FjY29yZGlvbi1oZWFkZXIvYWNjb3JkaW9uLWhlYWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQge0Rlc3lDb250ZW50Q2hpbGR9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9kZWNvcmF0b3JzL2Rlc3ktY29udGVudC1jaGlsZC5kZWNvcmF0b3InO1xyXG5pbXBvcnQge0FjY29yZGlvbkl0ZW1Db21wb25lbnR9IGZyb20gJy4vYWNjb3JkaW9uLWl0ZW0vYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHtDb250ZW50Q29tcG9uZW50fSBmcm9tICcuLi8uLi8uLi9kZXN5LWNvbW1vbnMvY29tcG9uZW50cy9jb250ZW50L2NvbnRlbnQuY29tcG9uZW50JztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Rlc3ktYWNjb3JkaW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYWNjb3JkaW9uLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQWNjb3JkaW9uQ29tcG9uZW50IGV4dGVuZHMgQWNjZXNzaWJpbGl0eUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcblxyXG4gIEBWaWV3Q2hpbGRyZW4oJ2l0ZW1TZWxlY3RvcicpIGl0ZW1TZWxlY3RvcnM6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcclxuXHJcbiAgQElucHV0KCkgaWRQcmVmaXg6IHN0cmluZztcclxuICBASW5wdXQoKSBhbGxvd1RvZ2dsZTogYm9vbGVhbjtcclxuICBASW5wdXQoKSBhbGxvd011bHRpcGxlOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGhlYWRpbmc6IEFjY29yZGlvbkhlYWRlckRhdGE7XHJcbiAgQElucHV0KCkgaGVhZGluZ0xldmVsO1xyXG4gIEBJbnB1dCgpIHNob3dDb250cm9sOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGl0ZW1zOiBBY2NvcmRpb25JdGVtRGF0YVtdO1xyXG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcclxuXHJcbiAgQERlc3lDb250ZW50Q2hpbGQoKVxyXG4gIEBDb250ZW50Q2hpbGRyZW4oQWNjb3JkaW9uSGVhZGVyQ29tcG9uZW50KSBoZWFkaW5nQ29tcG9uZW50OiBBY2NvcmRpb25IZWFkZXJDb21wb25lbnQ7XHJcbiAgQENvbnRlbnRDaGlsZHJlbihBY2NvcmRpb25JdGVtQ29tcG9uZW50KSBpdGVtQ29tcG9uZW50TGlzdDogUXVlcnlMaXN0PEFjY29yZGlvbkl0ZW1Db21wb25lbnQ+O1xyXG5cclxuICBzaG93QWxsID0gdHJ1ZTtcclxuICBjdXJyZW50SXRlbTogbnVtYmVyO1xyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuaWRQcmVmaXgpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBpZFByZWZpeCBpcyByZXF1aXJlZGApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0SXRlbUlkKGl0ZW0sIGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgbGV0IGlkO1xyXG4gICAgaWYgKGl0ZW0uaWQpIHtcclxuICAgICAgaWQgPSBpdGVtLmlkO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKGluZGV4ID09PSAwKSB7XHJcbiAgICAgICAgaWQgPSB0aGlzLmlkUHJlZml4ID8gdGhpcy5pZFByZWZpeCA6IHVuZGVmaW5lZDtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZCA9IHRoaXMuaWRQcmVmaXggPyB0aGlzLmlkUHJlZml4ICsgJy0nICsgaW5kZXggOiBpbmRleDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGlkO1xyXG4gIH1cclxuXHJcbiAgY2hhbmdlQWxsKCk6IHZvaWQge1xyXG4gICAgY29uc3QgaXRlbXMgPSB0aGlzLmdldEl0ZW1zKCk7XHJcbiAgICBpdGVtcy5mb3JFYWNoKGl0ZW0gPT4ge1xyXG4gICAgICBjb25zdCBpc0NoYW5nZSA9IGl0ZW0ub3BlbiAhPT0gdGhpcy5zaG93QWxsO1xyXG4gICAgICBpdGVtLm9wZW4gPSB0aGlzLnNob3dBbGw7XHJcbiAgICAgIGlmIChpc0NoYW5nZSAmJiBpdGVtIGluc3RhbmNlb2YgQWNjb3JkaW9uSXRlbUNvbXBvbmVudCkge1xyXG4gICAgICAgIGl0ZW0ub3BlbkNoYW5nZS5lbWl0KGl0ZW0ub3Blbik7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgdGhpcy5zaG93QWxsID0gIXRoaXMuc2hvd0FsbDtcclxuICB9XHJcblxyXG4gIHRvZ2dsZUl0ZW0oaXRlbTogQWNjb3JkaW9uSXRlbURhdGEpOiB2b2lkIHtcclxuICAgIGlmICghaXRlbS5vcGVuIHx8IHRoaXMuYWxsb3dUb2dnbGUpIHtcclxuICAgICAgY29uc3QgbmV3T3BlblZhbHVlID0gIWl0ZW0ub3BlbjtcclxuICAgICAgaWYgKCF0aGlzLmFsbG93TXVsdGlwbGUpIHtcclxuICAgICAgICBjb25zdCBpdGVtcyA9IHRoaXMuZ2V0SXRlbXMoKTtcclxuICAgICAgICBpdGVtcy5mb3JFYWNoKGl0ID0+IHtcclxuICAgICAgICAgIGNvbnN0IHdhc09wZW4gPSBpdC5vcGVuO1xyXG4gICAgICAgICAgaXQub3BlbiA9IGZhbHNlO1xyXG4gICAgICAgICAgaWYgKHdhc09wZW4gJiYgaXQgIT09IGl0ZW0gJiYgaXQgaW5zdGFuY2VvZiBBY2NvcmRpb25JdGVtQ29tcG9uZW50KSB7XHJcbiAgICAgICAgICAgIGl0Lm9wZW5DaGFuZ2UuZW1pdChpdC5vcGVuKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICBpdGVtLm9wZW4gPSBuZXdPcGVuVmFsdWU7XHJcbiAgICAgIGlmIChpdGVtIGluc3RhbmNlb2YgQWNjb3JkaW9uSXRlbUNvbXBvbmVudCkge1xyXG4gICAgICAgIGl0ZW0ub3BlbkNoYW5nZS5lbWl0KGl0ZW0ub3Blbik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZvY3VzRmlyc3RJdGVtKGV2ZW50KTogdm9pZCB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgdGhpcy5pdGVtU2VsZWN0b3JzLnRvQXJyYXkoKVswXS5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgfVxyXG5cclxuICBmb2N1c0xhc3RJdGVtKGV2ZW50KTogdm9pZCB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgdGhpcy5pdGVtU2VsZWN0b3JzLnRvQXJyYXkoKVt0aGlzLml0ZW1TZWxlY3RvcnMubGVuZ3RoIC0gMV0ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gIH1cclxuXHJcbiAgZm9jdXNOZXh0SXRlbShldmVudCwgZm9jdXNlZEl0ZW06IG51bWJlcik6IHZvaWQge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIGNvbnN0IHNlbGVjdG9ycyA9IHRoaXMuaXRlbVNlbGVjdG9ycy50b0FycmF5KCk7XHJcbiAgICBpZiAoc2VsZWN0b3JzWyhmb2N1c2VkSXRlbSArIDEpICUgc2VsZWN0b3JzLmxlbmd0aF0gIT0gbnVsbCkge1xyXG4gICAgICBzZWxlY3RvcnNbKGZvY3VzZWRJdGVtICsgMSkgJSBzZWxlY3RvcnMubGVuZ3RoXS5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmb2N1c1ByZXZpb3VzSXRlbShldmVudCwgZm9jdXNlZEl0ZW06IG51bWJlcik6IHZvaWQge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIGNvbnN0IHNlbGVjdG9ycyA9IHRoaXMuaXRlbVNlbGVjdG9ycy50b0FycmF5KCk7XHJcbiAgICBpZiAoc2VsZWN0b3JzWyhmb2N1c2VkSXRlbSArIHNlbGVjdG9ycy5sZW5ndGggLSAxKSAlIHNlbGVjdG9ycy5sZW5ndGhdICE9IG51bGwpIHtcclxuICAgICAgc2VsZWN0b3JzWyhmb2N1c2VkSXRlbSArIHNlbGVjdG9ycy5sZW5ndGggLSAxKSAlIHNlbGVjdG9ycy5sZW5ndGhdLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNlbGVjdEl0ZW0oIGk6IG51bWJlciApOiB2b2lkIHtcclxuICAgIHRoaXMuY3VycmVudEl0ZW0gPSBpO1xyXG4gIH1cclxuXHJcbiAgZ2V0VGl0bGVDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICBsZXQgY2xhc3NlcyA9ICdjLWgyIG1iLWJhc2UnO1xyXG4gICAgaWYgKHRoaXMuaGVhZGluZ0NvbXBvbmVudCAmJiB0aGlzLmhlYWRpbmdDb21wb25lbnQuY2xhc3Nlcykge1xyXG4gICAgICBjbGFzc2VzID0gdGhpcy5oZWFkaW5nQ29tcG9uZW50LmNsYXNzZXM7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaGVhZGluZyAmJiB0aGlzLmhlYWRpbmcuY2xhc3Nlcykge1xyXG4gICAgICBjbGFzc2VzID0gdGhpcy5oZWFkaW5nLmNsYXNzZXM7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gY2xhc3NlcztcclxuICB9XHJcblxyXG4gIGdldEl0ZW1zKCk6IEFjY29yZGlvbkl0ZW1EYXRhW10ge1xyXG4gICAgY29uc3QgaXRlbXMgPSB0aGlzLml0ZW1Db21wb25lbnRMaXN0ICYmIHRoaXMuaXRlbUNvbXBvbmVudExpc3QubGVuZ3RoID4gMCA/IHRoaXMuaXRlbUNvbXBvbmVudExpc3QudG9BcnJheSgpIDogdGhpcy5pdGVtcztcclxuICAgIGlmICghaXRlbXMgfHwgaXRlbXMubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcihgaXRlbXMgYXJlIHJlcXVpcmVkYCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gaXRlbXM7XHJcbiAgfVxyXG5cclxuICBnZXRJdGVtSGVhZGVyKGl0ZW06IEFjY29yZGlvbkl0ZW1EYXRhKTogQWNjb3JkaW9uSGVhZGVyQ29tcG9uZW50IHtcclxuICAgIHJldHVybiBpdGVtIGluc3RhbmNlb2YgQWNjb3JkaW9uSXRlbUNvbXBvbmVudCA/IGl0ZW0uaGVhZGVyQ29tcG9uZW50IDogbnVsbDtcclxuICB9XHJcblxyXG4gIGdldEl0ZW1Db250ZW50KGl0ZW06IEFjY29yZGlvbkl0ZW1EYXRhKTogQ29udGVudENvbXBvbmVudCB7XHJcbiAgICByZXR1cm4gaXRlbSBpbnN0YW5jZW9mIEFjY29yZGlvbkl0ZW1Db21wb25lbnQgPyBpdGVtLmNvbnRlbnRDb21wb25lbnQgOiBudWxsO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlUmVxdWlyZWRFbXB0eSh0ZXh0OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRocm93IG5ldyBFcnJvcih0ZXh0KTtcclxuICB9XHJcbn1cclxuIl19
|