ngx-bootstrap 5.6.1 → 6.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +127 -0
- package/README.md +8 -1
- package/accordion/accordion-group.component.d.ts +3 -2
- package/accordion/accordion.module.d.ts +1 -1
- package/accordion/bundles/ngx-bootstrap-accordion.umd.js +5 -2
- package/accordion/bundles/ngx-bootstrap-accordion.umd.js.map +1 -1
- package/accordion/bundles/ngx-bootstrap-accordion.umd.min.js +1 -1
- package/accordion/bundles/ngx-bootstrap-accordion.umd.min.js.map +1 -1
- package/accordion/esm2015/accordion.config.js +6 -2
- package/accordion/esm2015/accordion.module.js +2 -3
- package/accordion/esm5/accordion.config.js +6 -2
- package/accordion/esm5/accordion.module.js +2 -3
- package/accordion/fesm2015/ngx-bootstrap-accordion.js +6 -3
- package/accordion/fesm2015/ngx-bootstrap-accordion.js.map +1 -1
- package/accordion/fesm5/ngx-bootstrap-accordion.js +6 -3
- package/accordion/fesm5/ngx-bootstrap-accordion.js.map +1 -1
- package/accordion/ngx-bootstrap-accordion.metadata.json +1 -1
- package/accordion/package.json +2 -2
- package/alert/alert.module.d.ts +1 -1
- package/alert/bundles/ngx-bootstrap-alert.umd.js +5 -2
- package/alert/bundles/ngx-bootstrap-alert.umd.js.map +1 -1
- package/alert/bundles/ngx-bootstrap-alert.umd.min.js +2 -2
- package/alert/bundles/ngx-bootstrap-alert.umd.min.js.map +1 -1
- package/alert/esm2015/alert.component.js +3 -3
- package/alert/esm2015/alert.config.js +6 -2
- package/alert/esm2015/alert.module.js +2 -3
- package/alert/esm5/alert.component.js +3 -3
- package/alert/esm5/alert.config.js +6 -2
- package/alert/esm5/alert.module.js +2 -3
- package/alert/fesm2015/ngx-bootstrap-alert.js +6 -3
- package/alert/fesm2015/ngx-bootstrap-alert.js.map +1 -1
- package/alert/fesm5/ngx-bootstrap-alert.js +6 -3
- package/alert/fesm5/ngx-bootstrap-alert.js.map +1 -1
- package/alert/ngx-bootstrap-alert.metadata.json +1 -1
- package/alert/package.json +2 -2
- package/buttons/bundles/ngx-bootstrap-buttons.umd.js +293 -16
- package/buttons/bundles/ngx-bootstrap-buttons.umd.js.map +1 -1
- package/buttons/bundles/ngx-bootstrap-buttons.umd.min.js +1 -1
- package/buttons/bundles/ngx-bootstrap-buttons.umd.min.js.map +1 -1
- package/buttons/button-checkbox.directive.d.ts +2 -2
- package/buttons/button-radio-group.directive.d.ts +12 -1
- package/buttons/button-radio.directive.d.ts +19 -7
- package/buttons/buttons.module.d.ts +1 -1
- package/buttons/esm2015/button-radio-group.directive.js +140 -3
- package/buttons/esm2015/button-radio.directive.js +98 -18
- package/buttons/esm2015/buttons.module.js +1 -1
- package/buttons/esm5/button-radio-group.directive.js +171 -3
- package/buttons/esm5/button-radio.directive.js +126 -17
- package/buttons/esm5/buttons.module.js +1 -1
- package/buttons/fesm2015/ngx-bootstrap-buttons.js +235 -18
- package/buttons/fesm2015/ngx-bootstrap-buttons.js.map +1 -1
- package/buttons/fesm5/ngx-bootstrap-buttons.js +294 -17
- package/buttons/fesm5/ngx-bootstrap-buttons.js.map +1 -1
- package/buttons/ngx-bootstrap-buttons.metadata.json +1 -1
- package/buttons/package.json +2 -2
- package/carousel/bundles/ngx-bootstrap-carousel.umd.js +5 -3
- package/carousel/bundles/ngx-bootstrap-carousel.umd.js.map +1 -1
- package/carousel/bundles/ngx-bootstrap-carousel.umd.min.js +1 -1
- package/carousel/bundles/ngx-bootstrap-carousel.umd.min.js.map +1 -1
- package/carousel/carousel.component.d.ts +7 -5
- package/carousel/carousel.module.d.ts +1 -1
- package/carousel/esm2015/carousel.config.js +6 -2
- package/carousel/esm2015/carousel.module.js +2 -4
- package/carousel/esm5/carousel.component.js +4 -4
- package/carousel/esm5/carousel.config.js +6 -2
- package/carousel/esm5/carousel.module.js +2 -4
- package/carousel/fesm2015/ngx-bootstrap-carousel.js +6 -4
- package/carousel/fesm2015/ngx-bootstrap-carousel.js.map +1 -1
- package/carousel/fesm5/ngx-bootstrap-carousel.js +6 -4
- package/carousel/fesm5/ngx-bootstrap-carousel.js.map +1 -1
- package/carousel/ngx-bootstrap-carousel.metadata.json +1 -1
- package/carousel/package.json +2 -2
- package/chronos/bundles/ngx-bootstrap-chronos.umd.js +90 -73
- package/chronos/bundles/ngx-bootstrap-chronos.umd.js.map +1 -1
- package/chronos/bundles/ngx-bootstrap-chronos.umd.min.js +69 -1
- package/chronos/bundles/ngx-bootstrap-chronos.umd.min.js.map +1 -1
- package/chronos/esm2015/create/from-anything.js +2 -2
- package/chronos/esm2015/duration/valid.js +4 -6
- package/chronos/esm2015/i18n/ar.js +1 -4
- package/chronos/esm2015/i18n/bg.js +18 -20
- package/chronos/esm2015/i18n/cs.js +45 -47
- package/chronos/esm2015/i18n/et.js +1 -3
- package/chronos/esm2015/i18n/th-be.js +21 -1
- package/chronos/esm2015/locale/locale.class.js +5 -3
- package/chronos/esm5/create/from-anything.js +2 -2
- package/chronos/esm5/duration/valid.js +4 -6
- package/chronos/esm5/i18n/ar.js +1 -4
- package/chronos/esm5/i18n/bg.js +18 -20
- package/chronos/esm5/i18n/cs.js +45 -47
- package/chronos/esm5/i18n/et.js +1 -3
- package/chronos/esm5/i18n/th-be.js +21 -1
- package/chronos/esm5/locale/locale.class.js +6 -3
- package/chronos/esm5/test/chain.js +4 -4
- package/chronos/fesm2015/ngx-bootstrap-chronos.js +89 -73
- package/chronos/fesm2015/ngx-bootstrap-chronos.js.map +1 -1
- package/chronos/fesm5/ngx-bootstrap-chronos.js +90 -73
- package/chronos/fesm5/ngx-bootstrap-chronos.js.map +1 -1
- package/chronos/locale/locale.class.d.ts +4 -3
- package/chronos/package.json +2 -2
- package/collapse/bundles/ngx-bootstrap-collapse.umd.js.map +1 -1
- package/collapse/bundles/ngx-bootstrap-collapse.umd.min.js.map +1 -1
- package/collapse/collapse.directive.d.ts +3 -2
- package/collapse/collapse.module.d.ts +1 -1
- package/collapse/esm2015/collapse.module.js +1 -1
- package/collapse/esm5/collapse.module.js +1 -1
- package/collapse/fesm2015/ngx-bootstrap-collapse.js.map +1 -1
- package/collapse/fesm5/ngx-bootstrap-collapse.js.map +1 -1
- package/collapse/package.json +2 -2
- package/component-loader/bundles/ngx-bootstrap-component-loader.umd.js +5 -4
- package/component-loader/bundles/ngx-bootstrap-component-loader.umd.js.map +1 -1
- package/component-loader/bundles/ngx-bootstrap-component-loader.umd.min.js +1 -1
- package/component-loader/bundles/ngx-bootstrap-component-loader.umd.min.js.map +1 -1
- package/component-loader/component-loader.class.d.ts +4 -3
- package/component-loader/esm2015/component-loader.class.js +5 -5
- package/component-loader/esm5/component-loader.class.js +6 -5
- package/component-loader/fesm2015/ngx-bootstrap-component-loader.js +4 -4
- package/component-loader/fesm2015/ngx-bootstrap-component-loader.js.map +1 -1
- package/component-loader/fesm5/ngx-bootstrap-component-loader.js +5 -4
- package/component-loader/fesm5/ngx-bootstrap-component-loader.js.map +1 -1
- package/component-loader/package.json +2 -2
- package/datepicker/base/bs-datepicker-container.d.ts +20 -8
- package/datepicker/bs-datepicker-inline.component.d.ts +6 -2
- package/datepicker/bs-datepicker.component.d.ts +14 -5
- package/datepicker/bs-datepicker.config.d.ts +41 -1
- package/datepicker/bs-datepicker.css +126 -5
- package/datepicker/bs-datepicker.css.map +4 -4
- package/datepicker/bs-datepicker.module.d.ts +1 -1
- package/datepicker/bs-datepicker.scss +25 -5
- package/datepicker/bs-daterangepicker-inline.component.d.ts +1 -1
- package/datepicker/bs-daterangepicker.component.d.ts +9 -4
- package/datepicker/bs-locale.service.d.ts +3 -3
- package/datepicker/bundles/ngx-bootstrap-datepicker.umd.js +604 -93
- package/datepicker/bundles/ngx-bootstrap-datepicker.umd.js.map +1 -1
- package/datepicker/bundles/ngx-bootstrap-datepicker.umd.min.js +2 -2
- package/datepicker/bundles/ngx-bootstrap-datepicker.umd.min.js.map +1 -1
- package/datepicker/datepicker-inner.component.d.ts +2 -1
- package/datepicker/datepicker.component.d.ts +2 -1
- package/datepicker/datepicker.module.d.ts +1 -1
- package/datepicker/daypicker.component.d.ts +1 -1
- package/datepicker/engine/flag-days-calendar.d.ts +2 -1
- package/datepicker/engine/flag-months-calendar.d.ts +1 -0
- package/datepicker/engine/flag-years-calendar.d.ts +1 -0
- package/datepicker/esm2015/base/bs-datepicker-container.js +38 -1
- package/datepicker/esm2015/bs-datepicker-inline.component.js +12 -1
- package/datepicker/esm2015/bs-datepicker-inline.config.js +6 -2
- package/datepicker/esm2015/bs-datepicker-input.directive.js +9 -1
- package/datepicker/esm2015/bs-datepicker.component.js +45 -6
- package/datepicker/esm2015/bs-datepicker.config.js +88 -2
- package/datepicker/esm2015/bs-datepicker.module.js +3 -10
- package/datepicker/esm2015/bs-daterangepicker-inline.component.js +3 -2
- package/datepicker/esm2015/bs-daterangepicker-inline.config.js +6 -2
- package/datepicker/esm2015/bs-daterangepicker-input.directive.js +11 -3
- package/datepicker/esm2015/bs-daterangepicker.component.js +36 -7
- package/datepicker/esm2015/bs-daterangepicker.config.js +6 -2
- package/datepicker/esm2015/datepicker.config.js +6 -2
- package/datepicker/esm2015/datepicker.module.js +1 -1
- package/datepicker/esm2015/engine/flag-days-calendar.js +22 -3
- package/datepicker/esm2015/engine/flag-months-calendar.js +14 -3
- package/datepicker/esm2015/engine/flag-years-calendar.js +14 -3
- package/datepicker/esm2015/models/index.js +13 -1
- package/datepicker/esm2015/public_api.js +1 -1
- package/datepicker/esm2015/reducer/bs-datepicker.actions.js +14 -1
- package/datepicker/esm2015/reducer/bs-datepicker.effects.js +27 -33
- package/datepicker/esm2015/reducer/bs-datepicker.reducer.js +10 -2
- package/datepicker/esm2015/reducer/bs-datepicker.state.js +3 -1
- package/datepicker/esm2015/themes/bs/bs-custom-dates-view.component.js +5 -2
- package/datepicker/esm2015/themes/bs/bs-datepicker-container.component.js +57 -5
- package/datepicker/esm2015/themes/bs/bs-datepicker-inline-container.component.js +2 -2
- package/datepicker/esm2015/themes/bs/bs-daterangepicker-container.component.js +73 -4
- package/datepicker/esm2015/themes/bs/bs-daterangepicker-inline-container.component.js +2 -2
- package/datepicker/esm2015/themes/bs/bs-days-calendar-view.component.js +42 -4
- package/datepicker/esm5/base/bs-datepicker-container.js +52 -1
- package/datepicker/esm5/bs-datepicker-inline.component.js +12 -1
- package/datepicker/esm5/bs-datepicker-inline.config.js +8 -4
- package/datepicker/esm5/bs-datepicker-input.directive.js +9 -1
- package/datepicker/esm5/bs-datepicker.component.js +58 -8
- package/datepicker/esm5/bs-datepicker.config.js +88 -2
- package/datepicker/esm5/bs-datepicker.module.js +3 -10
- package/datepicker/esm5/bs-daterangepicker-inline.component.js +3 -2
- package/datepicker/esm5/bs-daterangepicker-inline.config.js +8 -4
- package/datepicker/esm5/bs-daterangepicker-input.directive.js +11 -3
- package/datepicker/esm5/bs-daterangepicker.component.js +49 -9
- package/datepicker/esm5/bs-daterangepicker.config.js +8 -4
- package/datepicker/esm5/datepicker.config.js +6 -2
- package/datepicker/esm5/datepicker.module.js +1 -1
- package/datepicker/esm5/engine/flag-days-calendar.js +22 -3
- package/datepicker/esm5/engine/flag-months-calendar.js +14 -3
- package/datepicker/esm5/engine/flag-years-calendar.js +14 -3
- package/datepicker/esm5/engine/format-days-calendar.js +3 -3
- package/datepicker/esm5/models/index.js +13 -1
- package/datepicker/esm5/public_api.js +1 -1
- package/datepicker/esm5/reducer/bs-datepicker.actions.js +18 -1
- package/datepicker/esm5/reducer/bs-datepicker.effects.js +33 -35
- package/datepicker/esm5/reducer/bs-datepicker.reducer.js +10 -2
- package/datepicker/esm5/reducer/bs-datepicker.state.js +3 -1
- package/datepicker/esm5/reducer/bs-datepicker.store.js +3 -3
- package/datepicker/esm5/themes/bs/bs-custom-dates-view.component.js +5 -2
- package/datepicker/esm5/themes/bs/bs-datepicker-container.component.js +74 -8
- package/datepicker/esm5/themes/bs/bs-datepicker-inline-container.component.js +4 -4
- package/datepicker/esm5/themes/bs/bs-daterangepicker-container.component.js +92 -7
- package/datepicker/esm5/themes/bs/bs-daterangepicker-inline-container.component.js +4 -4
- package/datepicker/esm5/themes/bs/bs-days-calendar-view.component.js +25 -2
- package/datepicker/fesm2015/ngx-bootstrap-datepicker.js +549 -96
- package/datepicker/fesm2015/ngx-bootstrap-datepicker.js.map +1 -1
- package/datepicker/fesm5/ngx-bootstrap-datepicker.js +606 -94
- package/datepicker/fesm5/ngx-bootstrap-datepicker.js.map +1 -1
- package/datepicker/models/index.d.ts +5 -0
- package/datepicker/monthpicker.component.d.ts +1 -1
- package/datepicker/ngx-bootstrap-datepicker.metadata.json +1 -1
- package/datepicker/package.json +2 -2
- package/datepicker/public_api.d.ts +1 -1
- package/datepicker/reducer/bs-datepicker.actions.d.ts +3 -1
- package/datepicker/reducer/bs-datepicker.effects.d.ts +2 -1
- package/datepicker/reducer/bs-datepicker.state.d.ts +2 -1
- package/datepicker/themes/bs/bs-custom-dates-view.component.d.ts +1 -0
- package/datepicker/themes/bs/bs-datepicker-container.component.d.ts +9 -5
- package/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts +9 -5
- package/datepicker/themes/bs/bs-days-calendar-view.component.d.ts +2 -0
- package/datepicker/utils/scss/mixins.css.map +2 -2
- package/datepicker/utils/scss/mixins.scss +98 -0
- package/datepicker/utils/scss/variables.css.map +1 -1
- package/datepicker/utils/scss/variables.scss +14 -0
- package/datepicker/yearpicker.component.d.ts +1 -1
- package/dropdown/bs-dropdown-container.component.d.ts +1 -1
- package/dropdown/bs-dropdown.directive.d.ts +12 -7
- package/dropdown/bs-dropdown.module.d.ts +1 -1
- package/dropdown/bundles/ngx-bootstrap-dropdown.umd.js +13 -8
- package/dropdown/bundles/ngx-bootstrap-dropdown.umd.js.map +1 -1
- package/dropdown/bundles/ngx-bootstrap-dropdown.umd.min.js +1 -1
- package/dropdown/bundles/ngx-bootstrap-dropdown.umd.min.js.map +1 -1
- package/dropdown/esm2015/bs-dropdown.config.js +6 -2
- package/dropdown/esm2015/bs-dropdown.directive.js +8 -3
- package/dropdown/esm2015/bs-dropdown.module.js +2 -7
- package/dropdown/esm5/bs-dropdown-toggle.directive.js +3 -3
- package/dropdown/esm5/bs-dropdown.config.js +6 -2
- package/dropdown/esm5/bs-dropdown.directive.js +11 -5
- package/dropdown/esm5/bs-dropdown.module.js +2 -7
- package/dropdown/fesm2015/ngx-bootstrap-dropdown.js +13 -9
- package/dropdown/fesm2015/ngx-bootstrap-dropdown.js.map +1 -1
- package/dropdown/fesm5/ngx-bootstrap-dropdown.js +14 -9
- package/dropdown/fesm5/ngx-bootstrap-dropdown.js.map +1 -1
- package/dropdown/ngx-bootstrap-dropdown.metadata.json +1 -1
- package/dropdown/package.json +2 -2
- package/locale/package.json +2 -2
- package/mini-ngrx/bundles/ngx-bootstrap-mini-ngrx.umd.js.map +1 -1
- package/mini-ngrx/bundles/ngx-bootstrap-mini-ngrx.umd.min.js.map +1 -1
- package/mini-ngrx/esm5/state.class.js +3 -3
- package/mini-ngrx/esm5/store.class.js +3 -3
- package/mini-ngrx/fesm5/ngx-bootstrap-mini-ngrx.js.map +1 -1
- package/mini-ngrx/package.json +2 -2
- package/modal/bs-modal-ref.service.d.ts +15 -2
- package/modal/bs-modal.service.d.ts +7 -4
- package/modal/bundles/ngx-bootstrap-modal.umd.js +154 -59
- package/modal/bundles/ngx-bootstrap-modal.umd.js.map +1 -1
- package/modal/bundles/ngx-bootstrap-modal.umd.min.js +1 -1
- package/modal/bundles/ngx-bootstrap-modal.umd.min.js.map +1 -1
- package/modal/esm2015/bs-modal-ref.service.js +20 -1
- package/modal/esm2015/bs-modal.service.js +102 -47
- package/modal/esm2015/modal-container.component.js +10 -2
- package/modal/esm2015/modal-options.class.js +14 -3
- package/modal/esm2015/modal.directive.js +10 -7
- package/modal/esm2015/modal.module.js +1 -1
- package/modal/esm2015/models/index.js +3 -1
- package/modal/esm2015/ngx-bootstrap-modal.js +2 -2
- package/modal/esm2015/public_api.js +2 -2
- package/modal/esm5/bs-modal-ref.service.js +19 -1
- package/modal/esm5/bs-modal.service.js +109 -57
- package/modal/esm5/modal-container.component.js +13 -2
- package/modal/esm5/modal-options.class.js +14 -3
- package/modal/esm5/modal.directive.js +9 -7
- package/modal/esm5/modal.module.js +1 -1
- package/modal/esm5/models/index.js +3 -1
- package/modal/esm5/ngx-bootstrap-modal.js +2 -2
- package/modal/esm5/public_api.js +2 -2
- package/modal/fesm2015/ngx-bootstrap-modal.js +148 -52
- package/modal/fesm2015/ngx-bootstrap-modal.js.map +1 -1
- package/modal/fesm5/ngx-bootstrap-modal.js +155 -61
- package/modal/fesm5/ngx-bootstrap-modal.js.map +1 -1
- package/modal/modal-backdrop.component.d.ts +4 -2
- package/modal/modal-container.component.d.ts +1 -0
- package/modal/modal-options.class.d.ts +8 -3
- package/modal/modal.directive.d.ts +5 -4
- package/modal/modal.module.d.ts +2 -2
- package/modal/models/index.d.ts +1 -0
- package/modal/ngx-bootstrap-modal.metadata.json +1 -1
- package/modal/package.json +2 -2
- package/modal/public_api.d.ts +1 -1
- package/package.json +2 -2
- package/pagination/bundles/ngx-bootstrap-pagination.umd.js +5 -2
- package/pagination/bundles/ngx-bootstrap-pagination.umd.js.map +1 -1
- package/pagination/bundles/ngx-bootstrap-pagination.umd.min.js +1 -1
- package/pagination/bundles/ngx-bootstrap-pagination.umd.min.js.map +1 -1
- package/pagination/esm2015/pagination.config.js +6 -2
- package/pagination/esm2015/pagination.module.js +2 -3
- package/pagination/esm5/pagination.config.js +6 -2
- package/pagination/esm5/pagination.module.js +2 -3
- package/pagination/fesm2015/ngx-bootstrap-pagination.js +6 -3
- package/pagination/fesm2015/ngx-bootstrap-pagination.js.map +1 -1
- package/pagination/fesm5/ngx-bootstrap-pagination.js +6 -3
- package/pagination/fesm5/ngx-bootstrap-pagination.js.map +1 -1
- package/pagination/ngx-bootstrap-pagination.metadata.json +1 -1
- package/pagination/package.json +2 -2
- package/pagination/pager.component.d.ts +8 -4
- package/pagination/pagination.component.d.ts +8 -4
- package/pagination/pagination.module.d.ts +1 -1
- package/popover/bundles/ngx-bootstrap-popover.umd.js +55 -3
- package/popover/bundles/ngx-bootstrap-popover.umd.js.map +1 -1
- package/popover/bundles/ngx-bootstrap-popover.umd.min.js +1 -1
- package/popover/bundles/ngx-bootstrap-popover.umd.min.js.map +1 -1
- package/popover/esm2015/popover-container.component.js +4 -1
- package/popover/esm2015/popover.config.js +6 -2
- package/popover/esm2015/popover.directive.js +39 -2
- package/popover/esm2015/popover.module.js +2 -3
- package/popover/esm5/popover-container.component.js +4 -1
- package/popover/esm5/popover.config.js +6 -2
- package/popover/esm5/popover.directive.js +48 -2
- package/popover/esm5/popover.module.js +2 -3
- package/popover/fesm2015/ngx-bootstrap-popover.js +47 -4
- package/popover/fesm2015/ngx-bootstrap-popover.js.map +1 -1
- package/popover/fesm5/ngx-bootstrap-popover.js +56 -4
- package/popover/fesm5/ngx-bootstrap-popover.js.map +1 -1
- package/popover/ngx-bootstrap-popover.metadata.json +1 -1
- package/popover/package.json +2 -2
- package/popover/popover-container.component.d.ts +2 -1
- package/popover/popover.directive.d.ts +10 -1
- package/popover/popover.module.d.ts +1 -1
- package/positioning/bundles/ngx-bootstrap-positioning.umd.js +7 -7
- package/positioning/bundles/ngx-bootstrap-positioning.umd.js.map +1 -1
- package/positioning/bundles/ngx-bootstrap-positioning.umd.min.js +1 -1
- package/positioning/bundles/ngx-bootstrap-positioning.umd.min.js.map +1 -1
- package/positioning/esm2015/modifiers/flip.js +3 -3
- package/positioning/esm2015/modifiers/preventOverflow.js +2 -2
- package/positioning/esm2015/modifiers/shift.js +2 -2
- package/positioning/esm2015/utils/computeAutoPlacement.js +2 -2
- package/positioning/esm2015/utils/getClientRect.js +2 -2
- package/positioning/esm5/modifiers/flip.js +4 -4
- package/positioning/esm5/modifiers/preventOverflow.js +4 -4
- package/positioning/esm5/modifiers/shift.js +3 -3
- package/positioning/esm5/utils/computeAutoPlacement.js +3 -3
- package/positioning/esm5/utils/getClientRect.js +3 -3
- package/positioning/fesm2015/ngx-bootstrap-positioning.js +6 -6
- package/positioning/fesm2015/ngx-bootstrap-positioning.js.map +1 -1
- package/positioning/fesm5/ngx-bootstrap-positioning.js +7 -7
- package/positioning/fesm5/ngx-bootstrap-positioning.js.map +1 -1
- package/positioning/package.json +2 -2
- package/positioning/positioning.service.d.ts +1 -1
- package/progressbar/bar.component.d.ts +4 -5
- package/progressbar/bundles/ngx-bootstrap-progressbar.umd.js +45 -66
- package/progressbar/bundles/ngx-bootstrap-progressbar.umd.js.map +1 -1
- package/progressbar/bundles/ngx-bootstrap-progressbar.umd.min.js +1 -1
- package/progressbar/bundles/ngx-bootstrap-progressbar.umd.min.js.map +1 -1
- package/progressbar/esm2015/bar.component.js +33 -48
- package/progressbar/esm2015/progressbar.component.js +5 -8
- package/progressbar/esm2015/progressbar.config.js +6 -2
- package/progressbar/esm2015/progressbar.module.js +2 -3
- package/progressbar/esm5/bar.component.js +37 -58
- package/progressbar/esm5/progressbar.component.js +5 -8
- package/progressbar/esm5/progressbar.config.js +6 -2
- package/progressbar/esm5/progressbar.module.js +2 -3
- package/progressbar/fesm2015/ngx-bootstrap-progressbar.js +42 -57
- package/progressbar/fesm2015/ngx-bootstrap-progressbar.js.map +1 -1
- package/progressbar/fesm5/ngx-bootstrap-progressbar.js +46 -67
- package/progressbar/fesm5/ngx-bootstrap-progressbar.js.map +1 -1
- package/progressbar/ngx-bootstrap-progressbar.metadata.json +1 -1
- package/progressbar/package.json +2 -2
- package/progressbar/progressbar.component.d.ts +7 -6
- package/progressbar/progressbar.module.d.ts +1 -1
- package/rating/bundles/ngx-bootstrap-rating.umd.js +5 -2
- package/rating/bundles/ngx-bootstrap-rating.umd.js.map +1 -1
- package/rating/bundles/ngx-bootstrap-rating.umd.min.js +1 -1
- package/rating/bundles/ngx-bootstrap-rating.umd.min.js.map +1 -1
- package/rating/esm2015/rating.config.js +6 -2
- package/rating/esm2015/rating.module.js +2 -3
- package/rating/esm5/rating.config.js +6 -2
- package/rating/esm5/rating.module.js +2 -3
- package/rating/fesm2015/ngx-bootstrap-rating.js +6 -3
- package/rating/fesm2015/ngx-bootstrap-rating.js.map +1 -1
- package/rating/fesm5/ngx-bootstrap-rating.js +6 -3
- package/rating/fesm5/ngx-bootstrap-rating.js.map +1 -1
- package/rating/ngx-bootstrap-rating.metadata.json +1 -1
- package/rating/package.json +2 -2
- package/rating/rating.module.d.ts +1 -1
- package/schematics/ng-add/index.spec.js +30 -27
- package/schematics/ng-add/index.spec.js.map +1 -1
- package/schematics/utils/index.js +18 -5
- package/schematics/utils/index.js.map +1 -1
- package/sortable/bundles/ngx-bootstrap-sortable.umd.js.map +1 -1
- package/sortable/bundles/ngx-bootstrap-sortable.umd.min.js.map +1 -1
- package/sortable/esm2015/sortable.module.js +1 -1
- package/sortable/esm5/sortable.component.js +4 -4
- package/sortable/esm5/sortable.module.js +1 -1
- package/sortable/fesm2015/ngx-bootstrap-sortable.js.map +1 -1
- package/sortable/fesm5/ngx-bootstrap-sortable.js.map +1 -1
- package/sortable/package.json +2 -2
- package/sortable/sortable.component.d.ts +2 -1
- package/sortable/sortable.module.d.ts +1 -1
- package/tabs/bundles/ngx-bootstrap-tabs.umd.js +40 -3
- package/tabs/bundles/ngx-bootstrap-tabs.umd.js.map +1 -1
- package/tabs/bundles/ngx-bootstrap-tabs.umd.min.js +1 -1
- package/tabs/bundles/ngx-bootstrap-tabs.umd.min.js.map +1 -1
- package/tabs/esm2015/tab.directive.js +2 -2
- package/tabs/esm2015/tabs.module.js +2 -3
- package/tabs/esm2015/tabset.component.js +22 -1
- package/tabs/esm2015/tabset.config.js +15 -2
- package/tabs/esm5/tab.directive.js +2 -2
- package/tabs/esm5/tabs.module.js +2 -3
- package/tabs/esm5/tabset.component.js +26 -1
- package/tabs/esm5/tabset.config.js +15 -2
- package/tabs/fesm2015/ngx-bootstrap-tabs.js +37 -4
- package/tabs/fesm2015/ngx-bootstrap-tabs.js.map +1 -1
- package/tabs/fesm5/ngx-bootstrap-tabs.js +41 -4
- package/tabs/fesm5/ngx-bootstrap-tabs.js.map +1 -1
- package/tabs/ng-transclude.directive.d.ts +2 -2
- package/tabs/ngx-bootstrap-tabs.metadata.json +1 -1
- package/tabs/package.json +2 -2
- package/tabs/tab.directive.d.ts +5 -3
- package/tabs/tabs.module.d.ts +1 -1
- package/tabs/tabset.component.d.ts +9 -3
- package/tabs/tabset.config.d.ts +2 -0
- package/timepicker/bundles/ngx-bootstrap-timepicker.umd.js +11 -6
- package/timepicker/bundles/ngx-bootstrap-timepicker.umd.js.map +1 -1
- package/timepicker/bundles/ngx-bootstrap-timepicker.umd.min.js +1 -1
- package/timepicker/bundles/ngx-bootstrap-timepicker.umd.min.js.map +1 -1
- package/timepicker/esm2015/timepicker-controls.util.js +4 -2
- package/timepicker/esm2015/timepicker.component.js +2 -2
- package/timepicker/esm2015/timepicker.config.js +8 -4
- package/timepicker/esm2015/timepicker.module.js +2 -3
- package/timepicker/esm5/reducer/timepicker.store.js +3 -3
- package/timepicker/esm5/timepicker-controls.util.js +4 -2
- package/timepicker/esm5/timepicker.component.js +2 -2
- package/timepicker/esm5/timepicker.config.js +8 -4
- package/timepicker/esm5/timepicker.module.js +2 -3
- package/timepicker/fesm2015/ngx-bootstrap-timepicker.js +12 -7
- package/timepicker/fesm2015/ngx-bootstrap-timepicker.js.map +1 -1
- package/timepicker/fesm5/ngx-bootstrap-timepicker.js +12 -7
- package/timepicker/fesm5/ngx-bootstrap-timepicker.js.map +1 -1
- package/timepicker/ngx-bootstrap-timepicker.metadata.json +1 -1
- package/timepicker/package.json +2 -2
- package/timepicker/timepicker.component.d.ts +3 -3
- package/timepicker/timepicker.config.d.ts +1 -1
- package/timepicker/timepicker.module.d.ts +1 -1
- package/tooltip/bundles/ngx-bootstrap-tooltip.umd.js +5 -2
- package/tooltip/bundles/ngx-bootstrap-tooltip.umd.js.map +1 -1
- package/tooltip/bundles/ngx-bootstrap-tooltip.umd.min.js +1 -1
- package/tooltip/bundles/ngx-bootstrap-tooltip.umd.min.js.map +1 -1
- package/tooltip/esm2015/tooltip.config.js +6 -2
- package/tooltip/esm2015/tooltip.directive.js +3 -3
- package/tooltip/esm2015/tooltip.module.js +2 -3
- package/tooltip/esm5/tooltip.config.js +6 -2
- package/tooltip/esm5/tooltip.directive.js +3 -3
- package/tooltip/esm5/tooltip.module.js +2 -3
- package/tooltip/fesm2015/ngx-bootstrap-tooltip.js +6 -3
- package/tooltip/fesm2015/ngx-bootstrap-tooltip.js.map +1 -1
- package/tooltip/fesm5/ngx-bootstrap-tooltip.js +6 -3
- package/tooltip/fesm5/ngx-bootstrap-tooltip.js.map +1 -1
- package/tooltip/ngx-bootstrap-tooltip.metadata.json +1 -1
- package/tooltip/package.json +2 -2
- package/tooltip/tooltip-container.component.d.ts +1 -1
- package/tooltip/tooltip.directive.d.ts +15 -10
- package/tooltip/tooltip.module.d.ts +1 -1
- package/typeahead/bundles/ngx-bootstrap-typeahead.umd.js +170 -19
- package/typeahead/bundles/ngx-bootstrap-typeahead.umd.js.map +1 -1
- package/typeahead/bundles/ngx-bootstrap-typeahead.umd.min.js +1 -1
- package/typeahead/bundles/ngx-bootstrap-typeahead.umd.min.js.map +1 -1
- package/typeahead/esm2015/typeahead-utils.js +35 -4
- package/typeahead/esm2015/typeahead.config.js +6 -2
- package/typeahead/esm2015/typeahead.directive.js +121 -16
- package/typeahead/esm2015/typeahead.module.js +2 -3
- package/typeahead/esm5/typeahead-utils.js +37 -6
- package/typeahead/esm5/typeahead.config.js +6 -2
- package/typeahead/esm5/typeahead.directive.js +135 -18
- package/typeahead/esm5/typeahead.module.js +2 -3
- package/typeahead/fesm2015/ngx-bootstrap-typeahead.js +160 -21
- package/typeahead/fesm2015/ngx-bootstrap-typeahead.js.map +1 -1
- package/typeahead/fesm5/ngx-bootstrap-typeahead.js +172 -21
- package/typeahead/fesm5/ngx-bootstrap-typeahead.js.map +1 -1
- package/typeahead/ngx-bootstrap-typeahead.metadata.json +1 -1
- package/typeahead/package.json +2 -2
- package/typeahead/typeahead-container.component.d.ts +14 -12
- package/typeahead/typeahead-utils.d.ts +1 -1
- package/typeahead/typeahead.directive.d.ts +20 -1
- package/typeahead/typeahead.module.d.ts +1 -1
- package/utils/package.json +2 -2
@@ -36,8 +36,11 @@
|
|
36
36
|
this.delay = 0;
|
37
37
|
}
|
38
38
|
PopoverConfig.decorators = [
|
39
|
-
{ type: core.Injectable
|
39
|
+
{ type: core.Injectable, args: [{
|
40
|
+
providedIn: 'root'
|
41
|
+
},] }
|
40
42
|
];
|
43
|
+
/** @nocollapse */ PopoverConfig.ɵprov = core["ɵɵdefineInjectable"]({ factory: function PopoverConfig_Factory() { return new PopoverConfig(); }, token: PopoverConfig, providedIn: "root" });
|
41
44
|
return PopoverConfig;
|
42
45
|
}());
|
43
46
|
if (false) {
|
@@ -95,6 +98,7 @@
|
|
95
98
|
changeDetection: core.ChangeDetectionStrategy.OnPush,
|
96
99
|
// tslint:disable-next-line
|
97
100
|
host: {
|
101
|
+
'[attr.id]': 'popoverId',
|
98
102
|
'[class]': '"popover in popover-" + placement + " " + "bs-popover-" + placement + " " + placement + " " + containerClass',
|
99
103
|
'[class.show]': '!isBs3',
|
100
104
|
'[class.bs3]': 'isBs3',
|
@@ -122,12 +126,16 @@
|
|
122
126
|
PopoverContainerComponent.prototype.title;
|
123
127
|
/** @type {?} */
|
124
128
|
PopoverContainerComponent.prototype.containerClass;
|
129
|
+
/** @type {?} */
|
130
|
+
PopoverContainerComponent.prototype.popoverId;
|
125
131
|
}
|
126
132
|
|
127
133
|
/**
|
128
134
|
* @fileoverview added by tsickle
|
129
135
|
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
130
136
|
*/
|
137
|
+
/** @type {?} */
|
138
|
+
var id = 0;
|
131
139
|
/**
|
132
140
|
* A lightweight, extensible directive for fancy popover creation.
|
133
141
|
*/
|
@@ -136,6 +144,10 @@
|
|
136
144
|
this._elementRef = _elementRef;
|
137
145
|
this._renderer = _renderer;
|
138
146
|
this._positionService = _positionService;
|
147
|
+
/**
|
148
|
+
* unique id popover - use for aria-describedby
|
149
|
+
*/
|
150
|
+
this.popoverId = id++;
|
139
151
|
/**
|
140
152
|
* Close popover on outside click
|
141
153
|
*/
|
@@ -192,6 +204,30 @@
|
|
192
204
|
enumerable: true,
|
193
205
|
configurable: true
|
194
206
|
});
|
207
|
+
/**
|
208
|
+
* Set attribute aria-describedBy for element directive and
|
209
|
+
* set id for the popover
|
210
|
+
*/
|
211
|
+
/**
|
212
|
+
* Set attribute aria-describedBy for element directive and
|
213
|
+
* set id for the popover
|
214
|
+
* @return {?}
|
215
|
+
*/
|
216
|
+
PopoverDirective.prototype.setAriaDescribedBy = /**
|
217
|
+
* Set attribute aria-describedBy for element directive and
|
218
|
+
* set id for the popover
|
219
|
+
* @return {?}
|
220
|
+
*/
|
221
|
+
function () {
|
222
|
+
this._ariaDescribedby = this.isOpen ? "ngx-popover-" + this.popoverId : null;
|
223
|
+
if (this._ariaDescribedby) {
|
224
|
+
this._popover.instance.popoverId = this._ariaDescribedby;
|
225
|
+
this._renderer.setAttribute(this._elementRef.nativeElement, 'aria-describedby', this._ariaDescribedby);
|
226
|
+
}
|
227
|
+
else {
|
228
|
+
this._renderer.removeAttribute(this._elementRef.nativeElement, 'aria-describedby');
|
229
|
+
}
|
230
|
+
};
|
195
231
|
/**
|
196
232
|
* Opens an element’s popover. This is considered a “manual” triggering of
|
197
233
|
* the popover.
|
@@ -245,6 +281,7 @@
|
|
245
281
|
_this._positionService.deletePositionElement(_this._popover._componentRef.location);
|
246
282
|
}
|
247
283
|
_this.isOpen = true;
|
284
|
+
_this.setAriaDescribedBy();
|
248
285
|
});
|
249
286
|
/** @type {?} */
|
250
287
|
var cancelDelayedTooltipShowing = (/**
|
@@ -306,6 +343,7 @@
|
|
306
343
|
}
|
307
344
|
if (this.isOpen) {
|
308
345
|
this._popover.hide();
|
346
|
+
this.setAriaDescribedBy();
|
309
347
|
this.isOpen = false;
|
310
348
|
}
|
311
349
|
};
|
@@ -350,7 +388,11 @@
|
|
350
388
|
show: (/**
|
351
389
|
* @return {?}
|
352
390
|
*/
|
353
|
-
function () { return _this.show(); })
|
391
|
+
function () { return _this.show(); }),
|
392
|
+
hide: (/**
|
393
|
+
* @return {?}
|
394
|
+
*/
|
395
|
+
function () { return _this.hide(); })
|
354
396
|
});
|
355
397
|
};
|
356
398
|
/**
|
@@ -392,6 +434,11 @@
|
|
392
434
|
return PopoverDirective;
|
393
435
|
}());
|
394
436
|
if (false) {
|
437
|
+
/**
|
438
|
+
* unique id popover - use for aria-describedby
|
439
|
+
* @type {?}
|
440
|
+
*/
|
441
|
+
PopoverDirective.prototype.popoverId;
|
395
442
|
/**
|
396
443
|
* sets disable adaptive position
|
397
444
|
* @type {?}
|
@@ -473,6 +520,11 @@
|
|
473
520
|
* @private
|
474
521
|
*/
|
475
522
|
PopoverDirective.prototype._isInited;
|
523
|
+
/**
|
524
|
+
* @type {?}
|
525
|
+
* @private
|
526
|
+
*/
|
527
|
+
PopoverDirective.prototype._ariaDescribedby;
|
476
528
|
/**
|
477
529
|
* @type {?}
|
478
530
|
* @private
|
@@ -506,7 +558,7 @@
|
|
506
558
|
function () {
|
507
559
|
return {
|
508
560
|
ngModule: PopoverModule,
|
509
|
-
providers: [
|
561
|
+
providers: [componentLoader.ComponentLoaderFactory, positioning.PositioningService]
|
510
562
|
};
|
511
563
|
};
|
512
564
|
PopoverModule.decorators = [
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ngx-bootstrap-popover.umd.js","sources":["ng://ngx-bootstrap/popover/popover.config.ts","ng://ngx-bootstrap/popover/popover-container.component.ts","ng://ngx-bootstrap/popover/popover.directive.ts","ng://ngx-bootstrap/popover/popover.module.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n/**\n * Configuration service for the Popover directive.\n * You can inject this service, typically in your root component, and customize\n * the values of its properties in order to provide default values for all the\n * popovers used in the application.\n */\n@Injectable()\nexport class PopoverConfig {\n /** sets disable adaptive position */\n adaptivePosition = true;\n /**\n * Placement of a popover. Accepts: \"top\", \"bottom\", \"left\", \"right\", \"auto\"\n */\n placement = 'top';\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n triggers = 'click';\n\n outsideClick = false;\n /**\n * A selector specifying the element the popover should be appended to.\n */\n container: string;\n /** delay before showing the tooltip */\n delay = 0;\n}\n","import { ChangeDetectionStrategy, Input, Component } from '@angular/core';\nimport { PopoverConfig } from './popover.config';\nimport { isBs3 } from 'ngx-bootstrap/utils';\n\n@Component({\n selector: 'popover-container',\n changeDetection: ChangeDetectionStrategy.OnPush,\n // tslint:disable-next-line\n host: {\n '[class]':\n '\"popover in popover-\" + placement + \" \" + \"bs-popover-\" + placement + \" \" + placement + \" \" + containerClass',\n '[class.show]': '!isBs3',\n '[class.bs3]': 'isBs3',\n role: 'tooltip',\n style: 'display:block;'\n },\n styles: [\n `\n :host.bs3.popover-top {\n margin-bottom: 10px;\n }\n :host.bs3.popover.top>.arrow {\n margin-left: -2px;\n }\n :host.bs3.popover.top {\n margin-bottom: 10px;\n }\n :host.popover.bottom>.arrow {\n margin-left: -4px;\n }\n :host.bs3.bs-popover-left {\n margin-right: .5rem;\n }\n :host.bs3.bs-popover-right .arrow, :host.bs3.bs-popover-left .arrow{\n margin: .3rem 0;\n }\n `\n ],\n templateUrl: './popover-container.component.html'\n})\nexport class PopoverContainerComponent {\n @Input() placement: string;\n @Input() title: string;\n containerClass: string;\n\n get isBs3(): boolean {\n return isBs3();\n }\n\n constructor(config: PopoverConfig) {\n Object.assign(this, config);\n }\n}\n","import {\n Directive, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output,\n Renderer2, TemplateRef, ViewContainerRef\n} from '@angular/core';\nimport { PopoverConfig } from './popover.config';\nimport { ComponentLoader, ComponentLoaderFactory } from 'ngx-bootstrap/component-loader';\nimport { PopoverContainerComponent } from './popover-container.component';\nimport { PositioningService } from 'ngx-bootstrap/positioning';\nimport { timer } from 'rxjs';\nimport { parseTriggers, Trigger } from 'ngx-bootstrap/utils';\n\n/**\n * A lightweight, extensible directive for fancy popover creation.\n */\n@Directive({selector: '[popover]', exportAs: 'bs-popover'})\nexport class PopoverDirective implements OnInit, OnDestroy {\n /** sets disable adaptive position */\n @Input() adaptivePosition: boolean;\n /**\n * Content to be displayed as popover.\n */\n /* tslint:disable-next-line: no-any */\n @Input() popover: string | TemplateRef<any>;\n /**\n * Context to be used if popover is a template.\n */\n /* tslint:disable-next-line: no-any */\n @Input() popoverContext: any;\n /**\n * Title of a popover.\n */\n @Input() popoverTitle: string;\n /**\n * Placement of a popover. Accepts: \"top\", \"bottom\", \"left\", \"right\"\n */\n @Input() placement: 'top' | 'bottom' | 'left' | 'right' | 'auto' | 'top left' | 'top right' |\n 'right top' | 'right bottom' | 'bottom right' | 'bottom left' | 'left bottom' | 'left top';\n /**\n * Close popover on outside click\n */\n @Input() outsideClick = false;\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n @Input() triggers: string;\n /**\n * A selector specifying the element the popover should be appended to.\n */\n @Input() container: string;\n\n /**\n * Css class for popover container\n */\n @Input() containerClass = '';\n\n /**\n * Returns whether or not the popover is currently being shown\n */\n @Input()\n get isOpen(): boolean {\n return this._popover.isShown;\n }\n\n set isOpen(value: boolean) {\n if (value) {\n this.show();\n } else {\n this.hide();\n }\n }\n\n /**\n * Delay before showing the tooltip\n */\n @Input() delay: number;\n\n /**\n * Emits an event when the popover is shown\n */\n /* tslint:disable-next-line: no-any */\n @Output() onShown: EventEmitter<any>;\n /**\n * Emits an event when the popover is hidden\n */\n /* tslint:disable-next-line: no-any */\n @Output() onHidden: EventEmitter<any>;\n\n protected _popoverCancelShowFn: Function;\n\n protected _delayTimeoutId: number | any;\n\n private _popover: ComponentLoader<PopoverContainerComponent>;\n private _isInited = false;\n\n constructor(\n _config: PopoverConfig,\n private _elementRef: ElementRef,\n private _renderer: Renderer2,\n _viewContainerRef: ViewContainerRef,\n cis: ComponentLoaderFactory,\n private _positionService: PositioningService\n ) {\n this._popover = cis\n .createLoader<PopoverContainerComponent>(\n _elementRef,\n _viewContainerRef,\n _renderer\n )\n .provide({provide: PopoverConfig, useValue: _config});\n\n Object.assign(this, _config);\n\n this.onShown = this._popover.onShown;\n this.onHidden = this._popover.onHidden;\n\n // fix: no focus on button on Mac OS #1795\n if (typeof window !== 'undefined') {\n _elementRef.nativeElement.addEventListener('click', function () {\n try {\n _elementRef.nativeElement.focus();\n } catch (err) {\n return;\n }\n });\n }\n }\n\n /**\n * Opens an elementâs popover. This is considered a âmanualâ triggering of\n * the popover.\n */\n show(): void {\n if (this._popover.isShown || !this.popover || this._delayTimeoutId) {\n return;\n }\n\n this._positionService.setOptions({\n modifiers: {\n flip: {\n enabled: this.adaptivePosition\n },\n preventOverflow: {\n enabled: this.adaptivePosition\n }\n }\n });\n\n const showPopover = () => {\n if (this._delayTimeoutId) {\n this._delayTimeoutId = undefined;\n }\n\n this._popover\n .attach(PopoverContainerComponent)\n .to(this.container)\n .position({attachment: this.placement})\n .show({\n content: this.popover,\n context: this.popoverContext,\n placement: this.placement,\n title: this.popoverTitle,\n containerClass: this.containerClass\n });\n\n if (!this.adaptivePosition) {\n this._positionService.calcPosition();\n this._positionService.deletePositionElement(this._popover._componentRef.location);\n }\n\n this.isOpen = true;\n };\n\n const cancelDelayedTooltipShowing = () => {\n if (this._popoverCancelShowFn) {\n this._popoverCancelShowFn();\n }\n };\n\n if (this.delay) {\n const _timer = timer(this.delay).subscribe(() => {\n showPopover();\n cancelDelayedTooltipShowing();\n });\n\n if (this.triggers) {\n parseTriggers(this.triggers)\n .forEach((trigger: Trigger) => {\n this._popoverCancelShowFn = this._renderer.listen(\n this._elementRef.nativeElement,\n trigger.close,\n () => {\n _timer.unsubscribe();\n cancelDelayedTooltipShowing();\n }\n );\n });\n }\n } else {\n showPopover();\n }\n }\n\n /**\n * Closes an elementâs popover. This is considered a âmanualâ triggering of\n * the popover.\n */\n hide(): void {\n if (this._delayTimeoutId) {\n clearTimeout(this._delayTimeoutId);\n this._delayTimeoutId = undefined;\n }\n\n if (this.isOpen) {\n this._popover.hide();\n this.isOpen = false;\n }\n }\n\n /**\n * Toggles an elementâs popover. This is considered a âmanualâ triggering of\n * the popover.\n */\n toggle(): void {\n if (this.isOpen) {\n return this.hide();\n }\n\n this.show();\n }\n\n ngOnInit(): void {\n // fix: seems there are an issue with `routerLinkActive`\n // which result in duplicated call ngOnInit without call to ngOnDestroy\n // read more: https://github.com/valor-software/ngx-bootstrap/issues/1885\n if (this._isInited) {\n return;\n }\n this._isInited = true;\n\n this._popover.listen({\n triggers: this.triggers,\n outsideClick: this.outsideClick,\n show: () => this.show()\n });\n }\n\n ngOnDestroy(): void {\n this._popover.dispose();\n }\n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ComponentLoaderFactory } from 'ngx-bootstrap/component-loader';\nimport { PositioningService } from 'ngx-bootstrap/positioning';\nimport { PopoverConfig } from './popover.config';\nimport { PopoverDirective } from './popover.directive';\nimport { PopoverContainerComponent } from './popover-container.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [PopoverDirective, PopoverContainerComponent],\n exports: [PopoverDirective],\n entryComponents: [PopoverContainerComponent]\n})\nexport class PopoverModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: PopoverModule,\n providers: [PopoverConfig, ComponentLoaderFactory, PositioningService]\n };\n }\n}\n"],"names":["Injectable","isBs3","Component","ChangeDetectionStrategy","Input","timer","parseTriggers","Directive","ElementRef","Renderer2","ViewContainerRef","ComponentLoaderFactory","PositioningService","Output","NgModule","CommonModule"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"ngx-bootstrap-popover.umd.js","sources":["ng://ngx-bootstrap/popover/popover.config.ts","ng://ngx-bootstrap/popover/popover-container.component.ts","ng://ngx-bootstrap/popover/popover.directive.ts","ng://ngx-bootstrap/popover/popover.module.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n/**\n * Configuration service for the Popover directive.\n * You can inject this service, typically in your root component, and customize\n * the values of its properties in order to provide default values for all the\n * popovers used in the application.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class PopoverConfig {\n /** sets disable adaptive position */\n adaptivePosition = true;\n /**\n * Placement of a popover. Accepts: \"top\", \"bottom\", \"left\", \"right\", \"auto\"\n */\n placement = 'top';\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n triggers = 'click';\n\n outsideClick = false;\n /**\n * A selector specifying the element the popover should be appended to.\n */\n container: string;\n /** delay before showing the tooltip */\n delay = 0;\n}\n","import { ChangeDetectionStrategy, Input, Component } from '@angular/core';\nimport { PopoverConfig } from './popover.config';\nimport { isBs3 } from 'ngx-bootstrap/utils';\n\n@Component({\n selector: 'popover-container',\n changeDetection: ChangeDetectionStrategy.OnPush,\n // tslint:disable-next-line\n host: {\n '[attr.id]': 'popoverId',\n '[class]':\n '\"popover in popover-\" + placement + \" \" + \"bs-popover-\" + placement + \" \" + placement + \" \" + containerClass',\n '[class.show]': '!isBs3',\n '[class.bs3]': 'isBs3',\n role: 'tooltip',\n style: 'display:block;'\n },\n styles: [\n `\n :host.bs3.popover-top {\n margin-bottom: 10px;\n }\n :host.bs3.popover.top>.arrow {\n margin-left: -2px;\n }\n :host.bs3.popover.top {\n margin-bottom: 10px;\n }\n :host.popover.bottom>.arrow {\n margin-left: -4px;\n }\n :host.bs3.bs-popover-left {\n margin-right: .5rem;\n }\n :host.bs3.bs-popover-right .arrow, :host.bs3.bs-popover-left .arrow{\n margin: .3rem 0;\n }\n `\n ],\n templateUrl: './popover-container.component.html'\n})\nexport class PopoverContainerComponent {\n @Input() placement: string;\n @Input() title: string;\n containerClass: string;\n popoverId: string;\n\n get isBs3(): boolean {\n return isBs3();\n }\n\n constructor(config: PopoverConfig) {\n Object.assign(this, config);\n }\n}\n","import {\n Directive, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output,\n Renderer2, TemplateRef, ViewContainerRef\n} from '@angular/core';\nimport { PopoverConfig } from './popover.config';\nimport { ComponentLoader, ComponentLoaderFactory } from 'ngx-bootstrap/component-loader';\nimport { PopoverContainerComponent } from './popover-container.component';\nimport { PositioningService } from 'ngx-bootstrap/positioning';\nimport { timer } from 'rxjs';\nimport { parseTriggers, Trigger } from 'ngx-bootstrap/utils';\n\nlet id = 0;\n\n/**\n * A lightweight, extensible directive for fancy popover creation.\n */\n@Directive({selector: '[popover]', exportAs: 'bs-popover'})\nexport class PopoverDirective implements OnInit, OnDestroy {\n /** unique id popover - use for aria-describedby */\n popoverId = id++;\n /** sets disable adaptive position */\n @Input() adaptivePosition: boolean;\n /**\n * Content to be displayed as popover.\n */\n /* tslint:disable-next-line: no-any */\n @Input() popover: string | TemplateRef<any>;\n /**\n * Context to be used if popover is a template.\n */\n /* tslint:disable-next-line: no-any */\n @Input() popoverContext: any;\n /**\n * Title of a popover.\n */\n @Input() popoverTitle: string;\n /**\n * Placement of a popover. Accepts: \"top\", \"bottom\", \"left\", \"right\"\n */\n @Input() placement: 'top' | 'bottom' | 'left' | 'right' | 'auto' | 'top left' | 'top right' |\n 'right top' | 'right bottom' | 'bottom right' | 'bottom left' | 'left bottom' | 'left top';\n /**\n * Close popover on outside click\n */\n @Input() outsideClick = false;\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n @Input() triggers: string;\n /**\n * A selector specifying the element the popover should be appended to.\n */\n @Input() container: string;\n\n /**\n * Css class for popover container\n */\n @Input() containerClass = '';\n\n /**\n * Returns whether or not the popover is currently being shown\n */\n @Input()\n get isOpen(): boolean {\n return this._popover.isShown;\n }\n\n set isOpen(value: boolean) {\n if (value) {\n this.show();\n } else {\n this.hide();\n }\n }\n\n /**\n * Delay before showing the tooltip\n */\n @Input() delay: number;\n\n /**\n * Emits an event when the popover is shown\n */\n /* tslint:disable-next-line: no-any */\n @Output() onShown: EventEmitter<any>;\n /**\n * Emits an event when the popover is hidden\n */\n /* tslint:disable-next-line: no-any */\n @Output() onHidden: EventEmitter<any>;\n\n protected _popoverCancelShowFn: Function;\n\n protected _delayTimeoutId: number | any;\n\n private _popover: ComponentLoader<PopoverContainerComponent>;\n private _isInited = false;\n private _ariaDescribedby: string;\n\n constructor(\n _config: PopoverConfig,\n private _elementRef: ElementRef,\n private _renderer: Renderer2,\n _viewContainerRef: ViewContainerRef,\n cis: ComponentLoaderFactory,\n private _positionService: PositioningService\n ) {\n this._popover = cis\n .createLoader<PopoverContainerComponent>(\n _elementRef,\n _viewContainerRef,\n _renderer\n )\n .provide({provide: PopoverConfig, useValue: _config});\n\n Object.assign(this, _config);\n\n this.onShown = this._popover.onShown;\n this.onHidden = this._popover.onHidden;\n\n // fix: no focus on button on Mac OS #1795\n if (typeof window !== 'undefined') {\n _elementRef.nativeElement.addEventListener('click', function () {\n try {\n _elementRef.nativeElement.focus();\n } catch (err) {\n return;\n }\n });\n }\n }\n\n /**\n * Set attribute aria-describedBy for element directive and\n * set id for the popover\n */\n setAriaDescribedBy(): void {\n this._ariaDescribedby = this.isOpen ? `ngx-popover-${this.popoverId}` : null;\n if (this._ariaDescribedby) {\n this._popover.instance.popoverId = this._ariaDescribedby;\n this._renderer.setAttribute(this._elementRef.nativeElement, 'aria-describedby', this._ariaDescribedby);\n } else {\n this._renderer.removeAttribute(this._elementRef.nativeElement, 'aria-describedby');\n }\n }\n\n /**\n * Opens an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n show(): void {\n if (this._popover.isShown || !this.popover || this._delayTimeoutId) {\n return;\n }\n\n this._positionService.setOptions({\n modifiers: {\n flip: {\n enabled: this.adaptivePosition\n },\n preventOverflow: {\n enabled: this.adaptivePosition\n }\n }\n });\n\n const showPopover = () => {\n if (this._delayTimeoutId) {\n this._delayTimeoutId = undefined;\n }\n\n this._popover\n .attach(PopoverContainerComponent)\n .to(this.container)\n .position({attachment: this.placement})\n .show({\n content: this.popover,\n context: this.popoverContext,\n placement: this.placement,\n title: this.popoverTitle,\n containerClass: this.containerClass\n });\n\n if (!this.adaptivePosition) {\n this._positionService.calcPosition();\n this._positionService.deletePositionElement(this._popover._componentRef.location);\n }\n\n this.isOpen = true;\n this.setAriaDescribedBy();\n };\n\n const cancelDelayedTooltipShowing = () => {\n if (this._popoverCancelShowFn) {\n this._popoverCancelShowFn();\n }\n };\n\n if (this.delay) {\n const _timer = timer(this.delay).subscribe(() => {\n showPopover();\n cancelDelayedTooltipShowing();\n });\n\n if (this.triggers) {\n parseTriggers(this.triggers)\n .forEach((trigger: Trigger) => {\n this._popoverCancelShowFn = this._renderer.listen(\n this._elementRef.nativeElement,\n trigger.close,\n () => {\n _timer.unsubscribe();\n cancelDelayedTooltipShowing();\n }\n );\n });\n }\n } else {\n showPopover();\n }\n }\n\n /**\n * Closes an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n hide(): void {\n if (this._delayTimeoutId) {\n clearTimeout(this._delayTimeoutId);\n this._delayTimeoutId = undefined;\n }\n\n if (this.isOpen) {\n this._popover.hide();\n this.setAriaDescribedBy();\n this.isOpen = false;\n }\n }\n\n /**\n * Toggles an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n toggle(): void {\n if (this.isOpen) {\n return this.hide();\n }\n\n this.show();\n }\n\n ngOnInit(): void {\n // fix: seems there are an issue with `routerLinkActive`\n // which result in duplicated call ngOnInit without call to ngOnDestroy\n // read more: https://github.com/valor-software/ngx-bootstrap/issues/1885\n if (this._isInited) {\n return;\n }\n this._isInited = true;\n\n this._popover.listen({\n triggers: this.triggers,\n outsideClick: this.outsideClick,\n show: () => this.show(),\n hide: () => this.hide()\n });\n }\n\n ngOnDestroy(): void {\n this._popover.dispose();\n }\n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ComponentLoaderFactory } from 'ngx-bootstrap/component-loader';\nimport { PositioningService } from 'ngx-bootstrap/positioning';\nimport { PopoverDirective } from './popover.directive';\nimport { PopoverContainerComponent } from './popover-container.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [PopoverDirective, PopoverContainerComponent],\n exports: [PopoverDirective],\n entryComponents: [PopoverContainerComponent]\n})\nexport class PopoverModule {\n static forRoot(): ModuleWithProviders<PopoverModule> {\n return {\n ngModule: PopoverModule,\n providers: [ComponentLoaderFactory, PositioningService]\n };\n }\n}\n"],"names":["Injectable","isBs3","Component","ChangeDetectionStrategy","Input","timer","parseTriggers","Directive","ElementRef","Renderer2","ViewContainerRef","ComponentLoaderFactory","PositioningService","Output","NgModule","CommonModule"],"mappings":"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"}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("ngx-bootstrap/component-loader"),require("ngx-bootstrap/utils"),require("ngx-bootstrap/positioning"),require("rxjs"),require("@angular/common")):"function"==typeof define&&define.amd?define("ngx-bootstrap/popover",["exports","@angular/core","ngx-bootstrap/component-loader","ngx-bootstrap/utils","ngx-bootstrap/positioning","rxjs","@angular/common"],t):t(((e=e||self)["ngx-bootstrap"]=e["ngx-bootstrap"]||{},e["ngx-bootstrap"].popover={}),e.ng.core,e.componentLoader,e.utils,e.positioning,e.rxjs,e.ng.common)}(this,(function(e,t,o,n,i,r,
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("ngx-bootstrap/component-loader"),require("ngx-bootstrap/utils"),require("ngx-bootstrap/positioning"),require("rxjs"),require("@angular/common")):"function"==typeof define&&define.amd?define("ngx-bootstrap/popover",["exports","@angular/core","ngx-bootstrap/component-loader","ngx-bootstrap/utils","ngx-bootstrap/positioning","rxjs","@angular/common"],t):t(((e=e||self)["ngx-bootstrap"]=e["ngx-bootstrap"]||{},e["ngx-bootstrap"].popover={}),e.ng.core,e.componentLoader,e.utils,e.positioning,e.rxjs,e.ng.common)}(this,(function(e,t,o,n,i,r,s){"use strict";var p=function(){function e(){this.adaptivePosition=!0,this.placement="top",this.triggers="click",this.outsideClick=!1,this.delay=0}return e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ɵprov=t["ɵɵdefineInjectable"]({factory:function(){return new e},token:e,providedIn:"root"}),e}();var a=function(){function e(e){Object.assign(this,e)}return Object.defineProperty(e.prototype,"isBs3",{get:function(){return n.isBs3()},enumerable:!0,configurable:!0}),e.decorators=[{type:t.Component,args:[{selector:"popover-container",changeDetection:t.ChangeDetectionStrategy.OnPush,host:{"[attr.id]":"popoverId","[class]":'"popover in popover-" + placement + " " + "bs-popover-" + placement + " " + placement + " " + containerClass',"[class.show]":"!isBs3","[class.bs3]":"isBs3",role:"tooltip",style:"display:block;"},template:'<div class="popover-arrow arrow"></div>\n<h3 class="popover-title popover-header" *ngIf="title">{{ title }}</h3>\n<div class="popover-content popover-body">\n <ng-content></ng-content>\n</div>\n',styles:["\n :host.bs3.popover-top {\n margin-bottom: 10px;\n }\n :host.bs3.popover.top>.arrow {\n margin-left: -2px;\n }\n :host.bs3.popover.top {\n margin-bottom: 10px;\n }\n :host.popover.bottom>.arrow {\n margin-left: -4px;\n }\n :host.bs3.bs-popover-left {\n margin-right: .5rem;\n }\n :host.bs3.bs-popover-right .arrow, :host.bs3.bs-popover-left .arrow{\n margin: .3rem 0;\n }\n "]}]}],e.ctorParameters=function(){return[{type:p}]},e.propDecorators={placement:[{type:t.Input}],title:[{type:t.Input}]},e}();var c=0,d=function(){function e(e,t,o,n,i,r){this._elementRef=t,this._renderer=o,this._positionService=r,this.popoverId=c++,this.outsideClick=!1,this.containerClass="",this._isInited=!1,this._popover=i.createLoader(t,n,o).provide({provide:p,useValue:e}),Object.assign(this,e),this.onShown=this._popover.onShown,this.onHidden=this._popover.onHidden,"undefined"!=typeof window&&t.nativeElement.addEventListener("click",(function(){try{t.nativeElement.focus()}catch(e){return}}))}return Object.defineProperty(e.prototype,"isOpen",{get:function(){return this._popover.isShown},set:function(e){e?this.show():this.hide()},enumerable:!0,configurable:!0}),e.prototype.setAriaDescribedBy=function(){this._ariaDescribedby=this.isOpen?"ngx-popover-"+this.popoverId:null,this._ariaDescribedby?(this._popover.instance.popoverId=this._ariaDescribedby,this._renderer.setAttribute(this._elementRef.nativeElement,"aria-describedby",this._ariaDescribedby)):this._renderer.removeAttribute(this._elementRef.nativeElement,"aria-describedby")},e.prototype.show=function(){var e=this;if(!this._popover.isShown&&this.popover&&!this._delayTimeoutId){this._positionService.setOptions({modifiers:{flip:{enabled:this.adaptivePosition},preventOverflow:{enabled:this.adaptivePosition}}});var t=function(){e._delayTimeoutId&&(e._delayTimeoutId=void 0),e._popover.attach(a).to(e.container).position({attachment:e.placement}).show({content:e.popover,context:e.popoverContext,placement:e.placement,title:e.popoverTitle,containerClass:e.containerClass}),e.adaptivePosition||(e._positionService.calcPosition(),e._positionService.deletePositionElement(e._popover._componentRef.location)),e.isOpen=!0,e.setAriaDescribedBy()},o=function(){e._popoverCancelShowFn&&e._popoverCancelShowFn()};if(this.delay){var i=r.timer(this.delay).subscribe((function(){t(),o()}));this.triggers&&n.parseTriggers(this.triggers).forEach((function(t){e._popoverCancelShowFn=e._renderer.listen(e._elementRef.nativeElement,t.close,(function(){i.unsubscribe(),o()}))}))}else t()}},e.prototype.hide=function(){this._delayTimeoutId&&(clearTimeout(this._delayTimeoutId),this._delayTimeoutId=void 0),this.isOpen&&(this._popover.hide(),this.setAriaDescribedBy(),this.isOpen=!1)},e.prototype.toggle=function(){if(this.isOpen)return this.hide();this.show()},e.prototype.ngOnInit=function(){var e=this;this._isInited||(this._isInited=!0,this._popover.listen({triggers:this.triggers,outsideClick:this.outsideClick,show:function(){return e.show()},hide:function(){return e.hide()}}))},e.prototype.ngOnDestroy=function(){this._popover.dispose()},e.decorators=[{type:t.Directive,args:[{selector:"[popover]",exportAs:"bs-popover"}]}],e.ctorParameters=function(){return[{type:p},{type:t.ElementRef},{type:t.Renderer2},{type:t.ViewContainerRef},{type:o.ComponentLoaderFactory},{type:i.PositioningService}]},e.propDecorators={adaptivePosition:[{type:t.Input}],popover:[{type:t.Input}],popoverContext:[{type:t.Input}],popoverTitle:[{type:t.Input}],placement:[{type:t.Input}],outsideClick:[{type:t.Input}],triggers:[{type:t.Input}],container:[{type:t.Input}],containerClass:[{type:t.Input}],isOpen:[{type:t.Input}],delay:[{type:t.Input}],onShown:[{type:t.Output}],onHidden:[{type:t.Output}]},e}();var u=function(){function e(){}return e.forRoot=function(){return{ngModule:e,providers:[o.ComponentLoaderFactory,i.PositioningService]}},e.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],declarations:[d,a],exports:[d],entryComponents:[a]}]}],e}();e.PopoverConfig=p,e.PopoverContainerComponent=a,e.PopoverDirective=d,e.PopoverModule=u,Object.defineProperty(e,"__esModule",{value:!0})}));
|
2
2
|
//# sourceMappingURL=ngx-bootstrap-popover.umd.min.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["ng://ngx-bootstrap/popover/popover.config.ts","ng://ngx-bootstrap/popover/popover-container.component.ts","ng://ngx-bootstrap/popover/popover.directive.ts","ng://ngx-bootstrap/popover/popover.module.ts"],"names":["PopoverConfig","this","adaptivePosition","placement","triggers","outsideClick","delay","Injectable","PopoverContainerComponent","config","Object","assign","defineProperty","prototype","isBs3","Component","args","selector","changeDetection","ChangeDetectionStrategy","OnPush","host","[class]","[class.show]","[class.bs3]","role","style","template","Input","PopoverDirective","_config","_elementRef","_renderer","_viewContainerRef","cis","_positionService","containerClass","_isInited","_popover","createLoader","provide","useValue","onShown","onHidden","window","nativeElement","addEventListener","focus","err","isShown","value","show","hide","_this","popover","_delayTimeoutId","setOptions","modifiers","flip","enabled","preventOverflow","showPopover","undefined","attach","to","container","position","attachment","content","context","popoverContext","title","popoverTitle","calcPosition","deletePositionElement","_componentRef","location","isOpen","cancelDelayedTooltipShowing","_popoverCancelShowFn","_timer_1","timer","subscribe","parseTriggers","forEach","trigger","listen","close","unsubscribe","clearTimeout","toggle","ngOnInit","ngOnDestroy","dispose","Directive","exportAs","ElementRef","Renderer2","ViewContainerRef","ComponentLoaderFactory","PositioningService","Output","PopoverModule","forRoot","ngModule","providers","NgModule","imports","CommonModule","declarations","exports","entryComponents"],"mappings":"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","sourcesContent":["import { Injectable } from '@angular/core';\n\n/**\n * Configuration service for the Popover directive.\n * You can inject this service, typically in your root component, and customize\n * the values of its properties in order to provide default values for all the\n * popovers used in the application.\n */\n@Injectable()\nexport class PopoverConfig {\n /** sets disable adaptive position */\n adaptivePosition = true;\n /**\n * Placement of a popover. Accepts: \"top\", \"bottom\", \"left\", \"right\", \"auto\"\n */\n placement = 'top';\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n triggers = 'click';\n\n outsideClick = false;\n /**\n * A selector specifying the element the popover should be appended to.\n */\n container: string;\n /** delay before showing the tooltip */\n delay = 0;\n}\n","import { ChangeDetectionStrategy, Input, Component } from '@angular/core';\nimport { PopoverConfig } from './popover.config';\nimport { isBs3 } from 'ngx-bootstrap/utils';\n\n@Component({\n selector: 'popover-container',\n changeDetection: ChangeDetectionStrategy.OnPush,\n // tslint:disable-next-line\n host: {\n '[class]':\n '\"popover in popover-\" + placement + \" \" + \"bs-popover-\" + placement + \" \" + placement + \" \" + containerClass',\n '[class.show]': '!isBs3',\n '[class.bs3]': 'isBs3',\n role: 'tooltip',\n style: 'display:block;'\n },\n styles: [\n `\n :host.bs3.popover-top {\n margin-bottom: 10px;\n }\n :host.bs3.popover.top>.arrow {\n margin-left: -2px;\n }\n :host.bs3.popover.top {\n margin-bottom: 10px;\n }\n :host.popover.bottom>.arrow {\n margin-left: -4px;\n }\n :host.bs3.bs-popover-left {\n margin-right: .5rem;\n }\n :host.bs3.bs-popover-right .arrow, :host.bs3.bs-popover-left .arrow{\n margin: .3rem 0;\n }\n `\n ],\n templateUrl: './popover-container.component.html'\n})\nexport class PopoverContainerComponent {\n @Input() placement: string;\n @Input() title: string;\n containerClass: string;\n\n get isBs3(): boolean {\n return isBs3();\n }\n\n constructor(config: PopoverConfig) {\n Object.assign(this, config);\n }\n}\n","import {\n Directive, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output,\n Renderer2, TemplateRef, ViewContainerRef\n} from '@angular/core';\nimport { PopoverConfig } from './popover.config';\nimport { ComponentLoader, ComponentLoaderFactory } from 'ngx-bootstrap/component-loader';\nimport { PopoverContainerComponent } from './popover-container.component';\nimport { PositioningService } from 'ngx-bootstrap/positioning';\nimport { timer } from 'rxjs';\nimport { parseTriggers, Trigger } from 'ngx-bootstrap/utils';\n\n/**\n * A lightweight, extensible directive for fancy popover creation.\n */\n@Directive({selector: '[popover]', exportAs: 'bs-popover'})\nexport class PopoverDirective implements OnInit, OnDestroy {\n /** sets disable adaptive position */\n @Input() adaptivePosition: boolean;\n /**\n * Content to be displayed as popover.\n */\n /* tslint:disable-next-line: no-any */\n @Input() popover: string | TemplateRef<any>;\n /**\n * Context to be used if popover is a template.\n */\n /* tslint:disable-next-line: no-any */\n @Input() popoverContext: any;\n /**\n * Title of a popover.\n */\n @Input() popoverTitle: string;\n /**\n * Placement of a popover. Accepts: \"top\", \"bottom\", \"left\", \"right\"\n */\n @Input() placement: 'top' | 'bottom' | 'left' | 'right' | 'auto' | 'top left' | 'top right' |\n 'right top' | 'right bottom' | 'bottom right' | 'bottom left' | 'left bottom' | 'left top';\n /**\n * Close popover on outside click\n */\n @Input() outsideClick = false;\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n @Input() triggers: string;\n /**\n * A selector specifying the element the popover should be appended to.\n */\n @Input() container: string;\n\n /**\n * Css class for popover container\n */\n @Input() containerClass = '';\n\n /**\n * Returns whether or not the popover is currently being shown\n */\n @Input()\n get isOpen(): boolean {\n return this._popover.isShown;\n }\n\n set isOpen(value: boolean) {\n if (value) {\n this.show();\n } else {\n this.hide();\n }\n }\n\n /**\n * Delay before showing the tooltip\n */\n @Input() delay: number;\n\n /**\n * Emits an event when the popover is shown\n */\n /* tslint:disable-next-line: no-any */\n @Output() onShown: EventEmitter<any>;\n /**\n * Emits an event when the popover is hidden\n */\n /* tslint:disable-next-line: no-any */\n @Output() onHidden: EventEmitter<any>;\n\n protected _popoverCancelShowFn: Function;\n\n protected _delayTimeoutId: number | any;\n\n private _popover: ComponentLoader<PopoverContainerComponent>;\n private _isInited = false;\n\n constructor(\n _config: PopoverConfig,\n private _elementRef: ElementRef,\n private _renderer: Renderer2,\n _viewContainerRef: ViewContainerRef,\n cis: ComponentLoaderFactory,\n private _positionService: PositioningService\n ) {\n this._popover = cis\n .createLoader<PopoverContainerComponent>(\n _elementRef,\n _viewContainerRef,\n _renderer\n )\n .provide({provide: PopoverConfig, useValue: _config});\n\n Object.assign(this, _config);\n\n this.onShown = this._popover.onShown;\n this.onHidden = this._popover.onHidden;\n\n // fix: no focus on button on Mac OS #1795\n if (typeof window !== 'undefined') {\n _elementRef.nativeElement.addEventListener('click', function () {\n try {\n _elementRef.nativeElement.focus();\n } catch (err) {\n return;\n }\n });\n }\n }\n\n /**\n * Opens an elementâs popover. This is considered a âmanualâ triggering of\n * the popover.\n */\n show(): void {\n if (this._popover.isShown || !this.popover || this._delayTimeoutId) {\n return;\n }\n\n this._positionService.setOptions({\n modifiers: {\n flip: {\n enabled: this.adaptivePosition\n },\n preventOverflow: {\n enabled: this.adaptivePosition\n }\n }\n });\n\n const showPopover = () => {\n if (this._delayTimeoutId) {\n this._delayTimeoutId = undefined;\n }\n\n this._popover\n .attach(PopoverContainerComponent)\n .to(this.container)\n .position({attachment: this.placement})\n .show({\n content: this.popover,\n context: this.popoverContext,\n placement: this.placement,\n title: this.popoverTitle,\n containerClass: this.containerClass\n });\n\n if (!this.adaptivePosition) {\n this._positionService.calcPosition();\n this._positionService.deletePositionElement(this._popover._componentRef.location);\n }\n\n this.isOpen = true;\n };\n\n const cancelDelayedTooltipShowing = () => {\n if (this._popoverCancelShowFn) {\n this._popoverCancelShowFn();\n }\n };\n\n if (this.delay) {\n const _timer = timer(this.delay).subscribe(() => {\n showPopover();\n cancelDelayedTooltipShowing();\n });\n\n if (this.triggers) {\n parseTriggers(this.triggers)\n .forEach((trigger: Trigger) => {\n this._popoverCancelShowFn = this._renderer.listen(\n this._elementRef.nativeElement,\n trigger.close,\n () => {\n _timer.unsubscribe();\n cancelDelayedTooltipShowing();\n }\n );\n });\n }\n } else {\n showPopover();\n }\n }\n\n /**\n * Closes an elementâs popover. This is considered a âmanualâ triggering of\n * the popover.\n */\n hide(): void {\n if (this._delayTimeoutId) {\n clearTimeout(this._delayTimeoutId);\n this._delayTimeoutId = undefined;\n }\n\n if (this.isOpen) {\n this._popover.hide();\n this.isOpen = false;\n }\n }\n\n /**\n * Toggles an elementâs popover. This is considered a âmanualâ triggering of\n * the popover.\n */\n toggle(): void {\n if (this.isOpen) {\n return this.hide();\n }\n\n this.show();\n }\n\n ngOnInit(): void {\n // fix: seems there are an issue with `routerLinkActive`\n // which result in duplicated call ngOnInit without call to ngOnDestroy\n // read more: https://github.com/valor-software/ngx-bootstrap/issues/1885\n if (this._isInited) {\n return;\n }\n this._isInited = true;\n\n this._popover.listen({\n triggers: this.triggers,\n outsideClick: this.outsideClick,\n show: () => this.show()\n });\n }\n\n ngOnDestroy(): void {\n this._popover.dispose();\n }\n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ComponentLoaderFactory } from 'ngx-bootstrap/component-loader';\nimport { PositioningService } from 'ngx-bootstrap/positioning';\nimport { PopoverConfig } from './popover.config';\nimport { PopoverDirective } from './popover.directive';\nimport { PopoverContainerComponent } from './popover-container.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [PopoverDirective, PopoverContainerComponent],\n exports: [PopoverDirective],\n entryComponents: [PopoverContainerComponent]\n})\nexport class PopoverModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: PopoverModule,\n providers: [PopoverConfig, ComponentLoaderFactory, PositioningService]\n };\n }\n}\n"]}
|
1
|
+
{"version":3,"sources":["ng://ngx-bootstrap/popover/popover.config.ts","ng://ngx-bootstrap/popover/popover-container.component.ts","ng://ngx-bootstrap/popover/popover.directive.ts","ng://ngx-bootstrap/popover/popover.module.ts"],"names":["PopoverConfig","this","adaptivePosition","placement","triggers","outsideClick","delay","Injectable","args","providedIn","PopoverContainerComponent","config","Object","assign","defineProperty","prototype","isBs3","Component","selector","changeDetection","ChangeDetectionStrategy","OnPush","host","[attr.id]","[class]","[class.show]","[class.bs3]","role","style","template","Input","id","PopoverDirective","_config","_elementRef","_renderer","_viewContainerRef","cis","_positionService","popoverId","containerClass","_isInited","_popover","createLoader","provide","useValue","onShown","onHidden","window","nativeElement","addEventListener","focus","err","isShown","value","show","hide","setAriaDescribedBy","_ariaDescribedby","isOpen","instance","setAttribute","removeAttribute","_this","popover","_delayTimeoutId","setOptions","modifiers","flip","enabled","preventOverflow","showPopover","undefined","attach","to","container","position","attachment","content","context","popoverContext","title","popoverTitle","calcPosition","deletePositionElement","_componentRef","location","cancelDelayedTooltipShowing","_popoverCancelShowFn","_timer_1","timer","subscribe","parseTriggers","forEach","trigger","listen","close","unsubscribe","clearTimeout","toggle","ngOnInit","ngOnDestroy","dispose","Directive","exportAs","ElementRef","Renderer2","ViewContainerRef","ComponentLoaderFactory","PositioningService","Output","PopoverModule","forRoot","ngModule","providers","NgModule","imports","CommonModule","declarations","exports","entryComponents"],"mappings":"0qBAQA,SAAAA,IAKEC,KAAAC,kBAAmB,EAInBD,KAAAE,UAAY,MAKZF,KAAAG,SAAW,QAEXH,KAAAI,cAAe,EAMfJ,KAAAK,MAAQ,6BAtBTC,EAAAA,WAAUC,KAAA,CAAC,CACVC,WAAY,+HC0CZ,SAAAC,EAAYC,GACVC,OAAOC,OAAOZ,KAAMU,GAExB,OAPEC,OAAAE,eAAIJ,EAAAK,UAAA,QAAK,KAAT,WACE,OAAOC,EAAAA,6DA5CVC,EAAAA,UAAST,KAAA,CAAC,CACTU,SAAU,oBACVC,gBAAiBC,EAAAA,wBAAwBC,OAEzCC,KAAM,CACJC,YAAa,YACbC,UACE,+GACFC,eAAgB,SAChBC,cAAe,QACfC,KAAM,UACNC,MAAO,kBAwBTC,SAAA,8MArBE,6eAjBK7B,wCAyCN8B,EAAAA,qBACAA,EAAAA,SAWHpB,SC3CIqB,EAAK,eAyFP,SAAAC,EACEC,EACQC,EACAC,EACRC,EACAC,EACQC,GAJArC,KAAAiC,YAAAA,EACAjC,KAAAkC,UAAAA,EAGAlC,KAAAqC,iBAAAA,EAvFVrC,KAAAsC,UAAYR,IAyBH9B,KAAAI,cAAe,EAcfJ,KAAAuC,eAAiB,GAuClBvC,KAAAwC,WAAY,EAWlBxC,KAAKyC,SAAWL,EACbM,aACCT,EACAE,EACAD,GAEDS,QAAQ,CAACA,QAAS5C,EAAe6C,SAAUZ,IAE9CrB,OAAOC,OAAOZ,KAAMgC,GAEpBhC,KAAK6C,QAAU7C,KAAKyC,SAASI,QAC7B7C,KAAK8C,SAAW9C,KAAKyC,SAASK,SAGR,oBAAXC,QACTd,EAAYe,cAAcC,iBAAiB,SAAO,WAChD,IACEhB,EAAYe,cAAcE,QAC1B,MAAOC,GACP,WAiJV,OAjNExC,OAAAE,eACIkB,EAAAjB,UAAA,SAAM,KADV,WAEE,OAAOd,KAAKyC,SAASW,aAGvB,SAAWC,GACLA,EACFrD,KAAKsD,OAELtD,KAAKuD,wCAiETxB,EAAAjB,UAAA0C,mBAAA,WACExD,KAAKyD,iBAAmBzD,KAAK0D,OAAS,eAAe1D,KAAKsC,UAAc,KACpEtC,KAAKyD,kBACPzD,KAAKyC,SAASkB,SAASrB,UAAYtC,KAAKyD,iBACxCzD,KAAKkC,UAAU0B,aAAa5D,KAAKiC,YAAYe,cAAe,mBAAoBhD,KAAKyD,mBAErFzD,KAAKkC,UAAU2B,gBAAgB7D,KAAKiC,YAAYe,cAAe,qBAQnEjB,EAAAjB,UAAAwC,KAAA,WAAA,IAAAQ,EAAA9D,KACE,IAAIA,KAAKyC,SAASW,SAAYpD,KAAK+D,UAAW/D,KAAKgE,gBAAnD,CAIAhE,KAAKqC,iBAAiB4B,WAAW,CAC/BC,UAAW,CACTC,KAAM,CACJC,QAASpE,KAAKC,kBAEhBoE,gBAAiB,CACfD,QAASpE,KAAKC,yBAKdqE,EAAW,WACXR,EAAKE,kBACPF,EAAKE,qBAAkBO,GAGzBT,EAAKrB,SACF+B,OAAO/D,GACPgE,GAAGX,EAAKY,WACRC,SAAS,CAACC,WAAYd,EAAK5D,YAC3BoD,KAAK,CACJuB,QAASf,EAAKC,QACde,QAAShB,EAAKiB,eACd7E,UAAW4D,EAAK5D,UAChB8E,MAAOlB,EAAKmB,aACZ1C,eAAgBuB,EAAKvB,iBAGpBuB,EAAK7D,mBACR6D,EAAKzB,iBAAiB6C,eACtBpB,EAAKzB,iBAAiB8C,sBAAsBrB,EAAKrB,SAAS2C,cAAcC,WAG1EvB,EAAKJ,QAAS,EACdI,EAAKN,sBAGD8B,EAA2B,WAC3BxB,EAAKyB,sBACPzB,EAAKyB,wBAIT,GAAIvF,KAAKK,MAAO,KACRmF,EAASC,EAAAA,MAAMzF,KAAKK,OAAOqF,WAAS,WACxCpB,IACAgB,OAGEtF,KAAKG,UACPwF,EAAAA,cAAc3F,KAAKG,UAChByF,SAAO,SAAEC,GACR/B,EAAKyB,qBAAuBzB,EAAK5B,UAAU4D,OACzChC,EAAK7B,YAAYe,cACjB6C,EAAQE,OAAK,WAEXP,EAAOQ,cACPV,eAMVhB,MAQJvC,EAAAjB,UAAAyC,KAAA,WACMvD,KAAKgE,kBACPiC,aAAajG,KAAKgE,iBAClBhE,KAAKgE,qBAAkBO,GAGrBvE,KAAK0D,SACP1D,KAAKyC,SAASc,OACdvD,KAAKwD,qBACLxD,KAAK0D,QAAS,IAQlB3B,EAAAjB,UAAAoF,OAAA,WACE,GAAIlG,KAAK0D,OACP,OAAO1D,KAAKuD,OAGdvD,KAAKsD,QAGPvB,EAAAjB,UAAAqF,SAAA,WAAA,IAAArC,EAAA9D,KAIMA,KAAKwC,YAGTxC,KAAKwC,WAAY,EAEjBxC,KAAKyC,SAASqD,OAAO,CACnB3F,SAAUH,KAAKG,SACfC,aAAcJ,KAAKI,aACnBkD,KAAI,WAAQ,OAAAQ,EAAKR,QACjBC,KAAI,WAAQ,OAAAO,EAAKP,YAIrBxB,EAAAjB,UAAAsF,YAAA,WACEpG,KAAKyC,SAAS4D,+BA9PjBC,EAAAA,UAAS/F,KAAA,CAAC,CAACU,SAAU,YAAasF,SAAU,0DAZpCxG,SAHIyG,EAAAA,kBACXC,EAAAA,iBAAwBC,EAAAA,wBAGAC,EAAAA,8BAEjBC,EAAAA,gEAcN/E,EAAAA,uBAKAA,EAAAA,8BAKAA,EAAAA,4BAIAA,EAAAA,yBAIAA,EAAAA,4BAKAA,EAAAA,wBAKAA,EAAAA,yBAIAA,EAAAA,8BAKAA,EAAAA,sBAKAA,EAAAA,qBAgBAA,EAAAA,uBAMAgF,EAAAA,yBAKAA,EAAAA,UAsLH9E,sBCxQA,SAAA+E,KAaA,OANSA,EAAAC,QAAP,WACE,MAAO,CACLC,SAAUF,EACVG,UAAW,CAACN,EAAAA,uBAAwBC,EAAAA,0CAVzCM,EAAAA,SAAQ3G,KAAA,CAAC,CACR4G,QAAS,CAACC,EAAAA,cACVC,aAAc,CAACtF,EAAkBtB,GACjC6G,QAAS,CAACvF,GACVwF,gBAAiB,CAAC9G,OASpBqG","sourcesContent":["import { Injectable } from '@angular/core';\n\n/**\n * Configuration service for the Popover directive.\n * You can inject this service, typically in your root component, and customize\n * the values of its properties in order to provide default values for all the\n * popovers used in the application.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class PopoverConfig {\n /** sets disable adaptive position */\n adaptivePosition = true;\n /**\n * Placement of a popover. Accepts: \"top\", \"bottom\", \"left\", \"right\", \"auto\"\n */\n placement = 'top';\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n triggers = 'click';\n\n outsideClick = false;\n /**\n * A selector specifying the element the popover should be appended to.\n */\n container: string;\n /** delay before showing the tooltip */\n delay = 0;\n}\n","import { ChangeDetectionStrategy, Input, Component } from '@angular/core';\nimport { PopoverConfig } from './popover.config';\nimport { isBs3 } from 'ngx-bootstrap/utils';\n\n@Component({\n selector: 'popover-container',\n changeDetection: ChangeDetectionStrategy.OnPush,\n // tslint:disable-next-line\n host: {\n '[attr.id]': 'popoverId',\n '[class]':\n '\"popover in popover-\" + placement + \" \" + \"bs-popover-\" + placement + \" \" + placement + \" \" + containerClass',\n '[class.show]': '!isBs3',\n '[class.bs3]': 'isBs3',\n role: 'tooltip',\n style: 'display:block;'\n },\n styles: [\n `\n :host.bs3.popover-top {\n margin-bottom: 10px;\n }\n :host.bs3.popover.top>.arrow {\n margin-left: -2px;\n }\n :host.bs3.popover.top {\n margin-bottom: 10px;\n }\n :host.popover.bottom>.arrow {\n margin-left: -4px;\n }\n :host.bs3.bs-popover-left {\n margin-right: .5rem;\n }\n :host.bs3.bs-popover-right .arrow, :host.bs3.bs-popover-left .arrow{\n margin: .3rem 0;\n }\n `\n ],\n templateUrl: './popover-container.component.html'\n})\nexport class PopoverContainerComponent {\n @Input() placement: string;\n @Input() title: string;\n containerClass: string;\n popoverId: string;\n\n get isBs3(): boolean {\n return isBs3();\n }\n\n constructor(config: PopoverConfig) {\n Object.assign(this, config);\n }\n}\n","import {\n Directive, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output,\n Renderer2, TemplateRef, ViewContainerRef\n} from '@angular/core';\nimport { PopoverConfig } from './popover.config';\nimport { ComponentLoader, ComponentLoaderFactory } from 'ngx-bootstrap/component-loader';\nimport { PopoverContainerComponent } from './popover-container.component';\nimport { PositioningService } from 'ngx-bootstrap/positioning';\nimport { timer } from 'rxjs';\nimport { parseTriggers, Trigger } from 'ngx-bootstrap/utils';\n\nlet id = 0;\n\n/**\n * A lightweight, extensible directive for fancy popover creation.\n */\n@Directive({selector: '[popover]', exportAs: 'bs-popover'})\nexport class PopoverDirective implements OnInit, OnDestroy {\n /** unique id popover - use for aria-describedby */\n popoverId = id++;\n /** sets disable adaptive position */\n @Input() adaptivePosition: boolean;\n /**\n * Content to be displayed as popover.\n */\n /* tslint:disable-next-line: no-any */\n @Input() popover: string | TemplateRef<any>;\n /**\n * Context to be used if popover is a template.\n */\n /* tslint:disable-next-line: no-any */\n @Input() popoverContext: any;\n /**\n * Title of a popover.\n */\n @Input() popoverTitle: string;\n /**\n * Placement of a popover. Accepts: \"top\", \"bottom\", \"left\", \"right\"\n */\n @Input() placement: 'top' | 'bottom' | 'left' | 'right' | 'auto' | 'top left' | 'top right' |\n 'right top' | 'right bottom' | 'bottom right' | 'bottom left' | 'left bottom' | 'left top';\n /**\n * Close popover on outside click\n */\n @Input() outsideClick = false;\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n @Input() triggers: string;\n /**\n * A selector specifying the element the popover should be appended to.\n */\n @Input() container: string;\n\n /**\n * Css class for popover container\n */\n @Input() containerClass = '';\n\n /**\n * Returns whether or not the popover is currently being shown\n */\n @Input()\n get isOpen(): boolean {\n return this._popover.isShown;\n }\n\n set isOpen(value: boolean) {\n if (value) {\n this.show();\n } else {\n this.hide();\n }\n }\n\n /**\n * Delay before showing the tooltip\n */\n @Input() delay: number;\n\n /**\n * Emits an event when the popover is shown\n */\n /* tslint:disable-next-line: no-any */\n @Output() onShown: EventEmitter<any>;\n /**\n * Emits an event when the popover is hidden\n */\n /* tslint:disable-next-line: no-any */\n @Output() onHidden: EventEmitter<any>;\n\n protected _popoverCancelShowFn: Function;\n\n protected _delayTimeoutId: number | any;\n\n private _popover: ComponentLoader<PopoverContainerComponent>;\n private _isInited = false;\n private _ariaDescribedby: string;\n\n constructor(\n _config: PopoverConfig,\n private _elementRef: ElementRef,\n private _renderer: Renderer2,\n _viewContainerRef: ViewContainerRef,\n cis: ComponentLoaderFactory,\n private _positionService: PositioningService\n ) {\n this._popover = cis\n .createLoader<PopoverContainerComponent>(\n _elementRef,\n _viewContainerRef,\n _renderer\n )\n .provide({provide: PopoverConfig, useValue: _config});\n\n Object.assign(this, _config);\n\n this.onShown = this._popover.onShown;\n this.onHidden = this._popover.onHidden;\n\n // fix: no focus on button on Mac OS #1795\n if (typeof window !== 'undefined') {\n _elementRef.nativeElement.addEventListener('click', function () {\n try {\n _elementRef.nativeElement.focus();\n } catch (err) {\n return;\n }\n });\n }\n }\n\n /**\n * Set attribute aria-describedBy for element directive and\n * set id for the popover\n */\n setAriaDescribedBy(): void {\n this._ariaDescribedby = this.isOpen ? `ngx-popover-${this.popoverId}` : null;\n if (this._ariaDescribedby) {\n this._popover.instance.popoverId = this._ariaDescribedby;\n this._renderer.setAttribute(this._elementRef.nativeElement, 'aria-describedby', this._ariaDescribedby);\n } else {\n this._renderer.removeAttribute(this._elementRef.nativeElement, 'aria-describedby');\n }\n }\n\n /**\n * Opens an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n show(): void {\n if (this._popover.isShown || !this.popover || this._delayTimeoutId) {\n return;\n }\n\n this._positionService.setOptions({\n modifiers: {\n flip: {\n enabled: this.adaptivePosition\n },\n preventOverflow: {\n enabled: this.adaptivePosition\n }\n }\n });\n\n const showPopover = () => {\n if (this._delayTimeoutId) {\n this._delayTimeoutId = undefined;\n }\n\n this._popover\n .attach(PopoverContainerComponent)\n .to(this.container)\n .position({attachment: this.placement})\n .show({\n content: this.popover,\n context: this.popoverContext,\n placement: this.placement,\n title: this.popoverTitle,\n containerClass: this.containerClass\n });\n\n if (!this.adaptivePosition) {\n this._positionService.calcPosition();\n this._positionService.deletePositionElement(this._popover._componentRef.location);\n }\n\n this.isOpen = true;\n this.setAriaDescribedBy();\n };\n\n const cancelDelayedTooltipShowing = () => {\n if (this._popoverCancelShowFn) {\n this._popoverCancelShowFn();\n }\n };\n\n if (this.delay) {\n const _timer = timer(this.delay).subscribe(() => {\n showPopover();\n cancelDelayedTooltipShowing();\n });\n\n if (this.triggers) {\n parseTriggers(this.triggers)\n .forEach((trigger: Trigger) => {\n this._popoverCancelShowFn = this._renderer.listen(\n this._elementRef.nativeElement,\n trigger.close,\n () => {\n _timer.unsubscribe();\n cancelDelayedTooltipShowing();\n }\n );\n });\n }\n } else {\n showPopover();\n }\n }\n\n /**\n * Closes an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n hide(): void {\n if (this._delayTimeoutId) {\n clearTimeout(this._delayTimeoutId);\n this._delayTimeoutId = undefined;\n }\n\n if (this.isOpen) {\n this._popover.hide();\n this.setAriaDescribedBy();\n this.isOpen = false;\n }\n }\n\n /**\n * Toggles an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n toggle(): void {\n if (this.isOpen) {\n return this.hide();\n }\n\n this.show();\n }\n\n ngOnInit(): void {\n // fix: seems there are an issue with `routerLinkActive`\n // which result in duplicated call ngOnInit without call to ngOnDestroy\n // read more: https://github.com/valor-software/ngx-bootstrap/issues/1885\n if (this._isInited) {\n return;\n }\n this._isInited = true;\n\n this._popover.listen({\n triggers: this.triggers,\n outsideClick: this.outsideClick,\n show: () => this.show(),\n hide: () => this.hide()\n });\n }\n\n ngOnDestroy(): void {\n this._popover.dispose();\n }\n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ComponentLoaderFactory } from 'ngx-bootstrap/component-loader';\nimport { PositioningService } from 'ngx-bootstrap/positioning';\nimport { PopoverDirective } from './popover.directive';\nimport { PopoverContainerComponent } from './popover-container.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [PopoverDirective, PopoverContainerComponent],\n exports: [PopoverDirective],\n entryComponents: [PopoverContainerComponent]\n})\nexport class PopoverModule {\n static forRoot(): ModuleWithProviders<PopoverModule> {\n return {\n ngModule: PopoverModule,\n providers: [ComponentLoaderFactory, PositioningService]\n };\n }\n}\n"]}
|
@@ -25,6 +25,7 @@ PopoverContainerComponent.decorators = [
|
|
25
25
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
26
26
|
// tslint:disable-next-line
|
27
27
|
host: {
|
28
|
+
'[attr.id]': 'popoverId',
|
28
29
|
'[class]': '"popover in popover-" + placement + " " + "bs-popover-" + placement + " " + placement + " " + containerClass',
|
29
30
|
'[class.show]': '!isBs3',
|
30
31
|
'[class.bs3]': 'isBs3',
|
@@ -69,5 +70,7 @@ if (false) {
|
|
69
70
|
PopoverContainerComponent.prototype.title;
|
70
71
|
/** @type {?} */
|
71
72
|
PopoverContainerComponent.prototype.containerClass;
|
73
|
+
/** @type {?} */
|
74
|
+
PopoverContainerComponent.prototype.popoverId;
|
72
75
|
}
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWJvb3RzdHJhcC9wb3BvdmVyLyIsInNvdXJjZXMiOlsicG9wb3Zlci1jb250YWluZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBdUM1QyxNQUFNLE9BQU8seUJBQXlCOzs7O0lBVXBDLFlBQVksTUFBcUI7UUFDL0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDOUIsQ0FBQzs7OztJQU5ELElBQUksS0FBSztRQUNQLE9BQU8sS0FBSyxFQUFFLENBQUM7SUFDakIsQ0FBQzs7O1lBN0NGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7Z0JBRS9DLElBQUksRUFBRTtvQkFDSixXQUFXLEVBQUUsV0FBVztvQkFDeEIsU0FBUyxFQUNQLDhHQUE4RztvQkFDaEgsY0FBYyxFQUFFLFFBQVE7b0JBQ3hCLGFBQWEsRUFBRSxPQUFPO29CQUN0QixJQUFJLEVBQUUsU0FBUztvQkFDZixLQUFLLEVBQUUsZ0JBQWdCO2lCQUN4QjtnQkF1QkQsdU5BQWlEO3lCQXJCL0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0FtQkM7YUFHSjs7OztZQXZDUSxhQUFhOzs7d0JBeUNuQixLQUFLO29CQUNMLEtBQUs7Ozs7SUFETiw4Q0FBMkI7O0lBQzNCLDBDQUF1Qjs7SUFDdkIsbURBQXVCOztJQUN2Qiw4Q0FBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgSW5wdXQsIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUG9wb3ZlckNvbmZpZyB9IGZyb20gJy4vcG9wb3Zlci5jb25maWcnO1xuaW1wb3J0IHsgaXNCczMgfSBmcm9tICduZ3gtYm9vdHN0cmFwL3V0aWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncG9wb3Zlci1jb250YWluZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lXG4gIGhvc3Q6IHtcbiAgICAnW2F0dHIuaWRdJzogJ3BvcG92ZXJJZCcsXG4gICAgJ1tjbGFzc10nOlxuICAgICAgJ1wicG9wb3ZlciBpbiBwb3BvdmVyLVwiICsgcGxhY2VtZW50ICsgXCIgXCIgKyBcImJzLXBvcG92ZXItXCIgKyBwbGFjZW1lbnQgKyBcIiBcIiArIHBsYWNlbWVudCArIFwiIFwiICsgY29udGFpbmVyQ2xhc3MnLFxuICAgICdbY2xhc3Muc2hvd10nOiAnIWlzQnMzJyxcbiAgICAnW2NsYXNzLmJzM10nOiAnaXNCczMnLFxuICAgIHJvbGU6ICd0b29sdGlwJyxcbiAgICBzdHlsZTogJ2Rpc3BsYXk6YmxvY2s7J1xuICB9LFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgOmhvc3QuYnMzLnBvcG92ZXItdG9wIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgIDpob3N0LmJzMy5wb3BvdmVyLnRvcD4uYXJyb3cge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0ycHg7XG4gICAgfVxuICAgIDpob3N0LmJzMy5wb3BvdmVyLnRvcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cbiAgICA6aG9zdC5wb3BvdmVyLmJvdHRvbT4uYXJyb3cge1xuICAgICAgbWFyZ2luLWxlZnQ6IC00cHg7XG4gICAgfVxuICAgIDpob3N0LmJzMy5icy1wb3BvdmVyLWxlZnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAuNXJlbTtcbiAgICB9XG4gICAgOmhvc3QuYnMzLmJzLXBvcG92ZXItcmlnaHQgLmFycm93LCA6aG9zdC5iczMuYnMtcG9wb3Zlci1sZWZ0IC5hcnJvd3tcbiAgICAgIG1hcmdpbjogLjNyZW0gMDtcbiAgICB9XG4gICAgYFxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vcG9wb3Zlci1jb250YWluZXIuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFBvcG92ZXJDb250YWluZXJDb21wb25lbnQge1xuICBASW5wdXQoKSBwbGFjZW1lbnQ6IHN0cmluZztcbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcbiAgY29udGFpbmVyQ2xhc3M6IHN0cmluZztcbiAgcG9wb3ZlcklkOiBzdHJpbmc7XG5cbiAgZ2V0IGlzQnMzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc0JzMygpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBQb3BvdmVyQ29uZmlnKSB7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCBjb25maWcpO1xuICB9XG59XG4iXX0=
|
@@ -3,6 +3,7 @@
|
|
3
3
|
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
4
4
|
*/
|
5
5
|
import { Injectable } from '@angular/core';
|
6
|
+
import * as i0 from "@angular/core";
|
6
7
|
/**
|
7
8
|
* Configuration service for the Popover directive.
|
8
9
|
* You can inject this service, typically in your root component, and customize
|
@@ -32,8 +33,11 @@ export class PopoverConfig {
|
|
32
33
|
}
|
33
34
|
}
|
34
35
|
PopoverConfig.decorators = [
|
35
|
-
{ type: Injectable
|
36
|
+
{ type: Injectable, args: [{
|
37
|
+
providedIn: 'root'
|
38
|
+
},] }
|
36
39
|
];
|
40
|
+
/** @nocollapse */ PopoverConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function PopoverConfig_Factory() { return new PopoverConfig(); }, token: PopoverConfig, providedIn: "root" });
|
37
41
|
if (false) {
|
38
42
|
/**
|
39
43
|
* sets disable adaptive position
|
@@ -64,4 +68,4 @@ if (false) {
|
|
64
68
|
*/
|
65
69
|
PopoverConfig.prototype.delay;
|
66
70
|
}
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb25maWcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3BvcG92ZXIvIiwic291cmNlcyI6WyJwb3BvdmVyLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7QUFXM0MsTUFBTSxPQUFPLGFBQWE7SUFIMUI7Ozs7UUFLRSxxQkFBZ0IsR0FBRyxJQUFJLENBQUM7Ozs7UUFJeEIsY0FBUyxHQUFHLEtBQUssQ0FBQzs7Ozs7UUFLbEIsYUFBUSxHQUFHLE9BQU8sQ0FBQztRQUVuQixpQkFBWSxHQUFHLEtBQUssQ0FBQzs7OztRQU1yQixVQUFLLEdBQUcsQ0FBQyxDQUFDO0tBQ1g7OztZQXZCQSxVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7Ozs7Ozs7O0lBR0MseUNBQXdCOzs7OztJQUl4QixrQ0FBa0I7Ozs7OztJQUtsQixpQ0FBbUI7O0lBRW5CLHFDQUFxQjs7Ozs7SUFJckIsa0NBQWtCOzs7OztJQUVsQiw4QkFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIHNlcnZpY2UgZm9yIHRoZSBQb3BvdmVyIGRpcmVjdGl2ZS5cbiAqIFlvdSBjYW4gaW5qZWN0IHRoaXMgc2VydmljZSwgdHlwaWNhbGx5IGluIHlvdXIgcm9vdCBjb21wb25lbnQsIGFuZCBjdXN0b21pemVcbiAqIHRoZSB2YWx1ZXMgb2YgaXRzIHByb3BlcnRpZXMgaW4gb3JkZXIgdG8gcHJvdmlkZSBkZWZhdWx0IHZhbHVlcyBmb3IgYWxsIHRoZVxuICogcG9wb3ZlcnMgdXNlZCBpbiB0aGUgYXBwbGljYXRpb24uXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFBvcG92ZXJDb25maWcge1xuICAvKiogc2V0cyBkaXNhYmxlIGFkYXB0aXZlIHBvc2l0aW9uICovXG4gIGFkYXB0aXZlUG9zaXRpb24gPSB0cnVlO1xuICAvKipcbiAgICogUGxhY2VtZW50IG9mIGEgcG9wb3Zlci4gQWNjZXB0czogXCJ0b3BcIiwgXCJib3R0b21cIiwgXCJsZWZ0XCIsIFwicmlnaHRcIiwgXCJhdXRvXCJcbiAgICovXG4gIHBsYWNlbWVudCA9ICd0b3AnO1xuICAvKipcbiAgICogU3BlY2lmaWVzIGV2ZW50cyB0aGF0IHNob3VsZCB0cmlnZ2VyLiBTdXBwb3J0cyBhIHNwYWNlIHNlcGFyYXRlZCBsaXN0IG9mXG4gICAqIGV2ZW50IG5hbWVzLlxuICAgKi9cbiAgdHJpZ2dlcnMgPSAnY2xpY2snO1xuXG4gIG91dHNpZGVDbGljayA9IGZhbHNlO1xuICAvKipcbiAgICogQSBzZWxlY3RvciBzcGVjaWZ5aW5nIHRoZSBlbGVtZW50IHRoZSBwb3BvdmVyIHNob3VsZCBiZSBhcHBlbmRlZCB0by5cbiAgICovXG4gIGNvbnRhaW5lcjogc3RyaW5nO1xuICAvKiogZGVsYXkgYmVmb3JlIHNob3dpbmcgdGhlIHRvb2x0aXAgKi9cbiAgZGVsYXkgPSAwO1xufVxuIl19
|
@@ -9,6 +9,8 @@ import { PopoverContainerComponent } from './popover-container.component';
|
|
9
9
|
import { PositioningService } from 'ngx-bootstrap/positioning';
|
10
10
|
import { timer } from 'rxjs';
|
11
11
|
import { parseTriggers } from 'ngx-bootstrap/utils';
|
12
|
+
/** @type {?} */
|
13
|
+
let id = 0;
|
12
14
|
/**
|
13
15
|
* A lightweight, extensible directive for fancy popover creation.
|
14
16
|
*/
|
@@ -25,6 +27,10 @@ export class PopoverDirective {
|
|
25
27
|
this._elementRef = _elementRef;
|
26
28
|
this._renderer = _renderer;
|
27
29
|
this._positionService = _positionService;
|
30
|
+
/**
|
31
|
+
* unique id popover - use for aria-describedby
|
32
|
+
*/
|
33
|
+
this.popoverId = id++;
|
28
34
|
/**
|
29
35
|
* Close popover on outside click
|
30
36
|
*/
|
@@ -74,6 +80,21 @@ export class PopoverDirective {
|
|
74
80
|
this.hide();
|
75
81
|
}
|
76
82
|
}
|
83
|
+
/**
|
84
|
+
* Set attribute aria-describedBy for element directive and
|
85
|
+
* set id for the popover
|
86
|
+
* @return {?}
|
87
|
+
*/
|
88
|
+
setAriaDescribedBy() {
|
89
|
+
this._ariaDescribedby = this.isOpen ? `ngx-popover-${this.popoverId}` : null;
|
90
|
+
if (this._ariaDescribedby) {
|
91
|
+
this._popover.instance.popoverId = this._ariaDescribedby;
|
92
|
+
this._renderer.setAttribute(this._elementRef.nativeElement, 'aria-describedby', this._ariaDescribedby);
|
93
|
+
}
|
94
|
+
else {
|
95
|
+
this._renderer.removeAttribute(this._elementRef.nativeElement, 'aria-describedby');
|
96
|
+
}
|
97
|
+
}
|
77
98
|
/**
|
78
99
|
* Opens an element’s popover. This is considered a “manual” triggering of
|
79
100
|
* the popover.
|
@@ -117,6 +138,7 @@ export class PopoverDirective {
|
|
117
138
|
this._positionService.deletePositionElement(this._popover._componentRef.location);
|
118
139
|
}
|
119
140
|
this.isOpen = true;
|
141
|
+
this.setAriaDescribedBy();
|
120
142
|
});
|
121
143
|
/** @type {?} */
|
122
144
|
const cancelDelayedTooltipShowing = (/**
|
@@ -169,6 +191,7 @@ export class PopoverDirective {
|
|
169
191
|
}
|
170
192
|
if (this.isOpen) {
|
171
193
|
this._popover.hide();
|
194
|
+
this.setAriaDescribedBy();
|
172
195
|
this.isOpen = false;
|
173
196
|
}
|
174
197
|
}
|
@@ -200,7 +223,11 @@ export class PopoverDirective {
|
|
200
223
|
show: (/**
|
201
224
|
* @return {?}
|
202
225
|
*/
|
203
|
-
() => this.show())
|
226
|
+
() => this.show()),
|
227
|
+
hide: (/**
|
228
|
+
* @return {?}
|
229
|
+
*/
|
230
|
+
() => this.hide())
|
204
231
|
});
|
205
232
|
}
|
206
233
|
/**
|
@@ -238,6 +265,11 @@ PopoverDirective.propDecorators = {
|
|
238
265
|
onHidden: [{ type: Output }]
|
239
266
|
};
|
240
267
|
if (false) {
|
268
|
+
/**
|
269
|
+
* unique id popover - use for aria-describedby
|
270
|
+
* @type {?}
|
271
|
+
*/
|
272
|
+
PopoverDirective.prototype.popoverId;
|
241
273
|
/**
|
242
274
|
* sets disable adaptive position
|
243
275
|
* @type {?}
|
@@ -319,6 +351,11 @@ if (false) {
|
|
319
351
|
* @private
|
320
352
|
*/
|
321
353
|
PopoverDirective.prototype._isInited;
|
354
|
+
/**
|
355
|
+
* @type {?}
|
356
|
+
* @private
|
357
|
+
*/
|
358
|
+
PopoverDirective.prototype._ariaDescribedby;
|
322
359
|
/**
|
323
360
|
* @type {?}
|
324
361
|
* @private
|
@@ -335,4 +372,4 @@ if (false) {
|
|
335
372
|
*/
|
336
373
|
PopoverDirective.prototype._positionService;
|
337
374
|
}
|
338
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3BvcG92ZXIvIiwic291cmNlcyI6WyJwb3BvdmVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUNyRSxTQUFTLEVBQWUsZ0JBQWdCLEVBQ3pDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQW1CLHNCQUFzQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDMUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDL0QsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUUsYUFBYSxFQUFXLE1BQU0scUJBQXFCLENBQUM7Ozs7QUFNN0QsTUFBTSxPQUFPLGdCQUFnQjs7Ozs7Ozs7O0lBZ0YzQixZQUNFLE9BQXNCLEVBQ2QsV0FBdUIsRUFDdkIsU0FBb0IsRUFDNUIsaUJBQW1DLEVBQ25DLEdBQTJCLEVBQ25CLGdCQUFvQztRQUpwQyxnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUN2QixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBR3BCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBb0I7Ozs7UUE3RHJDLGlCQUFZLEdBQUcsS0FBSyxDQUFDOzs7O1FBY3JCLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBdUNyQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBVXhCLElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRzthQUNoQixZQUFZLENBQ1gsV0FBVyxFQUNYLGlCQUFpQixFQUNqQixTQUFTLENBQ1Y7YUFDQSxPQUFPLENBQUMsRUFB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eEIsdUNBQStCOzs7OztJQUMvQixxQ0FBNEI7Ozs7O0lBRzVCLDRDQUE0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCxcbiAgUmVuZGVyZXIyLCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBvcG92ZXJDb25maWcgfSBmcm9tICcuL3BvcG92ZXIuY29uZmlnJztcbmltcG9ydCB7IENvbXBvbmVudExvYWRlciwgQ29tcG9uZW50TG9hZGVyRmFjdG9yeSB9IGZyb20gJ25neC1ib290c3RyYXAvY29tcG9uZW50LWxvYWRlcic7XG5pbXBvcnQgeyBQb3BvdmVyQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9wb3BvdmVyLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUG9zaXRpb25pbmdTZXJ2aWNlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9wb3NpdGlvbmluZyc7XG5pbXBvcnQgeyB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgcGFyc2VUcmlnZ2VycywgVHJpZ2dlciB9IGZyb20gJ25neC1ib290c3RyYXAvdXRpbHMnO1xuXG4vKipcbiAqIEEgbGlnaHR3ZWlnaHQsIGV4dGVuc2libGUgZGlyZWN0aXZlIGZvciBmYW5jeSBwb3BvdmVyIGNyZWF0aW9uLlxuICovXG5ARGlyZWN0aXZlKHtzZWxlY3RvcjogJ1twb3BvdmVyXScsIGV4cG9ydEFzOiAnYnMtcG9wb3Zlcid9KVxuZXhwb3J0IGNsYXNzIFBvcG92ZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8qKiBzZXRzIGRpc2FibGUgYWRhcHRpdmUgcG9zaXRpb24gKi9cbiAgQElucHV0KCkgYWRhcHRpdmVQb3NpdGlvbjogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRlbnQgdG8gYmUgZGlzcGxheWVkIGFzIHBvcG92ZXIuXG4gICAqL1xuICAvKiB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWFueSAqL1xuICBASW5wdXQoKSBwb3BvdmVyOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuICAvKipcbiAgICogQ29udGV4dCB0byBiZSB1c2VkIGlmIHBvcG92ZXIgaXMgYSB0ZW1wbGF0ZS5cbiAgICovXG4gIC8qIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tYW55ICovXG4gIEBJbnB1dCgpIHBvcG92ZXJDb250ZXh0OiBhbnk7XG4gIC8qKlxuICAgKiBUaXRsZSBvZiBhIHBvcG92ZXIuXG4gICAqL1xuICBASW5wdXQoKSBwb3BvdmVyVGl0bGU6IHN0cmluZztcbiAgLyoqXG4gICAqIFBsYWNlbWVudCBvZiBhIHBvcG92ZXIuIEFjY2VwdHM6IFwidG9wXCIsIFwiYm90dG9tXCIsIFwibGVmdFwiLCBcInJpZ2h0XCJcbiAgICovXG4gIEBJbnB1dCgpIHBsYWNlbWVudDogJ3RvcCcgfCAnYm90dG9tJyB8ICdsZWZ0JyB8ICdyaWdodCcgfCAnYXV0bycgfCAndG9wIGxlZnQnIHwgJ3RvcCByaWdodCcgfFxuICAgICdyaWdodCB0b3AnIHwgJ3JpZ2h0IGJvdHRvbScgfCAnYm90dG9tIHJpZ2h0JyB8ICdib3R0b20gbGVmdCcgfCAnbGVmdCBib3R0b20nIHwgJ2xlZnQgdG9wJztcbiAgLyoqXG4gICAqIENsb3NlIHBvcG92ZXIgb24gb3V0c2lkZSBjbGlja1xuICAgKi9cbiAgQElucHV0KCkgb3V0c2lkZUNsaWNrID0gZmFsc2U7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgZXZlbnRzIHRoYXQgc2hvdWxkIHRyaWdnZXIuIFN1cHBvcnRzIGEgc3BhY2Ugc2VwYXJhdGVkIGxpc3Qgb2ZcbiAgICogZXZlbnQgbmFtZXMuXG4gICAqL1xuICBASW5wdXQoKSB0cmlnZ2Vyczogc3RyaW5nO1xuICAvKipcbiAgICogQSBzZWxlY3RvciBzcGVjaWZ5aW5nIHRoZSBlbGVtZW50IHRoZSBwb3BvdmVyIHNob3VsZCBiZSBhcHBlbmRlZCB0by5cbiAgICovXG4gIEBJbnB1dCgpIGNvbnRhaW5lcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDc3MgY2xhc3MgZm9yIHBvcG92ZXIgY29udGFpbmVyXG4gICAqL1xuICBASW5wdXQoKSBjb250YWluZXJDbGFzcyA9ICcnO1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHdoZXRoZXIgb3Igbm90IHRoZSBwb3BvdmVyIGlzIGN1cnJlbnRseSBiZWluZyBzaG93blxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IGlzT3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcG9wb3Zlci5pc1Nob3duO1xuICB9XG5cbiAgc2V0IGlzT3Blbih2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5zaG93KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxheSBiZWZvcmUgc2hvd2luZyB0aGUgdG9vbHRpcFxuICAgKi9cbiAgQElucHV0KCkgZGVsYXk6IG51bWJlcjtcblxuICAvKipcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbiB0aGUgcG9wb3ZlciBpcyBzaG93blxuICAgKi9cbiAgLyogdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1hbnkgKi9cbiAgQE91dHB1dCgpIG9uU2hvd246IEV2ZW50RW1pdHRlcjxhbnk+O1xuICAvKipcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbiB0aGUgcG9wb3ZlciBpcyBoaWRkZW5cbiAgICovXG4gIC8qIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tYW55ICovXG4gIEBPdXRwdXQoKSBvbkhpZGRlbjogRXZlbnRFbWl0dGVyPGFueT47XG5cbiAgcHJvdGVjdGVkIF9wb3BvdmVyQ2FuY2VsU2hvd0ZuOiBGdW5jdGlvbjtcblxuICBwcm90ZWN0ZWQgX2RlbGF5VGltZW91dElkOiBudW1iZXIgfCBhbnk7XG5cbiAgcHJpdmF0ZSBfcG9wb3ZlcjogQ29tcG9uZW50TG9hZGVyPFBvcG92ZXJDb250YWluZXJDb21wb25lbnQ+O1xuICBwcml2YXRlIF9pc0luaXRlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIF9jb25maWc6IFBvcG92ZXJDb25maWcsXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIF9yZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIF92aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIGNpczogQ29tcG9uZW50TG9hZGVyRmFjdG9yeSxcbiAgICBwcml2YXRlIF9wb3NpdGlvblNlcnZpY2U6IFBvc2l0aW9uaW5nU2VydmljZVxuICApIHtcbiAgICB0aGlzLl9wb3BvdmVyID0gY2lzXG4gICAgICAuY3JlYXRlTG9hZGVyPFBvcG92ZXJDb250YWluZXJDb21wb25lbnQ+KFxuICAgICAgICBfZWxlbWVudFJlZixcbiAgICAgICAgX3ZpZXdDb250YWluZXJSZWYsXG4gICAgICAgIF9yZW5kZXJlclxuICAgICAgKVxuICAgICAgLnByb3ZpZGUoe3Byb3ZpZGU6IFBvcG92ZXJDb25maWcsIHVzZVZhbHVlOiBfY29uZmlnfSk7XG5cbiAgICBPYmplY3QuYXNzaWduKHRoaXMsIF9jb25maWcpO1xuXG4gICAgdGhpcy5vblNob3duID0gdGhpcy5fcG9wb3Zlci5vblNob3duO1xuICAgIHRoaXMub25IaWRkZW4gPSB0aGlzLl9wb3BvdmVyLm9uSGlkZGVuO1xuXG4gICAgLy8gZml4OiBubyBmb2N1cyBvbiBidXR0b24gb24gTWFjIE9TICMxNzk1XG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBfZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24gKCkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIF9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogT3BlbnMgYW4gZWxlbWVudOKAmXMgcG9wb3Zlci4gVGhpcyBpcyBjb25zaWRlcmVkIGEg4oCcbWFudWFs4oCdIHRyaWdnZXJpbmcgb2ZcbiAgICogdGhlIHBvcG92ZXIuXG4gICAqL1xuICBzaG93KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9wb3BvdmVyLmlzU2hvd24gfHwgIXRoaXMucG9wb3ZlciB8fCB0aGlzLl9kZWxheVRpbWVvdXRJZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3Bvc2l0aW9uU2VydmljZS5zZXRPcHRpb25zKHtcbiAgICAgIG1vZGlmaWVyczoge1xuICAgICAgICBmbGlwOiB7XG4gICAgICAgICAgZW5hYmxlZDogdGhpcy5hZGFwdGl2ZVBvc2l0aW9uXG4gICAgICAgIH0sXG4gICAgICAgIHByZXZlbnRPdmVyZmxvdzoge1xuICAgICAgICAgIGVuYWJsZWQ6IHRoaXMuYWRhcHRpdmVQb3NpdGlvblxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBjb25zdCBzaG93UG9wb3ZlciA9ICgpID0+IHtcbiAgICAgIGlmICh0aGlzLl9kZWxheVRpbWVvdXRJZCkge1xuICAgICAgICB0aGlzLl9kZWxheVRpbWVvdXRJZCA9IHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgICAgdGhpcy5fcG9wb3ZlclxuICAgICAgICAuYXR0YWNoKFBvcG92ZXJDb250YWluZXJDb21wb25lbnQpXG4gICAgICAgIC50byh0aGlzLmNvbnRhaW5lcilcbiAgICAgICAgLnBvc2l0aW9uKHthdHRhY2htZW50OiB0aGlzLnBsYWNlbWVudH0pXG4gICAgICAgIC5zaG93KHtcbiAgICAgICAgICBjb250ZW50OiB0aGlzLnBvcG92ZXIsXG4gICAgICAgICAgY29udGV4dDogdGhpcy5wb3BvdmVyQ29udGV4dCxcbiAgICAgICAgICBwbGFjZW1lbnQ6IHRoaXMucGxhY2VtZW50LFxuICAgICAgICAgIHRpdGxlOiB0aGlzLnBvcG92ZXJUaXRsZSxcbiAgICAgICAgICBjb250YWluZXJDbGFzczogdGhpcy5jb250YWluZXJDbGFzc1xuICAgICAgICB9KTtcblxuICAgICAgaWYgKCF0aGlzLmFkYXB0aXZlUG9zaXRpb24pIHtcbiAgICAgICAgdGhpcy5fcG9zaXRpb25TZXJ2aWNlLmNhbGNQb3NpdGlvbigpO1xuICAgICAgICB0aGlzLl9wb3NpdGlvblNlcnZpY2UuZGVsZXRlUG9zaXRpb25FbGVtZW50KHRoaXMuX3BvcG92ZXIuX2NvbXBvbmVudFJlZi5sb2NhdGlvbik7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuaXNPcGVuID0gdHJ1ZTtcbiAgICB9O1xuXG4gICAgY29uc3QgY2FuY2VsRGVsYXllZFRvb2x0aXBTaG93aW5nID0gKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuX3BvcG92ZXJDYW5jZWxTaG93Rm4pIHtcbiAgICAgICAgdGhpcy5fcG9wb3ZlckNhbmNlbFNob3dGbigpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBpZiAodGhpcy5kZWxheSkge1xuICAgICAgY29uc3QgX3RpbWVyID0gdGltZXIodGhpcy5kZWxheSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgc2hvd1BvcG92ZXIoKTtcbiAgICAgICAgY2FuY2VsRGVsYXllZFRvb2x0aXBTaG93aW5nKCk7XG4gICAgICB9KTtcblxuICAgICAgaWYgKHRoaXMudHJpZ2dlcnMpIHtcbiAgICAgICAgcGFyc2VUcmlnZ2Vycyh0aGlzLnRyaWdnZXJzKVxuICAgICAgICAgIC5mb3JFYWNoKCh0cmlnZ2VyOiBUcmlnZ2VyKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9wb3BvdmVyQ2FuY2VsU2hvd0ZuID0gdGhpcy5fcmVuZGVyZXIubGlzdGVuKFxuICAgICAgICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgIHRyaWdnZXIuY2xvc2UsXG4gICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICBfdGltZXIudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICBjYW5jZWxEZWxheWVkVG9vbHRpcFNob3dpbmcoKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgc2hvd1BvcG92ZXIoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2xvc2VzIGFuIGVsZW1lbnTigJlzIHBvcG92ZXIuIFRoaXMgaXMgY29uc2lkZXJlZCBhIOKAnG1hbnVhbOKAnSB0cmlnZ2VyaW5nIG9mXG4gICAqIHRoZSBwb3BvdmVyLlxuICAgKi9cbiAgaGlkZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZGVsYXlUaW1lb3V0SWQpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9kZWxheVRpbWVvdXRJZCk7XG4gICAgICB0aGlzLl9kZWxheVRpbWVvdXRJZCA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgIHRoaXMuX3BvcG92ZXIuaGlkZSgpO1xuICAgICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVG9nZ2xlcyBhbiBlbGVtZW504oCZcyBwb3BvdmVyLiBUaGlzIGlzIGNvbnNpZGVyZWQgYSDigJxtYW51YWzigJ0gdHJpZ2dlcmluZyBvZlxuICAgKiB0aGUgcG9wb3Zlci5cbiAgICovXG4gIHRvZ2dsZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgIHJldHVybiB0aGlzLmhpZGUoKTtcbiAgICB9XG5cbiAgICB0aGlzLnNob3coKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIC8vIGZpeDogc2VlbXMgdGhlcmUgYXJlIGFuIGlzc3VlIHdpdGggYHJvdXRlckxpbmtBY3RpdmVgXG4gICAgLy8gd2hpY2ggcmVzdWx0IGluIGR1cGxpY2F0ZWQgY2FsbCBuZ09uSW5pdCB3aXRob3V0IGNhbGwgdG8gbmdPbkRlc3Ryb3lcbiAgICAvLyByZWFkIG1vcmU6IGh0dHBzOi8vZ2l0aHViLmNvbS92YWxvci1zb2Z0d2FyZS9uZ3gtYm9vdHN0cmFwL2lzc3Vlcy8xODg1XG4gICAgaWYgKHRoaXMuX2lzSW5pdGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX2lzSW5pdGVkID0gdHJ1ZTtcblxuICAgIHRoaXMuX3BvcG92ZXIubGlzdGVuKHtcbiAgICAgIHRyaWdnZXJzOiB0aGlzLnRyaWdnZXJzLFxuICAgICAgb3V0c2lkZUNsaWNrOiB0aGlzLm91dHNpZGVDbGljayxcbiAgICAgIHNob3c6ICgpID0+IHRoaXMuc2hvdygpXG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9wb3BvdmVyLmRpc3Bvc2UoKTtcbiAgfVxufVxuIl19
|
375
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3BvcG92ZXIvIiwic291cmNlcyI6WyJwb3BvdmVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUNyRSxTQUFTLEVBQWUsZ0JBQWdCLEVBQ3pDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQW1CLHNCQUFzQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDMUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDL0QsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUUsYUFBYSxFQUFXLE1BQU0scUJBQXFCLENBQUM7O0lBRXpELEVBQUUsR0FBRyxDQUFDOzs7O0FBTVYsTUFBTSxPQUFPLGdCQUFnQjs7Ozs7Ozs7O0lBbUYzQixZQUNFLE9BQXNCLEVBQ2QsV0FBdUIsRUFDdkIsU0FBb0IsRUFDNUIsaUJBQW1DLEVBQ25DLEdBQTJCLEVBQ25CLGdCQUFvQztRQUpwQyxnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUN2QixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBR3BCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBb0I7Ozs7UUF2RjlDLGNBQVMsR0FBRyxFQUFFLEVBQUUsQ0FBQzs7OztRQXlCUixpQkFBWSxHQUFHLEtBQUssQ0FBQzs7OztRQWNyQixtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQXVDckIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQVd4QixJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUc7YUFDaEIsWUFBWSxD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VztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDMUIsQ0FBQzs7O1lBL1BGLFNBQVMsU0FBQyxFQUFDLFFBQVEsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBQzs7OztZQVpqRCxhQUFhO1lBSFQsVUFBVTtZQUNyQixTQUFTO1lBQWUsZ0JBQWdCO1lBR2hCLHNCQUFzQjtZQUV2QyxrQkFBa0I7OzsrQkFjeEIsS0FBSztzQkFLTCxLQUFLOzZCQUtMLEtBQUs7MkJBSUwsS0FBSzt3QkFJTCxLQUFLOzJCQUtMLEtBQUs7dUJBS0wsS0FBSzt3QkFJTCxLQUFLOzZCQUtMLEtBQUs7cUJBS0wsS0FBSztvQkFnQkwsS0FBSztzQkFNTCxNQUFNO3VCQUtOLE1BQU07Ozs7Ozs7SUF2RVAscUNBQWlCOzs7OztJQUVqQiw0Q0FBbUM7Ozs7O0lBS25DLG1DQUE0Qzs7Ozs7SUFLNUMsMENBQTZCOzs7OztJQUk3Qix3Q0FBOEI7Ozs7O0lBSTlCLHFDQUM2Rjs7Ozs7SUFJN0Ysd0NBQThCOzs7Ozs7SUFLOUIsb0NBQTBCOzs7OztJQUkxQixxQ0FBMkI7Ozs7O0lBSzNCLDBDQUE2Qjs7Ozs7SUFxQjdCLGlDQUF1Qjs7Ozs7SUFNdkIsbUNBQXFDOzs7OztJQUtyQyxvQ0FBc0M7Ozs7O0lBRXRDLGdEQUF5Qzs7Ozs7SUFFekMsMkNBQXdDOzs7OztJQUV4QyxvQ0FBNkQ7Ozs7O0lBQzdELHFDQUEwQjs7Ozs7SUFDMUIsNENBQWlDOzs7OztJQUkvQix1Q0FBK0I7Ozs7O0lBQy9CLHFDQUE0Qjs7Ozs7SUFHNUIsNENBQTRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LFxuICBSZW5kZXJlcjIsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUG9wb3ZlckNvbmZpZyB9IGZyb20gJy4vcG9wb3Zlci5jb25maWcnO1xuaW1wb3J0IHsgQ29tcG9uZW50TG9hZGVyLCBDb21wb25lbnRMb2FkZXJGYWN0b3J5IH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9jb21wb25lbnQtbG9hZGVyJztcbmltcG9ydCB7IFBvcG92ZXJDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3BvcG92ZXItY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb3NpdGlvbmluZ1NlcnZpY2UgfSBmcm9tICduZ3gtYm9vdHN0cmFwL3Bvc2l0aW9uaW5nJztcbmltcG9ydCB7IHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBwYXJzZVRyaWdnZXJzLCBUcmlnZ2VyIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC91dGlscyc7XG5cbmxldCBpZCA9IDA7XG5cbi8qKlxuICogQSBsaWdodHdlaWdodCwgZXh0ZW5zaWJsZSBkaXJlY3RpdmUgZm9yIGZhbmN5IHBvcG92ZXIgY3JlYXRpb24uXG4gKi9cbkBEaXJlY3RpdmUoe3NlbGVjdG9yOiAnW3BvcG92ZXJdJywgZXhwb3J0QXM6ICdicy1wb3BvdmVyJ30pXG5leHBvcnQgY2xhc3MgUG9wb3ZlckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLyoqIHVuaXF1ZSBpZCBwb3BvdmVyIC0gdXNlIGZvciBhcmlhLWRlc2NyaWJlZGJ5ICovXG4gIHBvcG92ZXJJZCA9IGlkKys7XG4gIC8qKiBzZXRzIGRpc2FibGUgYWRhcHRpdmUgcG9zaXRpb24gKi9cbiAgQElucHV0KCkgYWRhcHRpdmVQb3NpdGlvbjogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRlbnQgdG8gYmUgZGlzcGxheWVkIGFzIHBvcG92ZXIuXG4gICAqL1xuICAvKiB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWFueSAqL1xuICBASW5wdXQoKSBwb3BvdmVyOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuICAvKipcbiAgICogQ29udGV4dCB0byBiZSB1c2VkIGlmIHBvcG92ZXIgaXMgYSB0ZW1wbGF0ZS5cbiAgICovXG4gIC8qIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tYW55ICovXG4gIEBJbnB1dCgpIHBvcG92ZXJDb250ZXh0OiBhbnk7XG4gIC8qKlxuICAgKiBUaXRsZSBvZiBhIHBvcG92ZXIuXG4gICAqL1xuICBASW5wdXQoKSBwb3BvdmVyVGl0bGU6IHN0cmluZztcbiAgLyoqXG4gICAqIFBsYWNlbWVudCBvZiBhIHBvcG92ZXIuIEFjY2VwdHM6IFwidG9wXCIsIFwiYm90dG9tXCIsIFwibGVmdFwiLCBcInJpZ2h0XCJcbiAgICovXG4gIEBJbnB1dCgpIHBsYWNlbWVudDogJ3RvcCcgfCAnYm90dG9tJyB8ICdsZWZ0JyB8ICdyaWdodCcgfCAnYXV0bycgfCAndG9wIGxlZnQnIHwgJ3RvcCByaWdodCcgfFxuICAgICdyaWdodCB0b3AnIHwgJ3JpZ2h0IGJvdHRvbScgfCAnYm90dG9tIHJpZ2h0JyB8ICdib3R0b20gbGVmdCcgfCAnbGVmdCBib3R0b20nIHwgJ2xlZnQgdG9wJztcbiAgLyoqXG4gICAqIENsb3NlIHBvcG92ZXIgb24gb3V0c2lkZSBjbGlja1xuICAgKi9cbiAgQElucHV0KCkgb3V0c2lkZUNsaWNrID0gZmFsc2U7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgZXZlbnRzIHRoYXQgc2hvdWxkIHRyaWdnZXIuIFN1cHBvcnRzIGEgc3BhY2Ugc2VwYXJhdGVkIGxpc3Qgb2ZcbiAgICogZXZlbnQgbmFtZXMuXG4gICAqL1xuICBASW5wdXQoKSB0cmlnZ2Vyczogc3RyaW5nO1xuICAvKipcbiAgICogQSBzZWxlY3RvciBzcGVjaWZ5aW5nIHRoZSBlbGVtZW50IHRoZSBwb3BvdmVyIHNob3VsZCBiZSBhcHBlbmRlZCB0by5cbiAgICovXG4gIEBJbnB1dCgpIGNvbnRhaW5lcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDc3MgY2xhc3MgZm9yIHBvcG92ZXIgY29udGFpbmVyXG4gICAqL1xuICBASW5wdXQoKSBjb250YWluZXJDbGFzcyA9ICcnO1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHdoZXRoZXIgb3Igbm90IHRoZSBwb3BvdmVyIGlzIGN1cnJlbnRseSBiZWluZyBzaG93blxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IGlzT3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcG9wb3Zlci5pc1Nob3duO1xuICB9XG5cbiAgc2V0IGlzT3Blbih2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5zaG93KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxheSBiZWZvcmUgc2hvd2luZyB0aGUgdG9vbHRpcFxuICAgKi9cbiAgQElucHV0KCkgZGVsYXk6IG51bWJlcjtcblxuICAvKipcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbiB0aGUgcG9wb3ZlciBpcyBzaG93blxuICAgKi9cbiAgLyogdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1hbnkgKi9cbiAgQE91dHB1dCgpIG9uU2hvd246IEV2ZW50RW1pdHRlcjxhbnk+O1xuICAvKipcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbiB0aGUgcG9wb3ZlciBpcyBoaWRkZW5cbiAgICovXG4gIC8qIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tYW55ICovXG4gIEBPdXRwdXQoKSBvbkhpZGRlbjogRXZlbnRFbWl0dGVyPGFueT47XG5cbiAgcHJvdGVjdGVkIF9wb3BvdmVyQ2FuY2VsU2hvd0ZuOiBGdW5jdGlvbjtcblxuICBwcm90ZWN0ZWQgX2RlbGF5VGltZW91dElkOiBudW1iZXIgfCBhbnk7XG5cbiAgcHJpdmF0ZSBfcG9wb3ZlcjogQ29tcG9uZW50TG9hZGVyPFBvcG92ZXJDb250YWluZXJDb21wb25lbnQ+O1xuICBwcml2YXRlIF9pc0luaXRlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9hcmlhRGVzY3JpYmVkYnk6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBfY29uZmlnOiBQb3BvdmVyQ29uZmlnLFxuICAgIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSBfcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBfdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBjaXM6IENvbXBvbmVudExvYWRlckZhY3RvcnksXG4gICAgcHJpdmF0ZSBfcG9zaXRpb25TZXJ2aWNlOiBQb3NpdGlvbmluZ1NlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5fcG9wb3ZlciA9IGNpc1xuICAgICAgLmNyZWF0ZUxvYWRlcjxQb3BvdmVyQ29udGFpbmVyQ29tcG9uZW50PihcbiAgICAgICAgX2VsZW1lbnRSZWYsXG4gICAgICAgIF92aWV3Q29udGFpbmVyUmVmLFxuICAgICAgICBfcmVuZGVyZXJcbiAgICAgIClcbiAgICAgIC5wcm92aWRlKHtwcm92aWRlOiBQb3BvdmVyQ29uZmlnLCB1c2VWYWx1ZTogX2NvbmZpZ30pO1xuXG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCBfY29uZmlnKTtcblxuICAgIHRoaXMub25TaG93biA9IHRoaXMuX3BvcG92ZXIub25TaG93bjtcbiAgICB0aGlzLm9uSGlkZGVuID0gdGhpcy5fcG9wb3Zlci5vbkhpZGRlbjtcblxuICAgIC8vIGZpeDogbm8gZm9jdXMgb24gYnV0dG9uIG9uIE1hYyBPUyAjMTc5NVxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBfZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNldCBhdHRyaWJ1dGUgYXJpYS1kZXNjcmliZWRCeSBmb3IgZWxlbWVudCBkaXJlY3RpdmUgYW5kXG4gICAqIHNldCBpZCBmb3IgdGhlIHBvcG92ZXJcbiAgICovXG4gIHNldEFyaWFEZXNjcmliZWRCeSgpOiB2b2lkIHtcbiAgICB0aGlzLl9hcmlhRGVzY3JpYmVkYnkgPSB0aGlzLmlzT3BlbiA/IGBuZ3gtcG9wb3Zlci0ke3RoaXMucG9wb3ZlcklkfWAgOiBudWxsO1xuICAgIGlmICh0aGlzLl9hcmlhRGVzY3JpYmVkYnkpIHtcbiAgICAgIHRoaXMuX3BvcG92ZXIuaW5zdGFuY2UucG9wb3ZlcklkID0gdGhpcy5fYXJpYURlc2NyaWJlZGJ5O1xuICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2FyaWEtZGVzY3JpYmVkYnknLCB0aGlzLl9hcmlhRGVzY3JpYmVkYnkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnYXJpYS1kZXNjcmliZWRieScpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyBhbiBlbGVtZW504oCZcyBwb3BvdmVyLiBUaGlzIGlzIGNvbnNpZGVyZWQgYSDigJxtYW51YWzigJ0gdHJpZ2dlcmluZyBvZlxuICAgKiB0aGUgcG9wb3Zlci5cbiAgICovXG4gIHNob3coKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3BvcG92ZXIuaXNTaG93biB8fCAhdGhpcy5wb3BvdmVyIHx8IHRoaXMuX2RlbGF5VGltZW91dElkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fcG9zaXRpb25TZXJ2aWNlLnNldE9wdGlvbnMoe1xuICAgICAgbW9kaWZpZXJzOiB7XG4gICAgICAgIGZsaXA6IHtcbiAgICAgICAgICBlbmFibGVkOiB0aGlzLmFkYXB0aXZlUG9zaXRpb25cbiAgICAgICAgfSxcbiAgICAgICAgcHJldmVudE92ZXJmbG93OiB7XG4gICAgICAgICAgZW5hYmxlZDogdGhpcy5hZGFwdGl2ZVBvc2l0aW9uXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGNvbnN0IHNob3dQb3BvdmVyID0gKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuX2RlbGF5VGltZW91dElkKSB7XG4gICAgICAgIHRoaXMuX2RlbGF5VGltZW91dElkID0gdW5kZWZpbmVkO1xuICAgICAgfVxuXG4gICAgICB0aGlzLl9wb3BvdmVyXG4gICAgICAgIC5hdHRhY2goUG9wb3ZlckNvbnRhaW5lckNvbXBvbmVudClcbiAgICAgICAgLnRvKHRoaXMuY29udGFpbmVyKVxuICAgICAgICAucG9zaXRpb24oe2F0dGFjaG1lbnQ6IHRoaXMucGxhY2VtZW50fSlcbiAgICAgICAgLnNob3coe1xuICAgICAgICAgIGNvbnRlbnQ6IHRoaXMucG9wb3ZlcixcbiAgICAgICAgICBjb250ZXh0OiB0aGlzLnBvcG92ZXJDb250ZXh0LFxuICAgICAgICAgIHBsYWNlbWVudDogdGhpcy5wbGFjZW1lbnQsXG4gICAgICAgICAgdGl0bGU6IHRoaXMucG9wb3ZlclRpdGxlLFxuICAgICAgICAgIGNvbnRhaW5lckNsYXNzOiB0aGlzLmNvbnRhaW5lckNsYXNzXG4gICAgICAgIH0pO1xuXG4gICAgICBpZiAoIXRoaXMuYWRhcHRpdmVQb3NpdGlvbikge1xuICAgICAgICB0aGlzLl9wb3NpdGlvblNlcnZpY2UuY2FsY1Bvc2l0aW9uKCk7XG4gICAgICAgIHRoaXMuX3Bvc2l0aW9uU2VydmljZS5kZWxldGVQb3NpdGlvbkVsZW1lbnQodGhpcy5fcG9wb3Zlci5fY29tcG9uZW50UmVmLmxvY2F0aW9uKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5pc09wZW4gPSB0cnVlO1xuICAgICAgdGhpcy5zZXRBcmlhRGVzY3JpYmVkQnkoKTtcbiAgICB9O1xuXG4gICAgY29uc3QgY2FuY2VsRGVsYXllZFRvb2x0aXBTaG93aW5nID0gKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuX3BvcG92ZXJDYW5jZWxTaG93Rm4pIHtcbiAgICAgICAgdGhpcy5fcG9wb3ZlckNhbmNlbFNob3dGbigpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBpZiAodGhpcy5kZWxheSkge1xuICAgICAgY29uc3QgX3RpbWVyID0gdGltZXIodGhpcy5kZWxheSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgc2hvd1BvcG92ZXIoKTtcbiAgICAgICAgY2FuY2VsRGVsYXllZFRvb2x0aXBTaG93aW5nKCk7XG4gICAgICB9KTtcblxuICAgICAgaWYgKHRoaXMudHJpZ2dlcnMpIHtcbiAgICAgICAgcGFyc2VUcmlnZ2Vycyh0aGlzLnRyaWdnZXJzKVxuICAgICAgICAgIC5mb3JFYWNoKCh0cmlnZ2VyOiBUcmlnZ2VyKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9wb3BvdmVyQ2FuY2VsU2hvd0ZuID0gdGhpcy5fcmVuZGVyZXIubGlzdGVuKFxuICAgICAgICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgIHRyaWdnZXIuY2xvc2UsXG4gICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICBfdGltZXIudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICBjYW5jZWxEZWxheWVkVG9vbHRpcFNob3dpbmcoKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgc2hvd1BvcG92ZXIoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2xvc2VzIGFuIGVsZW1lbnTigJlzIHBvcG92ZXIuIFRoaXMgaXMgY29uc2lkZXJlZCBhIOKAnG1hbnVhbOKAnSB0cmlnZ2VyaW5nIG9mXG4gICAqIHRoZSBwb3BvdmVyLlxuICAgKi9cbiAgaGlkZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZGVsYXlUaW1lb3V0SWQpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9kZWxheVRpbWVvdXRJZCk7XG4gICAgICB0aGlzLl9kZWxheVRpbWVvdXRJZCA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgIHRoaXMuX3BvcG92ZXIuaGlkZSgpO1xuICAgICAgdGhpcy5zZXRBcmlhRGVzY3JpYmVkQnkoKTtcbiAgICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRvZ2dsZXMgYW4gZWxlbWVudOKAmXMgcG9wb3Zlci4gVGhpcyBpcyBjb25zaWRlcmVkIGEg4oCcbWFudWFs4oCdIHRyaWdnZXJpbmcgb2ZcbiAgICogdGhlIHBvcG92ZXIuXG4gICAqL1xuICB0b2dnbGUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICByZXR1cm4gdGhpcy5oaWRlKCk7XG4gICAgfVxuXG4gICAgdGhpcy5zaG93KCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBmaXg6IHNlZW1zIHRoZXJlIGFyZSBhbiBpc3N1ZSB3aXRoIGByb3V0ZXJMaW5rQWN0aXZlYFxuICAgIC8vIHdoaWNoIHJlc3VsdCBpbiBkdXBsaWNhdGVkIGNhbGwgbmdPbkluaXQgd2l0aG91dCBjYWxsIHRvIG5nT25EZXN0cm95XG4gICAgLy8gcmVhZCBtb3JlOiBodHRwczovL2dpdGh1Yi5jb20vdmFsb3Itc29mdHdhcmUvbmd4LWJvb3RzdHJhcC9pc3N1ZXMvMTg4NVxuICAgIGlmICh0aGlzLl9pc0luaXRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9pc0luaXRlZCA9IHRydWU7XG5cbiAgICB0aGlzLl9wb3BvdmVyLmxpc3Rlbih7XG4gICAgICB0cmlnZ2VyczogdGhpcy50cmlnZ2VycyxcbiAgICAgIG91dHNpZGVDbGljazogdGhpcy5vdXRzaWRlQ2xpY2ssXG4gICAgICBzaG93OiAoKSA9PiB0aGlzLnNob3coKSxcbiAgICAgIGhpZGU6ICgpID0+IHRoaXMuaGlkZSgpXG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9wb3BvdmVyLmRpc3Bvc2UoKTtcbiAgfVxufVxuIl19
|
@@ -6,7 +6,6 @@ import { NgModule } from '@angular/core';
|
|
6
6
|
import { CommonModule } from '@angular/common';
|
7
7
|
import { ComponentLoaderFactory } from 'ngx-bootstrap/component-loader';
|
8
8
|
import { PositioningService } from 'ngx-bootstrap/positioning';
|
9
|
-
import { PopoverConfig } from './popover.config';
|
10
9
|
import { PopoverDirective } from './popover.directive';
|
11
10
|
import { PopoverContainerComponent } from './popover-container.component';
|
12
11
|
export class PopoverModule {
|
@@ -16,7 +15,7 @@ export class PopoverModule {
|
|
16
15
|
static forRoot() {
|
17
16
|
return {
|
18
17
|
ngModule: PopoverModule,
|
19
|
-
providers: [
|
18
|
+
providers: [ComponentLoaderFactory, PositioningService]
|
20
19
|
};
|
21
20
|
}
|
22
21
|
}
|
@@ -28,4 +27,4 @@ PopoverModule.decorators = [
|
|
28
27
|
entryComponents: [PopoverContainerComponent]
|
29
28
|
},] }
|
30
29
|
];
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3BvcG92ZXIvIiwic291cmNlcyI6WyJwb3BvdmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBUTFFLE1BQU0sT0FBTyxhQUFhOzs7O0lBQ3hCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxhQUFhO1lBQ3ZCLFNBQVMsRUFBRSxDQUFDLHNCQUFzQixFQUFFLGtCQUFrQixDQUFDO1NBQ3hELENBQUM7SUFDSixDQUFDOzs7WUFaRixRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2dCQUN2QixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSx5QkFBeUIsQ0FBQztnQkFDM0QsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7Z0JBQzNCLGVBQWUsRUFBRSxDQUFDLHlCQUF5QixDQUFDO2FBQzdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IENvbXBvbmVudExvYWRlckZhY3RvcnkgfSBmcm9tICduZ3gtYm9vdHN0cmFwL2NvbXBvbmVudC1sb2FkZXInO1xuaW1wb3J0IHsgUG9zaXRpb25pbmdTZXJ2aWNlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9wb3NpdGlvbmluZyc7XG5pbXBvcnQgeyBQb3BvdmVyRGlyZWN0aXZlIH0gZnJvbSAnLi9wb3BvdmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQb3BvdmVyQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9wb3BvdmVyLWNvbnRhaW5lci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zOiBbUG9wb3ZlckRpcmVjdGl2ZSwgUG9wb3ZlckNvbnRhaW5lckNvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtQb3BvdmVyRGlyZWN0aXZlXSxcbiAgZW50cnlDb21wb25lbnRzOiBbUG9wb3ZlckNvbnRhaW5lckNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgUG9wb3Zlck1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8UG9wb3Zlck1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogUG9wb3Zlck1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW0NvbXBvbmVudExvYWRlckZhY3RvcnksIFBvc2l0aW9uaW5nU2VydmljZV1cbiAgICB9O1xuICB9XG59XG4iXX0=
|