ngx-bootstrap 7.1.2 → 8.0.0-RC.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accordion/accordion-group.component.d.ts +3 -5
- package/accordion/accordion.component.d.ts +3 -5
- package/accordion/accordion.config.d.ts +3 -4
- package/accordion/accordion.module.d.ts +8 -9
- package/accordion/esm2020/accordion-group.component.mjs +88 -0
- package/accordion/esm2020/accordion.component.mjs +56 -0
- package/accordion/esm2020/accordion.config.mjs +22 -0
- package/accordion/esm2020/accordion.module.mjs +23 -0
- package/accordion/esm2020/index.mjs +2 -0
- package/accordion/esm2020/ngx-bootstrap-accordion.mjs +5 -0
- package/accordion/esm2020/public_api.mjs +5 -0
- package/accordion/fesm2015/ngx-bootstrap-accordion.mjs +186 -0
- package/accordion/fesm2015/ngx-bootstrap-accordion.mjs.map +1 -0
- package/accordion/fesm2020/ngx-bootstrap-accordion.mjs +184 -0
- package/accordion/fesm2020/ngx-bootstrap-accordion.mjs.map +1 -0
- package/accordion/ngx-bootstrap-accordion.d.ts +1 -2
- package/accordion/package.json +27 -34
- package/alert/alert.component.d.ts +3 -5
- package/alert/alert.config.d.ts +3 -4
- package/alert/alert.module.d.ts +6 -7
- package/alert/esm2020/alert.component.mjs +77 -0
- package/alert/esm2020/alert.config.mjs +21 -0
- package/alert/esm2020/alert.module.mjs +22 -0
- package/alert/esm2020/index.mjs +2 -0
- package/alert/esm2020/ngx-bootstrap-alert.mjs +5 -0
- package/alert/esm2020/public_api.mjs +4 -0
- package/alert/fesm2015/ngx-bootstrap-alert.mjs +120 -0
- package/alert/fesm2015/ngx-bootstrap-alert.mjs.map +1 -0
- package/alert/fesm2020/ngx-bootstrap-alert.mjs +120 -0
- package/alert/fesm2020/ngx-bootstrap-alert.mjs.map +1 -0
- package/alert/ngx-bootstrap-alert.d.ts +1 -2
- package/alert/package.json +24 -23
- package/buttons/button-checkbox.directive.d.ts +3 -5
- package/buttons/button-radio-group.directive.d.ts +3 -5
- package/buttons/button-radio.directive.d.ts +3 -5
- package/buttons/buttons.module.d.ts +7 -8
- package/buttons/esm2020/button-checkbox.directive.mjs +87 -0
- package/buttons/esm2020/button-radio-group.directive.mjs +157 -0
- package/buttons/esm2020/button-radio.directive.mjs +188 -0
- package/buttons/esm2020/buttons.module.mjs +21 -0
- package/buttons/esm2020/index.mjs +2 -0
- package/buttons/esm2020/ngx-bootstrap-buttons.mjs +5 -0
- package/buttons/esm2020/public_api.mjs +5 -0
- package/buttons/fesm2015/ngx-bootstrap-buttons.mjs +448 -0
- package/buttons/fesm2015/ngx-bootstrap-buttons.mjs.map +1 -0
- package/buttons/fesm2020/ngx-bootstrap-buttons.mjs +446 -0
- package/buttons/fesm2020/ngx-bootstrap-buttons.mjs.map +1 -0
- package/buttons/ngx-bootstrap-buttons.d.ts +1 -5
- package/buttons/package.json +23 -22
- package/carousel/carousel.component.d.ts +3 -5
- package/carousel/carousel.config.d.ts +3 -4
- package/carousel/carousel.module.d.ts +7 -8
- package/carousel/esm2020/carousel.component.mjs +711 -0
- package/carousel/esm2020/carousel.config.mjs +32 -0
- package/carousel/esm2020/carousel.module.mjs +22 -0
- package/carousel/esm2020/index.mjs +2 -0
- package/carousel/esm2020/models/index.mjs +2 -0
- package/carousel/esm2020/ngx-bootstrap-carousel.mjs +5 -0
- package/carousel/esm2020/public_api.mjs +5 -0
- package/carousel/esm2020/slide.component.mjs +92 -0
- package/carousel/esm2020/utils.mjs +32 -0
- package/carousel/fesm2015/ngx-bootstrap-carousel.mjs +875 -0
- package/carousel/fesm2015/ngx-bootstrap-carousel.mjs.map +1 -0
- package/carousel/fesm2020/ngx-bootstrap-carousel.mjs +874 -0
- package/carousel/fesm2020/ngx-bootstrap-carousel.mjs.map +1 -0
- package/carousel/ngx-bootstrap-carousel.d.ts +1 -2
- package/carousel/package.json +24 -23
- package/carousel/slide.component.d.ts +3 -5
- package/chronos/esm2020/create/check-overflow.mjs +30 -0
- package/chronos/esm2020/create/clone.mjs +6 -0
- package/chronos/esm2020/create/date-from-array.mjs +19 -0
- package/chronos/esm2020/create/from-anything.mjs +106 -0
- package/chronos/esm2020/create/from-array.mjs +135 -0
- package/chronos/esm2020/create/from-object.mjs +17 -0
- package/chronos/esm2020/create/from-string-and-array.mjs +38 -0
- package/chronos/esm2020/create/from-string-and-format.mjs +106 -0
- package/chronos/esm2020/create/from-string.mjs +222 -0
- package/chronos/esm2020/create/local.mjs +16 -0
- package/chronos/esm2020/create/parsing-flags.mjs +26 -0
- package/chronos/esm2020/create/parsing.types.mjs +2 -0
- package/chronos/esm2020/create/valid.mjs +42 -0
- package/chronos/esm2020/duration/bubble.mjs +47 -0
- package/chronos/esm2020/duration/constructor.mjs +130 -0
- package/chronos/esm2020/duration/create.mjs +112 -0
- package/chronos/esm2020/duration/humanize.mjs +79 -0
- package/chronos/esm2020/duration/valid.mjs +43 -0
- package/chronos/esm2020/format/format.mjs +50 -0
- package/chronos/esm2020/format.mjs +46 -0
- package/chronos/esm2020/i18n/ar.mjs +132 -0
- package/chronos/esm2020/i18n/bg.mjs +90 -0
- package/chronos/esm2020/i18n/ca.mjs +87 -0
- package/chronos/esm2020/i18n/cs.mjs +175 -0
- package/chronos/esm2020/i18n/da.mjs +49 -0
- package/chronos/esm2020/i18n/de.mjs +67 -0
- package/chronos/esm2020/i18n/en-gb.mjs +57 -0
- package/chronos/esm2020/i18n/es-do.mjs +81 -0
- package/chronos/esm2020/i18n/es-us.mjs +75 -0
- package/chronos/esm2020/i18n/es.mjs +80 -0
- package/chronos/esm2020/i18n/et.mjs +69 -0
- package/chronos/esm2020/i18n/fi.mjs +96 -0
- package/chronos/esm2020/i18n/fr.mjs +72 -0
- package/chronos/esm2020/i18n/gl.mjs +80 -0
- package/chronos/esm2020/i18n/he.mjs +94 -0
- package/chronos/esm2020/i18n/hi.mjs +119 -0
- package/chronos/esm2020/i18n/hr.mjs +58 -0
- package/chronos/esm2020/i18n/hu.mjs +100 -0
- package/chronos/esm2020/i18n/id.mjs +78 -0
- package/chronos/esm2020/i18n/it.mjs +61 -0
- package/chronos/esm2020/i18n/ja.mjs +71 -0
- package/chronos/esm2020/i18n/ka.mjs +83 -0
- package/chronos/esm2020/i18n/kk.mjs +76 -0
- package/chronos/esm2020/i18n/ko.mjs +72 -0
- package/chronos/esm2020/i18n/lt.mjs +112 -0
- package/chronos/esm2020/i18n/lv.mjs +52 -0
- package/chronos/esm2020/i18n/mn.mjs +94 -0
- package/chronos/esm2020/i18n/nb.mjs +53 -0
- package/chronos/esm2020/i18n/nl-be.mjs +77 -0
- package/chronos/esm2020/i18n/nl.mjs +76 -0
- package/chronos/esm2020/i18n/pl.mjs +122 -0
- package/chronos/esm2020/i18n/pt-br.mjs +52 -0
- package/chronos/esm2020/i18n/ro.mjs +66 -0
- package/chronos/esm2020/i18n/ru.mjs +177 -0
- package/chronos/esm2020/i18n/sk.mjs +153 -0
- package/chronos/esm2020/i18n/sl.mjs +179 -0
- package/chronos/esm2020/i18n/sq.mjs +50 -0
- package/chronos/esm2020/i18n/sv.mjs +59 -0
- package/chronos/esm2020/i18n/th-be.mjs +73 -0
- package/chronos/esm2020/i18n/th.mjs +58 -0
- package/chronos/esm2020/i18n/tr.mjs +78 -0
- package/chronos/esm2020/i18n/uk.mjs +143 -0
- package/chronos/esm2020/i18n/vi.mjs +70 -0
- package/chronos/esm2020/i18n/zh-cn.mjs +109 -0
- package/chronos/esm2020/index.mjs +2 -0
- package/chronos/esm2020/locale/calendar.mjs +9 -0
- package/chronos/esm2020/locale/locale.class.mjs +532 -0
- package/chronos/esm2020/locale/locale.defaults.mjs +40 -0
- package/chronos/esm2020/locale/locales.mjs +228 -0
- package/chronos/esm2020/moment/add-subtract.mjs +35 -0
- package/chronos/esm2020/moment/calendar.mjs +41 -0
- package/chronos/esm2020/moment/diff.mjs +70 -0
- package/chronos/esm2020/moment/min-max.mjs +38 -0
- package/chronos/esm2020/ngx-bootstrap-chronos.mjs +5 -0
- package/chronos/esm2020/parse/regex.mjs +47 -0
- package/chronos/esm2020/parse/token.mjs +31 -0
- package/chronos/esm2020/public_api.mjs +56 -0
- package/chronos/esm2020/testing/chain.mjs +708 -0
- package/chronos/esm2020/types.mjs +2 -0
- package/chronos/esm2020/units/aliases.mjs +35 -0
- package/chronos/esm2020/units/constants.mjs +11 -0
- package/chronos/esm2020/units/day-of-month.mjs +31 -0
- package/chronos/esm2020/units/day-of-week.mjs +129 -0
- package/chronos/esm2020/units/day-of-year.mjs +37 -0
- package/chronos/esm2020/units/hour.mjs +127 -0
- package/chronos/esm2020/units/index.mjs +19 -0
- package/chronos/esm2020/units/millisecond.mjs +59 -0
- package/chronos/esm2020/units/minute.mjs +23 -0
- package/chronos/esm2020/units/month.mjs +63 -0
- package/chronos/esm2020/units/offset.mjs +209 -0
- package/chronos/esm2020/units/priorities.mjs +21 -0
- package/chronos/esm2020/units/quarter.mjs +39 -0
- package/chronos/esm2020/units/second.mjs +23 -0
- package/chronos/esm2020/units/timestamp.mjs +28 -0
- package/chronos/esm2020/units/timezone.mjs +19 -0
- package/chronos/esm2020/units/week-calendar-utils.mjs +70 -0
- package/chronos/esm2020/units/week-year.mjs +101 -0
- package/chronos/esm2020/units/week.mjs +58 -0
- package/chronos/esm2020/units/year.mjs +60 -0
- package/chronos/esm2020/utils/abs-ceil.mjs +4 -0
- package/chronos/esm2020/utils/abs-round.mjs +4 -0
- package/chronos/esm2020/utils/compare-arrays.mjs +16 -0
- package/chronos/esm2020/utils/date-compare.mjs +55 -0
- package/chronos/esm2020/utils/date-getters.mjs +67 -0
- package/chronos/esm2020/utils/date-setters.mjs +75 -0
- package/chronos/esm2020/utils/defaults.mjs +11 -0
- package/chronos/esm2020/utils/start-end-of.mjs +57 -0
- package/chronos/esm2020/utils/type-checks.mjs +58 -0
- package/chronos/esm2020/utils/zero-fill.mjs +10 -0
- package/chronos/esm2020/utils.mjs +7 -0
- package/chronos/fesm2015/ngx-bootstrap-chronos.mjs +7311 -0
- package/chronos/fesm2015/ngx-bootstrap-chronos.mjs.map +1 -0
- package/chronos/fesm2020/ngx-bootstrap-chronos.mjs +7311 -0
- package/chronos/fesm2020/ngx-bootstrap-chronos.mjs.map +1 -0
- package/chronos/ngx-bootstrap-chronos.d.ts +1 -3
- package/chronos/package.json +21 -21
- package/collapse/collapse.directive.d.ts +3 -5
- package/collapse/collapse.module.d.ts +5 -6
- package/collapse/esm2020/collapse-animations.mjs +11 -0
- package/collapse/esm2020/collapse.directive.mjs +168 -0
- package/collapse/esm2020/collapse.module.mjs +19 -0
- package/collapse/esm2020/index.mjs +2 -0
- package/collapse/esm2020/ngx-bootstrap-collapse.mjs +5 -0
- package/collapse/esm2020/public_api.mjs +3 -0
- package/collapse/fesm2015/ngx-bootstrap-collapse.mjs +200 -0
- package/collapse/fesm2015/ngx-bootstrap-collapse.mjs.map +1 -0
- package/collapse/fesm2020/ngx-bootstrap-collapse.mjs +200 -0
- package/collapse/fesm2020/ngx-bootstrap-collapse.mjs.map +1 -0
- package/collapse/ngx-bootstrap-collapse.d.ts +1 -2
- package/collapse/package.json +24 -23
- package/component-loader/component-loader.factory.d.ts +3 -4
- package/component-loader/esm2020/bs-component-ref.class.mjs +3 -0
- package/component-loader/esm2020/component-loader.class.mjs +286 -0
- package/component-loader/esm2020/component-loader.factory.mjs +30 -0
- package/component-loader/esm2020/content-ref.class.mjs +16 -0
- package/component-loader/esm2020/index.mjs +2 -0
- package/component-loader/esm2020/listen-options.model.mjs +2 -0
- package/component-loader/esm2020/ngx-bootstrap-component-loader.mjs +5 -0
- package/component-loader/esm2020/public_api.mjs +5 -0
- package/component-loader/fesm2015/ngx-bootstrap-component-loader.mjs +339 -0
- package/component-loader/fesm2015/ngx-bootstrap-component-loader.mjs.map +1 -0
- package/component-loader/fesm2020/ngx-bootstrap-component-loader.mjs +336 -0
- package/component-loader/fesm2020/ngx-bootstrap-component-loader.mjs.map +1 -0
- package/component-loader/ngx-bootstrap-component-loader.d.ts +1 -2
- package/component-loader/package.json +27 -25
- package/datepicker/bs-datepicker-inline.component.d.ts +3 -5
- package/datepicker/bs-datepicker-inline.config.d.ts +3 -4
- package/datepicker/bs-datepicker-input.directive.d.ts +3 -5
- package/datepicker/bs-datepicker.component.d.ts +4 -6
- package/datepicker/bs-datepicker.config.d.ts +3 -4
- package/datepicker/bs-datepicker.module.d.ts +26 -27
- package/datepicker/bs-daterangepicker-inline.component.d.ts +3 -5
- package/datepicker/bs-daterangepicker-inline.config.d.ts +3 -4
- package/datepicker/bs-daterangepicker-input.directive.d.ts +3 -5
- package/datepicker/bs-daterangepicker.component.d.ts +3 -5
- package/datepicker/bs-daterangepicker.config.d.ts +3 -4
- package/datepicker/bs-locale.service.d.ts +3 -5
- package/datepicker/datepicker-inner.component.d.ts +3 -5
- package/datepicker/datepicker.component.d.ts +3 -5
- package/datepicker/datepicker.config.d.ts +3 -4
- package/datepicker/datepicker.module.d.ts +11 -12
- package/datepicker/daypicker.component.d.ts +3 -5
- package/datepicker/esm2020/base/bs-datepicker-container.mjs +76 -0
- package/datepicker/esm2020/bs-datepicker-inline.component.mjs +151 -0
- package/datepicker/esm2020/bs-datepicker-inline.config.mjs +14 -0
- package/datepicker/esm2020/bs-datepicker-input.directive.mjs +163 -0
- package/datepicker/esm2020/bs-datepicker.component.mjs +265 -0
- package/datepicker/esm2020/bs-datepicker.config.mjs +89 -0
- package/datepicker/esm2020/bs-datepicker.module.mjs +123 -0
- package/datepicker/esm2020/bs-daterangepicker-inline.component.mjs +151 -0
- package/datepicker/esm2020/bs-daterangepicker-inline.config.mjs +21 -0
- package/datepicker/esm2020/bs-daterangepicker-input.directive.mjs +208 -0
- package/datepicker/esm2020/bs-daterangepicker.component.mjs +256 -0
- package/datepicker/esm2020/bs-daterangepicker.config.mjs +19 -0
- package/datepicker/esm2020/bs-locale.service.mjs +32 -0
- package/datepicker/esm2020/date-formatter.mjs +7 -0
- package/datepicker/esm2020/datepicker-animations.mjs +16 -0
- package/datepicker/esm2020/datepicker-inner.component.mjs +325 -0
- package/datepicker/esm2020/datepicker.component.mjs +204 -0
- package/datepicker/esm2020/datepicker.config.mjs +32 -0
- package/datepicker/esm2020/datepicker.module.mjs +48 -0
- package/datepicker/esm2020/daypicker.component.mjs +255 -0
- package/datepicker/esm2020/engine/calc-days-calendar.mjs +21 -0
- package/datepicker/esm2020/engine/flag-days-calendar.mjs +93 -0
- package/datepicker/esm2020/engine/flag-months-calendar.mjs +45 -0
- package/datepicker/esm2020/engine/flag-years-calendar.mjs +42 -0
- package/datepicker/esm2020/engine/format-days-calendar.mjs +33 -0
- package/datepicker/esm2020/engine/format-months-calendar.mjs +23 -0
- package/datepicker/esm2020/engine/format-years-calendar.mjs +39 -0
- package/datepicker/esm2020/engine/view-mode.mjs +4 -0
- package/datepicker/esm2020/index.mjs +2 -0
- package/datepicker/esm2020/models/index.mjs +9 -0
- package/datepicker/esm2020/monthpicker.component.mjs +131 -0
- package/datepicker/esm2020/ngx-bootstrap-datepicker.mjs +5 -0
- package/datepicker/esm2020/public_api.mjs +25 -0
- package/datepicker/esm2020/reducer/_defaults.mjs +6 -0
- package/datepicker/esm2020/reducer/bs-datepicker.actions.mjs +143 -0
- package/datepicker/esm2020/reducer/bs-datepicker.effects.mjs +182 -0
- package/datepicker/esm2020/reducer/bs-datepicker.reducer.mjs +378 -0
- package/datepicker/esm2020/reducer/bs-datepicker.state.mjs +18 -0
- package/datepicker/esm2020/reducer/bs-datepicker.store.mjs +22 -0
- package/datepicker/esm2020/themes/bs/bs-calendar-layout.component.mjs +47 -0
- package/datepicker/esm2020/themes/bs/bs-current-date-view.component.mjs +16 -0
- package/datepicker/esm2020/themes/bs/bs-custom-dates-view.component.mjs +50 -0
- package/datepicker/esm2020/themes/bs/bs-datepicker-container.component.mjs +160 -0
- package/datepicker/esm2020/themes/bs/bs-datepicker-day-decorator.directive.mjs +47 -0
- package/datepicker/esm2020/themes/bs/bs-datepicker-inline-container.component.mjs +36 -0
- package/datepicker/esm2020/themes/bs/bs-datepicker-navigation-view.component.mjs +105 -0
- package/datepicker/esm2020/themes/bs/bs-daterangepicker-container.component.mjs +226 -0
- package/datepicker/esm2020/themes/bs/bs-daterangepicker-inline-container.component.mjs +36 -0
- package/datepicker/esm2020/themes/bs/bs-days-calendar-view.component.mjs +226 -0
- package/datepicker/esm2020/themes/bs/bs-months-calendar-view.component.mjs +93 -0
- package/datepicker/esm2020/themes/bs/bs-timepicker-view.component.mjs +55 -0
- package/datepicker/esm2020/themes/bs/bs-years-calendar-view.component.mjs +94 -0
- package/datepicker/esm2020/utils/bs-calendar-utils.mjs +120 -0
- package/datepicker/esm2020/utils/copy-time-utils.mjs +7 -0
- package/datepicker/esm2020/utils/matrix-utils.mjs +14 -0
- package/datepicker/esm2020/yearpicker.component.mjs +146 -0
- package/datepicker/fesm2015/ngx-bootstrap-datepicker.mjs +4848 -0
- package/datepicker/fesm2015/ngx-bootstrap-datepicker.mjs.map +1 -0
- package/datepicker/fesm2020/ngx-bootstrap-datepicker.mjs +4816 -0
- package/datepicker/fesm2020/ngx-bootstrap-datepicker.mjs.map +1 -0
- package/datepicker/monthpicker.component.d.ts +3 -5
- package/datepicker/ngx-bootstrap-datepicker.d.ts +1 -17
- package/datepicker/package.json +35 -32
- package/datepicker/reducer/bs-datepicker.actions.d.ts +3 -5
- package/datepicker/reducer/bs-datepicker.effects.d.ts +3 -5
- package/datepicker/reducer/bs-datepicker.store.d.ts +3 -5
- package/datepicker/themes/bs/bs-calendar-layout.component.d.ts +3 -5
- package/datepicker/themes/bs/bs-current-date-view.component.d.ts +3 -5
- package/datepicker/themes/bs/bs-custom-dates-view.component.d.ts +3 -5
- package/datepicker/themes/bs/bs-datepicker-container.component.d.ts +3 -5
- package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.d.ts +3 -5
- package/datepicker/themes/bs/bs-datepicker-inline-container.component.d.ts +3 -5
- package/datepicker/themes/bs/bs-datepicker-navigation-view.component.d.ts +3 -5
- package/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts +3 -5
- package/datepicker/themes/bs/bs-daterangepicker-inline-container.component.d.ts +3 -5
- package/datepicker/themes/bs/bs-days-calendar-view.component.d.ts +3 -5
- package/datepicker/themes/bs/bs-months-calendar-view.component.d.ts +3 -5
- package/datepicker/themes/bs/bs-timepicker-view.component.d.ts +3 -5
- package/datepicker/themes/bs/bs-years-calendar-view.component.d.ts +3 -5
- package/datepicker/yearpicker.component.d.ts +3 -5
- package/dropdown/bs-dropdown-container.component.d.ts +3 -5
- package/dropdown/bs-dropdown-menu.directive.d.ts +3 -5
- package/dropdown/bs-dropdown-toggle.directive.d.ts +3 -5
- package/dropdown/bs-dropdown.config.d.ts +3 -4
- package/dropdown/bs-dropdown.directive.d.ts +3 -5
- package/dropdown/bs-dropdown.module.d.ts +9 -10
- package/dropdown/bs-dropdown.state.d.ts +3 -5
- package/dropdown/esm2020/bs-dropdown-container.component.mjs +80 -0
- package/dropdown/esm2020/bs-dropdown-menu.directive.mjs +22 -0
- package/dropdown/esm2020/bs-dropdown-toggle.directive.mjs +87 -0
- package/dropdown/esm2020/bs-dropdown.config.mjs +24 -0
- package/dropdown/esm2020/bs-dropdown.directive.mjs +346 -0
- package/dropdown/esm2020/bs-dropdown.module.mjs +49 -0
- package/dropdown/esm2020/bs-dropdown.state.mjs +25 -0
- package/dropdown/esm2020/dropdown-animations.mjs +7 -0
- package/dropdown/esm2020/index.mjs +2 -0
- package/dropdown/esm2020/ngx-bootstrap-dropdown.mjs +5 -0
- package/dropdown/esm2020/public_api.mjs +8 -0
- package/dropdown/fesm2015/ngx-bootstrap-dropdown.mjs +610 -0
- package/dropdown/fesm2015/ngx-bootstrap-dropdown.mjs.map +1 -0
- package/dropdown/fesm2020/ngx-bootstrap-dropdown.mjs +610 -0
- package/dropdown/fesm2020/ngx-bootstrap-dropdown.mjs.map +1 -0
- package/dropdown/ngx-bootstrap-dropdown.d.ts +1 -2
- package/dropdown/package.json +30 -28
- package/esm2020/index.mjs +2 -0
- package/esm2020/ngx-bootstrap.mjs +5 -0
- package/fesm2015/ngx-bootstrap.mjs +6 -0
- package/fesm2015/ngx-bootstrap.mjs.map +1 -0
- package/fesm2020/ngx-bootstrap.mjs +6 -0
- package/fesm2020/ngx-bootstrap.mjs.map +1 -0
- package/focus-trap/esm2020/boolean-property.mjs +12 -0
- package/focus-trap/esm2020/focus-trap-manager.mjs +54 -0
- package/focus-trap/esm2020/focus-trap.mjs +399 -0
- package/focus-trap/esm2020/focus-trap.module.mjs +31 -0
- package/focus-trap/esm2020/index.mjs +2 -0
- package/focus-trap/esm2020/interactivity-checker.mjs +241 -0
- package/focus-trap/esm2020/ngx-bootstrap-focus-trap.mjs +5 -0
- package/focus-trap/esm2020/platform.mjs +80 -0
- package/focus-trap/esm2020/public_api.mjs +4 -0
- package/focus-trap/fesm2015/ngx-bootstrap-focus-trap.mjs +800 -0
- package/focus-trap/fesm2015/ngx-bootstrap-focus-trap.mjs.map +1 -0
- package/focus-trap/fesm2020/ngx-bootstrap-focus-trap.mjs +801 -0
- package/focus-trap/fesm2020/ngx-bootstrap-focus-trap.mjs.map +1 -0
- package/focus-trap/focus-trap-manager.d.ts +3 -11
- package/focus-trap/focus-trap.d.ts +5 -6
- package/focus-trap/focus-trap.module.d.ts +6 -7
- package/focus-trap/interactivity-checker.d.ts +3 -4
- package/focus-trap/ngx-bootstrap-focus-trap.d.ts +1 -6
- package/focus-trap/package.json +24 -23
- package/focus-trap/platform.d.ts +3 -11
- package/locale/esm2020/index.mjs +2 -0
- package/locale/esm2020/ngx-bootstrap-locale.mjs +5 -0
- package/locale/esm2020/public_api.mjs +45 -0
- package/locale/fesm2015/ngx-bootstrap-locale.mjs +6 -0
- package/locale/fesm2015/ngx-bootstrap-locale.mjs.map +1 -0
- package/locale/fesm2020/ngx-bootstrap-locale.mjs +6 -0
- package/locale/fesm2020/ngx-bootstrap-locale.mjs.map +1 -0
- package/locale/ngx-bootstrap-locale.d.ts +1 -2
- package/locale/package.json +22 -21
- package/mini-ngrx/esm2020/index.mjs +2 -0
- package/mini-ngrx/esm2020/ngx-bootstrap-mini-ngrx.mjs +5 -0
- package/mini-ngrx/esm2020/public_api.mjs +3 -0
- package/mini-ngrx/esm2020/state.class.mjs +16 -0
- package/mini-ngrx/esm2020/store.class.mjs +42 -0
- package/mini-ngrx/fesm2015/ngx-bootstrap-mini-ngrx.mjs +64 -0
- package/mini-ngrx/fesm2015/ngx-bootstrap-mini-ngrx.mjs.map +1 -0
- package/mini-ngrx/fesm2020/ngx-bootstrap-mini-ngrx.mjs +63 -0
- package/mini-ngrx/fesm2020/ngx-bootstrap-mini-ngrx.mjs.map +1 -0
- package/mini-ngrx/ngx-bootstrap-mini-ngrx.d.ts +1 -2
- package/mini-ngrx/package.json +22 -21
- package/modal/bs-modal-ref.service.d.ts +3 -5
- package/modal/bs-modal.service.d.ts +3 -5
- package/modal/esm2020/bs-modal-ref.service.mjs +22 -0
- package/modal/esm2020/bs-modal.service.mjs +219 -0
- package/modal/esm2020/index.mjs +2 -0
- package/modal/esm2020/modal-backdrop.component.mjs +58 -0
- package/modal/esm2020/modal-backdrop.options.mjs +7 -0
- package/modal/esm2020/modal-container.component.mjs +146 -0
- package/modal/esm2020/modal-options.class.mjs +46 -0
- package/modal/esm2020/modal.directive.mjs +368 -0
- package/modal/esm2020/modal.module.mjs +43 -0
- package/modal/esm2020/models/index.mjs +2 -0
- package/modal/esm2020/ngx-bootstrap-modal.mjs +5 -0
- package/modal/esm2020/public_api.mjs +9 -0
- package/modal/fesm2015/ngx-bootstrap-modal.mjs +891 -0
- package/modal/fesm2015/ngx-bootstrap-modal.mjs.map +1 -0
- package/modal/fesm2020/ngx-bootstrap-modal.mjs +882 -0
- package/modal/fesm2020/ngx-bootstrap-modal.mjs.map +1 -0
- package/modal/modal-backdrop.component.d.ts +3 -5
- package/modal/modal-container.component.d.ts +3 -5
- package/modal/modal-options.class.d.ts +3 -5
- package/modal/modal.directive.d.ts +3 -5
- package/modal/modal.module.d.ts +8 -9
- package/modal/ngx-bootstrap-modal.d.ts +1 -3
- package/modal/package.json +29 -27
- package/ngx-bootstrap.d.ts +1 -0
- package/package.json +19 -7
- package/pagination/esm2020/index.mjs +2 -0
- package/pagination/esm2020/models/index.mjs +2 -0
- package/pagination/esm2020/ngx-bootstrap-pagination.mjs +5 -0
- package/pagination/esm2020/pager.component.mjs +256 -0
- package/pagination/esm2020/pagination.component.mjs +257 -0
- package/pagination/esm2020/pagination.config.mjs +35 -0
- package/pagination/esm2020/pagination.module.mjs +22 -0
- package/pagination/esm2020/public_api.mjs +5 -0
- package/pagination/fesm2015/ngx-bootstrap-pagination.mjs +565 -0
- package/pagination/fesm2015/ngx-bootstrap-pagination.mjs.map +1 -0
- package/pagination/fesm2020/ngx-bootstrap-pagination.mjs +563 -0
- package/pagination/fesm2020/ngx-bootstrap-pagination.mjs.map +1 -0
- package/pagination/ngx-bootstrap-pagination.d.ts +1 -4
- package/pagination/package.json +24 -23
- package/pagination/pager.component.d.ts +3 -5
- package/pagination/pagination.component.d.ts +3 -5
- package/pagination/pagination.config.d.ts +3 -4
- package/pagination/pagination.module.d.ts +7 -8
- package/popover/esm2020/index.mjs +2 -0
- package/popover/esm2020/ngx-bootstrap-popover.mjs +5 -0
- package/popover/esm2020/popover-container.component.mjs +67 -0
- package/popover/esm2020/popover.config.mjs +35 -0
- package/popover/esm2020/popover.directive.mjs +238 -0
- package/popover/esm2020/popover.module.mjs +28 -0
- package/popover/esm2020/public_api.mjs +5 -0
- package/popover/fesm2015/ngx-bootstrap-popover.mjs +358 -0
- package/popover/fesm2015/ngx-bootstrap-popover.mjs.map +1 -0
- package/popover/fesm2020/ngx-bootstrap-popover.mjs +358 -0
- package/popover/fesm2020/ngx-bootstrap-popover.mjs.map +1 -0
- package/popover/ngx-bootstrap-popover.d.ts +1 -2
- package/popover/package.json +28 -26
- package/popover/popover-container.component.d.ts +3 -5
- package/popover/popover.config.d.ts +3 -4
- package/popover/popover.directive.d.ts +3 -5
- package/popover/popover.module.d.ts +7 -8
- package/positioning/esm2020/index.mjs +2 -0
- package/positioning/esm2020/models/index.mjs +53 -0
- package/positioning/esm2020/modifiers/arrow.mjs +56 -0
- package/positioning/esm2020/modifiers/flip.mjs +65 -0
- package/positioning/esm2020/modifiers/index.mjs +6 -0
- package/positioning/esm2020/modifiers/initData.mjs +44 -0
- package/positioning/esm2020/modifiers/preventOverflow.mjs +55 -0
- package/positioning/esm2020/modifiers/shift.mjs +24 -0
- package/positioning/esm2020/ng-positioning.mjs +39 -0
- package/positioning/esm2020/ngx-bootstrap-positioning.mjs +5 -0
- package/positioning/esm2020/positioning.service.mjs +71 -0
- package/positioning/esm2020/public_api.mjs +5 -0
- package/positioning/esm2020/utils/checkMargin.mjs +32 -0
- package/positioning/esm2020/utils/computeAutoPlacement.mjs +59 -0
- package/positioning/esm2020/utils/findCommonOffsetParent.mjs +40 -0
- package/positioning/esm2020/utils/getBordersSize.mjs +10 -0
- package/positioning/esm2020/utils/getBoundaries.mjs +70 -0
- package/positioning/esm2020/utils/getBoundingClientRect.mjs +56 -0
- package/positioning/esm2020/utils/getClientRect.mjs +8 -0
- package/positioning/esm2020/utils/getFixedPositionOffsetParent.mjs +16 -0
- package/positioning/esm2020/utils/getOffsetParent.mjs +33 -0
- package/positioning/esm2020/utils/getOffsetRectRelativeToArbitraryNode.mjs +52 -0
- package/positioning/esm2020/utils/getOffsets.mjs +11 -0
- package/positioning/esm2020/utils/getOppositePlacement.mjs +8 -0
- package/positioning/esm2020/utils/getOppositeVariation.mjs +13 -0
- package/positioning/esm2020/utils/getOuterSizes.mjs +12 -0
- package/positioning/esm2020/utils/getParentNode.mjs +12 -0
- package/positioning/esm2020/utils/getReferenceOffsets.mjs +13 -0
- package/positioning/esm2020/utils/getRoot.mjs +10 -0
- package/positioning/esm2020/utils/getScroll.mjs +14 -0
- package/positioning/esm2020/utils/getScrollParent.mjs +28 -0
- package/positioning/esm2020/utils/getStyleComputedProperty.mjs +12 -0
- package/positioning/esm2020/utils/getTargetOffsets.mjs +30 -0
- package/positioning/esm2020/utils/getViewportOffsetRectRelativeToArtbitraryNode.mjs +19 -0
- package/positioning/esm2020/utils/getWindowSizes.mjs +16 -0
- package/positioning/esm2020/utils/includeScroll.mjs +24 -0
- package/positioning/esm2020/utils/index.mjs +24 -0
- package/positioning/esm2020/utils/isFixed.mjs +16 -0
- package/positioning/esm2020/utils/isModifierEnabled.mjs +4 -0
- package/positioning/esm2020/utils/isNumeric.mjs +11 -0
- package/positioning/esm2020/utils/isOffsetContainer.mjs +11 -0
- package/positioning/esm2020/utils/setStyles.mjs +21 -0
- package/positioning/esm2020/utils/updateContainerClass.mjs +30 -0
- package/positioning/fesm2015/ngx-bootstrap-positioning.mjs +1023 -0
- package/positioning/fesm2015/ngx-bootstrap-positioning.mjs.map +1 -0
- package/positioning/fesm2020/ngx-bootstrap-positioning.mjs +1029 -0
- package/positioning/fesm2020/ngx-bootstrap-positioning.mjs.map +1 -0
- package/positioning/ngx-bootstrap-positioning.d.ts +1 -2
- package/positioning/package.json +26 -24
- package/positioning/positioning.service.d.ts +3 -4
- package/progressbar/bar.component.d.ts +3 -5
- package/progressbar/esm2020/bar.component.mjs +77 -0
- package/progressbar/esm2020/index.mjs +2 -0
- package/progressbar/esm2020/ngx-bootstrap-progressbar.mjs +5 -0
- package/progressbar/esm2020/progressbar-type.interface.mjs +2 -0
- package/progressbar/esm2020/progressbar.component.mjs +57 -0
- package/progressbar/esm2020/progressbar.config.mjs +19 -0
- package/progressbar/esm2020/progressbar.module.mjs +22 -0
- package/progressbar/esm2020/public_api.mjs +5 -0
- package/progressbar/fesm2015/ngx-bootstrap-progressbar.mjs +172 -0
- package/progressbar/fesm2015/ngx-bootstrap-progressbar.mjs.map +1 -0
- package/progressbar/fesm2020/ngx-bootstrap-progressbar.mjs +171 -0
- package/progressbar/fesm2020/ngx-bootstrap-progressbar.mjs.map +1 -0
- package/progressbar/ngx-bootstrap-progressbar.d.ts +1 -2
- package/progressbar/package.json +24 -23
- package/progressbar/progressbar.component.d.ts +3 -5
- package/progressbar/progressbar.config.d.ts +3 -4
- package/progressbar/progressbar.module.d.ts +7 -8
- package/rating/esm2020/index.mjs +2 -0
- package/rating/esm2020/models/index.mjs +2 -0
- package/rating/esm2020/ngx-bootstrap-rating.mjs +5 -0
- package/rating/esm2020/public_api.mjs +4 -0
- package/rating/esm2020/rating.component.mjs +121 -0
- package/rating/esm2020/rating.config.mjs +18 -0
- package/rating/esm2020/rating.module.mjs +24 -0
- package/rating/fesm2015/ngx-bootstrap-rating.mjs +163 -0
- package/rating/fesm2015/ngx-bootstrap-rating.mjs.map +1 -0
- package/rating/fesm2020/ngx-bootstrap-rating.mjs +163 -0
- package/rating/fesm2020/ngx-bootstrap-rating.mjs.map +1 -0
- package/rating/ngx-bootstrap-rating.d.ts +1 -3
- package/rating/package.json +24 -23
- package/rating/rating.component.d.ts +3 -5
- package/rating/rating.config.d.ts +3 -4
- package/rating/rating.module.d.ts +6 -7
- package/schematics/ng-add/index.js +10 -10
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/package.json +6 -6
- package/schematics/utils/addStyles.js +2 -2
- package/schematics/utils/addStyles.js.map +1 -1
- package/schematics/utils/current_dependency_versions.json +1 -1
- package/schematics/utils/getVersions.js +1 -1
- package/schematics/utils/getVersions.js.map +1 -1
- package/schematics/utils/index.js +3 -3
- package/schematics/utils/index.js.map +1 -1
- package/schematics/utils/ng-module-imports.js +1 -1
- package/schematics/utils/ng-module-imports.js.map +1 -1
- package/schematics/utils/project-main-file.js +1 -1
- package/schematics/utils/project-main-file.js.map +1 -1
- package/schematics/utils/project-targets.d.ts +1 -1
- package/schematics/utils/project-targets.js.map +1 -1
- package/sortable/draggable-item.service.d.ts +3 -5
- package/sortable/esm2020/draggable-item.mjs +2 -0
- package/sortable/esm2020/draggable-item.service.mjs +36 -0
- package/sortable/esm2020/index.mjs +2 -0
- package/sortable/esm2020/ngx-bootstrap-sortable.mjs +5 -0
- package/sortable/esm2020/public_api.mjs +4 -0
- package/sortable/esm2020/sortable.component.mjs +266 -0
- package/sortable/esm2020/sortable.module.mjs +22 -0
- package/sortable/fesm2015/ngx-bootstrap-sortable.mjs +324 -0
- package/sortable/fesm2015/ngx-bootstrap-sortable.mjs.map +1 -0
- package/sortable/fesm2020/ngx-bootstrap-sortable.mjs +323 -0
- package/sortable/fesm2020/ngx-bootstrap-sortable.mjs.map +1 -0
- package/sortable/ngx-bootstrap-sortable.d.ts +1 -2
- package/sortable/package.json +26 -25
- package/sortable/sortable.component.d.ts +3 -5
- package/sortable/sortable.module.d.ts +6 -7
- package/tabs/esm2020/index.mjs +2 -0
- package/tabs/esm2020/ng-transclude.directive.mjs +28 -0
- package/tabs/esm2020/ngx-bootstrap-tabs.mjs +5 -0
- package/tabs/esm2020/public_api.mjs +7 -0
- package/tabs/esm2020/tab-heading.directive.mjs +18 -0
- package/tabs/esm2020/tab.directive.mjs +115 -0
- package/tabs/esm2020/tabs.module.mjs +43 -0
- package/tabs/esm2020/tabset.component.mjs +216 -0
- package/tabs/esm2020/tabset.config.mjs +21 -0
- package/tabs/fesm2015/ngx-bootstrap-tabs.mjs +427 -0
- package/tabs/fesm2015/ngx-bootstrap-tabs.mjs.map +1 -0
- package/tabs/fesm2020/ngx-bootstrap-tabs.mjs +427 -0
- package/tabs/fesm2020/ngx-bootstrap-tabs.mjs.map +1 -0
- package/tabs/ng-transclude.directive.d.ts +3 -5
- package/tabs/ngx-bootstrap-tabs.d.ts +1 -2
- package/tabs/package.json +23 -22
- package/tabs/tab-heading.directive.d.ts +3 -5
- package/tabs/tab.directive.d.ts +3 -5
- package/tabs/tabs.module.d.ts +9 -10
- package/tabs/tabset.component.d.ts +3 -5
- package/tabs/tabset.config.d.ts +3 -4
- package/timepicker/esm2020/index.mjs +2 -0
- package/timepicker/esm2020/models/index.mjs +2 -0
- package/timepicker/esm2020/ngx-bootstrap-timepicker.mjs +5 -0
- package/timepicker/esm2020/public_api.mjs +6 -0
- package/timepicker/esm2020/reducer/timepicker.actions.mjs +53 -0
- package/timepicker/esm2020/reducer/timepicker.reducer.mjs +83 -0
- package/timepicker/esm2020/reducer/timepicker.store.mjs +21 -0
- package/timepicker/esm2020/timepicker-controls.util.mjs +123 -0
- package/timepicker/esm2020/timepicker.component.mjs +360 -0
- package/timepicker/esm2020/timepicker.config.mjs +54 -0
- package/timepicker/esm2020/timepicker.models.mjs +2 -0
- package/timepicker/esm2020/timepicker.module.mjs +27 -0
- package/timepicker/esm2020/timepicker.utils.mjs +152 -0
- package/timepicker/fesm2015/ngx-bootstrap-timepicker.mjs +856 -0
- package/timepicker/fesm2015/ngx-bootstrap-timepicker.mjs.map +1 -0
- package/timepicker/fesm2020/ngx-bootstrap-timepicker.mjs +855 -0
- package/timepicker/fesm2020/ngx-bootstrap-timepicker.mjs.map +1 -0
- package/timepicker/ngx-bootstrap-timepicker.d.ts +1 -3
- package/timepicker/package.json +27 -26
- package/timepicker/reducer/timepicker.actions.d.ts +3 -5
- package/timepicker/reducer/timepicker.store.d.ts +3 -5
- package/timepicker/timepicker.component.d.ts +4 -6
- package/timepicker/timepicker.config.d.ts +3 -4
- package/timepicker/timepicker.module.d.ts +6 -7
- package/tooltip/esm2020/index.mjs +2 -0
- package/tooltip/esm2020/ngx-bootstrap-tooltip.mjs +5 -0
- package/tooltip/esm2020/public_api.mjs +5 -0
- package/tooltip/esm2020/tooltip-container.component.mjs +76 -0
- package/tooltip/esm2020/tooltip.config.mjs +22 -0
- package/tooltip/esm2020/tooltip.directive.mjs +342 -0
- package/tooltip/esm2020/tooltip.module.mjs +28 -0
- package/tooltip/fesm2015/ngx-bootstrap-tooltip.mjs +460 -0
- package/tooltip/fesm2015/ngx-bootstrap-tooltip.mjs.map +1 -0
- package/tooltip/fesm2020/ngx-bootstrap-tooltip.mjs +458 -0
- package/tooltip/fesm2020/ngx-bootstrap-tooltip.mjs.map +1 -0
- package/tooltip/ngx-bootstrap-tooltip.d.ts +1 -2
- package/tooltip/package.json +29 -27
- package/tooltip/tooltip-container.component.d.ts +3 -5
- package/tooltip/tooltip.config.d.ts +3 -4
- package/tooltip/tooltip.directive.d.ts +3 -5
- package/tooltip/tooltip.module.d.ts +7 -8
- package/typeahead/esm2020/index.mjs +2 -0
- package/typeahead/esm2020/latin-map.mjs +827 -0
- package/typeahead/esm2020/models/index.mjs +2 -0
- package/typeahead/esm2020/ngx-bootstrap-typeahead.mjs +5 -0
- package/typeahead/esm2020/public_api.mjs +9 -0
- package/typeahead/esm2020/typeahead-animations.mjs +16 -0
- package/typeahead/esm2020/typeahead-container.component.mjs +326 -0
- package/typeahead/esm2020/typeahead-match.class.mjs +15 -0
- package/typeahead/esm2020/typeahead-options.class.mjs +8 -0
- package/typeahead/esm2020/typeahead-order.class.mjs +2 -0
- package/typeahead/esm2020/typeahead-utils.mjs +77 -0
- package/typeahead/esm2020/typeahead.config.mjs +34 -0
- package/typeahead/esm2020/typeahead.directive.mjs +576 -0
- package/typeahead/esm2020/typeahead.module.mjs +28 -0
- package/typeahead/fesm2015/ngx-bootstrap-typeahead.mjs +1906 -0
- package/typeahead/fesm2015/ngx-bootstrap-typeahead.mjs.map +1 -0
- package/typeahead/fesm2020/ngx-bootstrap-typeahead.mjs +1894 -0
- package/typeahead/fesm2020/ngx-bootstrap-typeahead.mjs.map +1 -0
- package/typeahead/ngx-bootstrap-typeahead.d.ts +1 -3
- package/typeahead/package.json +31 -29
- package/typeahead/typeahead-container.component.d.ts +3 -5
- package/typeahead/typeahead.config.d.ts +3 -4
- package/typeahead/typeahead.directive.d.ts +3 -5
- package/typeahead/typeahead.module.d.ts +7 -8
- package/utils/esm2020/decorators.mjs +23 -0
- package/utils/esm2020/facade/browser.mjs +26 -0
- package/utils/esm2020/index.mjs +2 -0
- package/utils/esm2020/linked-list.class.mjs +247 -0
- package/utils/esm2020/ngx-bootstrap-utils.mjs +5 -0
- package/utils/esm2020/public_api.mjs +10 -0
- package/utils/esm2020/theme-provider.mjs +74 -0
- package/utils/esm2020/trigger.class.mjs +14 -0
- package/utils/esm2020/triggers.mjs +118 -0
- package/utils/esm2020/utils.class.mjs +30 -0
- package/utils/esm2020/warn-once.mjs +11 -0
- package/utils/fesm2015/ngx-bootstrap-utils.mjs +547 -0
- package/utils/fesm2015/ngx-bootstrap-utils.mjs.map +1 -0
- package/utils/fesm2020/ngx-bootstrap-utils.mjs +545 -0
- package/utils/fesm2020/ngx-bootstrap-utils.mjs.map +1 -0
- package/utils/ngx-bootstrap-utils.d.ts +1 -3
- package/utils/package.json +22 -21
- package/__ivy_ngcc__/chronos/fesm2015/ngx-bootstrap-chronos.js +0 -7318
- package/__ivy_ngcc__/chronos/fesm2015/ngx-bootstrap-chronos.js.map +0 -1
- package/__ivy_ngcc__/datepicker/fesm2015/ngx-bootstrap-datepicker.js +0 -6224
- package/__ivy_ngcc__/datepicker/fesm2015/ngx-bootstrap-datepicker.js.map +0 -1
- package/__ivy_ngcc__/locale/fesm2015/ngx-bootstrap-locale.js +0 -7
- package/__ivy_ngcc__/locale/fesm2015/ngx-bootstrap-locale.js.map +0 -1
- package/accordion/__ivy_ngcc__/fesm2015/ngx-bootstrap-accordion.js +0 -258
- package/accordion/__ivy_ngcc__/fesm2015/ngx-bootstrap-accordion.js.map +0 -1
- package/accordion/accordion-group.component.d.ts.__ivy_ngcc_bak +0 -34
- package/accordion/accordion-group.component.d.ts.map +0 -1
- package/accordion/accordion.component.d.ts.__ivy_ngcc_bak +0 -14
- package/accordion/accordion.component.d.ts.map +0 -1
- package/accordion/accordion.config.d.ts.__ivy_ngcc_bak +0 -9
- package/accordion/accordion.config.d.ts.map +0 -1
- package/accordion/accordion.module.d.ts.__ivy_ngcc_bak +0 -4
- package/accordion/accordion.module.d.ts.map +0 -1
- package/accordion/bundles/ngx-bootstrap-accordion.umd.js +0 -195
- package/accordion/bundles/ngx-bootstrap-accordion.umd.js.map +0 -1
- package/accordion/bundles/ngx-bootstrap-accordion.umd.min.js +0 -2
- package/accordion/bundles/ngx-bootstrap-accordion.umd.min.js.map +0 -1
- package/accordion/esm2015/accordion-group.component.js +0 -81
- package/accordion/esm2015/accordion-group.component.js.map +0 -1
- package/accordion/esm2015/accordion-group.component.metadata.json +0 -1
- package/accordion/esm2015/accordion.component.js +0 -54
- package/accordion/esm2015/accordion.component.js.map +0 -1
- package/accordion/esm2015/accordion.component.metadata.json +0 -1
- package/accordion/esm2015/accordion.config.js +0 -20
- package/accordion/esm2015/accordion.config.js.map +0 -1
- package/accordion/esm2015/accordion.config.metadata.json +0 -1
- package/accordion/esm2015/accordion.module.js +0 -18
- package/accordion/esm2015/accordion.module.js.map +0 -1
- package/accordion/esm2015/accordion.module.metadata.json +0 -1
- package/accordion/esm2015/index.js +0 -2
- package/accordion/esm2015/index.js.map +0 -1
- package/accordion/esm2015/index.metadata.json +0 -1
- package/accordion/esm2015/ngx-bootstrap-accordion.js +0 -5
- package/accordion/esm2015/ngx-bootstrap-accordion.js.map +0 -1
- package/accordion/esm2015/ngx-bootstrap-accordion.metadata.json +0 -1
- package/accordion/esm2015/public_api.js +0 -5
- package/accordion/esm2015/public_api.js.map +0 -1
- package/accordion/esm2015/public_api.metadata.json +0 -1
- package/accordion/fesm2015/ngx-bootstrap-accordion.js +0 -172
- package/accordion/fesm2015/ngx-bootstrap-accordion.js.map +0 -1
- package/accordion/ngx-bootstrap-accordion.d.ts.__ivy_ngcc_bak +0 -4
- package/accordion/ngx-bootstrap-accordion.d.ts.map +0 -1
- package/accordion/ngx-bootstrap-accordion.metadata.json +0 -1
- package/alert/__ivy_ngcc__/fesm2015/ngx-bootstrap-alert.js +0 -168
- package/alert/__ivy_ngcc__/fesm2015/ngx-bootstrap-alert.js.map +0 -1
- package/alert/alert.component.d.ts.__ivy_ngcc_bak +0 -30
- package/alert/alert.component.d.ts.map +0 -1
- package/alert/alert.config.d.ts.__ivy_ngcc_bak +0 -8
- package/alert/alert.config.d.ts.map +0 -1
- package/alert/alert.module.d.ts.__ivy_ngcc_bak +0 -4
- package/alert/alert.module.d.ts.map +0 -1
- package/alert/bundles/ngx-bootstrap-alert.umd.js +0 -436
- package/alert/bundles/ngx-bootstrap-alert.umd.js.map +0 -1
- package/alert/bundles/ngx-bootstrap-alert.umd.min.js +0 -16
- package/alert/bundles/ngx-bootstrap-alert.umd.min.js.map +0 -1
- package/alert/esm2015/alert.component.js +0 -75
- package/alert/esm2015/alert.component.js.map +0 -1
- package/alert/esm2015/alert.component.metadata.json +0 -1
- package/alert/esm2015/alert.config.js +0 -19
- package/alert/esm2015/alert.config.js.map +0 -1
- package/alert/esm2015/alert.config.metadata.json +0 -1
- package/alert/esm2015/alert.module.js +0 -17
- package/alert/esm2015/alert.module.js.map +0 -1
- package/alert/esm2015/alert.module.metadata.json +0 -1
- package/alert/esm2015/index.js +0 -2
- package/alert/esm2015/index.js.map +0 -1
- package/alert/esm2015/index.metadata.json +0 -1
- package/alert/esm2015/ngx-bootstrap-alert.js +0 -5
- package/alert/esm2015/ngx-bootstrap-alert.js.map +0 -1
- package/alert/esm2015/ngx-bootstrap-alert.metadata.json +0 -1
- package/alert/esm2015/public_api.js +0 -4
- package/alert/esm2015/public_api.js.map +0 -1
- package/alert/esm2015/public_api.metadata.json +0 -1
- package/alert/fesm2015/ngx-bootstrap-alert.js +0 -113
- package/alert/fesm2015/ngx-bootstrap-alert.js.map +0 -1
- package/alert/ngx-bootstrap-alert.d.ts.__ivy_ngcc_bak +0 -4
- package/alert/ngx-bootstrap-alert.d.ts.map +0 -1
- package/alert/ngx-bootstrap-alert.metadata.json +0 -1
- package/bundles/ngx-bootstrap.umd.js +0 -13
- package/bundles/ngx-bootstrap.umd.js.map +0 -1
- package/bundles/ngx-bootstrap.umd.min.js +0 -2
- package/bundles/ngx-bootstrap.umd.min.js.map +0 -1
- package/buttons/__ivy_ngcc__/fesm2015/ngx-bootstrap-buttons.js +0 -507
- package/buttons/__ivy_ngcc__/fesm2015/ngx-bootstrap-buttons.js.map +0 -1
- package/buttons/bundles/ngx-bootstrap-buttons.umd.js +0 -455
- package/buttons/bundles/ngx-bootstrap-buttons.umd.js.map +0 -1
- package/buttons/bundles/ngx-bootstrap-buttons.umd.min.js +0 -2
- package/buttons/bundles/ngx-bootstrap-buttons.umd.min.js.map +0 -1
- package/buttons/button-checkbox.directive.d.ts.__ivy_ngcc_bak +0 -28
- package/buttons/button-checkbox.directive.d.ts.map +0 -1
- package/buttons/button-radio-group.directive.d.ts.__ivy_ngcc_bak +0 -32
- package/buttons/button-radio-group.directive.d.ts.map +0 -1
- package/buttons/button-radio.directive.d.ts.__ivy_ngcc_bak +0 -48
- package/buttons/button-radio.directive.d.ts.map +0 -1
- package/buttons/buttons.module.d.ts.__ivy_ngcc_bak +0 -4
- package/buttons/buttons.module.d.ts.map +0 -1
- package/buttons/esm2015/button-checkbox.directive.js +0 -76
- package/buttons/esm2015/button-checkbox.directive.js.map +0 -1
- package/buttons/esm2015/button-checkbox.directive.metadata.json +0 -1
- package/buttons/esm2015/button-radio-group.directive.js +0 -138
- package/buttons/esm2015/button-radio-group.directive.js.map +0 -1
- package/buttons/esm2015/button-radio-group.directive.metadata.json +0 -1
- package/buttons/esm2015/button-radio.directive.js +0 -161
- package/buttons/esm2015/button-radio.directive.js.map +0 -1
- package/buttons/esm2015/button-radio.directive.metadata.json +0 -1
- package/buttons/esm2015/buttons.module.js +0 -16
- package/buttons/esm2015/buttons.module.js.map +0 -1
- package/buttons/esm2015/buttons.module.metadata.json +0 -1
- package/buttons/esm2015/index.js +0 -2
- package/buttons/esm2015/index.js.map +0 -1
- package/buttons/esm2015/index.metadata.json +0 -1
- package/buttons/esm2015/ngx-bootstrap-buttons.js +0 -8
- package/buttons/esm2015/ngx-bootstrap-buttons.js.map +0 -1
- package/buttons/esm2015/ngx-bootstrap-buttons.metadata.json +0 -1
- package/buttons/esm2015/public_api.js +0 -5
- package/buttons/esm2015/public_api.js.map +0 -1
- package/buttons/esm2015/public_api.metadata.json +0 -1
- package/buttons/fesm2015/ngx-bootstrap-buttons.js +0 -388
- package/buttons/fesm2015/ngx-bootstrap-buttons.js.map +0 -1
- package/buttons/ngx-bootstrap-buttons.d.ts.__ivy_ngcc_bak +0 -7
- package/buttons/ngx-bootstrap-buttons.d.ts.map +0 -1
- package/buttons/ngx-bootstrap-buttons.metadata.json +0 -1
- package/carousel/__ivy_ngcc__/fesm2015/ngx-bootstrap-carousel.js +0 -1018
- package/carousel/__ivy_ngcc__/fesm2015/ngx-bootstrap-carousel.js.map +0 -1
- package/carousel/bundles/ngx-bootstrap-carousel.umd.js +0 -1171
- package/carousel/bundles/ngx-bootstrap-carousel.umd.js.map +0 -1
- package/carousel/bundles/ngx-bootstrap-carousel.umd.min.js +0 -16
- package/carousel/bundles/ngx-bootstrap-carousel.umd.min.js.map +0 -1
- package/carousel/carousel.component.d.ts.__ivy_ngcc_bak +0 -189
- package/carousel/carousel.component.d.ts.map +0 -1
- package/carousel/carousel.config.d.ts.__ivy_ngcc_bak +0 -10
- package/carousel/carousel.config.d.ts.map +0 -1
- package/carousel/carousel.module.d.ts.__ivy_ngcc_bak +0 -4
- package/carousel/carousel.module.d.ts.map +0 -1
- package/carousel/esm2015/carousel.component.js +0 -701
- package/carousel/esm2015/carousel.component.js.map +0 -1
- package/carousel/esm2015/carousel.component.metadata.json +0 -1
- package/carousel/esm2015/carousel.config.js +0 -30
- package/carousel/esm2015/carousel.config.js.map +0 -1
- package/carousel/esm2015/carousel.config.metadata.json +0 -1
- package/carousel/esm2015/carousel.module.js +0 -17
- package/carousel/esm2015/carousel.module.js.map +0 -1
- package/carousel/esm2015/carousel.module.metadata.json +0 -1
- package/carousel/esm2015/index.js +0 -2
- package/carousel/esm2015/index.js.map +0 -1
- package/carousel/esm2015/index.metadata.json +0 -1
- package/carousel/esm2015/models/index.js +0 -2
- package/carousel/esm2015/models/index.js.map +0 -1
- package/carousel/esm2015/models/index.metadata.json +0 -1
- package/carousel/esm2015/ngx-bootstrap-carousel.js +0 -5
- package/carousel/esm2015/ngx-bootstrap-carousel.js.map +0 -1
- package/carousel/esm2015/ngx-bootstrap-carousel.metadata.json +0 -1
- package/carousel/esm2015/public_api.js +0 -5
- package/carousel/esm2015/public_api.js.map +0 -1
- package/carousel/esm2015/public_api.metadata.json +0 -1
- package/carousel/esm2015/slide.component.js +0 -74
- package/carousel/esm2015/slide.component.js.map +0 -1
- package/carousel/esm2015/slide.component.metadata.json +0 -1
- package/carousel/esm2015/utils.js +0 -32
- package/carousel/esm2015/utils.js.map +0 -1
- package/carousel/esm2015/utils.metadata.json +0 -1
- package/carousel/fesm2015/ngx-bootstrap-carousel.js +0 -843
- package/carousel/fesm2015/ngx-bootstrap-carousel.js.map +0 -1
- package/carousel/ngx-bootstrap-carousel.d.ts.__ivy_ngcc_bak +0 -4
- package/carousel/ngx-bootstrap-carousel.d.ts.map +0 -1
- package/carousel/ngx-bootstrap-carousel.metadata.json +0 -1
- package/carousel/slide.component.d.ts.__ivy_ngcc_bak +0 -19
- package/carousel/slide.component.d.ts.map +0 -1
- package/chronos/bundles/ngx-bootstrap-chronos.umd.js +0 -7449
- package/chronos/bundles/ngx-bootstrap-chronos.umd.js.map +0 -1
- package/chronos/bundles/ngx-bootstrap-chronos.umd.min.js +0 -67
- package/chronos/bundles/ngx-bootstrap-chronos.umd.min.js.map +0 -1
- package/chronos/esm2015/create/check-overflow.js +0 -30
- package/chronos/esm2015/create/check-overflow.js.map +0 -1
- package/chronos/esm2015/create/check-overflow.metadata.json +0 -1
- package/chronos/esm2015/create/clone.js +0 -6
- package/chronos/esm2015/create/clone.js.map +0 -1
- package/chronos/esm2015/create/clone.metadata.json +0 -1
- package/chronos/esm2015/create/date-from-array.js +0 -19
- package/chronos/esm2015/create/date-from-array.js.map +0 -1
- package/chronos/esm2015/create/date-from-array.metadata.json +0 -1
- package/chronos/esm2015/create/from-anything.js +0 -106
- package/chronos/esm2015/create/from-anything.js.map +0 -1
- package/chronos/esm2015/create/from-anything.metadata.json +0 -1
- package/chronos/esm2015/create/from-array.js +0 -135
- package/chronos/esm2015/create/from-array.js.map +0 -1
- package/chronos/esm2015/create/from-array.metadata.json +0 -1
- package/chronos/esm2015/create/from-object.js +0 -17
- package/chronos/esm2015/create/from-object.js.map +0 -1
- package/chronos/esm2015/create/from-object.metadata.json +0 -1
- package/chronos/esm2015/create/from-string-and-array.js +0 -38
- package/chronos/esm2015/create/from-string-and-array.js.map +0 -1
- package/chronos/esm2015/create/from-string-and-array.metadata.json +0 -1
- package/chronos/esm2015/create/from-string-and-format.js +0 -106
- package/chronos/esm2015/create/from-string-and-format.js.map +0 -1
- package/chronos/esm2015/create/from-string-and-format.metadata.json +0 -1
- package/chronos/esm2015/create/from-string.js +0 -222
- package/chronos/esm2015/create/from-string.js.map +0 -1
- package/chronos/esm2015/create/from-string.metadata.json +0 -1
- package/chronos/esm2015/create/local.js +0 -16
- package/chronos/esm2015/create/local.js.map +0 -1
- package/chronos/esm2015/create/local.metadata.json +0 -1
- package/chronos/esm2015/create/parsing-flags.js +0 -26
- package/chronos/esm2015/create/parsing-flags.js.map +0 -1
- package/chronos/esm2015/create/parsing-flags.metadata.json +0 -1
- package/chronos/esm2015/create/parsing.types.js +0 -2
- package/chronos/esm2015/create/parsing.types.js.map +0 -1
- package/chronos/esm2015/create/parsing.types.metadata.json +0 -1
- package/chronos/esm2015/create/valid.js +0 -42
- package/chronos/esm2015/create/valid.js.map +0 -1
- package/chronos/esm2015/create/valid.metadata.json +0 -1
- package/chronos/esm2015/duration/bubble.js +0 -47
- package/chronos/esm2015/duration/bubble.js.map +0 -1
- package/chronos/esm2015/duration/bubble.metadata.json +0 -1
- package/chronos/esm2015/duration/constructor.js +0 -130
- package/chronos/esm2015/duration/constructor.js.map +0 -1
- package/chronos/esm2015/duration/constructor.metadata.json +0 -1
- package/chronos/esm2015/duration/create.js +0 -112
- package/chronos/esm2015/duration/create.js.map +0 -1
- package/chronos/esm2015/duration/create.metadata.json +0 -1
- package/chronos/esm2015/duration/humanize.js +0 -79
- package/chronos/esm2015/duration/humanize.js.map +0 -1
- package/chronos/esm2015/duration/humanize.metadata.json +0 -1
- package/chronos/esm2015/duration/valid.js +0 -45
- package/chronos/esm2015/duration/valid.js.map +0 -1
- package/chronos/esm2015/duration/valid.metadata.json +0 -1
- package/chronos/esm2015/format/format.js +0 -50
- package/chronos/esm2015/format/format.js.map +0 -1
- package/chronos/esm2015/format/format.metadata.json +0 -1
- package/chronos/esm2015/format.js +0 -46
- package/chronos/esm2015/format.js.map +0 -1
- package/chronos/esm2015/format.metadata.json +0 -1
- package/chronos/esm2015/i18n/ar.js +0 -135
- package/chronos/esm2015/i18n/ar.js.map +0 -1
- package/chronos/esm2015/i18n/ar.metadata.json +0 -1
- package/chronos/esm2015/i18n/bg.js +0 -92
- package/chronos/esm2015/i18n/bg.js.map +0 -1
- package/chronos/esm2015/i18n/bg.metadata.json +0 -1
- package/chronos/esm2015/i18n/ca.js +0 -87
- package/chronos/esm2015/i18n/ca.js.map +0 -1
- package/chronos/esm2015/i18n/ca.metadata.json +0 -1
- package/chronos/esm2015/i18n/cs.js +0 -177
- package/chronos/esm2015/i18n/cs.js.map +0 -1
- package/chronos/esm2015/i18n/cs.metadata.json +0 -1
- package/chronos/esm2015/i18n/da.js +0 -49
- package/chronos/esm2015/i18n/da.js.map +0 -1
- package/chronos/esm2015/i18n/da.metadata.json +0 -1
- package/chronos/esm2015/i18n/de.js +0 -67
- package/chronos/esm2015/i18n/de.js.map +0 -1
- package/chronos/esm2015/i18n/de.metadata.json +0 -1
- package/chronos/esm2015/i18n/en-gb.js +0 -57
- package/chronos/esm2015/i18n/en-gb.js.map +0 -1
- package/chronos/esm2015/i18n/en-gb.metadata.json +0 -1
- package/chronos/esm2015/i18n/es-do.js +0 -81
- package/chronos/esm2015/i18n/es-do.js.map +0 -1
- package/chronos/esm2015/i18n/es-do.metadata.json +0 -1
- package/chronos/esm2015/i18n/es-us.js +0 -75
- package/chronos/esm2015/i18n/es-us.js.map +0 -1
- package/chronos/esm2015/i18n/es-us.metadata.json +0 -1
- package/chronos/esm2015/i18n/es.js +0 -80
- package/chronos/esm2015/i18n/es.js.map +0 -1
- package/chronos/esm2015/i18n/es.metadata.json +0 -1
- package/chronos/esm2015/i18n/et.js +0 -71
- package/chronos/esm2015/i18n/et.js.map +0 -1
- package/chronos/esm2015/i18n/et.metadata.json +0 -1
- package/chronos/esm2015/i18n/fi.js +0 -96
- package/chronos/esm2015/i18n/fi.js.map +0 -1
- package/chronos/esm2015/i18n/fi.metadata.json +0 -1
- package/chronos/esm2015/i18n/fr.js +0 -72
- package/chronos/esm2015/i18n/fr.js.map +0 -1
- package/chronos/esm2015/i18n/fr.metadata.json +0 -1
- package/chronos/esm2015/i18n/gl.js +0 -80
- package/chronos/esm2015/i18n/gl.js.map +0 -1
- package/chronos/esm2015/i18n/gl.metadata.json +0 -1
- package/chronos/esm2015/i18n/he.js +0 -94
- package/chronos/esm2015/i18n/he.js.map +0 -1
- package/chronos/esm2015/i18n/he.metadata.json +0 -1
- package/chronos/esm2015/i18n/hi.js +0 -119
- package/chronos/esm2015/i18n/hi.js.map +0 -1
- package/chronos/esm2015/i18n/hi.metadata.json +0 -1
- package/chronos/esm2015/i18n/hr.js +0 -58
- package/chronos/esm2015/i18n/hr.js.map +0 -1
- package/chronos/esm2015/i18n/hr.metadata.json +0 -1
- package/chronos/esm2015/i18n/hu.js +0 -100
- package/chronos/esm2015/i18n/hu.js.map +0 -1
- package/chronos/esm2015/i18n/hu.metadata.json +0 -1
- package/chronos/esm2015/i18n/id.js +0 -78
- package/chronos/esm2015/i18n/id.js.map +0 -1
- package/chronos/esm2015/i18n/id.metadata.json +0 -1
- package/chronos/esm2015/i18n/it.js +0 -61
- package/chronos/esm2015/i18n/it.js.map +0 -1
- package/chronos/esm2015/i18n/it.metadata.json +0 -1
- package/chronos/esm2015/i18n/ja.js +0 -71
- package/chronos/esm2015/i18n/ja.js.map +0 -1
- package/chronos/esm2015/i18n/ja.metadata.json +0 -1
- package/chronos/esm2015/i18n/ka.js +0 -83
- package/chronos/esm2015/i18n/ka.js.map +0 -1
- package/chronos/esm2015/i18n/ka.metadata.json +0 -1
- package/chronos/esm2015/i18n/kk.js +0 -76
- package/chronos/esm2015/i18n/kk.js.map +0 -1
- package/chronos/esm2015/i18n/kk.metadata.json +0 -1
- package/chronos/esm2015/i18n/ko.js +0 -72
- package/chronos/esm2015/i18n/ko.js.map +0 -1
- package/chronos/esm2015/i18n/ko.metadata.json +0 -1
- package/chronos/esm2015/i18n/lt.js +0 -112
- package/chronos/esm2015/i18n/lt.js.map +0 -1
- package/chronos/esm2015/i18n/lt.metadata.json +0 -1
- package/chronos/esm2015/i18n/lv.js +0 -52
- package/chronos/esm2015/i18n/lv.js.map +0 -1
- package/chronos/esm2015/i18n/lv.metadata.json +0 -1
- package/chronos/esm2015/i18n/mn.js +0 -94
- package/chronos/esm2015/i18n/mn.js.map +0 -1
- package/chronos/esm2015/i18n/mn.metadata.json +0 -1
- package/chronos/esm2015/i18n/nb.js +0 -53
- package/chronos/esm2015/i18n/nb.js.map +0 -1
- package/chronos/esm2015/i18n/nb.metadata.json +0 -1
- package/chronos/esm2015/i18n/nl-be.js +0 -77
- package/chronos/esm2015/i18n/nl-be.js.map +0 -1
- package/chronos/esm2015/i18n/nl-be.metadata.json +0 -1
- package/chronos/esm2015/i18n/nl.js +0 -76
- package/chronos/esm2015/i18n/nl.js.map +0 -1
- package/chronos/esm2015/i18n/nl.metadata.json +0 -1
- package/chronos/esm2015/i18n/pl.js +0 -122
- package/chronos/esm2015/i18n/pl.js.map +0 -1
- package/chronos/esm2015/i18n/pl.metadata.json +0 -1
- package/chronos/esm2015/i18n/pt-br.js +0 -52
- package/chronos/esm2015/i18n/pt-br.js.map +0 -1
- package/chronos/esm2015/i18n/pt-br.metadata.json +0 -1
- package/chronos/esm2015/i18n/ro.js +0 -66
- package/chronos/esm2015/i18n/ro.js.map +0 -1
- package/chronos/esm2015/i18n/ro.metadata.json +0 -1
- package/chronos/esm2015/i18n/ru.js +0 -177
- package/chronos/esm2015/i18n/ru.js.map +0 -1
- package/chronos/esm2015/i18n/ru.metadata.json +0 -1
- package/chronos/esm2015/i18n/sk.js +0 -153
- package/chronos/esm2015/i18n/sk.js.map +0 -1
- package/chronos/esm2015/i18n/sk.metadata.json +0 -1
- package/chronos/esm2015/i18n/sl.js +0 -179
- package/chronos/esm2015/i18n/sl.js.map +0 -1
- package/chronos/esm2015/i18n/sl.metadata.json +0 -1
- package/chronos/esm2015/i18n/sq.js +0 -50
- package/chronos/esm2015/i18n/sq.js.map +0 -1
- package/chronos/esm2015/i18n/sq.metadata.json +0 -1
- package/chronos/esm2015/i18n/sv.js +0 -59
- package/chronos/esm2015/i18n/sv.js.map +0 -1
- package/chronos/esm2015/i18n/sv.metadata.json +0 -1
- package/chronos/esm2015/i18n/th-be.js +0 -73
- package/chronos/esm2015/i18n/th-be.js.map +0 -1
- package/chronos/esm2015/i18n/th-be.metadata.json +0 -1
- package/chronos/esm2015/i18n/th.js +0 -58
- package/chronos/esm2015/i18n/th.js.map +0 -1
- package/chronos/esm2015/i18n/th.metadata.json +0 -1
- package/chronos/esm2015/i18n/tr.js +0 -78
- package/chronos/esm2015/i18n/tr.js.map +0 -1
- package/chronos/esm2015/i18n/tr.metadata.json +0 -1
- package/chronos/esm2015/i18n/uk.js +0 -143
- package/chronos/esm2015/i18n/uk.js.map +0 -1
- package/chronos/esm2015/i18n/uk.metadata.json +0 -1
- package/chronos/esm2015/i18n/vi.js +0 -70
- package/chronos/esm2015/i18n/vi.js.map +0 -1
- package/chronos/esm2015/i18n/vi.metadata.json +0 -1
- package/chronos/esm2015/i18n/zh-cn.js +0 -109
- package/chronos/esm2015/i18n/zh-cn.js.map +0 -1
- package/chronos/esm2015/i18n/zh-cn.metadata.json +0 -1
- package/chronos/esm2015/index.js +0 -2
- package/chronos/esm2015/index.js.map +0 -1
- package/chronos/esm2015/index.metadata.json +0 -1
- package/chronos/esm2015/locale/calendar.js +0 -9
- package/chronos/esm2015/locale/calendar.js.map +0 -1
- package/chronos/esm2015/locale/calendar.metadata.json +0 -1
- package/chronos/esm2015/locale/locale.class.js +0 -532
- package/chronos/esm2015/locale/locale.class.js.map +0 -1
- package/chronos/esm2015/locale/locale.class.metadata.json +0 -1
- package/chronos/esm2015/locale/locale.defaults.js +0 -40
- package/chronos/esm2015/locale/locale.defaults.js.map +0 -1
- package/chronos/esm2015/locale/locale.defaults.metadata.json +0 -1
- package/chronos/esm2015/locale/locales.js +0 -228
- package/chronos/esm2015/locale/locales.js.map +0 -1
- package/chronos/esm2015/locale/locales.metadata.json +0 -1
- package/chronos/esm2015/moment/add-subtract.js +0 -35
- package/chronos/esm2015/moment/add-subtract.js.map +0 -1
- package/chronos/esm2015/moment/add-subtract.metadata.json +0 -1
- package/chronos/esm2015/moment/calendar.js +0 -41
- package/chronos/esm2015/moment/calendar.js.map +0 -1
- package/chronos/esm2015/moment/calendar.metadata.json +0 -1
- package/chronos/esm2015/moment/diff.js +0 -70
- package/chronos/esm2015/moment/diff.js.map +0 -1
- package/chronos/esm2015/moment/diff.metadata.json +0 -1
- package/chronos/esm2015/moment/min-max.js +0 -38
- package/chronos/esm2015/moment/min-max.js.map +0 -1
- package/chronos/esm2015/moment/min-max.metadata.json +0 -1
- package/chronos/esm2015/ngx-bootstrap-chronos.js +0 -6
- package/chronos/esm2015/ngx-bootstrap-chronos.js.map +0 -1
- package/chronos/esm2015/ngx-bootstrap-chronos.metadata.json +0 -1
- package/chronos/esm2015/parse/regex.js +0 -47
- package/chronos/esm2015/parse/regex.js.map +0 -1
- package/chronos/esm2015/parse/regex.metadata.json +0 -1
- package/chronos/esm2015/parse/token.js +0 -31
- package/chronos/esm2015/parse/token.js.map +0 -1
- package/chronos/esm2015/parse/token.metadata.json +0 -1
- package/chronos/esm2015/public_api.js +0 -56
- package/chronos/esm2015/public_api.js.map +0 -1
- package/chronos/esm2015/public_api.metadata.json +0 -1
- package/chronos/esm2015/testing/chain.js +0 -708
- package/chronos/esm2015/testing/chain.js.map +0 -1
- package/chronos/esm2015/testing/chain.metadata.json +0 -1
- package/chronos/esm2015/types.js +0 -2
- package/chronos/esm2015/types.js.map +0 -1
- package/chronos/esm2015/types.metadata.json +0 -1
- package/chronos/esm2015/units/aliases.js +0 -35
- package/chronos/esm2015/units/aliases.js.map +0 -1
- package/chronos/esm2015/units/aliases.metadata.json +0 -1
- package/chronos/esm2015/units/constants.js +0 -11
- package/chronos/esm2015/units/constants.js.map +0 -1
- package/chronos/esm2015/units/constants.metadata.json +0 -1
- package/chronos/esm2015/units/day-of-month.js +0 -31
- package/chronos/esm2015/units/day-of-month.js.map +0 -1
- package/chronos/esm2015/units/day-of-month.metadata.json +0 -1
- package/chronos/esm2015/units/day-of-week.js +0 -129
- package/chronos/esm2015/units/day-of-week.js.map +0 -1
- package/chronos/esm2015/units/day-of-week.metadata.json +0 -1
- package/chronos/esm2015/units/day-of-year.js +0 -37
- package/chronos/esm2015/units/day-of-year.js.map +0 -1
- package/chronos/esm2015/units/day-of-year.metadata.json +0 -1
- package/chronos/esm2015/units/hour.js +0 -127
- package/chronos/esm2015/units/hour.js.map +0 -1
- package/chronos/esm2015/units/hour.metadata.json +0 -1
- package/chronos/esm2015/units/index.js +0 -19
- package/chronos/esm2015/units/index.js.map +0 -1
- package/chronos/esm2015/units/millisecond.js +0 -59
- package/chronos/esm2015/units/millisecond.js.map +0 -1
- package/chronos/esm2015/units/millisecond.metadata.json +0 -1
- package/chronos/esm2015/units/minute.js +0 -23
- package/chronos/esm2015/units/minute.js.map +0 -1
- package/chronos/esm2015/units/minute.metadata.json +0 -1
- package/chronos/esm2015/units/month.js +0 -63
- package/chronos/esm2015/units/month.js.map +0 -1
- package/chronos/esm2015/units/month.metadata.json +0 -1
- package/chronos/esm2015/units/offset.js +0 -209
- package/chronos/esm2015/units/offset.js.map +0 -1
- package/chronos/esm2015/units/offset.metadata.json +0 -1
- package/chronos/esm2015/units/priorities.js +0 -21
- package/chronos/esm2015/units/priorities.js.map +0 -1
- package/chronos/esm2015/units/priorities.metadata.json +0 -1
- package/chronos/esm2015/units/quarter.js +0 -39
- package/chronos/esm2015/units/quarter.js.map +0 -1
- package/chronos/esm2015/units/quarter.metadata.json +0 -1
- package/chronos/esm2015/units/second.js +0 -23
- package/chronos/esm2015/units/second.js.map +0 -1
- package/chronos/esm2015/units/second.metadata.json +0 -1
- package/chronos/esm2015/units/timestamp.js +0 -28
- package/chronos/esm2015/units/timestamp.js.map +0 -1
- package/chronos/esm2015/units/timestamp.metadata.json +0 -1
- package/chronos/esm2015/units/timezone.js +0 -19
- package/chronos/esm2015/units/timezone.js.map +0 -1
- package/chronos/esm2015/units/timezone.metadata.json +0 -1
- package/chronos/esm2015/units/week-calendar-utils.js +0 -70
- package/chronos/esm2015/units/week-calendar-utils.js.map +0 -1
- package/chronos/esm2015/units/week-calendar-utils.metadata.json +0 -1
- package/chronos/esm2015/units/week-year.js +0 -101
- package/chronos/esm2015/units/week-year.js.map +0 -1
- package/chronos/esm2015/units/week-year.metadata.json +0 -1
- package/chronos/esm2015/units/week.js +0 -58
- package/chronos/esm2015/units/week.js.map +0 -1
- package/chronos/esm2015/units/week.metadata.json +0 -1
- package/chronos/esm2015/units/year.js +0 -60
- package/chronos/esm2015/units/year.js.map +0 -1
- package/chronos/esm2015/units/year.metadata.json +0 -1
- package/chronos/esm2015/utils/abs-ceil.js +0 -4
- package/chronos/esm2015/utils/abs-ceil.js.map +0 -1
- package/chronos/esm2015/utils/abs-ceil.metadata.json +0 -1
- package/chronos/esm2015/utils/abs-round.js +0 -4
- package/chronos/esm2015/utils/abs-round.js.map +0 -1
- package/chronos/esm2015/utils/abs-round.metadata.json +0 -1
- package/chronos/esm2015/utils/compare-arrays.js +0 -16
- package/chronos/esm2015/utils/compare-arrays.js.map +0 -1
- package/chronos/esm2015/utils/compare-arrays.metadata.json +0 -1
- package/chronos/esm2015/utils/date-compare.js +0 -55
- package/chronos/esm2015/utils/date-compare.js.map +0 -1
- package/chronos/esm2015/utils/date-compare.metadata.json +0 -1
- package/chronos/esm2015/utils/date-getters.js +0 -67
- package/chronos/esm2015/utils/date-getters.js.map +0 -1
- package/chronos/esm2015/utils/date-getters.metadata.json +0 -1
- package/chronos/esm2015/utils/date-setters.js +0 -75
- package/chronos/esm2015/utils/date-setters.js.map +0 -1
- package/chronos/esm2015/utils/date-setters.metadata.json +0 -1
- package/chronos/esm2015/utils/defaults.js +0 -11
- package/chronos/esm2015/utils/defaults.js.map +0 -1
- package/chronos/esm2015/utils/defaults.metadata.json +0 -1
- package/chronos/esm2015/utils/start-end-of.js +0 -57
- package/chronos/esm2015/utils/start-end-of.js.map +0 -1
- package/chronos/esm2015/utils/start-end-of.metadata.json +0 -1
- package/chronos/esm2015/utils/type-checks.js +0 -58
- package/chronos/esm2015/utils/type-checks.js.map +0 -1
- package/chronos/esm2015/utils/type-checks.metadata.json +0 -1
- package/chronos/esm2015/utils/zero-fill.js +0 -10
- package/chronos/esm2015/utils/zero-fill.js.map +0 -1
- package/chronos/esm2015/utils/zero-fill.metadata.json +0 -1
- package/chronos/esm2015/utils.js +0 -7
- package/chronos/esm2015/utils.js.map +0 -1
- package/chronos/esm2015/utils.metadata.json +0 -1
- package/chronos/fesm2015/ngx-bootstrap-chronos.js +0 -7317
- package/chronos/fesm2015/ngx-bootstrap-chronos.js.map +0 -1
- package/chronos/ngx-bootstrap-chronos.d.ts.__ivy_ngcc_bak +0 -5
- package/chronos/ngx-bootstrap-chronos.d.ts.map +0 -1
- package/chronos/ngx-bootstrap-chronos.metadata.json +0 -1
- package/collapse/__ivy_ngcc__/fesm2015/ngx-bootstrap-collapse.js +0 -222
- package/collapse/__ivy_ngcc__/fesm2015/ngx-bootstrap-collapse.js.map +0 -1
- package/collapse/bundles/ngx-bootstrap-collapse.umd.js +0 -203
- package/collapse/bundles/ngx-bootstrap-collapse.umd.js.map +0 -1
- package/collapse/bundles/ngx-bootstrap-collapse.umd.min.js +0 -2
- package/collapse/bundles/ngx-bootstrap-collapse.umd.min.js.map +0 -1
- package/collapse/collapse.directive.d.ts.__ivy_ngcc_bak +0 -42
- package/collapse/collapse.directive.d.ts.map +0 -1
- package/collapse/collapse.module.d.ts.__ivy_ngcc_bak +0 -4
- package/collapse/collapse.module.d.ts.map +0 -1
- package/collapse/esm2015/collapse-animations.js +0 -11
- package/collapse/esm2015/collapse-animations.js.map +0 -1
- package/collapse/esm2015/collapse-animations.metadata.json +0 -1
- package/collapse/esm2015/collapse.directive.js +0 -152
- package/collapse/esm2015/collapse.directive.js.map +0 -1
- package/collapse/esm2015/collapse.directive.metadata.json +0 -1
- package/collapse/esm2015/collapse.module.js +0 -14
- package/collapse/esm2015/collapse.module.js.map +0 -1
- package/collapse/esm2015/collapse.module.metadata.json +0 -1
- package/collapse/esm2015/index.js +0 -2
- package/collapse/esm2015/index.js.map +0 -1
- package/collapse/esm2015/index.metadata.json +0 -1
- package/collapse/esm2015/ngx-bootstrap-collapse.js +0 -5
- package/collapse/esm2015/ngx-bootstrap-collapse.js.map +0 -1
- package/collapse/esm2015/ngx-bootstrap-collapse.metadata.json +0 -1
- package/collapse/esm2015/public_api.js +0 -3
- package/collapse/esm2015/public_api.js.map +0 -1
- package/collapse/esm2015/public_api.metadata.json +0 -1
- package/collapse/fesm2015/ngx-bootstrap-collapse.js +0 -180
- package/collapse/fesm2015/ngx-bootstrap-collapse.js.map +0 -1
- package/collapse/ngx-bootstrap-collapse.d.ts.__ivy_ngcc_bak +0 -4
- package/collapse/ngx-bootstrap-collapse.d.ts.map +0 -1
- package/collapse/ngx-bootstrap-collapse.metadata.json +0 -1
- package/component-loader/__ivy_ngcc__/fesm2015/ngx-bootstrap-component-loader.js +0 -348
- package/component-loader/__ivy_ngcc__/fesm2015/ngx-bootstrap-component-loader.js.map +0 -1
- package/component-loader/bundles/ngx-bootstrap-component-loader.umd.js +0 -366
- package/component-loader/bundles/ngx-bootstrap-component-loader.umd.js.map +0 -1
- package/component-loader/bundles/ngx-bootstrap-component-loader.umd.min.js +0 -2
- package/component-loader/bundles/ngx-bootstrap-component-loader.umd.min.js.map +0 -1
- package/component-loader/component-loader.factory.d.ts.__ivy_ngcc_bak +0 -18
- package/component-loader/component-loader.factory.d.ts.map +0 -1
- package/component-loader/esm2015/bs-component-ref.class.js +0 -3
- package/component-loader/esm2015/bs-component-ref.class.js.map +0 -1
- package/component-loader/esm2015/bs-component-ref.class.metadata.json +0 -1
- package/component-loader/esm2015/component-loader.class.js +0 -289
- package/component-loader/esm2015/component-loader.class.js.map +0 -1
- package/component-loader/esm2015/component-loader.class.metadata.json +0 -1
- package/component-loader/esm2015/component-loader.factory.js +0 -35
- package/component-loader/esm2015/component-loader.factory.js.map +0 -1
- package/component-loader/esm2015/component-loader.factory.metadata.json +0 -1
- package/component-loader/esm2015/content-ref.class.js +0 -16
- package/component-loader/esm2015/content-ref.class.js.map +0 -1
- package/component-loader/esm2015/content-ref.class.metadata.json +0 -1
- package/component-loader/esm2015/index.js +0 -2
- package/component-loader/esm2015/index.js.map +0 -1
- package/component-loader/esm2015/index.metadata.json +0 -1
- package/component-loader/esm2015/listen-options.model.js +0 -2
- package/component-loader/esm2015/listen-options.model.js.map +0 -1
- package/component-loader/esm2015/listen-options.model.metadata.json +0 -1
- package/component-loader/esm2015/ngx-bootstrap-component-loader.js +0 -5
- package/component-loader/esm2015/ngx-bootstrap-component-loader.js.map +0 -1
- package/component-loader/esm2015/ngx-bootstrap-component-loader.metadata.json +0 -1
- package/component-loader/esm2015/public_api.js +0 -5
- package/component-loader/esm2015/public_api.js.map +0 -1
- package/component-loader/esm2015/public_api.metadata.json +0 -1
- package/component-loader/fesm2015/ngx-bootstrap-component-loader.js +0 -343
- package/component-loader/fesm2015/ngx-bootstrap-component-loader.js.map +0 -1
- package/component-loader/ngx-bootstrap-component-loader.d.ts.__ivy_ngcc_bak +0 -4
- package/component-loader/ngx-bootstrap-component-loader.d.ts.map +0 -1
- package/component-loader/ngx-bootstrap-component-loader.metadata.json +0 -1
- package/datepicker/bs-datepicker-inline.component.d.ts.__ivy_ngcc_bak +0 -61
- package/datepicker/bs-datepicker-inline.component.d.ts.map +0 -1
- package/datepicker/bs-datepicker-inline.config.d.ts.__ivy_ngcc_bak +0 -3
- package/datepicker/bs-datepicker-inline.config.d.ts.map +0 -1
- package/datepicker/bs-datepicker-input.directive.d.ts.__ivy_ngcc_bak +0 -30
- package/datepicker/bs-datepicker-input.directive.d.ts.map +0 -1
- package/datepicker/bs-datepicker.component.d.ts.__ivy_ngcc_bak +0 -121
- package/datepicker/bs-datepicker.component.d.ts.map +0 -1
- package/datepicker/bs-datepicker.config.d.ts.__ivy_ngcc_bak +0 -151
- package/datepicker/bs-datepicker.config.d.ts.map +0 -1
- package/datepicker/bs-datepicker.module.d.ts.__ivy_ngcc_bak +0 -4
- package/datepicker/bs-datepicker.module.d.ts.map +0 -1
- package/datepicker/bs-daterangepicker-inline.component.d.ts.__ivy_ngcc_bak +0 -61
- package/datepicker/bs-daterangepicker-inline.component.d.ts.map +0 -1
- package/datepicker/bs-daterangepicker-inline.config.d.ts.__ivy_ngcc_bak +0 -6
- package/datepicker/bs-daterangepicker-inline.config.d.ts.map +0 -1
- package/datepicker/bs-daterangepicker-input.directive.d.ts.__ivy_ngcc_bak +0 -30
- package/datepicker/bs-daterangepicker-input.directive.d.ts.map +0 -1
- package/datepicker/bs-daterangepicker.component.d.ts.__ivy_ngcc_bak +0 -113
- package/datepicker/bs-daterangepicker.component.d.ts.map +0 -1
- package/datepicker/bs-daterangepicker.config.d.ts.__ivy_ngcc_bak +0 -4
- package/datepicker/bs-daterangepicker.config.d.ts.map +0 -1
- package/datepicker/bs-locale.service.d.ts.__ivy_ngcc_bak +0 -10
- package/datepicker/bs-locale.service.d.ts.map +0 -1
- package/datepicker/bundles/ngx-bootstrap-datepicker.umd.js +0 -4590
- package/datepicker/bundles/ngx-bootstrap-datepicker.umd.js.map +0 -1
- package/datepicker/bundles/ngx-bootstrap-datepicker.umd.min.js +0 -17
- package/datepicker/bundles/ngx-bootstrap-datepicker.umd.min.js.map +0 -1
- package/datepicker/datepicker-inner.component.d.ts.__ivy_ngcc_bak +0 -77
- package/datepicker/datepicker-inner.component.d.ts.map +0 -1
- package/datepicker/datepicker.component.d.ts.__ivy_ngcc_bak +0 -78
- package/datepicker/datepicker.component.d.ts.map +0 -1
- package/datepicker/datepicker.config.d.ts.__ivy_ngcc_bak +0 -19
- package/datepicker/datepicker.config.d.ts.map +0 -1
- package/datepicker/datepicker.module.d.ts.__ivy_ngcc_bak +0 -4
- package/datepicker/datepicker.module.d.ts.map +0 -1
- package/datepicker/daypicker.component.d.ts.__ivy_ngcc_bak +0 -17
- package/datepicker/daypicker.component.d.ts.map +0 -1
- package/datepicker/esm2015/base/bs-datepicker-container.js +0 -84
- package/datepicker/esm2015/base/bs-datepicker-container.js.map +0 -1
- package/datepicker/esm2015/base/bs-datepicker-container.metadata.json +0 -1
- package/datepicker/esm2015/bs-datepicker-inline.component.js +0 -147
- package/datepicker/esm2015/bs-datepicker-inline.component.js.map +0 -1
- package/datepicker/esm2015/bs-datepicker-inline.component.metadata.json +0 -1
- package/datepicker/esm2015/bs-datepicker-inline.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/bs-datepicker-inline.config.js +0 -12
- package/datepicker/esm2015/bs-datepicker-inline.config.js.map +0 -1
- package/datepicker/esm2015/bs-datepicker-inline.config.metadata.json +0 -1
- package/datepicker/esm2015/bs-datepicker-inline.config.ngfactory.js.map +0 -1
- package/datepicker/esm2015/bs-datepicker-input.directive.js +0 -162
- package/datepicker/esm2015/bs-datepicker-input.directive.js.map +0 -1
- package/datepicker/esm2015/bs-datepicker-input.directive.metadata.json +0 -1
- package/datepicker/esm2015/bs-datepicker-input.directive.ngfactory.js.map +0 -1
- package/datepicker/esm2015/bs-datepicker.component.js +0 -251
- package/datepicker/esm2015/bs-datepicker.component.js.map +0 -1
- package/datepicker/esm2015/bs-datepicker.component.metadata.json +0 -1
- package/datepicker/esm2015/bs-datepicker.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/bs-datepicker.config.js +0 -87
- package/datepicker/esm2015/bs-datepicker.config.js.map +0 -1
- package/datepicker/esm2015/bs-datepicker.config.metadata.json +0 -1
- package/datepicker/esm2015/bs-datepicker.config.ngfactory.js.map +0 -1
- package/datepicker/esm2015/bs-datepicker.module.js +0 -91
- package/datepicker/esm2015/bs-datepicker.module.js.map +0 -1
- package/datepicker/esm2015/bs-datepicker.module.metadata.json +0 -1
- package/datepicker/esm2015/bs-datepicker.module.ngfactory.js.map +0 -1
- package/datepicker/esm2015/bs-daterangepicker-inline.component.js +0 -146
- package/datepicker/esm2015/bs-daterangepicker-inline.component.js.map +0 -1
- package/datepicker/esm2015/bs-daterangepicker-inline.component.metadata.json +0 -1
- package/datepicker/esm2015/bs-daterangepicker-inline.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/bs-daterangepicker-inline.config.js +0 -19
- package/datepicker/esm2015/bs-daterangepicker-inline.config.js.map +0 -1
- package/datepicker/esm2015/bs-daterangepicker-inline.config.metadata.json +0 -1
- package/datepicker/esm2015/bs-daterangepicker-inline.config.ngfactory.js.map +0 -1
- package/datepicker/esm2015/bs-daterangepicker-input.directive.js +0 -207
- package/datepicker/esm2015/bs-daterangepicker-input.directive.js.map +0 -1
- package/datepicker/esm2015/bs-daterangepicker-input.directive.metadata.json +0 -1
- package/datepicker/esm2015/bs-daterangepicker-input.directive.ngfactory.js.map +0 -1
- package/datepicker/esm2015/bs-daterangepicker.component.js +0 -244
- package/datepicker/esm2015/bs-daterangepicker.component.js.map +0 -1
- package/datepicker/esm2015/bs-daterangepicker.component.metadata.json +0 -1
- package/datepicker/esm2015/bs-daterangepicker.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/bs-daterangepicker.config.js +0 -17
- package/datepicker/esm2015/bs-daterangepicker.config.js.map +0 -1
- package/datepicker/esm2015/bs-daterangepicker.config.metadata.json +0 -1
- package/datepicker/esm2015/bs-daterangepicker.config.ngfactory.js.map +0 -1
- package/datepicker/esm2015/bs-locale.service.js +0 -28
- package/datepicker/esm2015/bs-locale.service.js.map +0 -1
- package/datepicker/esm2015/bs-locale.service.metadata.json +0 -1
- package/datepicker/esm2015/bs-locale.service.ngfactory.js.map +0 -1
- package/datepicker/esm2015/date-formatter.js +0 -7
- package/datepicker/esm2015/date-formatter.js.map +0 -1
- package/datepicker/esm2015/date-formatter.metadata.json +0 -1
- package/datepicker/esm2015/datepicker-animations.js +0 -16
- package/datepicker/esm2015/datepicker-animations.js.map +0 -1
- package/datepicker/esm2015/datepicker-animations.metadata.json +0 -1
- package/datepicker/esm2015/datepicker-inner.component.js +0 -290
- package/datepicker/esm2015/datepicker-inner.component.js.map +0 -1
- package/datepicker/esm2015/datepicker-inner.component.metadata.json +0 -1
- package/datepicker/esm2015/datepicker-inner.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/datepicker.component.js +0 -142
- package/datepicker/esm2015/datepicker.component.js.map +0 -1
- package/datepicker/esm2015/datepicker.component.metadata.json +0 -1
- package/datepicker/esm2015/datepicker.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/datepicker.config.js +0 -30
- package/datepicker/esm2015/datepicker.config.js.map +0 -1
- package/datepicker/esm2015/datepicker.config.metadata.json +0 -1
- package/datepicker/esm2015/datepicker.config.ngfactory.js.map +0 -1
- package/datepicker/esm2015/datepicker.module.js +0 -35
- package/datepicker/esm2015/datepicker.module.js.map +0 -1
- package/datepicker/esm2015/datepicker.module.metadata.json +0 -1
- package/datepicker/esm2015/datepicker.module.ngfactory.js.map +0 -1
- package/datepicker/esm2015/daypicker.component.js +0 -185
- package/datepicker/esm2015/daypicker.component.js.map +0 -1
- package/datepicker/esm2015/daypicker.component.metadata.json +0 -1
- package/datepicker/esm2015/daypicker.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/engine/calc-days-calendar.js +0 -21
- package/datepicker/esm2015/engine/calc-days-calendar.js.map +0 -1
- package/datepicker/esm2015/engine/calc-days-calendar.metadata.json +0 -1
- package/datepicker/esm2015/engine/flag-days-calendar.js +0 -93
- package/datepicker/esm2015/engine/flag-days-calendar.js.map +0 -1
- package/datepicker/esm2015/engine/flag-days-calendar.metadata.json +0 -1
- package/datepicker/esm2015/engine/flag-months-calendar.js +0 -45
- package/datepicker/esm2015/engine/flag-months-calendar.js.map +0 -1
- package/datepicker/esm2015/engine/flag-months-calendar.metadata.json +0 -1
- package/datepicker/esm2015/engine/flag-years-calendar.js +0 -42
- package/datepicker/esm2015/engine/flag-years-calendar.js.map +0 -1
- package/datepicker/esm2015/engine/flag-years-calendar.metadata.json +0 -1
- package/datepicker/esm2015/engine/format-days-calendar.js +0 -33
- package/datepicker/esm2015/engine/format-days-calendar.js.map +0 -1
- package/datepicker/esm2015/engine/format-days-calendar.metadata.json +0 -1
- package/datepicker/esm2015/engine/format-months-calendar.js +0 -23
- package/datepicker/esm2015/engine/format-months-calendar.js.map +0 -1
- package/datepicker/esm2015/engine/format-months-calendar.metadata.json +0 -1
- package/datepicker/esm2015/engine/format-years-calendar.js +0 -39
- package/datepicker/esm2015/engine/format-years-calendar.js.map +0 -1
- package/datepicker/esm2015/engine/format-years-calendar.metadata.json +0 -1
- package/datepicker/esm2015/engine/view-mode.js +0 -4
- package/datepicker/esm2015/engine/view-mode.js.map +0 -1
- package/datepicker/esm2015/engine/view-mode.metadata.json +0 -1
- package/datepicker/esm2015/index.js +0 -2
- package/datepicker/esm2015/index.js.map +0 -1
- package/datepicker/esm2015/index.metadata.json +0 -1
- package/datepicker/esm2015/models/index.js +0 -9
- package/datepicker/esm2015/models/index.js.map +0 -1
- package/datepicker/esm2015/models/index.metadata.json +0 -1
- package/datepicker/esm2015/monthpicker.component.js +0 -91
- package/datepicker/esm2015/monthpicker.component.js.map +0 -1
- package/datepicker/esm2015/monthpicker.component.metadata.json +0 -1
- package/datepicker/esm2015/monthpicker.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/ngx-bootstrap-datepicker.js +0 -20
- package/datepicker/esm2015/ngx-bootstrap-datepicker.js.map +0 -1
- package/datepicker/esm2015/ngx-bootstrap-datepicker.metadata.json +0 -1
- package/datepicker/esm2015/public_api.js +0 -25
- package/datepicker/esm2015/public_api.js.map +0 -1
- package/datepicker/esm2015/public_api.metadata.json +0 -1
- package/datepicker/esm2015/reducer/_defaults.js +0 -6
- package/datepicker/esm2015/reducer/_defaults.js.map +0 -1
- package/datepicker/esm2015/reducer/_defaults.metadata.json +0 -1
- package/datepicker/esm2015/reducer/bs-datepicker.actions.js +0 -139
- package/datepicker/esm2015/reducer/bs-datepicker.actions.js.map +0 -1
- package/datepicker/esm2015/reducer/bs-datepicker.actions.metadata.json +0 -1
- package/datepicker/esm2015/reducer/bs-datepicker.actions.ngfactory.js.map +0 -1
- package/datepicker/esm2015/reducer/bs-datepicker.effects.js +0 -195
- package/datepicker/esm2015/reducer/bs-datepicker.effects.js.map +0 -1
- package/datepicker/esm2015/reducer/bs-datepicker.effects.metadata.json +0 -1
- package/datepicker/esm2015/reducer/bs-datepicker.effects.ngfactory.js.map +0 -1
- package/datepicker/esm2015/reducer/bs-datepicker.reducer.js +0 -378
- package/datepicker/esm2015/reducer/bs-datepicker.reducer.js.map +0 -1
- package/datepicker/esm2015/reducer/bs-datepicker.reducer.metadata.json +0 -1
- package/datepicker/esm2015/reducer/bs-datepicker.state.js +0 -18
- package/datepicker/esm2015/reducer/bs-datepicker.state.js.map +0 -1
- package/datepicker/esm2015/reducer/bs-datepicker.state.metadata.json +0 -1
- package/datepicker/esm2015/reducer/bs-datepicker.store.js +0 -19
- package/datepicker/esm2015/reducer/bs-datepicker.store.js.map +0 -1
- package/datepicker/esm2015/reducer/bs-datepicker.store.metadata.json +0 -1
- package/datepicker/esm2015/reducer/bs-datepicker.store.ngfactory.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-calendar-layout.component.js +0 -25
- package/datepicker/esm2015/themes/bs/bs-calendar-layout.component.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-calendar-layout.component.metadata.json +0 -1
- package/datepicker/esm2015/themes/bs/bs-calendar-layout.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-current-date-view.component.js +0 -13
- package/datepicker/esm2015/themes/bs/bs-current-date-view.component.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-current-date-view.component.metadata.json +0 -1
- package/datepicker/esm2015/themes/bs/bs-current-date-view.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-custom-dates-view.component.js +0 -33
- package/datepicker/esm2015/themes/bs/bs-custom-dates-view.component.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-custom-dates-view.component.metadata.json +0 -1
- package/datepicker/esm2015/themes/bs/bs-custom-dates-view.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-datepicker-container.component.js +0 -161
- package/datepicker/esm2015/themes/bs/bs-datepicker-container.component.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-datepicker-container.component.metadata.json +0 -1
- package/datepicker/esm2015/themes/bs/bs-datepicker-container.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-datepicker-day-decorator.directive.js +0 -47
- package/datepicker/esm2015/themes/bs/bs-datepicker-day-decorator.directive.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-datepicker-day-decorator.directive.metadata.json +0 -1
- package/datepicker/esm2015/themes/bs/bs-datepicker-day-decorator.directive.ngfactory.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-datepicker-inline-container.component.js +0 -36
- package/datepicker/esm2015/themes/bs/bs-datepicker-inline-container.component.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-datepicker-inline-container.component.metadata.json +0 -1
- package/datepicker/esm2015/themes/bs/bs-datepicker-inline-container.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-datepicker-navigation-view.component.js +0 -63
- package/datepicker/esm2015/themes/bs/bs-datepicker-navigation-view.component.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-datepicker-navigation-view.component.metadata.json +0 -1
- package/datepicker/esm2015/themes/bs/bs-datepicker-navigation-view.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-daterangepicker-container.component.js +0 -221
- package/datepicker/esm2015/themes/bs/bs-daterangepicker-container.component.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-daterangepicker-container.component.metadata.json +0 -1
- package/datepicker/esm2015/themes/bs/bs-daterangepicker-container.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-daterangepicker-inline-container.component.js +0 -36
- package/datepicker/esm2015/themes/bs/bs-daterangepicker-inline-container.component.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-daterangepicker-inline-container.component.metadata.json +0 -1
- package/datepicker/esm2015/themes/bs/bs-daterangepicker-inline-container.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-days-calendar-view.component.js +0 -161
- package/datepicker/esm2015/themes/bs/bs-days-calendar-view.component.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-days-calendar-view.component.metadata.json +0 -1
- package/datepicker/esm2015/themes/bs/bs-days-calendar-view.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-months-calendar-view.component.js +0 -60
- package/datepicker/esm2015/themes/bs/bs-months-calendar-view.component.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-months-calendar-view.component.metadata.json +0 -1
- package/datepicker/esm2015/themes/bs/bs-months-calendar-view.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-timepicker-view.component.js +0 -33
- package/datepicker/esm2015/themes/bs/bs-timepicker-view.component.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-timepicker-view.component.metadata.json +0 -1
- package/datepicker/esm2015/themes/bs/bs-timepicker-view.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-years-calendar-view.component.js +0 -61
- package/datepicker/esm2015/themes/bs/bs-years-calendar-view.component.js.map +0 -1
- package/datepicker/esm2015/themes/bs/bs-years-calendar-view.component.metadata.json +0 -1
- package/datepicker/esm2015/themes/bs/bs-years-calendar-view.component.ngfactory.js.map +0 -1
- package/datepicker/esm2015/utils/bs-calendar-utils.js +0 -120
- package/datepicker/esm2015/utils/bs-calendar-utils.js.map +0 -1
- package/datepicker/esm2015/utils/bs-calendar-utils.metadata.json +0 -1
- package/datepicker/esm2015/utils/copy-time-utils.js +0 -7
- package/datepicker/esm2015/utils/copy-time-utils.js.map +0 -1
- package/datepicker/esm2015/utils/copy-time-utils.metadata.json +0 -1
- package/datepicker/esm2015/utils/matrix-utils.js +0 -14
- package/datepicker/esm2015/utils/matrix-utils.js.map +0 -1
- package/datepicker/esm2015/utils/matrix-utils.metadata.json +0 -1
- package/datepicker/esm2015/yearpicker.component.js +0 -101
- package/datepicker/esm2015/yearpicker.component.js.map +0 -1
- package/datepicker/esm2015/yearpicker.component.metadata.json +0 -1
- package/datepicker/esm2015/yearpicker.component.ngfactory.js.map +0 -1
- package/datepicker/fesm2015/ngx-bootstrap-datepicker.js +0 -4353
- package/datepicker/fesm2015/ngx-bootstrap-datepicker.js.map +0 -1
- package/datepicker/monthpicker.component.d.ts.__ivy_ngcc_bak +0 -11
- package/datepicker/monthpicker.component.d.ts.map +0 -1
- package/datepicker/ngx-bootstrap-datepicker.d.ts.__ivy_ngcc_bak +0 -19
- package/datepicker/ngx-bootstrap-datepicker.d.ts.map +0 -1
- package/datepicker/ngx-bootstrap-datepicker.metadata.json +0 -1
- package/datepicker/reducer/bs-datepicker.actions.d.ts.__ivy_ngcc_bak +0 -45
- package/datepicker/reducer/bs-datepicker.actions.d.ts.map +0 -1
- package/datepicker/reducer/bs-datepicker.effects.d.ts.__ivy_ngcc_bak +0 -38
- package/datepicker/reducer/bs-datepicker.effects.d.ts.map +0 -1
- package/datepicker/reducer/bs-datepicker.store.d.ts.__ivy_ngcc_bak +0 -5
- package/datepicker/reducer/bs-datepicker.store.d.ts.map +0 -1
- package/datepicker/themes/bs/bs-calendar-layout.component.d.ts.__ivy_ngcc_bak +0 -2
- package/datepicker/themes/bs/bs-calendar-layout.component.d.ts.map +0 -1
- package/datepicker/themes/bs/bs-current-date-view.component.d.ts.__ivy_ngcc_bak +0 -3
- package/datepicker/themes/bs/bs-current-date-view.component.d.ts.map +0 -1
- package/datepicker/themes/bs/bs-custom-dates-view.component.d.ts.__ivy_ngcc_bak +0 -12
- package/datepicker/themes/bs/bs-custom-dates-view.component.d.ts.map +0 -1
- package/datepicker/themes/bs/bs-datepicker-container.component.d.ts.__ivy_ngcc_bak +0 -35
- package/datepicker/themes/bs/bs-datepicker-container.component.d.ts.map +0 -1
- package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.d.ts.__ivy_ngcc_bak +0 -11
- package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.d.ts.map +0 -1
- package/datepicker/themes/bs/bs-datepicker-inline-container.component.d.ts.__ivy_ngcc_bak +0 -10
- package/datepicker/themes/bs/bs-datepicker-inline-container.component.d.ts.map +0 -1
- package/datepicker/themes/bs/bs-datepicker-navigation-view.component.d.ts.__ivy_ngcc_bak +0 -9
- package/datepicker/themes/bs/bs-datepicker-navigation-view.component.d.ts.map +0 -1
- package/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts.__ivy_ngcc_bak +0 -40
- package/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts.map +0 -1
- package/datepicker/themes/bs/bs-daterangepicker-inline-container.component.d.ts.__ivy_ngcc_bak +0 -10
- package/datepicker/themes/bs/bs-daterangepicker-inline-container.component.d.ts.map +0 -1
- package/datepicker/themes/bs/bs-days-calendar-view.component.d.ts.__ivy_ngcc_bak +0 -23
- package/datepicker/themes/bs/bs-days-calendar-view.component.d.ts.map +0 -1
- package/datepicker/themes/bs/bs-months-calendar-view.component.d.ts.__ivy_ngcc_bak +0 -13
- package/datepicker/themes/bs/bs-months-calendar-view.component.d.ts.map +0 -1
- package/datepicker/themes/bs/bs-timepicker-view.component.d.ts.__ivy_ngcc_bak +0 -5
- package/datepicker/themes/bs/bs-timepicker-view.component.d.ts.map +0 -1
- package/datepicker/themes/bs/bs-years-calendar-view.component.d.ts.__ivy_ngcc_bak +0 -13
- package/datepicker/themes/bs/bs-years-calendar-view.component.d.ts.map +0 -1
- package/datepicker/yearpicker.component.d.ts.__ivy_ngcc_bak +0 -11
- package/datepicker/yearpicker.component.d.ts.map +0 -1
- package/dropdown/__ivy_ngcc__/fesm2015/ngx-bootstrap-dropdown.js +0 -667
- package/dropdown/__ivy_ngcc__/fesm2015/ngx-bootstrap-dropdown.js.map +0 -1
- package/dropdown/bs-dropdown-container.component.d.ts.__ivy_ngcc_bak +0 -17
- package/dropdown/bs-dropdown-container.component.d.ts.map +0 -1
- package/dropdown/bs-dropdown-menu.directive.d.ts.__ivy_ngcc_bak +0 -5
- package/dropdown/bs-dropdown-menu.directive.d.ts.map +0 -1
- package/dropdown/bs-dropdown-toggle.directive.d.ts.__ivy_ngcc_bak +0 -18
- package/dropdown/bs-dropdown-toggle.directive.d.ts.map +0 -1
- package/dropdown/bs-dropdown.config.d.ts.__ivy_ngcc_bak +0 -11
- package/dropdown/bs-dropdown.config.d.ts.map +0 -1
- package/dropdown/bs-dropdown.directive.d.ts.__ivy_ngcc_bak +0 -106
- package/dropdown/bs-dropdown.directive.d.ts.map +0 -1
- package/dropdown/bs-dropdown.module.d.ts.__ivy_ngcc_bak +0 -4
- package/dropdown/bs-dropdown.module.d.ts.map +0 -1
- package/dropdown/bs-dropdown.state.d.ts.__ivy_ngcc_bak +0 -20
- package/dropdown/bs-dropdown.state.d.ts.map +0 -1
- package/dropdown/bundles/ngx-bootstrap-dropdown.umd.js +0 -964
- package/dropdown/bundles/ngx-bootstrap-dropdown.umd.js.map +0 -1
- package/dropdown/bundles/ngx-bootstrap-dropdown.umd.min.js +0 -16
- package/dropdown/bundles/ngx-bootstrap-dropdown.umd.min.js.map +0 -1
- package/dropdown/esm2015/bs-dropdown-container.component.js +0 -74
- package/dropdown/esm2015/bs-dropdown-container.component.js.map +0 -1
- package/dropdown/esm2015/bs-dropdown-container.component.metadata.json +0 -1
- package/dropdown/esm2015/bs-dropdown-menu.directive.js +0 -22
- package/dropdown/esm2015/bs-dropdown-menu.directive.js.map +0 -1
- package/dropdown/esm2015/bs-dropdown-menu.directive.metadata.json +0 -1
- package/dropdown/esm2015/bs-dropdown-toggle.directive.js +0 -84
- package/dropdown/esm2015/bs-dropdown-toggle.directive.js.map +0 -1
- package/dropdown/esm2015/bs-dropdown-toggle.directive.metadata.json +0 -1
- package/dropdown/esm2015/bs-dropdown.config.js +0 -22
- package/dropdown/esm2015/bs-dropdown.config.js.map +0 -1
- package/dropdown/esm2015/bs-dropdown.config.metadata.json +0 -1
- package/dropdown/esm2015/bs-dropdown.directive.js +0 -332
- package/dropdown/esm2015/bs-dropdown.directive.js.map +0 -1
- package/dropdown/esm2015/bs-dropdown.directive.metadata.json +0 -1
- package/dropdown/esm2015/bs-dropdown.module.js +0 -39
- package/dropdown/esm2015/bs-dropdown.module.js.map +0 -1
- package/dropdown/esm2015/bs-dropdown.module.metadata.json +0 -1
- package/dropdown/esm2015/bs-dropdown.state.js +0 -22
- package/dropdown/esm2015/bs-dropdown.state.js.map +0 -1
- package/dropdown/esm2015/bs-dropdown.state.metadata.json +0 -1
- package/dropdown/esm2015/dropdown-animations.js +0 -7
- package/dropdown/esm2015/dropdown-animations.js.map +0 -1
- package/dropdown/esm2015/dropdown-animations.metadata.json +0 -1
- package/dropdown/esm2015/index.js +0 -2
- package/dropdown/esm2015/index.js.map +0 -1
- package/dropdown/esm2015/index.metadata.json +0 -1
- package/dropdown/esm2015/ngx-bootstrap-dropdown.js +0 -5
- package/dropdown/esm2015/ngx-bootstrap-dropdown.js.map +0 -1
- package/dropdown/esm2015/ngx-bootstrap-dropdown.metadata.json +0 -1
- package/dropdown/esm2015/public_api.js +0 -8
- package/dropdown/esm2015/public_api.js.map +0 -1
- package/dropdown/esm2015/public_api.metadata.json +0 -1
- package/dropdown/fesm2015/ngx-bootstrap-dropdown.js +0 -584
- package/dropdown/fesm2015/ngx-bootstrap-dropdown.js.map +0 -1
- package/dropdown/ngx-bootstrap-dropdown.d.ts.__ivy_ngcc_bak +0 -4
- package/dropdown/ngx-bootstrap-dropdown.d.ts.map +0 -1
- package/dropdown/ngx-bootstrap-dropdown.metadata.json +0 -1
- package/esm2015/index.js +0 -2
- package/esm2015/index.js.map +0 -1
- package/esm2015/ngx-bootstrap.js +0 -5
- package/esm2015/ngx-bootstrap.js.map +0 -1
- package/esm2015/ngx-bootstrap.metadata.json +0 -1
- package/fesm2015/ngx-bootstrap.js +0 -6
- package/fesm2015/ngx-bootstrap.js.map +0 -1
- package/focus-trap/__ivy_ngcc__/fesm2015/ngx-bootstrap-focus-trap.js +0 -822
- package/focus-trap/__ivy_ngcc__/fesm2015/ngx-bootstrap-focus-trap.js.map +0 -1
- package/focus-trap/bundles/ngx-bootstrap-focus-trap.umd.js +0 -831
- package/focus-trap/bundles/ngx-bootstrap-focus-trap.umd.js.map +0 -1
- package/focus-trap/bundles/ngx-bootstrap-focus-trap.umd.min.js +0 -32
- package/focus-trap/bundles/ngx-bootstrap-focus-trap.umd.min.js.map +0 -1
- package/focus-trap/esm2015/boolean-property.js +0 -12
- package/focus-trap/esm2015/boolean-property.js.map +0 -1
- package/focus-trap/esm2015/boolean-property.metadata.json +0 -1
- package/focus-trap/esm2015/focus-trap-manager.js +0 -52
- package/focus-trap/esm2015/focus-trap-manager.js.map +0 -1
- package/focus-trap/esm2015/focus-trap-manager.metadata.json +0 -1
- package/focus-trap/esm2015/focus-trap.js +0 -397
- package/focus-trap/esm2015/focus-trap.js.map +0 -1
- package/focus-trap/esm2015/focus-trap.metadata.json +0 -1
- package/focus-trap/esm2015/focus-trap.module.js +0 -26
- package/focus-trap/esm2015/focus-trap.module.js.map +0 -1
- package/focus-trap/esm2015/focus-trap.module.metadata.json +0 -1
- package/focus-trap/esm2015/index.js +0 -2
- package/focus-trap/esm2015/index.js.map +0 -1
- package/focus-trap/esm2015/index.metadata.json +0 -1
- package/focus-trap/esm2015/interactivity-checker.js +0 -242
- package/focus-trap/esm2015/interactivity-checker.js.map +0 -1
- package/focus-trap/esm2015/interactivity-checker.metadata.json +0 -1
- package/focus-trap/esm2015/ngx-bootstrap-focus-trap.js +0 -9
- package/focus-trap/esm2015/ngx-bootstrap-focus-trap.js.map +0 -1
- package/focus-trap/esm2015/ngx-bootstrap-focus-trap.metadata.json +0 -1
- package/focus-trap/esm2015/platform.js +0 -78
- package/focus-trap/esm2015/platform.js.map +0 -1
- package/focus-trap/esm2015/platform.metadata.json +0 -1
- package/focus-trap/esm2015/public_api.js +0 -4
- package/focus-trap/esm2015/public_api.js.map +0 -1
- package/focus-trap/esm2015/public_api.metadata.json +0 -1
- package/focus-trap/fesm2015/ngx-bootstrap-focus-trap.js +0 -790
- package/focus-trap/fesm2015/ngx-bootstrap-focus-trap.js.map +0 -1
- package/focus-trap/focus-trap-manager.d.ts.__ivy_ngcc_bak +0 -30
- package/focus-trap/focus-trap-manager.d.ts.map +0 -1
- package/focus-trap/focus-trap.d.ts.__ivy_ngcc_bak +0 -157
- package/focus-trap/focus-trap.d.ts.map +0 -1
- package/focus-trap/focus-trap.module.d.ts.__ivy_ngcc_bak +0 -4
- package/focus-trap/focus-trap.module.d.ts.map +0 -1
- package/focus-trap/interactivity-checker.d.ts.__ivy_ngcc_bak +0 -57
- package/focus-trap/interactivity-checker.d.ts.map +0 -1
- package/focus-trap/ngx-bootstrap-focus-trap.d.ts.__ivy_ngcc_bak +0 -8
- package/focus-trap/ngx-bootstrap-focus-trap.d.ts.map +0 -1
- package/focus-trap/ngx-bootstrap-focus-trap.metadata.json +0 -1
- package/focus-trap/platform.d.ts.__ivy_ngcc_bak +0 -33
- package/focus-trap/platform.d.ts.map +0 -1
- package/locale/bundles/ngx-bootstrap-locale.umd.js +0 -279
- package/locale/bundles/ngx-bootstrap-locale.umd.js.map +0 -1
- package/locale/bundles/ngx-bootstrap-locale.umd.min.js +0 -2
- package/locale/bundles/ngx-bootstrap-locale.umd.min.js.map +0 -1
- package/locale/esm2015/index.js +0 -2
- package/locale/esm2015/index.js.map +0 -1
- package/locale/esm2015/index.metadata.json +0 -1
- package/locale/esm2015/ngx-bootstrap-locale.js +0 -5
- package/locale/esm2015/ngx-bootstrap-locale.js.map +0 -1
- package/locale/esm2015/ngx-bootstrap-locale.metadata.json +0 -1
- package/locale/esm2015/public_api.js +0 -45
- package/locale/esm2015/public_api.js.map +0 -1
- package/locale/esm2015/public_api.metadata.json +0 -1
- package/locale/fesm2015/ngx-bootstrap-locale.js +0 -6
- package/locale/fesm2015/ngx-bootstrap-locale.js.map +0 -1
- package/locale/ngx-bootstrap-locale.d.ts.__ivy_ngcc_bak +0 -4
- package/locale/ngx-bootstrap-locale.d.ts.map +0 -1
- package/locale/ngx-bootstrap-locale.metadata.json +0 -1
- package/mini-ngrx/__ivy_ngcc__/fesm2015/ngx-bootstrap-mini-ngrx.js +0 -62
- package/mini-ngrx/__ivy_ngcc__/fesm2015/ngx-bootstrap-mini-ngrx.js.map +0 -1
- package/mini-ngrx/bundles/ngx-bootstrap-mini-ngrx.umd.js +0 -381
- package/mini-ngrx/bundles/ngx-bootstrap-mini-ngrx.umd.js.map +0 -1
- package/mini-ngrx/bundles/ngx-bootstrap-mini-ngrx.umd.min.js +0 -16
- package/mini-ngrx/bundles/ngx-bootstrap-mini-ngrx.umd.min.js.map +0 -1
- package/mini-ngrx/esm2015/index.js +0 -2
- package/mini-ngrx/esm2015/index.js.map +0 -1
- package/mini-ngrx/esm2015/index.metadata.json +0 -1
- package/mini-ngrx/esm2015/ngx-bootstrap-mini-ngrx.js +0 -5
- package/mini-ngrx/esm2015/ngx-bootstrap-mini-ngrx.js.map +0 -1
- package/mini-ngrx/esm2015/ngx-bootstrap-mini-ngrx.metadata.json +0 -1
- package/mini-ngrx/esm2015/public_api.js +0 -3
- package/mini-ngrx/esm2015/public_api.js.map +0 -1
- package/mini-ngrx/esm2015/public_api.metadata.json +0 -1
- package/mini-ngrx/esm2015/state.class.js +0 -16
- package/mini-ngrx/esm2015/state.class.js.map +0 -1
- package/mini-ngrx/esm2015/state.class.metadata.json +0 -1
- package/mini-ngrx/esm2015/store.class.js +0 -40
- package/mini-ngrx/esm2015/store.class.js.map +0 -1
- package/mini-ngrx/esm2015/store.class.metadata.json +0 -1
- package/mini-ngrx/fesm2015/ngx-bootstrap-mini-ngrx.js +0 -61
- package/mini-ngrx/fesm2015/ngx-bootstrap-mini-ngrx.js.map +0 -1
- package/mini-ngrx/ngx-bootstrap-mini-ngrx.d.ts.__ivy_ngcc_bak +0 -4
- package/mini-ngrx/ngx-bootstrap-mini-ngrx.d.ts.map +0 -1
- package/mini-ngrx/ngx-bootstrap-mini-ngrx.metadata.json +0 -1
- package/modal/__ivy_ngcc__/fesm2015/ngx-bootstrap-modal.js +0 -932
- package/modal/__ivy_ngcc__/fesm2015/ngx-bootstrap-modal.js.map +0 -1
- package/modal/bs-modal-ref.service.d.ts.__ivy_ngcc_bak +0 -27
- package/modal/bs-modal-ref.service.d.ts.map +0 -1
- package/modal/bs-modal.service.d.ts.__ivy_ngcc_bak +0 -45
- package/modal/bs-modal.service.d.ts.map +0 -1
- package/modal/bundles/ngx-bootstrap-modal.umd.js +0 -1213
- package/modal/bundles/ngx-bootstrap-modal.umd.js.map +0 -1
- package/modal/bundles/ngx-bootstrap-modal.umd.min.js +0 -2
- package/modal/bundles/ngx-bootstrap-modal.umd.min.js.map +0 -1
- package/modal/esm2015/bs-modal-ref.service.js +0 -18
- package/modal/esm2015/bs-modal-ref.service.js.map +0 -1
- package/modal/esm2015/bs-modal-ref.service.metadata.json +0 -1
- package/modal/esm2015/bs-modal.service.js +0 -214
- package/modal/esm2015/bs-modal.service.js.map +0 -1
- package/modal/esm2015/bs-modal.service.metadata.json +0 -1
- package/modal/esm2015/index.js +0 -2
- package/modal/esm2015/index.js.map +0 -1
- package/modal/esm2015/index.metadata.json +0 -1
- package/modal/esm2015/modal-backdrop.component.js +0 -58
- package/modal/esm2015/modal-backdrop.component.js.map +0 -1
- package/modal/esm2015/modal-backdrop.component.metadata.json +0 -1
- package/modal/esm2015/modal-backdrop.options.js +0 -7
- package/modal/esm2015/modal-backdrop.options.js.map +0 -1
- package/modal/esm2015/modal-backdrop.options.metadata.json +0 -1
- package/modal/esm2015/modal-container.component.js +0 -135
- package/modal/esm2015/modal-container.component.js.map +0 -1
- package/modal/esm2015/modal-container.component.metadata.json +0 -1
- package/modal/esm2015/modal-options.class.js +0 -42
- package/modal/esm2015/modal-options.class.js.map +0 -1
- package/modal/esm2015/modal-options.class.metadata.json +0 -1
- package/modal/esm2015/modal.directive.js +0 -354
- package/modal/esm2015/modal.directive.js.map +0 -1
- package/modal/esm2015/modal.directive.metadata.json +0 -1
- package/modal/esm2015/modal.module.js +0 -36
- package/modal/esm2015/modal.module.js.map +0 -1
- package/modal/esm2015/modal.module.metadata.json +0 -1
- package/modal/esm2015/models/index.js +0 -2
- package/modal/esm2015/models/index.js.map +0 -1
- package/modal/esm2015/models/index.metadata.json +0 -1
- package/modal/esm2015/ngx-bootstrap-modal.js +0 -6
- package/modal/esm2015/ngx-bootstrap-modal.js.map +0 -1
- package/modal/esm2015/ngx-bootstrap-modal.metadata.json +0 -1
- package/modal/esm2015/public_api.js +0 -9
- package/modal/esm2015/public_api.js.map +0 -1
- package/modal/esm2015/public_api.metadata.json +0 -1
- package/modal/fesm2015/ngx-bootstrap-modal.js +0 -847
- package/modal/fesm2015/ngx-bootstrap-modal.js.map +0 -1
- package/modal/modal-backdrop.component.d.ts.__ivy_ngcc_bak +0 -14
- package/modal/modal-backdrop.component.d.ts.map +0 -1
- package/modal/modal-container.component.d.ts.__ivy_ngcc_bak +0 -23
- package/modal/modal-container.component.d.ts.map +0 -1
- package/modal/modal-options.class.d.ts.__ivy_ngcc_bak +0 -60
- package/modal/modal-options.class.d.ts.map +0 -1
- package/modal/modal.directive.d.ts.__ivy_ngcc_bak +0 -86
- package/modal/modal.directive.d.ts.map +0 -1
- package/modal/modal.module.d.ts.__ivy_ngcc_bak +0 -7
- package/modal/modal.module.d.ts.map +0 -1
- package/modal/ngx-bootstrap-modal.d.ts.__ivy_ngcc_bak +0 -5
- package/modal/ngx-bootstrap-modal.d.ts.map +0 -1
- package/modal/ngx-bootstrap-modal.metadata.json +0 -1
- package/ngx-bootstrap.metadata.json +0 -1
- package/pagination/__ivy_ngcc__/fesm2015/ngx-bootstrap-pagination.js +0 -787
- package/pagination/__ivy_ngcc__/fesm2015/ngx-bootstrap-pagination.js.map +0 -1
- package/pagination/bundles/ngx-bootstrap-pagination.umd.js +0 -587
- package/pagination/bundles/ngx-bootstrap-pagination.umd.js.map +0 -1
- package/pagination/bundles/ngx-bootstrap-pagination.umd.min.js +0 -2
- package/pagination/bundles/ngx-bootstrap-pagination.umd.min.js.map +0 -1
- package/pagination/esm2015/index.js +0 -2
- package/pagination/esm2015/index.js.map +0 -1
- package/pagination/esm2015/index.metadata.json +0 -1
- package/pagination/esm2015/models/index.js +0 -2
- package/pagination/esm2015/models/index.js.map +0 -1
- package/pagination/esm2015/models/index.metadata.json +0 -1
- package/pagination/esm2015/ngx-bootstrap-pagination.js +0 -7
- package/pagination/esm2015/ngx-bootstrap-pagination.js.map +0 -1
- package/pagination/esm2015/ngx-bootstrap-pagination.metadata.json +0 -1
- package/pagination/esm2015/pager.component.js +0 -247
- package/pagination/esm2015/pager.component.js.map +0 -1
- package/pagination/esm2015/pager.component.metadata.json +0 -1
- package/pagination/esm2015/pagination.component.js +0 -243
- package/pagination/esm2015/pagination.component.js.map +0 -1
- package/pagination/esm2015/pagination.component.metadata.json +0 -1
- package/pagination/esm2015/pagination.config.js +0 -33
- package/pagination/esm2015/pagination.config.js.map +0 -1
- package/pagination/esm2015/pagination.config.metadata.json +0 -1
- package/pagination/esm2015/pagination.module.js +0 -17
- package/pagination/esm2015/pagination.module.js.map +0 -1
- package/pagination/esm2015/pagination.module.metadata.json +0 -1
- package/pagination/esm2015/public_api.js +0 -5
- package/pagination/esm2015/public_api.js.map +0 -1
- package/pagination/esm2015/public_api.metadata.json +0 -1
- package/pagination/fesm2015/ngx-bootstrap-pagination.js +0 -538
- package/pagination/fesm2015/ngx-bootstrap-pagination.js.map +0 -1
- package/pagination/ngx-bootstrap-pagination.d.ts.__ivy_ngcc_bak +0 -6
- package/pagination/ngx-bootstrap-pagination.d.ts.map +0 -1
- package/pagination/ngx-bootstrap-pagination.metadata.json +0 -1
- package/pagination/pager.component.d.ts.__ivy_ngcc_bak +0 -75
- package/pagination/pager.component.d.ts.map +0 -1
- package/pagination/pagination.component.d.ts.__ivy_ngcc_bak +0 -88
- package/pagination/pagination.component.d.ts.map +0 -1
- package/pagination/pagination.config.d.ts.__ivy_ngcc_bak +0 -6
- package/pagination/pagination.config.d.ts.map +0 -1
- package/pagination/pagination.module.d.ts.__ivy_ngcc_bak +0 -4
- package/pagination/pagination.module.d.ts.map +0 -1
- package/popover/__ivy_ngcc__/fesm2015/ngx-bootstrap-popover.js +0 -419
- package/popover/__ivy_ngcc__/fesm2015/ngx-bootstrap-popover.js.map +0 -1
- package/popover/bundles/ngx-bootstrap-popover.umd.js +0 -354
- package/popover/bundles/ngx-bootstrap-popover.umd.js.map +0 -1
- package/popover/bundles/ngx-bootstrap-popover.umd.min.js +0 -2
- package/popover/bundles/ngx-bootstrap-popover.umd.min.js.map +0 -1
- package/popover/esm2015/index.js +0 -2
- package/popover/esm2015/index.js.map +0 -1
- package/popover/esm2015/index.metadata.json +0 -1
- package/popover/esm2015/ngx-bootstrap-popover.js +0 -5
- package/popover/esm2015/ngx-bootstrap-popover.js.map +0 -1
- package/popover/esm2015/ngx-bootstrap-popover.metadata.json +0 -1
- package/popover/esm2015/popover-container.component.js +0 -69
- package/popover/esm2015/popover-container.component.js.map +0 -1
- package/popover/esm2015/popover-container.component.metadata.json +0 -1
- package/popover/esm2015/popover.config.js +0 -33
- package/popover/esm2015/popover.config.js.map +0 -1
- package/popover/esm2015/popover.config.metadata.json +0 -1
- package/popover/esm2015/popover.directive.js +0 -228
- package/popover/esm2015/popover.directive.js.map +0 -1
- package/popover/esm2015/popover.directive.metadata.json +0 -1
- package/popover/esm2015/popover.module.js +0 -23
- package/popover/esm2015/popover.module.js.map +0 -1
- package/popover/esm2015/popover.module.metadata.json +0 -1
- package/popover/esm2015/public_api.js +0 -5
- package/popover/esm2015/public_api.js.map +0 -1
- package/popover/esm2015/public_api.metadata.json +0 -1
- package/popover/fesm2015/ngx-bootstrap-popover.js +0 -347
- package/popover/fesm2015/ngx-bootstrap-popover.js.map +0 -1
- package/popover/ngx-bootstrap-popover.d.ts.__ivy_ngcc_bak +0 -4
- package/popover/ngx-bootstrap-popover.d.ts.map +0 -1
- package/popover/ngx-bootstrap-popover.metadata.json +0 -1
- package/popover/popover-container.component.d.ts.__ivy_ngcc_bak +0 -13
- package/popover/popover-container.component.d.ts.map +0 -1
- package/popover/popover.config.d.ts.__ivy_ngcc_bak +0 -26
- package/popover/popover.config.d.ts.map +0 -1
- package/popover/popover.directive.d.ts.__ivy_ngcc_bak +0 -94
- package/popover/popover.directive.d.ts.map +0 -1
- package/popover/popover.module.d.ts.__ivy_ngcc_bak +0 -4
- package/popover/popover.module.d.ts.map +0 -1
- package/positioning/__ivy_ngcc__/fesm2015/ngx-bootstrap-positioning.js +0 -1080
- package/positioning/__ivy_ngcc__/fesm2015/ngx-bootstrap-positioning.js.map +0 -1
- package/positioning/bundles/ngx-bootstrap-positioning.umd.js +0 -1108
- package/positioning/bundles/ngx-bootstrap-positioning.umd.js.map +0 -1
- package/positioning/bundles/ngx-bootstrap-positioning.umd.min.js +0 -2
- package/positioning/bundles/ngx-bootstrap-positioning.umd.min.js.map +0 -1
- package/positioning/esm2015/index.js +0 -2
- package/positioning/esm2015/index.js.map +0 -1
- package/positioning/esm2015/index.metadata.json +0 -1
- package/positioning/esm2015/models/index.js +0 -53
- package/positioning/esm2015/models/index.js.map +0 -1
- package/positioning/esm2015/models/index.metadata.json +0 -1
- package/positioning/esm2015/modifiers/arrow.js +0 -57
- package/positioning/esm2015/modifiers/arrow.js.map +0 -1
- package/positioning/esm2015/modifiers/arrow.metadata.json +0 -1
- package/positioning/esm2015/modifiers/flip.js +0 -60
- package/positioning/esm2015/modifiers/flip.js.map +0 -1
- package/positioning/esm2015/modifiers/flip.metadata.json +0 -1
- package/positioning/esm2015/modifiers/index.js +0 -6
- package/positioning/esm2015/modifiers/index.js.map +0 -1
- package/positioning/esm2015/modifiers/index.metadata.json +0 -1
- package/positioning/esm2015/modifiers/initData.js +0 -44
- package/positioning/esm2015/modifiers/initData.js.map +0 -1
- package/positioning/esm2015/modifiers/initData.metadata.json +0 -1
- package/positioning/esm2015/modifiers/preventOverflow.js +0 -55
- package/positioning/esm2015/modifiers/preventOverflow.js.map +0 -1
- package/positioning/esm2015/modifiers/preventOverflow.metadata.json +0 -1
- package/positioning/esm2015/modifiers/shift.js +0 -23
- package/positioning/esm2015/modifiers/shift.js.map +0 -1
- package/positioning/esm2015/modifiers/shift.metadata.json +0 -1
- package/positioning/esm2015/ng-positioning.js +0 -39
- package/positioning/esm2015/ng-positioning.js.map +0 -1
- package/positioning/esm2015/ng-positioning.metadata.json +0 -1
- package/positioning/esm2015/ngx-bootstrap-positioning.js +0 -5
- package/positioning/esm2015/ngx-bootstrap-positioning.js.map +0 -1
- package/positioning/esm2015/ngx-bootstrap-positioning.metadata.json +0 -1
- package/positioning/esm2015/positioning.service.js +0 -71
- package/positioning/esm2015/positioning.service.js.map +0 -1
- package/positioning/esm2015/positioning.service.metadata.json +0 -1
- package/positioning/esm2015/positioning.service.ngfactory.js.map +0 -1
- package/positioning/esm2015/public_api.js +0 -5
- package/positioning/esm2015/public_api.js.map +0 -1
- package/positioning/esm2015/public_api.metadata.json +0 -1
- package/positioning/esm2015/utils/checkMargin.js +0 -32
- package/positioning/esm2015/utils/checkMargin.js.map +0 -1
- package/positioning/esm2015/utils/checkMargin.metadata.json +0 -1
- package/positioning/esm2015/utils/computeAutoPlacement.js +0 -56
- package/positioning/esm2015/utils/computeAutoPlacement.js.map +0 -1
- package/positioning/esm2015/utils/computeAutoPlacement.metadata.json +0 -1
- package/positioning/esm2015/utils/findCommonOffsetParent.js +0 -40
- package/positioning/esm2015/utils/findCommonOffsetParent.js.map +0 -1
- package/positioning/esm2015/utils/findCommonOffsetParent.metadata.json +0 -1
- package/positioning/esm2015/utils/getBordersSize.js +0 -10
- package/positioning/esm2015/utils/getBordersSize.js.map +0 -1
- package/positioning/esm2015/utils/getBordersSize.metadata.json +0 -1
- package/positioning/esm2015/utils/getBoundaries.js +0 -70
- package/positioning/esm2015/utils/getBoundaries.js.map +0 -1
- package/positioning/esm2015/utils/getBoundaries.metadata.json +0 -1
- package/positioning/esm2015/utils/getBoundingClientRect.js +0 -59
- package/positioning/esm2015/utils/getBoundingClientRect.js.map +0 -1
- package/positioning/esm2015/utils/getBoundingClientRect.metadata.json +0 -1
- package/positioning/esm2015/utils/getClientRect.js +0 -4
- package/positioning/esm2015/utils/getClientRect.js.map +0 -1
- package/positioning/esm2015/utils/getClientRect.metadata.json +0 -1
- package/positioning/esm2015/utils/getFixedPositionOffsetParent.js +0 -17
- package/positioning/esm2015/utils/getFixedPositionOffsetParent.js.map +0 -1
- package/positioning/esm2015/utils/getFixedPositionOffsetParent.metadata.json +0 -1
- package/positioning/esm2015/utils/getOffsetParent.js +0 -34
- package/positioning/esm2015/utils/getOffsetParent.js.map +0 -1
- package/positioning/esm2015/utils/getOffsetParent.metadata.json +0 -1
- package/positioning/esm2015/utils/getOffsetRectRelativeToArbitraryNode.js +0 -61
- package/positioning/esm2015/utils/getOffsetRectRelativeToArbitraryNode.js.map +0 -1
- package/positioning/esm2015/utils/getOffsetRectRelativeToArbitraryNode.metadata.json +0 -1
- package/positioning/esm2015/utils/getOffsets.js +0 -12
- package/positioning/esm2015/utils/getOffsets.js.map +0 -1
- package/positioning/esm2015/utils/getOffsets.metadata.json +0 -1
- package/positioning/esm2015/utils/getOppositePlacement.js +0 -8
- package/positioning/esm2015/utils/getOppositePlacement.js.map +0 -1
- package/positioning/esm2015/utils/getOppositePlacement.metadata.json +0 -1
- package/positioning/esm2015/utils/getOppositeVariation.js +0 -13
- package/positioning/esm2015/utils/getOppositeVariation.js.map +0 -1
- package/positioning/esm2015/utils/getOppositeVariation.metadata.json +0 -1
- package/positioning/esm2015/utils/getOuterSizes.js +0 -14
- package/positioning/esm2015/utils/getOuterSizes.js.map +0 -1
- package/positioning/esm2015/utils/getOuterSizes.metadata.json +0 -1
- package/positioning/esm2015/utils/getParentNode.js +0 -12
- package/positioning/esm2015/utils/getParentNode.js.map +0 -1
- package/positioning/esm2015/utils/getParentNode.metadata.json +0 -1
- package/positioning/esm2015/utils/getReferenceOffsets.js +0 -13
- package/positioning/esm2015/utils/getReferenceOffsets.js.map +0 -1
- package/positioning/esm2015/utils/getReferenceOffsets.metadata.json +0 -1
- package/positioning/esm2015/utils/getRoot.js +0 -10
- package/positioning/esm2015/utils/getRoot.js.map +0 -1
- package/positioning/esm2015/utils/getRoot.metadata.json +0 -1
- package/positioning/esm2015/utils/getScroll.js +0 -14
- package/positioning/esm2015/utils/getScroll.js.map +0 -1
- package/positioning/esm2015/utils/getScroll.metadata.json +0 -1
- package/positioning/esm2015/utils/getScrollParent.js +0 -28
- package/positioning/esm2015/utils/getScrollParent.js.map +0 -1
- package/positioning/esm2015/utils/getScrollParent.metadata.json +0 -1
- package/positioning/esm2015/utils/getStyleComputedProperty.js +0 -12
- package/positioning/esm2015/utils/getStyleComputedProperty.js.map +0 -1
- package/positioning/esm2015/utils/getStyleComputedProperty.metadata.json +0 -1
- package/positioning/esm2015/utils/getTargetOffsets.js +0 -31
- package/positioning/esm2015/utils/getTargetOffsets.js.map +0 -1
- package/positioning/esm2015/utils/getTargetOffsets.metadata.json +0 -1
- package/positioning/esm2015/utils/getViewportOffsetRectRelativeToArtbitraryNode.js +0 -19
- package/positioning/esm2015/utils/getViewportOffsetRectRelativeToArtbitraryNode.js.map +0 -1
- package/positioning/esm2015/utils/getViewportOffsetRectRelativeToArtbitraryNode.metadata.json +0 -1
- package/positioning/esm2015/utils/getWindowSizes.js +0 -21
- package/positioning/esm2015/utils/getWindowSizes.js.map +0 -1
- package/positioning/esm2015/utils/getWindowSizes.metadata.json +0 -1
- package/positioning/esm2015/utils/includeScroll.js +0 -24
- package/positioning/esm2015/utils/includeScroll.js.map +0 -1
- package/positioning/esm2015/utils/includeScroll.metadata.json +0 -1
- package/positioning/esm2015/utils/index.js +0 -24
- package/positioning/esm2015/utils/index.js.map +0 -1
- package/positioning/esm2015/utils/index.metadata.json +0 -1
- package/positioning/esm2015/utils/isBrowser.js +0 -2
- package/positioning/esm2015/utils/isBrowser.js.map +0 -1
- package/positioning/esm2015/utils/isBrowser.metadata.json +0 -1
- package/positioning/esm2015/utils/isFixed.js +0 -16
- package/positioning/esm2015/utils/isFixed.js.map +0 -1
- package/positioning/esm2015/utils/isFixed.metadata.json +0 -1
- package/positioning/esm2015/utils/isIE.js +0 -18
- package/positioning/esm2015/utils/isIE.js.map +0 -1
- package/positioning/esm2015/utils/isIE.metadata.json +0 -1
- package/positioning/esm2015/utils/isModifierEnabled.js +0 -5
- package/positioning/esm2015/utils/isModifierEnabled.js.map +0 -1
- package/positioning/esm2015/utils/isModifierEnabled.metadata.json +0 -1
- package/positioning/esm2015/utils/isNumeric.js +0 -11
- package/positioning/esm2015/utils/isNumeric.js.map +0 -1
- package/positioning/esm2015/utils/isNumeric.metadata.json +0 -1
- package/positioning/esm2015/utils/isOffsetContainer.js +0 -11
- package/positioning/esm2015/utils/isOffsetContainer.js.map +0 -1
- package/positioning/esm2015/utils/isOffsetContainer.metadata.json +0 -1
- package/positioning/esm2015/utils/setStyles.js +0 -21
- package/positioning/esm2015/utils/setStyles.js.map +0 -1
- package/positioning/esm2015/utils/setStyles.metadata.json +0 -1
- package/positioning/esm2015/utils/updateContainerClass.js +0 -30
- package/positioning/esm2015/utils/updateContainerClass.js.map +0 -1
- package/positioning/esm2015/utils/updateContainerClass.metadata.json +0 -1
- package/positioning/fesm2015/ngx-bootstrap-positioning.js +0 -1073
- package/positioning/fesm2015/ngx-bootstrap-positioning.js.map +0 -1
- package/positioning/ngx-bootstrap-positioning.d.ts.__ivy_ngcc_bak +0 -4
- package/positioning/ngx-bootstrap-positioning.d.ts.map +0 -1
- package/positioning/ngx-bootstrap-positioning.metadata.json +0 -1
- package/positioning/positioning.service.d.ts.__ivy_ngcc_bak +0 -45
- package/positioning/positioning.service.d.ts.map +0 -1
- package/positioning/utils/isBrowser.d.ts +0 -1
- package/positioning/utils/isIE.d.ts +0 -1
- package/progressbar/__ivy_ngcc__/fesm2015/ngx-bootstrap-progressbar.js +0 -256
- package/progressbar/__ivy_ngcc__/fesm2015/ngx-bootstrap-progressbar.js.map +0 -1
- package/progressbar/bar.component.d.ts.__ivy_ngcc_bak +0 -22
- package/progressbar/bar.component.d.ts.map +0 -1
- package/progressbar/bundles/ngx-bootstrap-progressbar.umd.js +0 -191
- package/progressbar/bundles/ngx-bootstrap-progressbar.umd.js.map +0 -1
- package/progressbar/bundles/ngx-bootstrap-progressbar.umd.min.js +0 -2
- package/progressbar/bundles/ngx-bootstrap-progressbar.umd.min.js.map +0 -1
- package/progressbar/esm2015/bar.component.js +0 -81
- package/progressbar/esm2015/bar.component.js.map +0 -1
- package/progressbar/esm2015/bar.component.metadata.json +0 -1
- package/progressbar/esm2015/index.js +0 -2
- package/progressbar/esm2015/index.js.map +0 -1
- package/progressbar/esm2015/index.metadata.json +0 -1
- package/progressbar/esm2015/ngx-bootstrap-progressbar.js +0 -5
- package/progressbar/esm2015/ngx-bootstrap-progressbar.js.map +0 -1
- package/progressbar/esm2015/ngx-bootstrap-progressbar.metadata.json +0 -1
- package/progressbar/esm2015/progressbar-type.interface.js +0 -2
- package/progressbar/esm2015/progressbar-type.interface.js.map +0 -1
- package/progressbar/esm2015/progressbar-type.interface.metadata.json +0 -1
- package/progressbar/esm2015/progressbar.component.js +0 -57
- package/progressbar/esm2015/progressbar.component.js.map +0 -1
- package/progressbar/esm2015/progressbar.component.metadata.json +0 -1
- package/progressbar/esm2015/progressbar.config.js +0 -17
- package/progressbar/esm2015/progressbar.config.js.map +0 -1
- package/progressbar/esm2015/progressbar.config.metadata.json +0 -1
- package/progressbar/esm2015/progressbar.module.js +0 -17
- package/progressbar/esm2015/progressbar.module.js.map +0 -1
- package/progressbar/esm2015/progressbar.module.metadata.json +0 -1
- package/progressbar/esm2015/public_api.js +0 -5
- package/progressbar/esm2015/public_api.js.map +0 -1
- package/progressbar/esm2015/public_api.metadata.json +0 -1
- package/progressbar/fesm2015/ngx-bootstrap-progressbar.js +0 -172
- package/progressbar/fesm2015/ngx-bootstrap-progressbar.js.map +0 -1
- package/progressbar/ngx-bootstrap-progressbar.d.ts.__ivy_ngcc_bak +0 -4
- package/progressbar/ngx-bootstrap-progressbar.d.ts.map +0 -1
- package/progressbar/ngx-bootstrap-progressbar.metadata.json +0 -1
- package/progressbar/progressbar.component.d.ts.__ivy_ngcc_bak +0 -20
- package/progressbar/progressbar.component.d.ts.map +0 -1
- package/progressbar/progressbar.config.d.ts.__ivy_ngcc_bak +0 -6
- package/progressbar/progressbar.config.d.ts.map +0 -1
- package/progressbar/progressbar.module.d.ts.__ivy_ngcc_bak +0 -4
- package/progressbar/progressbar.module.d.ts.map +0 -1
- package/rating/__ivy_ngcc__/fesm2015/ngx-bootstrap-rating.js +0 -227
- package/rating/__ivy_ngcc__/fesm2015/ngx-bootstrap-rating.js.map +0 -1
- package/rating/bundles/ngx-bootstrap-rating.umd.js +0 -169
- package/rating/bundles/ngx-bootstrap-rating.umd.js.map +0 -1
- package/rating/bundles/ngx-bootstrap-rating.umd.min.js +0 -2
- package/rating/bundles/ngx-bootstrap-rating.umd.min.js.map +0 -1
- package/rating/esm2015/index.js +0 -2
- package/rating/esm2015/index.js.map +0 -1
- package/rating/esm2015/index.metadata.json +0 -1
- package/rating/esm2015/models/index.js +0 -2
- package/rating/esm2015/models/index.js.map +0 -1
- package/rating/esm2015/models/index.metadata.json +0 -1
- package/rating/esm2015/ngx-bootstrap-rating.js +0 -6
- package/rating/esm2015/ngx-bootstrap-rating.js.map +0 -1
- package/rating/esm2015/ngx-bootstrap-rating.metadata.json +0 -1
- package/rating/esm2015/public_api.js +0 -4
- package/rating/esm2015/public_api.js.map +0 -1
- package/rating/esm2015/public_api.metadata.json +0 -1
- package/rating/esm2015/rating.component.js +0 -118
- package/rating/esm2015/rating.component.js.map +0 -1
- package/rating/esm2015/rating.component.metadata.json +0 -1
- package/rating/esm2015/rating.config.js +0 -16
- package/rating/esm2015/rating.config.js.map +0 -1
- package/rating/esm2015/rating.config.metadata.json +0 -1
- package/rating/esm2015/rating.module.js +0 -19
- package/rating/esm2015/rating.module.js.map +0 -1
- package/rating/esm2015/rating.module.metadata.json +0 -1
- package/rating/fesm2015/ngx-bootstrap-rating.js +0 -155
- package/rating/fesm2015/ngx-bootstrap-rating.js.map +0 -1
- package/rating/ngx-bootstrap-rating.d.ts.__ivy_ngcc_bak +0 -5
- package/rating/ngx-bootstrap-rating.d.ts.map +0 -1
- package/rating/ngx-bootstrap-rating.metadata.json +0 -1
- package/rating/rating.component.d.ts.__ivy_ngcc_bak +0 -37
- package/rating/rating.component.d.ts.map +0 -1
- package/rating/rating.config.d.ts.__ivy_ngcc_bak +0 -5
- package/rating/rating.config.d.ts.map +0 -1
- package/rating/rating.module.d.ts.__ivy_ngcc_bak +0 -4
- package/rating/rating.module.d.ts.map +0 -1
- package/sortable/__ivy_ngcc__/fesm2015/ngx-bootstrap-sortable.js +0 -361
- package/sortable/__ivy_ngcc__/fesm2015/ngx-bootstrap-sortable.js.map +0 -1
- package/sortable/bundles/ngx-bootstrap-sortable.umd.js +0 -558
- package/sortable/bundles/ngx-bootstrap-sortable.umd.js.map +0 -1
- package/sortable/bundles/ngx-bootstrap-sortable.umd.min.js +0 -16
- package/sortable/bundles/ngx-bootstrap-sortable.umd.min.js.map +0 -1
- package/sortable/draggable-item.service.d.ts.__ivy_ngcc_bak +0 -10
- package/sortable/draggable-item.service.d.ts.map +0 -1
- package/sortable/esm2015/draggable-item.js +0 -2
- package/sortable/esm2015/draggable-item.js.map +0 -1
- package/sortable/esm2015/draggable-item.metadata.json +0 -1
- package/sortable/esm2015/draggable-item.service.js +0 -32
- package/sortable/esm2015/draggable-item.service.js.map +0 -1
- package/sortable/esm2015/draggable-item.service.metadata.json +0 -1
- package/sortable/esm2015/index.js +0 -2
- package/sortable/esm2015/index.js.map +0 -1
- package/sortable/esm2015/index.metadata.json +0 -1
- package/sortable/esm2015/ngx-bootstrap-sortable.js +0 -5
- package/sortable/esm2015/ngx-bootstrap-sortable.js.map +0 -1
- package/sortable/esm2015/ngx-bootstrap-sortable.metadata.json +0 -1
- package/sortable/esm2015/public_api.js +0 -4
- package/sortable/esm2015/public_api.js.map +0 -1
- package/sortable/esm2015/public_api.metadata.json +0 -1
- package/sortable/esm2015/sortable.component.js +0 -217
- package/sortable/esm2015/sortable.component.js.map +0 -1
- package/sortable/esm2015/sortable.component.metadata.json +0 -1
- package/sortable/esm2015/sortable.module.js +0 -17
- package/sortable/esm2015/sortable.module.js.map +0 -1
- package/sortable/esm2015/sortable.module.metadata.json +0 -1
- package/sortable/fesm2015/ngx-bootstrap-sortable.js +0 -268
- package/sortable/fesm2015/ngx-bootstrap-sortable.js.map +0 -1
- package/sortable/ngx-bootstrap-sortable.d.ts.__ivy_ngcc_bak +0 -4
- package/sortable/ngx-bootstrap-sortable.d.ts.map +0 -1
- package/sortable/ngx-bootstrap-sortable.metadata.json +0 -1
- package/sortable/sortable.component.d.ts.__ivy_ngcc_bak +0 -59
- package/sortable/sortable.component.d.ts.map +0 -1
- package/sortable/sortable.module.d.ts.__ivy_ngcc_bak +0 -4
- package/sortable/sortable.module.d.ts.map +0 -1
- package/tabs/__ivy_ngcc__/fesm2015/ngx-bootstrap-tabs.js +0 -521
- package/tabs/__ivy_ngcc__/fesm2015/ngx-bootstrap-tabs.js.map +0 -1
- package/tabs/bundles/ngx-bootstrap-tabs.umd.js +0 -458
- package/tabs/bundles/ngx-bootstrap-tabs.umd.js.map +0 -1
- package/tabs/bundles/ngx-bootstrap-tabs.umd.min.js +0 -2
- package/tabs/bundles/ngx-bootstrap-tabs.umd.min.js.map +0 -1
- package/tabs/esm2015/index.js +0 -2
- package/tabs/esm2015/index.js.map +0 -1
- package/tabs/esm2015/index.metadata.json +0 -1
- package/tabs/esm2015/ng-transclude.directive.js +0 -28
- package/tabs/esm2015/ng-transclude.directive.js.map +0 -1
- package/tabs/esm2015/ng-transclude.directive.metadata.json +0 -1
- package/tabs/esm2015/ngx-bootstrap-tabs.js +0 -5
- package/tabs/esm2015/ngx-bootstrap-tabs.js.map +0 -1
- package/tabs/esm2015/ngx-bootstrap-tabs.metadata.json +0 -1
- package/tabs/esm2015/public_api.js +0 -7
- package/tabs/esm2015/public_api.js.map +0 -1
- package/tabs/esm2015/public_api.metadata.json +0 -1
- package/tabs/esm2015/tab-heading.directive.js +0 -17
- package/tabs/esm2015/tab-heading.directive.js.map +0 -1
- package/tabs/esm2015/tab-heading.directive.metadata.json +0 -1
- package/tabs/esm2015/tab.directive.js +0 -96
- package/tabs/esm2015/tab.directive.js.map +0 -1
- package/tabs/esm2015/tab.directive.metadata.json +0 -1
- package/tabs/esm2015/tabs.module.js +0 -32
- package/tabs/esm2015/tabs.module.js.map +0 -1
- package/tabs/esm2015/tabs.module.metadata.json +0 -1
- package/tabs/esm2015/tabset.component.js +0 -215
- package/tabs/esm2015/tabset.component.js.map +0 -1
- package/tabs/esm2015/tabset.component.metadata.json +0 -1
- package/tabs/esm2015/tabset.config.js +0 -19
- package/tabs/esm2015/tabset.config.js.map +0 -1
- package/tabs/esm2015/tabset.config.metadata.json +0 -1
- package/tabs/fesm2015/ngx-bootstrap-tabs.js +0 -401
- package/tabs/fesm2015/ngx-bootstrap-tabs.js.map +0 -1
- package/tabs/ng-transclude.directive.d.ts.__ivy_ngcc_bak +0 -8
- package/tabs/ng-transclude.directive.d.ts.map +0 -1
- package/tabs/ngx-bootstrap-tabs.d.ts.__ivy_ngcc_bak +0 -4
- package/tabs/ngx-bootstrap-tabs.d.ts.map +0 -1
- package/tabs/ngx-bootstrap-tabs.metadata.json +0 -1
- package/tabs/tab-heading.directive.d.ts.__ivy_ngcc_bak +0 -7
- package/tabs/tab-heading.directive.d.ts.map +0 -1
- package/tabs/tab.directive.d.ts.__ivy_ngcc_bak +0 -36
- package/tabs/tab.directive.d.ts.map +0 -1
- package/tabs/tabs.module.d.ts.__ivy_ngcc_bak +0 -4
- package/tabs/tabs.module.d.ts.map +0 -1
- package/tabs/tabset.component.d.ts.__ivy_ngcc_bak +0 -41
- package/tabs/tabset.component.d.ts.map +0 -1
- package/tabs/tabset.config.d.ts.__ivy_ngcc_bak +0 -8
- package/tabs/tabset.config.d.ts.map +0 -1
- package/timepicker/__ivy_ngcc__/fesm2015/ngx-bootstrap-timepicker.js +0 -1137
- package/timepicker/__ivy_ngcc__/fesm2015/ngx-bootstrap-timepicker.js.map +0 -1
- package/timepicker/bundles/ngx-bootstrap-timepicker.umd.js +0 -1156
- package/timepicker/bundles/ngx-bootstrap-timepicker.umd.js.map +0 -1
- package/timepicker/bundles/ngx-bootstrap-timepicker.umd.min.js +0 -17
- package/timepicker/bundles/ngx-bootstrap-timepicker.umd.min.js.map +0 -1
- package/timepicker/esm2015/index.js +0 -2
- package/timepicker/esm2015/index.js.map +0 -1
- package/timepicker/esm2015/index.metadata.json +0 -1
- package/timepicker/esm2015/models/index.js +0 -2
- package/timepicker/esm2015/models/index.js.map +0 -1
- package/timepicker/esm2015/models/index.metadata.json +0 -1
- package/timepicker/esm2015/ngx-bootstrap-timepicker.js +0 -6
- package/timepicker/esm2015/ngx-bootstrap-timepicker.js.map +0 -1
- package/timepicker/esm2015/ngx-bootstrap-timepicker.metadata.json +0 -1
- package/timepicker/esm2015/public_api.js +0 -6
- package/timepicker/esm2015/public_api.js.map +0 -1
- package/timepicker/esm2015/public_api.metadata.json +0 -1
- package/timepicker/esm2015/reducer/timepicker.actions.js +0 -49
- package/timepicker/esm2015/reducer/timepicker.actions.js.map +0 -1
- package/timepicker/esm2015/reducer/timepicker.actions.metadata.json +0 -1
- package/timepicker/esm2015/reducer/timepicker.reducer.js +0 -83
- package/timepicker/esm2015/reducer/timepicker.reducer.js.map +0 -1
- package/timepicker/esm2015/reducer/timepicker.reducer.metadata.json +0 -1
- package/timepicker/esm2015/reducer/timepicker.store.js +0 -18
- package/timepicker/esm2015/reducer/timepicker.store.js.map +0 -1
- package/timepicker/esm2015/reducer/timepicker.store.metadata.json +0 -1
- package/timepicker/esm2015/timepicker-controls.util.js +0 -123
- package/timepicker/esm2015/timepicker-controls.util.js.map +0 -1
- package/timepicker/esm2015/timepicker-controls.util.metadata.json +0 -1
- package/timepicker/esm2015/timepicker.component.js +0 -350
- package/timepicker/esm2015/timepicker.component.js.map +0 -1
- package/timepicker/esm2015/timepicker.component.metadata.json +0 -1
- package/timepicker/esm2015/timepicker.config.js +0 -52
- package/timepicker/esm2015/timepicker.config.js.map +0 -1
- package/timepicker/esm2015/timepicker.config.metadata.json +0 -1
- package/timepicker/esm2015/timepicker.models.js +0 -2
- package/timepicker/esm2015/timepicker.models.js.map +0 -1
- package/timepicker/esm2015/timepicker.models.metadata.json +0 -1
- package/timepicker/esm2015/timepicker.module.js +0 -21
- package/timepicker/esm2015/timepicker.module.js.map +0 -1
- package/timepicker/esm2015/timepicker.module.metadata.json +0 -1
- package/timepicker/esm2015/timepicker.utils.js +0 -152
- package/timepicker/esm2015/timepicker.utils.js.map +0 -1
- package/timepicker/esm2015/timepicker.utils.metadata.json +0 -1
- package/timepicker/fesm2015/ngx-bootstrap-timepicker.js +0 -836
- package/timepicker/fesm2015/ngx-bootstrap-timepicker.js.map +0 -1
- package/timepicker/ngx-bootstrap-timepicker.d.ts.__ivy_ngcc_bak +0 -5
- package/timepicker/ngx-bootstrap-timepicker.d.ts.map +0 -1
- package/timepicker/ngx-bootstrap-timepicker.metadata.json +0 -1
- package/timepicker/reducer/timepicker.actions.d.ts.__ivy_ngcc_bak +0 -25
- package/timepicker/reducer/timepicker.actions.d.ts.map +0 -1
- package/timepicker/reducer/timepicker.store.d.ts.__ivy_ngcc_bak +0 -5
- package/timepicker/reducer/timepicker.store.d.ts.map +0 -1
- package/timepicker/timepicker.component.d.ts.__ivy_ngcc_bak +0 -113
- package/timepicker/timepicker.component.d.ts.map +0 -1
- package/timepicker/timepicker.config.d.ts.__ivy_ngcc_bak +0 -45
- package/timepicker/timepicker.config.d.ts.map +0 -1
- package/timepicker/timepicker.module.d.ts.__ivy_ngcc_bak +0 -4
- package/timepicker/timepicker.module.d.ts.map +0 -1
- package/tooltip/__ivy_ngcc__/fesm2015/ngx-bootstrap-tooltip.js +0 -506
- package/tooltip/__ivy_ngcc__/fesm2015/ngx-bootstrap-tooltip.js.map +0 -1
- package/tooltip/bundles/ngx-bootstrap-tooltip.umd.js +0 -766
- package/tooltip/bundles/ngx-bootstrap-tooltip.umd.js.map +0 -1
- package/tooltip/bundles/ngx-bootstrap-tooltip.umd.min.js +0 -2
- package/tooltip/bundles/ngx-bootstrap-tooltip.umd.min.js.map +0 -1
- package/tooltip/esm2015/index.js +0 -2
- package/tooltip/esm2015/index.js.map +0 -1
- package/tooltip/esm2015/index.metadata.json +0 -1
- package/tooltip/esm2015/ngx-bootstrap-tooltip.js +0 -5
- package/tooltip/esm2015/ngx-bootstrap-tooltip.js.map +0 -1
- package/tooltip/esm2015/ngx-bootstrap-tooltip.metadata.json +0 -1
- package/tooltip/esm2015/public_api.js +0 -5
- package/tooltip/esm2015/public_api.js.map +0 -1
- package/tooltip/esm2015/public_api.metadata.json +0 -1
- package/tooltip/esm2015/tooltip-container.component.js +0 -69
- package/tooltip/esm2015/tooltip-container.component.js.map +0 -1
- package/tooltip/esm2015/tooltip-container.component.metadata.json +0 -1
- package/tooltip/esm2015/tooltip.config.js +0 -20
- package/tooltip/esm2015/tooltip.config.js.map +0 -1
- package/tooltip/esm2015/tooltip.config.metadata.json +0 -1
- package/tooltip/esm2015/tooltip.directive.js +0 -313
- package/tooltip/esm2015/tooltip.directive.js.map +0 -1
- package/tooltip/esm2015/tooltip.directive.metadata.json +0 -1
- package/tooltip/esm2015/tooltip.module.js +0 -23
- package/tooltip/esm2015/tooltip.module.js.map +0 -1
- package/tooltip/esm2015/tooltip.module.metadata.json +0 -1
- package/tooltip/fesm2015/ngx-bootstrap-tooltip.js +0 -419
- package/tooltip/fesm2015/ngx-bootstrap-tooltip.js.map +0 -1
- package/tooltip/ngx-bootstrap-tooltip.d.ts.__ivy_ngcc_bak +0 -4
- package/tooltip/ngx-bootstrap-tooltip.d.ts.map +0 -1
- package/tooltip/ngx-bootstrap-tooltip.metadata.json +0 -1
- package/tooltip/tooltip-container.component.d.ts.__ivy_ngcc_bak +0 -15
- package/tooltip/tooltip-container.component.d.ts.map +0 -1
- package/tooltip/tooltip.config.d.ts.__ivy_ngcc_bak +0 -13
- package/tooltip/tooltip.config.d.ts.map +0 -1
- package/tooltip/tooltip.directive.d.ts.__ivy_ngcc_bak +0 -110
- package/tooltip/tooltip.directive.d.ts.map +0 -1
- package/tooltip/tooltip.module.d.ts.__ivy_ngcc_bak +0 -4
- package/tooltip/tooltip.module.d.ts.map +0 -1
- package/typeahead/__ivy_ngcc__/fesm2015/ngx-bootstrap-typeahead.js +0 -2103
- package/typeahead/__ivy_ngcc__/fesm2015/ngx-bootstrap-typeahead.js.map +0 -1
- package/typeahead/bundles/ngx-bootstrap-typeahead.umd.js +0 -2264
- package/typeahead/bundles/ngx-bootstrap-typeahead.umd.js.map +0 -1
- package/typeahead/bundles/ngx-bootstrap-typeahead.umd.min.js +0 -2
- package/typeahead/bundles/ngx-bootstrap-typeahead.umd.min.js.map +0 -1
- package/typeahead/esm2015/index.js +0 -2
- package/typeahead/esm2015/index.js.map +0 -1
- package/typeahead/esm2015/index.metadata.json +0 -1
- package/typeahead/esm2015/latin-map.js +0 -827
- package/typeahead/esm2015/latin-map.js.map +0 -1
- package/typeahead/esm2015/latin-map.metadata.json +0 -1
- package/typeahead/esm2015/models/index.js +0 -2
- package/typeahead/esm2015/models/index.js.map +0 -1
- package/typeahead/esm2015/models/index.metadata.json +0 -1
- package/typeahead/esm2015/ngx-bootstrap-typeahead.js +0 -6
- package/typeahead/esm2015/ngx-bootstrap-typeahead.js.map +0 -1
- package/typeahead/esm2015/ngx-bootstrap-typeahead.metadata.json +0 -1
- package/typeahead/esm2015/public_api.js +0 -9
- package/typeahead/esm2015/public_api.js.map +0 -1
- package/typeahead/esm2015/public_api.metadata.json +0 -1
- package/typeahead/esm2015/typeahead-animations.js +0 -16
- package/typeahead/esm2015/typeahead-animations.js.map +0 -1
- package/typeahead/esm2015/typeahead-animations.metadata.json +0 -1
- package/typeahead/esm2015/typeahead-container.component.js +0 -332
- package/typeahead/esm2015/typeahead-container.component.js.map +0 -1
- package/typeahead/esm2015/typeahead-container.component.metadata.json +0 -1
- package/typeahead/esm2015/typeahead-match.class.js +0 -15
- package/typeahead/esm2015/typeahead-match.class.js.map +0 -1
- package/typeahead/esm2015/typeahead-match.class.metadata.json +0 -1
- package/typeahead/esm2015/typeahead-options.class.js +0 -8
- package/typeahead/esm2015/typeahead-options.class.js.map +0 -1
- package/typeahead/esm2015/typeahead-options.class.metadata.json +0 -1
- package/typeahead/esm2015/typeahead-order.class.js +0 -2
- package/typeahead/esm2015/typeahead-order.class.js.map +0 -1
- package/typeahead/esm2015/typeahead-order.class.metadata.json +0 -1
- package/typeahead/esm2015/typeahead-utils.js +0 -77
- package/typeahead/esm2015/typeahead-utils.js.map +0 -1
- package/typeahead/esm2015/typeahead-utils.metadata.json +0 -1
- package/typeahead/esm2015/typeahead.config.js +0 -32
- package/typeahead/esm2015/typeahead.config.js.map +0 -1
- package/typeahead/esm2015/typeahead.config.metadata.json +0 -1
- package/typeahead/esm2015/typeahead.directive.js +0 -537
- package/typeahead/esm2015/typeahead.directive.js.map +0 -1
- package/typeahead/esm2015/typeahead.directive.metadata.json +0 -1
- package/typeahead/esm2015/typeahead.module.js +0 -23
- package/typeahead/esm2015/typeahead.module.js.map +0 -1
- package/typeahead/esm2015/typeahead.module.metadata.json +0 -1
- package/typeahead/fesm2015/ngx-bootstrap-typeahead.js +0 -1858
- package/typeahead/fesm2015/ngx-bootstrap-typeahead.js.map +0 -1
- package/typeahead/ngx-bootstrap-typeahead.d.ts.__ivy_ngcc_bak +0 -5
- package/typeahead/ngx-bootstrap-typeahead.d.ts.map +0 -1
- package/typeahead/ngx-bootstrap-typeahead.metadata.json +0 -1
- package/typeahead/typeahead-container.component.d.ts.__ivy_ngcc_bak +0 -64
- package/typeahead/typeahead-container.component.d.ts.map +0 -1
- package/typeahead/typeahead.config.d.ts.__ivy_ngcc_bak +0 -23
- package/typeahead/typeahead.config.d.ts.map +0 -1
- package/typeahead/typeahead.directive.d.ts.__ivy_ngcc_bak +0 -173
- package/typeahead/typeahead.directive.d.ts.map +0 -1
- package/typeahead/typeahead.module.d.ts.__ivy_ngcc_bak +0 -4
- package/typeahead/typeahead.module.d.ts.map +0 -1
- package/utils/__ivy_ngcc__/fesm2015/ngx-bootstrap-utils.js +0 -548
- package/utils/__ivy_ngcc__/fesm2015/ngx-bootstrap-utils.js.map +0 -1
- package/utils/bundles/ngx-bootstrap-utils.umd.js +0 -589
- package/utils/bundles/ngx-bootstrap-utils.umd.js.map +0 -1
- package/utils/bundles/ngx-bootstrap-utils.umd.min.js +0 -10
- package/utils/bundles/ngx-bootstrap-utils.umd.min.js.map +0 -1
- package/utils/esm2015/decorators.js +0 -23
- package/utils/esm2015/decorators.js.map +0 -1
- package/utils/esm2015/decorators.metadata.json +0 -1
- package/utils/esm2015/facade/browser.js +0 -26
- package/utils/esm2015/facade/browser.js.map +0 -1
- package/utils/esm2015/facade/browser.metadata.json +0 -1
- package/utils/esm2015/index.js +0 -2
- package/utils/esm2015/index.js.map +0 -1
- package/utils/esm2015/index.metadata.json +0 -1
- package/utils/esm2015/linked-list.class.js +0 -249
- package/utils/esm2015/linked-list.class.js.map +0 -1
- package/utils/esm2015/linked-list.class.metadata.json +0 -1
- package/utils/esm2015/ngx-bootstrap-utils.js +0 -6
- package/utils/esm2015/ngx-bootstrap-utils.js.map +0 -1
- package/utils/esm2015/ngx-bootstrap-utils.metadata.json +0 -1
- package/utils/esm2015/public_api.js +0 -10
- package/utils/esm2015/public_api.js.map +0 -1
- package/utils/esm2015/public_api.metadata.json +0 -1
- package/utils/esm2015/theme-provider.js +0 -74
- package/utils/esm2015/theme-provider.js.map +0 -1
- package/utils/esm2015/theme-provider.metadata.json +0 -1
- package/utils/esm2015/trigger.class.js +0 -14
- package/utils/esm2015/trigger.class.js.map +0 -1
- package/utils/esm2015/trigger.class.metadata.json +0 -1
- package/utils/esm2015/triggers.js +0 -118
- package/utils/esm2015/triggers.js.map +0 -1
- package/utils/esm2015/triggers.metadata.json +0 -1
- package/utils/esm2015/utils.class.js +0 -30
- package/utils/esm2015/utils.class.js.map +0 -1
- package/utils/esm2015/utils.class.metadata.json +0 -1
- package/utils/esm2015/warn-once.js +0 -11
- package/utils/esm2015/warn-once.js.map +0 -1
- package/utils/esm2015/warn-once.metadata.json +0 -1
- package/utils/fesm2015/ngx-bootstrap-utils.js +0 -547
- package/utils/fesm2015/ngx-bootstrap-utils.js.map +0 -1
- package/utils/ngx-bootstrap-utils.d.ts.__ivy_ngcc_bak +0 -5
- package/utils/ngx-bootstrap-utils.d.ts.map +0 -1
- package/utils/ngx-bootstrap-utils.metadata.json +0 -1
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/datepicker/bs-datepicker.config.ts","../../../tslib/tslib.es6.js","../../../../src/datepicker/datepicker-animations.ts","../../../../src/datepicker/base/bs-datepicker-container.ts","../../../../src/datepicker/reducer/bs-datepicker.actions.ts","../../../../src/datepicker/bs-locale.service.ts","../../../../src/datepicker/reducer/bs-datepicker.effects.ts","../../../../src/datepicker/reducer/_defaults.ts","../../../../src/datepicker/reducer/bs-datepicker.state.ts","../../../../src/datepicker/utils/bs-calendar-utils.ts","../../../../src/datepicker/utils/matrix-utils.ts","../../../../src/datepicker/engine/calc-days-calendar.ts","../../../../src/datepicker/engine/format-days-calendar.ts","../../../../src/datepicker/engine/view-mode.ts","../../../../src/datepicker/engine/format-months-calendar.ts","../../../../src/datepicker/engine/format-years-calendar.ts","../../../../src/datepicker/utils/copy-time-utils.ts","../../../../src/datepicker/reducer/bs-datepicker.reducer.ts","../../../../src/datepicker/engine/flag-days-calendar.ts","../../../../src/datepicker/engine/flag-months-calendar.ts","../../../../src/datepicker/engine/flag-years-calendar.ts","../../../../src/datepicker/reducer/bs-datepicker.store.ts","../../../../src/datepicker/themes/bs/bs-datepicker-container.component.ts","../../../../src/datepicker/bs-datepicker.component.ts","../../../../src/datepicker/bs-datepicker-inline.config.ts","../../../../src/datepicker/themes/bs/bs-datepicker-inline-container.component.ts","../../../../src/datepicker/bs-datepicker-inline.component.ts","../../../../src/datepicker/bs-daterangepicker-inline.config.ts","../../../../src/datepicker/themes/bs/bs-daterangepicker-container.component.ts","../../../../src/datepicker/themes/bs/bs-daterangepicker-inline-container.component.ts","../../../../src/datepicker/bs-daterangepicker-inline.component.ts","../../../../src/datepicker/bs-datepicker-input.directive.ts","../../../../src/datepicker/bs-daterangepicker.config.ts","../../../../src/datepicker/bs-daterangepicker.component.ts","../../../../src/datepicker/bs-daterangepicker-input.directive.ts","../../../../src/datepicker/date-formatter.ts","../../../../src/datepicker/datepicker-inner.component.ts","../../../../src/datepicker/datepicker.config.ts","../../../../src/datepicker/datepicker.component.ts","../../../../src/datepicker/daypicker.component.ts","../../../../src/datepicker/monthpicker.component.ts","../../../../src/datepicker/yearpicker.component.ts","../../../../src/datepicker/themes/bs/bs-calendar-layout.component.ts","../../../../src/datepicker/themes/bs/bs-current-date-view.component.ts","../../../../src/datepicker/themes/bs/bs-custom-dates-view.component.ts","../../../../src/datepicker/models/index.ts","../../../../src/datepicker/themes/bs/bs-datepicker-day-decorator.directive.ts","../../../../src/datepicker/themes/bs/bs-datepicker-navigation-view.component.ts","../../../../src/datepicker/themes/bs/bs-days-calendar-view.component.ts","../../../../src/datepicker/themes/bs/bs-months-calendar-view.component.ts","../../../../src/datepicker/themes/bs/bs-timepicker-view.component.ts","../../../../src/datepicker/themes/bs/bs-years-calendar-view.component.ts","../../../../src/datepicker/bs-datepicker.module.ts","../../../../src/datepicker/datepicker.module.ts"],"names":["this","adaptivePosition","useUtc","isAnimated","startView","returnFocusToInput","containerClass","displayMonths","showWeekNumbers","dateInputFormat","rangeSeparator","rangeInputFormat","monthTitle","yearTitle","dayLabel","monthLabel","yearLabel","weekNumbers","showTodayButton","showClearButton","todayPosition","clearPosition","todayButtonLabel","clearButtonLabel","customRangeButtonLabel","withTimepicker","Injectable","args","providedIn","extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__extends","TypeError","String","__","constructor","create","__values","o","s","Symbol","iterator","m","i","length","next","value","done","__read","n","r","e","ar","push","error","__spread","arguments","concat","DATEPICKER_ANIMATION_TIMING","datepickerAnimation","trigger","state","style","height","overflow","transition","animate","BsDatepickerAbstractComponent","customRanges","chosenRange","_daysCalendarSub","Subscription","selectedTimeSub","defineProperty","_a","_effects","setMinDate","setMaxDate","setDaysDisabled","setDatesDisabled","setDatesEnabled","setDisabled","setDateCustomClasses","setDateTooltipTexts","_daysCalendar$","_this","unsubscribe","add","subscribe","multipleCalendars","setViewMode","event","navigateTo","dayHoverHandler","weekHoverHandler","monthHoverHandler","yearHoverHandler","timeSelectHandler","date","index","daySelectHandler","day","monthSelectHandler","yearSelectHandler","setRangeOnCalendar","dates","setToday","clearDate","_stopPropagation","stopPropagation","BsDatepickerActions","calculate","type","CALCULATE","format","FORMAT","flag","FLAG","select","SELECT","payload","selectTime","SELECT_TIME","changeViewMode","CHANGE_VIEWMODE","NAVIGATE_TO","navigateStep","step","NAVIGATE_OFFSET","setOptions","options","SET_OPTIONS","selectRange","SELECT_RANGE","hoverDay","HOVER","isHovered","cell","minDate","SET_MIN_DATE","maxDate","SET_MAX_DATE","daysDisabled","days","SET_DAYSDISABLED","datesDisabled","SET_DATESDISABLED","datesEnabled","SET_DATESENABLED","isDisabled","SET_IS_DISABLED","SET_DATE_CUSTOM_CLASSES","SET_DATE_TOOLTIP_TEXTS","setLocale","locale","SET_LOCALE","BsLocaleService","_defaultLocale","_locale","BehaviorSubject","_localeChange","asObservable","getValue","use","currentLocale","BsDatepickerEffects","_actions","_localeService","_subs","init","_bsDatepickerStore","_store","setValue","dispatch","setRangeValue","_config","_options","assign","setBindings","container","selectedTime","pipe","filter","times","daysCalendar$","flaggedMonths","months","monthsCalendar","flaggedMonthsCalendar","yearsCalendar","yearsCalendarFlagged","years","viewMode","view","mode","options$","combineLatest","map","latest","setEventHandlers","_cell","isOtherMonth","registerDatepickerSideEffects","monthsModel","monthModel","formattedMonths","month","selectedDate","selectedRange","yearsCalendarModel","hoveredDate","dateCustomClasses","dateTooltipTexts","localeChange","destroy","_c","_d","_initialView","Date","initialDatepickerState","BsDatepickerConfig","monthViewOptions","width","getStartingDayOfCalendar","isFirstDayOfWeek","firstDayOfWeek","offset","weekday","startingDayOffset","_startingDayOffset","Number","isNaN","calculateDateOffset","getDay","shiftDate","isMonthDisabled","min","max","minBound","isBefore","endOf","maxBound","isAfter","startOf","isYearDisabled","isDisabledDate","unit","isArray","some","dateDisabled","isSame","isEnabledDate","enabledDate","getYearsCalendarInitialDate","calendarIndex","model","checkRangesWithMaxDate","ranges","forEach","item","compareDateWithMaxDateHelper","checkBsValue","setCurrentTimeOnDateSelect","setCurrentTimeHelper","setDateRangesCurrentTimeOnDateSelect","now","setMilliseconds","getMilliseconds","setSeconds","getSeconds","setMinutes","getMinutes","setHours","getHours","createMatrix","fn","prevValue","initialDate","matrix","j","shift","calcDaysCalendar","startingDate","firstDay","getFirstDayOfMonth","daysMatrix","getShiftedWeekdays","getLocale","weekdays","weekdaysShort","slice","canSwitchMode","minMode","formatMonthsCalendar","viewDate","formatOptions","label","formatDate","hideRightArrow","hideLeftArrow","disableRightArrow","disableLeftArrow","yearsPerCalendar","initialYearShift","Math","floor","year","formatYearsCalendar","previousInitialDate","yearsMatrix","getFullYear","calculateInitialDate","shift$1","from","to","formatYearRangeTitle","copyTime","sourceDate","time","bsDatepickerReducer","action","displayOneMonthRange","isDisplayOneMonth","showPreviousMonth","monthIndex","preventChangeToNextMonth","viewMonth","getMonth","getFormatOptions","undefined","calculateReducer","daysCalendar","weeks","week","weekIndex","dayIndex","formatDaysCalendar","formatReducer","formattedMonth","isSameMonth","isSameDay","isSelectionStart","isSelectionEnd","isSelected","isInRange","isDateInRange","isDisabledDay","currentDate","isToday","customClasses","dcc","classes","reduce","previousValue","currentValue","join","tooltipText","tt","newDay","flagDaysCalendar","monthCalendar","hoveredMonth","rowIndex","newMonth","yearIndex","isSameYear","hoveredYear","flagYearsCalendar","flagReducer","middleDate","shiftViewDate","newState","navigateOffsetReducer","setFullDate","_time","getViewDate","isDateValid","dte","_date","BsDatepickerStore","_dispatcher","MiniState","_super","MiniStore","BsDatepickerContainerComponent","_renderer","_element","_positionService","valueChange","EventEmitter","animationState","isRangePicker","setStyle","nativeElement","ngOnInit","modifiers","flip","enabled","allowedPositions","event$","take","disable","isTopPosition","isOtherMonthsActive","selectFromOtherMonth","showTodayBtn","todayBtnLbl","todayPos","showClearBtn","clearBtnLbl","clearPos","customRangeBtnLbl","_b","emit","ngAfterViewInit","val","startTimepicker","writeValue","registerOnChange","classList","contains","positionServiceEnable","enable","ngOnDestroy","_e","Component","selector","providers","template","host","class","role","animations","Renderer2","ElementRef","PositioningService","ViewChild","BsDatepickerDirective","_elementRef","_viewContainerRef","cis","placement","triggers","outsideClick","outsideEsc","isDestroy$","Subject","bsValueChange","_dateInputFormat$","_datepicker","createLoader","onShown","onHidden","isOpen$","isOpen","isShown","_bsValue","getTime","bsConfig","initCurrentTime","listen","show","setConfig","ngOnChanges","changes","_datepickerRef","instance","setAttribute","takeUntil","toggle","provide","useValue","attach","position","attachment","bsValue","hide","_f","_g","selectRootElement","focus","dispose","complete","Directive","exportAs","ViewContainerRef","ComponentLoaderFactory","Input","Output","BsDatepickerInlineConfig","BsDatepickerInlineContainerComponent","_positioningService","BsDatepickerInlineDirective","BsDaterangepickerInlineConfig","apply","BsDaterangepickerContainerComponent","_rangeStack","dateRange","endTimepicker","rangesProcessing","maxDateRange","setMaxDateRangeOnCalendar","currentSelection","maxDateValueInMilliseconds","maxDateRangeInMilliseconds","setDate","getDate","BsDaterangepickerInlineContainerComponent","BsDaterangepickerInlineDirective","range","BS_DATEPICKER_VALUE_ACCESSOR","NG_VALUE_ACCESSOR","useExisting","forwardRef","BsDatepickerInputDirective","multi","BS_DATEPICKER_VALIDATOR","NG_VALIDATORS","_picker","_elRef","changeDetection","_onChange","Function","_onTouched","_validatorChange","setBsValue","_setInputValue","_value","markForCheck","dateInputFormat$","distinctUntilChanged","onKeydownEvent","keyCode","code","setProperty","onChange","target","validate","c","isDate","bsDate","invalid","registerOnValidatorChange","_localeKey","Error","parseDate","utcAsLocal","setDisabledState","removeAttribute","registerOnTouched","onBlur","blur","decorators","Host","ChangeDetectorRef","BsDaterangepickerConfig","BsDaterangepickerDirective","_rangeInputFormat$","BS_DATERANGEPICKER_VALUE_ACCESSOR","BsDaterangepickerInputDirective","BS_DATERANGEPICKER_VALIDATOR","rangeInputFormat$","start","end","errors","sort","a","_isFirstDateValid","_isSecondDateValid","_input","trimmedSeparator","trim","replace","split","_val","valueOf","DateFormatter","DatePickerInnerComponent","monthColLimit","yearColLimit","selectionDone","update","activeDateChange","stepDay","stepMonth","stepYear","modes","dateFormatter","_activeDate","uniqueId","random","initDate","activeDate","refreshView","checkIfActiveDateGotUpdated","firstChange","setCompareHandler","handler","compareHandlerDay","compareHandlerMonth","compareHandlerYear","compare","date1","date2","datepickerMode","setRefreshViewHandler","refreshViewHandlerDay","refreshViewHandlerMonth","refreshViewHandlerYear","dateFilter","isActive","dateObject","activeDateId","uid","createDateObject","fixTimeZone","selected","disabled","current","customClass","getCustomClassForDate","arr","size","arrays","splice","hours","isManual","indexOf","move","direction","expectedStep","toggleMode","_direction","maxMode","customClassObject","find","clazz","compareDateDisabled","date1Disabled","isDateDisabled","disabledDate","dayDisabled","startingDay","yearRange","showWeeks","formatDay","formatMonth","formatYear","formatDayHeader","formatDayTitle","formatMonthTitle","onlyCurrentMonth","shortcutPropagation","DATEPICKER_CONTROL_VALUE_ACCESSOR","DatePickerComponent","config","onTouched","_now","configureOptions","onUpdate","onSelectionDone","onActiveDateChange","_datePicker","DatepickerConfig","static","DayPickerComponent","datePicker","labels","rows","isBs3","self","that","firstDayOfMonth","difference","numDisplayedFromPreviousMonth","firstDate","_days","getDates","_dateObject","secondary","abbr","full","title","thursdayIndex","numWeeks","curWeek","getISO8601WeekNumber","d1","d2","startDate","checkDate","setMonth","round","MonthPickerComponent","YearPickerComponent","getStartingYear","BsCustomDatesViewComponent","onSelect","selectFromRanges","ChangeDetectionStrategy","OnPush","BsNavigationDirection","BsDatepickerDayDecoratorComponent","customTodayClass","addClass","className","BsDatepickerNavigationViewComponent","onNavigate","onViewMode","navTo","down","DOWN","UP","BsDaysCalendarViewComponent","onHover","onHoverWeek","isiOS","test","navigator","platform","maxTouchPoints","isShowTooltip","selectDay","selectWeek","selectWeekDateRange","selectedDay","lastDayOfRange","reverse","isWeekHovered","isOtherMonthHovered","dateData","BsMonthCalendarViewComponent","hoverMonth","ampm","minutes","BsYearsCalendarViewComponent","viewYear","hoverYear","BsDatepickerModule","forRoot","ngModule","TimepickerActions","NgModule","imports","CommonModule","TooltipModule","TimepickerModule","declarations","BsCalendarLayoutComponent","BsCurrentDateViewComponent","BsTimepickerViewComponent","entryComponents","exports","DatepickerModule","FormsModule"],"mappings":"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","sourcesContent":["import { Injectable } from '@angular/core';\nimport {\n DatepickerRenderOptions,\n BsDatepickerViewMode,\n DatepickerDateCustomClasses,\n DatepickerDateTooltipText\n} from './models';\nimport { BsCustomDates } from './themes/bs/bs-custom-dates-view.component';\n\n\n/**\n * For date range picker there are `BsDaterangepickerConfig` which inherits all properties,\n * except `displayMonths`, for range picker it default to `2`\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class BsDatepickerConfig implements DatepickerRenderOptions {\n /** sets use adaptive position */\n adaptivePosition = false;\n /** sets use UTC date time format */\n useUtc = false;\n /** turn on/off animation */\n isAnimated = false;\n value?: Date | Date[];\n isDisabled?: boolean;\n /**\n * Default min date for all date/range pickers\n */\n minDate?: Date;\n /**\n * Default max date for all date/range pickers\n */\n maxDate?: Date;\n /**\n * The view that the datepicker should start in\n */\n startView: BsDatepickerViewMode = 'day';\n /**\n * Default date custom classes for all date/range pickers\n */\n dateCustomClasses?: DatepickerDateCustomClasses[];\n /**\n * Default tooltip text for all date/range pickers\n */\n dateTooltipTexts?: DatepickerDateTooltipText[];\n /**\n * Disable specific days, e.g. [0,6] will disable all Saturdays and Sundays\n */\n daysDisabled?: number[];\n /**\n * Disable specific dates\n */\n datesDisabled?: Date[];\n /**\n * Show one months for special cases (only for dateRangePicker)\n * 1. maxDate is equal to today's date\n * 2. minDate's month is equal to maxDate's month\n */\n displayOneMonthRange?: boolean;\n /**\n * Enable specific dates\n */\n datesEnabled?: Date[];\n /**\n * Makes dates from other months active\n */\n selectFromOtherMonth?: boolean;\n\n /**\n * Allows select first date of the week by click on week number\n */\n selectWeek?: boolean;\n\n /**\n * Allows select daterange as first and last day of week by click on week number (dateRangePicker only)\n */\n selectWeekDateRange?: boolean;\n\n /**\n * Shows previous and current month, instead of current and next (dateRangePicker only)\n */\n showPreviousMonth?: boolean;\n\n /**\n * Prevents change to next month for right calendar in two calendars view (dateRangePicker only)\n */\n preventChangeToNextMonth?: boolean;\n\n /**\n * Add class to current day\n */\n customTodayClass?: string;\n\n /**\n * Default mode for all date pickers\n */\n minMode?: BsDatepickerViewMode;\n\n /**\n * If true, returns focus to the datepicker / daterangepicker input after date selection\n */\n returnFocusToInput = false;\n\n /** CSS class which will be applied to datepicker container,\n * usually used to set color theme\n */\n containerClass = 'theme-green';\n\n // DatepickerRenderOptions\n displayMonths = 1;\n /**\n * Allows to hide week numbers in datepicker\n */\n showWeekNumbers = true;\n\n dateInputFormat = 'L';\n // range picker\n rangeSeparator = ' - ';\n /**\n * Date format for date range input field\n */\n rangeInputFormat = 'L';\n\n /**\n * Predefined ranges\n */\n ranges?: BsCustomDates[];\n\n /**\n * Max Date Range in days\n */\n maxDateRange?: number;\n\n // DatepickerFormatOptions\n monthTitle = 'MMMM';\n yearTitle = 'YYYY';\n dayLabel = 'D';\n monthLabel = 'MMMM';\n yearLabel = 'YYYY';\n weekNumbers = 'w';\n\n /**\n * Shows 'today' button\n */\n showTodayButton = false;\n\n /**\n * Shows clear button\n */\n showClearButton = false;\n\n /**\n * Positioning of 'today' button\n */\n todayPosition = 'center';\n\n /**\n * Positioning of 'clear' button\n */\n clearPosition = 'right';\n\n /**\n * Label for 'today' button\n */\n todayButtonLabel = 'Today';\n\n /**\n * Label for 'clear' button\n */\n clearButtonLabel = 'Clear';\n\n /**\n * Label for 'custom range' button\n */\n customRangeButtonLabel = 'Custom Range';\n\n /**\n * Shows timepicker under datepicker\n */\n withTimepicker = false;\n /**\n * Set current hours, minutes, seconds and milliseconds for bsValue\n */\n initCurrentTime?: boolean;\n}\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from) {\r\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\r\n to[j] = from[i];\r\n return to;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n animate,\n style,\n AnimationTriggerMetadata,\n state,\n transition,\n trigger\n} from '@angular/animations';\n\nexport const DATEPICKER_ANIMATION_TIMING = '220ms cubic-bezier(0, 0, 0.2, 1)';\n\nexport const datepickerAnimation: AnimationTriggerMetadata =\n trigger('datepickerAnimation', [\n state('animated-down', style({ height: '*', overflow: 'hidden'})),\n transition('* => animated-down', [\n style({ height: 0, overflow: 'hidden' }),\n animate(DATEPICKER_ANIMATION_TIMING)\n ]),\n state('animated-up', style({ height: '*', overflow: 'hidden'})),\n transition('* => animated-up', [\n style({ height: '*', overflow: 'hidden' }),\n animate(DATEPICKER_ANIMATION_TIMING)\n ]),\n transition('* => unanimated', animate('0s'))\n ]);\n","// datepicker container component\nimport { BsCustomDates } from '../themes/bs/bs-custom-dates-view.component';\nimport { BsDatepickerEffects } from '../reducer/bs-datepicker.effects';\nimport { Observable, Subscription } from 'rxjs';\nimport {\n BsDatepickerViewMode,\n BsNavigationEvent,\n CalendarCellViewModel,\n CellHoverEvent,\n DatepickerRenderOptions,\n DatepickerDateCustomClasses,\n DatepickerDateTooltipText,\n DaysCalendarViewModel,\n DayViewModel,\n MonthsCalendarViewModel,\n WeekViewModel,\n YearsCalendarViewModel\n} from '../models';\n\nexport abstract class BsDatepickerAbstractComponent {\n containerClass = '';\n isOtherMonthsActive?: boolean;\n showTodayBtn?: boolean;\n todayBtnLbl?: string;\n todayPos?: string;\n showClearBtn?: boolean;\n clearBtnLbl?: string;\n clearPos?: string;\n\n _effects?: BsDatepickerEffects;\n customRanges: BsCustomDates[] = [];\n customRangeBtnLbl?: string;\n chosenRange: Date[] = [];\n\n multipleCalendars?: boolean;\n\n isRangePicker?: boolean;\n withTimepicker?: boolean;\n\n set minDate(value: Date|undefined) {\n this._effects?.setMinDate(value);\n }\n\n set maxDate(value: Date|undefined) {\n this._effects?.setMaxDate(value);\n }\n set daysDisabled(value: number[]|undefined) {\n this._effects?.setDaysDisabled(value);\n }\n set datesDisabled(value: Date[]|undefined) {\n this._effects?.setDatesDisabled(value);\n }\n\n set datesEnabled(value: Date[]|undefined) {\n this._effects?.setDatesEnabled(value);\n }\n\n set isDisabled(value: boolean|undefined) {\n this._effects?.setDisabled(value);\n }\n\n set dateCustomClasses(value: DatepickerDateCustomClasses[]|undefined) {\n this._effects?.setDateCustomClasses(value);\n }\n\n set dateTooltipTexts(value: DatepickerDateTooltipText[]|undefined) {\n this._effects?.setDateTooltipTexts(value);\n }\n\n viewMode?: Observable<BsDatepickerViewMode|undefined>;\n monthsCalendar?: Observable<MonthsCalendarViewModel[]|undefined>;\n yearsCalendar?: Observable<YearsCalendarViewModel[]|undefined>;\n options$!: Observable<DatepickerRenderOptions|undefined>;\n\n _daysCalendar$!: Observable<DaysCalendarViewModel[]|undefined>;\n _daysCalendarSub = new Subscription();\n\n set daysCalendar$(value: Observable<DaysCalendarViewModel[]|undefined>) {\n this._daysCalendar$ = value;\n this._daysCalendarSub.unsubscribe();\n this._daysCalendarSub.add(this._daysCalendar$.subscribe(value => {\n this.multipleCalendars = !!value && value.length > 1;\n }));\n }\n\n get daysCalendar$(): Observable<DaysCalendarViewModel[]|undefined> {\n return this._daysCalendar$;\n }\n\n selectedTime?: Observable<Date[]|undefined>;\n selectedTimeSub = new Subscription();\n\n // todo: valorkin fix\n // eslint-disable-next-line @typescript-eslint/no-unused-vars,@typescript-eslint/no-empty-function\n setViewMode(event: BsDatepickerViewMode): void {}\n\n // eslint-disable-next-line\n navigateTo(event: BsNavigationEvent): void {}\n\n // eslint-disable-next-line\n dayHoverHandler(event: CellHoverEvent): void {}\n\n // eslint-disable-next-line\n weekHoverHandler(event: WeekViewModel): void {}\n\n // eslint-disable-next-line\n monthHoverHandler(event: CellHoverEvent): void {}\n\n // eslint-disable-next-line\n yearHoverHandler(event: CellHoverEvent): void {}\n\n // eslint-disable-next-line\n timeSelectHandler(date: Date, index: number): void {}\n\n // eslint-disable-next-line\n daySelectHandler(day: DayViewModel): void {}\n\n // eslint-disable-next-line\n monthSelectHandler(event: CalendarCellViewModel): void {}\n\n // eslint-disable-next-line\n yearSelectHandler(event: CalendarCellViewModel): void {}\n\n // eslint-disable-next-line\n setRangeOnCalendar(dates: BsCustomDates): void {}\n\n // eslint-disable-next-line\n setToday(): void {}\n\n // eslint-disable-next-line\n clearDate(): void {}\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n _stopPropagation(event: any): void {\n event.stopPropagation();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { TimeUnit } from 'ngx-bootstrap/chronos';\nimport { Action } from 'ngx-bootstrap/mini-ngrx';\nimport {\n BsDatepickerViewMode,\n BsViewNavigationEvent,\n CellHoverEvent,\n DatepickerRenderOptions,\n DatepickerDateCustomClasses,\n DatepickerDateTooltipText\n} from '../models';\n\n@Injectable()\nexport class BsDatepickerActions {\n static readonly CALCULATE = '[datepicker] calculate dates matrix';\n static readonly FORMAT = '[datepicker] format datepicker values';\n static readonly FLAG = '[datepicker] set flags';\n static readonly SELECT = '[datepicker] select date';\n static readonly NAVIGATE_OFFSET = '[datepicker] shift view date';\n static readonly NAVIGATE_TO = '[datepicker] change view date';\n static readonly SET_OPTIONS = '[datepicker] update render options';\n static readonly HOVER = '[datepicker] hover date';\n static readonly CHANGE_VIEWMODE = '[datepicker] switch view mode';\n\n static readonly SET_MIN_DATE = '[datepicker] set min date';\n static readonly SET_MAX_DATE = '[datepicker] set max date';\n static readonly SET_DAYSDISABLED = '[datepicker] set days disabled';\n static readonly SET_DATESDISABLED = '[datepicker] set dates disabled';\n static readonly SET_DATESENABLED = '[datepicker] set dates enabled';\n static readonly SET_IS_DISABLED = '[datepicker] set is disabled';\n static readonly SET_DATE_CUSTOM_CLASSES = '[datepicker] set date custom classes';\n static readonly SET_DATE_TOOLTIP_TEXTS = '[datepicker] set date tooltip texts';\n static readonly SET_LOCALE = '[datepicker] set datepicker locale';\n static readonly SELECT_TIME = '[datepicker] select time';\n\n static readonly SELECT_RANGE = '[daterangepicker] select dates range';\n\n calculate(): Action {\n return { type: BsDatepickerActions.CALCULATE };\n }\n\n format(): Action {\n return { type: BsDatepickerActions.FORMAT };\n }\n\n flag(): Action {\n return { type: BsDatepickerActions.FLAG };\n }\n\n select(date?: Date): Action {\n return {\n type: BsDatepickerActions.SELECT,\n payload: date\n };\n }\n\n selectTime(date: Date, index: number): Action {\n return {\n type: BsDatepickerActions.SELECT_TIME,\n payload: { date, index },\n };\n }\n\n changeViewMode(event: BsDatepickerViewMode): Action {\n return {\n type: BsDatepickerActions.CHANGE_VIEWMODE,\n payload: event\n };\n }\n\n navigateTo(event: BsViewNavigationEvent): Action {\n return {\n type: BsDatepickerActions.NAVIGATE_TO,\n payload: event\n };\n }\n\n navigateStep(step?: TimeUnit): Action {\n return {\n type: BsDatepickerActions.NAVIGATE_OFFSET,\n payload: step\n };\n }\n\n setOptions(options: DatepickerRenderOptions): Action {\n return {\n type: BsDatepickerActions.SET_OPTIONS,\n payload: options\n };\n }\n\n // date range picker\n selectRange(value?: (Date|undefined)[] | undefined): Action {\n return {\n type: BsDatepickerActions.SELECT_RANGE,\n payload: value\n };\n }\n\n hoverDay(event: CellHoverEvent): Action {\n return {\n type: BsDatepickerActions.HOVER,\n payload: event.isHovered ? event.cell.date : null\n };\n }\n\n minDate(date?: Date): Action {\n return {\n type: BsDatepickerActions.SET_MIN_DATE,\n payload: date\n };\n }\n\n maxDate(date?: Date): Action {\n return {\n type: BsDatepickerActions.SET_MAX_DATE,\n payload: date\n };\n }\n\n daysDisabled(days?: number[]): Action {\n return {\n type: BsDatepickerActions.SET_DAYSDISABLED,\n payload: days\n };\n }\n\n datesDisabled(dates?: Date[]): Action {\n return {\n type: BsDatepickerActions.SET_DATESDISABLED,\n payload: dates\n };\n }\n\n datesEnabled(dates?: Date[]): Action {\n return {\n type: BsDatepickerActions.SET_DATESENABLED,\n payload: dates\n };\n }\n\n isDisabled(value?: boolean): Action {\n return {\n type: BsDatepickerActions.SET_IS_DISABLED,\n payload: value\n };\n }\n\n setDateCustomClasses(value?: DatepickerDateCustomClasses[]): Action {\n return {\n type: BsDatepickerActions.SET_DATE_CUSTOM_CLASSES,\n payload: value\n };\n }\n\n setDateTooltipTexts(value?: DatepickerDateTooltipText[]): Action {\n return {\n type: BsDatepickerActions.SET_DATE_TOOLTIP_TEXTS,\n payload: value\n };\n }\n\n setLocale(locale: string): Action {\n return {\n type: BsDatepickerActions.SET_LOCALE,\n payload: locale\n };\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\n\n@Injectable()\nexport class BsLocaleService {\n private _defaultLocale = 'en';\n private _locale = new BehaviorSubject<string>(this._defaultLocale);\n private _localeChange: Observable<string> = this._locale.asObservable();\n\n get locale(): BehaviorSubject<string> {\n return this._locale;\n }\n\n get localeChange(): Observable<string> {\n return this._localeChange;\n }\n\n get currentLocale(): string {\n return this._locale.getValue();\n }\n\n use(locale: string): void {\n if (locale === this.currentLocale) {\n return;\n }\n\n this._locale.next(locale);\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { combineLatest, Observable, Subscription } from 'rxjs';\nimport { filter, map } from 'rxjs/operators';\n\nimport { BsDatepickerAbstractComponent } from '../base/bs-datepicker-container';\nimport { BsDatepickerConfig } from '../bs-datepicker.config';\nimport { BsLocaleService } from '../bs-locale.service';\n\nimport {\n BsDatepickerViewMode,\n BsNavigationEvent,\n CellHoverEvent,\n DatepickerDateCustomClasses,\n DatepickerDateTooltipText,\n DatepickerRenderOptions,\n DaysCalendarViewModel,\n DayViewModel,\n MonthsCalendarViewModel,\n YearsCalendarViewModel\n} from '../models';\nimport { BsDatepickerActions } from './bs-datepicker.actions';\nimport { BsDatepickerStore } from './bs-datepicker.store';\n\n\n@Injectable()\nexport class BsDatepickerEffects {\n viewMode?: Observable<BsDatepickerViewMode>;\n daysCalendar?: Observable<DaysCalendarViewModel[]>;\n monthsCalendar?: Observable<MonthsCalendarViewModel[]>;\n yearsCalendar?: Observable<YearsCalendarViewModel[]>;\n options?: Observable<DatepickerRenderOptions>;\n\n private _store?: BsDatepickerStore;\n private _subs: Subscription[] = [];\n\n constructor(private _actions: BsDatepickerActions,\n private _localeService: BsLocaleService) {\n }\n\n init(_bsDatepickerStore: BsDatepickerStore): BsDatepickerEffects {\n this._store = _bsDatepickerStore;\n\n return this;\n }\n\n /** setters */\n\n setValue(value?: Date): void {\n this._store?.dispatch(this._actions.select(value));\n }\n\n setRangeValue(value?: (Date|undefined)[] | undefined): void {\n this._store?.dispatch(this._actions.selectRange(value));\n }\n\n setMinDate(value?: Date): BsDatepickerEffects {\n this._store?.dispatch(this._actions.minDate(value));\n\n return this;\n }\n\n setMaxDate(value?: Date): BsDatepickerEffects {\n this._store?.dispatch(this._actions.maxDate(value));\n\n return this;\n }\n\n setDaysDisabled(value?: number[]): BsDatepickerEffects {\n this._store?.dispatch(this._actions.daysDisabled(value));\n\n return this;\n }\n\n setDatesDisabled(value?: Date[]): BsDatepickerEffects {\n this._store?.dispatch(this._actions.datesDisabled(value));\n\n return this;\n }\n\n setDatesEnabled(value?: Date[]): BsDatepickerEffects {\n this._store?.dispatch(this._actions.datesEnabled(value));\n\n return this;\n }\n\n setDisabled(value?: boolean): BsDatepickerEffects {\n this._store?.dispatch(this._actions.isDisabled(value));\n\n return this;\n }\n\n setDateCustomClasses(value?: DatepickerDateCustomClasses[]): BsDatepickerEffects {\n this._store?.dispatch(this._actions.setDateCustomClasses(value));\n\n return this;\n }\n\n setDateTooltipTexts(value?: DatepickerDateTooltipText[]): BsDatepickerEffects {\n this._store?.dispatch(this._actions.setDateTooltipTexts(value));\n\n return this;\n }\n\n /* Set rendering options */\n setOptions(_config: BsDatepickerConfig): BsDatepickerEffects {\n const _options = Object.assign({ locale: this._localeService.currentLocale }, _config);\n this._store?.dispatch(this._actions.setOptions(_options));\n\n return this;\n }\n\n /** view to mode bindings */\n setBindings(container: BsDatepickerAbstractComponent): BsDatepickerEffects {\n if (!this._store) {\n return this;\n }\n\n container.selectedTime = this._store.select(state => state.selectedTime)\n .pipe(filter(times => !!times));\n\n container.daysCalendar$ = this._store.select(state => state.flaggedMonths)\n .pipe(filter(months => !!months));\n\n // month calendar\n container.monthsCalendar = this._store.select(state => state.flaggedMonthsCalendar)\n .pipe(filter(months => !!months));\n\n // year calendar\n container.yearsCalendar = this._store.select(state => state.yearsCalendarFlagged)\n .pipe(filter(years => !!years));\n\n container.viewMode = this._store.select(state => state.view?.mode);\n\n container.options$ = combineLatest([\n this._store.select(state => state.showWeekNumbers),\n this._store.select(state => state.displayMonths)\n ])\n .pipe(map((latest) => ({\n showWeekNumbers: latest[0],\n displayMonths: latest[1]\n })\n ));\n\n return this;\n }\n\n /** event handlers */\n setEventHandlers(container: BsDatepickerAbstractComponent): BsDatepickerEffects {\n container.setViewMode = (event: BsDatepickerViewMode): void => {\n this._store?.dispatch(this._actions.changeViewMode(event));\n };\n\n container.navigateTo = (event: BsNavigationEvent): void => {\n this._store?.dispatch(this._actions.navigateStep(event.step));\n };\n\n container.dayHoverHandler = (event: CellHoverEvent): void => {\n const _cell = event.cell as DayViewModel;\n if (_cell.isOtherMonth || _cell.isDisabled) {\n return;\n }\n\n this._store?.dispatch(this._actions.hoverDay(event));\n _cell.isHovered = event.isHovered;\n };\n\n container.monthHoverHandler = (event: CellHoverEvent): void => {\n event.cell.isHovered = event.isHovered;\n };\n\n container.yearHoverHandler = (event: CellHoverEvent): void => {\n event.cell.isHovered = event.isHovered;\n };\n\n return this;\n }\n\n registerDatepickerSideEffects(): BsDatepickerEffects {\n if (!this._store) {\n return this;\n }\n\n this._subs.push(\n this._store.select(state => state.view).subscribe(() => {\n this._store?.dispatch(this._actions.calculate());\n })\n );\n\n // format calendar values on month model change\n this._subs.push(\n this._store\n .select(state => state.monthsModel)\n .pipe(\n filter(monthModel => !!monthModel)\n )\n .subscribe(() => this._store?.dispatch(this._actions.format()))\n );\n\n // flag day values\n this._subs.push(\n this._store\n .select(state => state.formattedMonths)\n .pipe(\n filter(month => !!month)\n )\n .subscribe(() => this._store?.dispatch(this._actions.flag()))\n );\n\n // flag day values\n this._subs.push(\n this._store\n .select(state => state.selectedDate)\n .pipe(\n filter(selectedDate => !!selectedDate)\n )\n .subscribe(() => this._store?.dispatch(this._actions.flag()))\n );\n\n // flag for date range picker\n this._subs.push(\n this._store\n .select(state => state.selectedRange)\n .pipe(\n filter(selectedRange => !!selectedRange)\n )\n .subscribe(() => this._store?.dispatch(this._actions.flag()))\n );\n\n // monthsCalendar\n this._subs.push(\n this._store\n .select(state => state.monthsCalendar)\n .subscribe(() => this._store?.dispatch(this._actions.flag()))\n );\n\n // years calendar\n this._subs.push(\n this._store\n .select(state => state.yearsCalendarModel)\n .pipe(\n filter(state => !!state)\n )\n .subscribe(() => this._store?.dispatch(this._actions.flag()))\n );\n\n // on hover\n this._subs.push(\n this._store\n .select(state => state.hoveredDate)\n .pipe(\n filter(hoveredDate => !!hoveredDate)\n )\n .subscribe(() => this._store?.dispatch(this._actions.flag()))\n );\n\n // date custom classes\n this._subs.push(\n this._store\n .select(state => state.dateCustomClasses)\n .pipe(\n filter(dateCustomClasses => !!dateCustomClasses)\n )\n .subscribe(() => this._store?.dispatch(this._actions.flag()))\n );\n\n // date tooltip texts\n this._subs.push(\n this._store\n .select(state => state.dateTooltipTexts)\n .pipe(\n filter(dateTooltipTexts => !!dateTooltipTexts)\n )\n .subscribe(() => this._store?.dispatch(this._actions.flag()))\n );\n\n // on locale change\n this._subs.push(\n this._localeService.localeChange\n .subscribe(locale => this._store?.dispatch(this._actions.setLocale(locale)))\n );\n\n return this;\n }\n\n destroy(): void {\n for (const sub of this._subs) {\n sub.unsubscribe();\n }\n }\n}\n","import {\n MonthViewOptions\n} from '../models';\n\nexport const defaultMonthOptions: MonthViewOptions = {\n width: 7,\n height: 6\n};\n\nexport const dayInMilliseconds = 24 * 60 * 60 * 1000;\n","import {\n BsDatepickerViewMode,\n DatepickerFormatOptions,\n DatepickerRenderOptions,\n DatepickerDateCustomClasses,\n DatepickerDateTooltipText,\n DaysCalendarModel,\n DaysCalendarViewModel,\n MonthsCalendarViewModel,\n MonthViewOptions,\n YearsCalendarViewModel\n} from '../models';\nimport { defaultMonthOptions } from './_defaults';\nimport { BsDatepickerConfig } from '../bs-datepicker.config';\n\nexport interface BsDatepickerViewState {\n date: Date;\n mode: BsDatepickerViewMode;\n}\n\nexport class BsDatepickerState\n implements DatepickerRenderOptions, DatepickerFormatOptions {\n // date picker\n selectedDate?: Date;\n // daterange picker\n selectedRange?: Date[];\n // time picker\n selectedTime?: Date[];\n\n // initial date of calendar, today by default\n view?: BsDatepickerViewState;\n\n isDisabled?: boolean;\n // bounds\n minDate?: Date;\n maxDate?: Date;\n daysDisabled?: number[];\n datesDisabled?: Date[];\n datesEnabled?: Date[];\n minMode?: BsDatepickerViewMode;\n dateCustomClasses?: DatepickerDateCustomClasses[];\n dateTooltipTexts?: DatepickerDateTooltipText[];\n\n hoveredDate?: Date;\n hoveredMonth?: Date;\n hoveredYear?: Date;\n\n // days calendar\n monthsModel?: DaysCalendarModel[];\n formattedMonths?: DaysCalendarViewModel[];\n flaggedMonths?: DaysCalendarViewModel[];\n selectFromOtherMonth?: boolean;\n showPreviousMonth?: boolean; // dateRangePicker only;\n preventChangeToNextMonth?: boolean; // dateRangePicker only;\n displayOneMonthRange?: boolean; // dateRangePicker only;\n\n // months calendar\n monthsCalendar?: MonthsCalendarViewModel[];\n flaggedMonthsCalendar?: MonthsCalendarViewModel[];\n\n // years calendar\n yearsCalendarModel?: YearsCalendarViewModel[];\n yearsCalendarFlagged?: YearsCalendarViewModel[];\n\n // options\n monthViewOptions?: MonthViewOptions;\n\n // DatepickerRenderOptions\n showWeekNumbers = true;\n displayMonths = 1;\n\n // DatepickerFormatOptions\n locale?: string;\n\n monthTitle?: string;\n yearTitle?: string;\n\n dayLabel?: string;\n monthLabel?: string;\n yearLabel?: string;\n\n weekNumbers?: string;\n}\n\nconst _initialView: BsDatepickerViewState = { date: new Date(), mode: 'day' };\n\nexport const initialDatepickerState: BsDatepickerState = Object.assign(\n new BsDatepickerConfig(),\n {\n locale: 'en',\n view: _initialView,\n selectedRange: [],\n selectedTime: [],\n monthViewOptions: defaultMonthOptions\n }\n);\n","import {\n getDay,\n isFirstDayOfWeek,\n isAfter,\n isBefore,\n shiftDate,\n endOf,\n startOf,\n isArray,\n isSame\n} from 'ngx-bootstrap/chronos';\nimport { BsDatepickerState } from '../reducer/bs-datepicker.state';\nimport { BsCustomDates } from '../themes/bs/bs-custom-dates-view.component';\n\nexport function getStartingDayOfCalendar(date: Date,\n options: { firstDayOfWeek?: number }): Date {\n if (isFirstDayOfWeek(date, options.firstDayOfWeek)) {\n return date;\n }\n\n const weekDay = getDay(date);\n const offset = calculateDateOffset(weekDay, options.firstDayOfWeek);\n\n return shiftDate(date, {day: -offset});\n}\n\nexport function calculateDateOffset(weekday: number, startingDayOffset?: number): number {\n const _startingDayOffset = Number(startingDayOffset);\n if (isNaN(_startingDayOffset)) {\n return 0;\n }\n\n if (_startingDayOffset === 0) {\n return weekday;\n }\n\n const offset = weekday - _startingDayOffset % 7;\n\n return offset < 0 ? offset + 7 : offset;\n}\n\nexport function isMonthDisabled(date: Date, min?: Date, max?: Date): boolean {\n const minBound = min && isBefore(endOf(date, 'month'), min, 'day');\n const maxBound = max && isAfter(startOf(date, 'month'), max, 'day');\n\n return minBound || maxBound || false;\n}\n\nexport function isYearDisabled(date: Date, min?: Date, max?: Date): boolean {\n const minBound = min && isBefore(endOf(date, 'year'), min, 'day');\n const maxBound = max && isAfter(startOf(date, 'year'), max, 'day');\n\n return minBound || maxBound || false;\n}\n\nexport function isDisabledDate(date?: Date, datesDisabled?: Date[], unit?: string): boolean {\n if (!datesDisabled || !isArray(datesDisabled) || !datesDisabled.length) {\n return false;\n }\n\n if (unit && unit === 'year') {\n return datesDisabled.some((dateDisabled: Date) => isSame(date, dateDisabled, 'year'));\n }\n\n return datesDisabled.some((dateDisabled: Date) => isSame(date, dateDisabled, 'date'));\n}\n\nexport function isEnabledDate(date?: Date, datesEnabled?: Date[], unit?: string): boolean {\n if (!datesEnabled || !isArray(datesEnabled) || !datesEnabled.length) {\n return false;\n }\n\n if (unit && unit === 'year') {\n return !datesEnabled.some((dateDisabled: Date) => isSame(date, dateDisabled, 'year'));\n }\n\n return !datesEnabled.some((enabledDate: Date) => isSame(date, enabledDate, 'date'));\n}\n\nexport function getYearsCalendarInitialDate(state: BsDatepickerState, calendarIndex = 0): Date | undefined {\n const model = state && state.yearsCalendarModel && state.yearsCalendarModel[calendarIndex];\n\n return model?.years[0] && model.years[0][0] && model.years[0][0].date;\n}\n\nexport function checkRangesWithMaxDate(ranges?: BsCustomDates[], maxDate?: Date): BsCustomDates[] | undefined {\n if (!ranges) return ranges;\n if (!maxDate) return ranges;\n if (!ranges.length && !ranges[0].value) return ranges;\n\n ranges.forEach((item: BsCustomDates) => {\n if (!item || !item.value) return ranges;\n if (item.value instanceof Date) return ranges;\n if (!(item.value instanceof Array && item.value.length) ) return ranges;\n item.value = compareDateWithMaxDateHelper(item.value, maxDate);\n return ranges;\n });\n return ranges;\n}\n\nexport function checkBsValue(date?: Array<Date> | Date | (Date | undefined)[], maxDate?: Date): Array<Date> | Date | (Date|undefined)[] | undefined {\n if (!date) return date;\n if (!maxDate) return date;\n if (date instanceof Array && !date.length) return date;\n if (date instanceof Date) return date;\n return compareDateWithMaxDateHelper(date, maxDate);\n}\n\nfunction compareDateWithMaxDateHelper <T>(date: T, maxDate: Date): T | Date[] {\n if (date instanceof Array) {\n const editedValues = date.map(item => {\n if (!item) return item;\n if (isAfter(item, maxDate, 'date')) item = maxDate;\n return item;\n });\n return editedValues;\n }\n return date;\n}\n\nexport function setCurrentTimeOnDateSelect(value?: Date): Date | undefined {\n if (!value) return value;\n\n return setCurrentTimeHelper(value);\n}\n\nexport function setDateRangesCurrentTimeOnDateSelect(value?: (Date|undefined)[]): (Date|undefined)[] | undefined {\n if (!value?.length) return value;\n\n value.map((date) => {\n if (!date) {\n return date;\n }\n return setCurrentTimeHelper(date);\n });\n\n return value;\n}\n\nfunction setCurrentTimeHelper(date: Date): Date {\n const now = new Date();\n date.setMilliseconds(now.getMilliseconds());\n date.setSeconds(now.getSeconds());\n date.setMinutes(now.getMinutes());\n date.setHours(now.getHours());\n return date;\n}\n","import { TimeUnit, shiftDate } from 'ngx-bootstrap/chronos';\n\nexport type CreateMatrixCb<T> = (date: Date) => T;\n\nexport interface MatrixOptions {\n height: number;\n width: number;\n initialDate: Date;\n shift: TimeUnit;\n}\n\nexport function createMatrix<T>(\n options: MatrixOptions,\n fn: CreateMatrixCb<T>\n): T[][] {\n let prevValue = options.initialDate;\n const matrix: T[][] = new Array(options.height);\n for (let i = 0; i < options.height; i++) {\n matrix[i] = new Array(options.width);\n for (let j = 0; j < options.width; j++) {\n matrix[i][j] = fn(prevValue);\n prevValue = shiftDate(prevValue, options.shift);\n }\n }\n\n return matrix;\n}\n","// user and model input should handle parsing and validating input values\nimport { getFirstDayOfMonth } from 'ngx-bootstrap/chronos';\n// should accept some options\n// todo: split out formatting\nimport { DaysCalendarModel, MonthViewOptions } from '../models';\nimport { getStartingDayOfCalendar } from '../utils/bs-calendar-utils';\nimport { createMatrix, MatrixOptions } from '../utils/matrix-utils';\n\nexport function calcDaysCalendar(\n startingDate: Date,\n options: MonthViewOptions\n): DaysCalendarModel {\n const firstDay = getFirstDayOfMonth(startingDate);\n const initialDate = getStartingDayOfCalendar(firstDay, options);\n\n // todo test\n const matrixOptions: MatrixOptions = {\n width: options.width || 0,\n height: options.height || 0,\n initialDate,\n shift: { day: 1 }\n };\n const daysMatrix = createMatrix<Date>(matrixOptions, date => date);\n\n return {\n daysMatrix,\n month: firstDay\n };\n}\n","import {\n DatepickerFormatOptions,\n DaysCalendarModel,\n DaysCalendarViewModel\n} from '../models';\nimport { formatDate, getLocale } from 'ngx-bootstrap/chronos';\n\nexport function formatDaysCalendar(daysCalendar: DaysCalendarModel,\n formatOptions: DatepickerFormatOptions,\n monthIndex: number): DaysCalendarViewModel {\n return {\n month: daysCalendar.month,\n monthTitle: formatDate(\n daysCalendar.month,\n formatOptions.monthTitle,\n formatOptions.locale\n ),\n yearTitle: formatDate(\n daysCalendar.month,\n formatOptions.yearTitle,\n formatOptions.locale\n ),\n weekNumbers: getWeekNumbers(\n daysCalendar.daysMatrix,\n formatOptions.weekNumbers,\n formatOptions.locale\n ),\n weekdays: getShiftedWeekdays(formatOptions.locale),\n weeks: daysCalendar.daysMatrix.map((week: Date[], weekIndex: number) => ({\n days: week.map((date: Date, dayIndex: number) => ({\n date,\n label: formatDate(date, formatOptions.dayLabel, formatOptions.locale),\n monthIndex,\n weekIndex,\n dayIndex\n }))\n })),\n hideLeftArrow: false,\n hideRightArrow: false,\n disableLeftArrow: false,\n disableRightArrow: false\n };\n}\n\nexport function getWeekNumbers(daysMatrix: Date[][],\n format?: string,\n locale?: string): string[] {\n return daysMatrix.map(\n (days: Date[]) => (days[0] ? formatDate(days[0], format, locale) : '')\n );\n}\n\nexport function getShiftedWeekdays(locale?: string): string[] {\n const _locale = getLocale(locale);\n const weekdays = _locale.weekdaysShort() as string[];\n const firstDayOfWeek = _locale.firstDayOfWeek();\n\n return [...weekdays.slice(firstDayOfWeek), ...weekdays.slice(0, firstDayOfWeek)];\n}\n","import { BsDatepickerViewMode } from '../models';\n\nexport function canSwitchMode(mode: BsDatepickerViewMode, minMode?: BsDatepickerViewMode): boolean {\n return minMode ? mode >= minMode : true;\n}\n","import {\n DatepickerFormatOptions,\n MonthsCalendarViewModel,\n CalendarCellViewModel\n} from '../models';\nimport { startOf, formatDate } from 'ngx-bootstrap/chronos';\nimport { createMatrix } from '../utils/matrix-utils';\n\nconst height = 4;\nconst width = 3;\nconst shift = { month: 1 };\n\nexport function formatMonthsCalendar(\n viewDate: Date,\n formatOptions: DatepickerFormatOptions\n): MonthsCalendarViewModel {\n const initialDate = startOf(viewDate, 'year');\n const matrixOptions = { width, height, initialDate, shift };\n const monthMatrix = createMatrix<\n CalendarCellViewModel\n >(matrixOptions, date => ({\n date,\n label: formatDate(date, formatOptions.monthLabel, formatOptions.locale)\n }));\n\n return {\n months: monthMatrix,\n monthTitle: '',\n yearTitle: formatDate(\n viewDate,\n formatOptions.yearTitle,\n formatOptions.locale\n ),\n hideRightArrow: false,\n hideLeftArrow: false,\n disableRightArrow: false,\n disableLeftArrow: false\n };\n}\n","import {\n DatepickerFormatOptions,\n YearsCalendarViewModel,\n CalendarCellViewModel\n} from '../models';\nimport { shiftDate, formatDate } from 'ngx-bootstrap/chronos';\nimport { createMatrix } from '../utils/matrix-utils';\n\nconst height = 4;\nconst width = 4;\nexport const yearsPerCalendar = height * width;\nexport const initialYearShift = (Math.floor(yearsPerCalendar / 2) - 1) * -1;\nconst shift = { year: 1 };\n\nexport function formatYearsCalendar(\n viewDate: Date,\n formatOptions: DatepickerFormatOptions,\n previousInitialDate?: Date\n): YearsCalendarViewModel {\n const initialDate = calculateInitialDate(viewDate, previousInitialDate);\n const matrixOptions = { width, height, initialDate, shift };\n const yearsMatrix = createMatrix<\n CalendarCellViewModel\n >(matrixOptions, date => ({\n date,\n label: formatDate(date, formatOptions.yearLabel, formatOptions.locale)\n }));\n const yearTitle = formatYearRangeTitle(yearsMatrix, formatOptions);\n\n return {\n years: yearsMatrix,\n monthTitle: '',\n yearTitle,\n hideLeftArrow: false,\n hideRightArrow: false,\n disableLeftArrow: false,\n disableRightArrow: false\n };\n}\n\nfunction calculateInitialDate(viewDate: Date, previousInitialDate?: Date): Date {\n if (previousInitialDate\n && viewDate.getFullYear() >= previousInitialDate.getFullYear()\n && viewDate.getFullYear() < previousInitialDate.getFullYear() + yearsPerCalendar) {\n return previousInitialDate;\n }\n\n return shiftDate(viewDate, { year: initialYearShift });\n}\n\nfunction formatYearRangeTitle(\n yearsMatrix: CalendarCellViewModel[][],\n formatOptions: DatepickerFormatOptions\n): string {\n const from = formatDate(\n yearsMatrix[0][0].date,\n formatOptions.yearTitle,\n formatOptions.locale\n );\n const to = formatDate(\n yearsMatrix[height - 1][width - 1].date,\n formatOptions.yearTitle,\n formatOptions.locale\n );\n\n return `${from} - ${to}`;\n}\n","export function copyTime(sourceDate: Date, time: Date) {\n sourceDate.setHours(time.getHours());\n sourceDate.setMinutes(time.getMinutes());\n sourceDate.setSeconds(time.getSeconds());\n sourceDate.setMilliseconds(time.getMilliseconds());\n}\n","import { BsDatepickerState, BsDatepickerViewState, initialDatepickerState } from './bs-datepicker.state';\nimport { Action } from 'ngx-bootstrap/mini-ngrx';\nimport { BsDatepickerActions } from './bs-datepicker.actions';\nimport { calcDaysCalendar } from '../engine/calc-days-calendar';\nimport { formatDaysCalendar } from '../engine/format-days-calendar';\nimport { flagDaysCalendar } from '../engine/flag-days-calendar';\nimport {\n setFullDate,\n shiftDate,\n isArray,\n isDateValid,\n startOf,\n getLocale,\n isAfter,\n isBefore,\n isSame\n} from 'ngx-bootstrap/chronos';\nimport { canSwitchMode } from '../engine/view-mode';\nimport { formatMonthsCalendar } from '../engine/format-months-calendar';\nimport { flagMonthsCalendar } from '../engine/flag-months-calendar';\nimport { formatYearsCalendar, initialYearShift, yearsPerCalendar } from '../engine/format-years-calendar';\nimport { flagYearsCalendar } from '../engine/flag-years-calendar';\nimport { BsViewNavigationEvent, DatepickerFormatOptions, BsDatepickerViewMode } from '../models';\nimport { getYearsCalendarInitialDate } from '../utils/bs-calendar-utils';\nimport { copyTime } from '../utils/copy-time-utils';\n\n\nexport function bsDatepickerReducer(state: BsDatepickerState = initialDatepickerState,\n action: Action): BsDatepickerState {\n switch (action.type) {\n case BsDatepickerActions.CALCULATE: {\n return calculateReducer(state);\n }\n\n case BsDatepickerActions.FORMAT: {\n return formatReducer(state);\n }\n\n case BsDatepickerActions.FLAG: {\n return flagReducer(state);\n }\n\n case BsDatepickerActions.NAVIGATE_OFFSET: {\n return navigateOffsetReducer(state, action);\n }\n\n case BsDatepickerActions.NAVIGATE_TO: {\n const payload: BsViewNavigationEvent = action.payload;\n if (!state.view || !payload.unit) {\n return state;\n }\n\n const date = setFullDate(state.view.date, payload.unit);\n let newState;\n let mode: BsDatepickerViewMode;\n if (canSwitchMode(payload.viewMode, state.minMode)) {\n mode = payload.viewMode;\n newState = { view: { date, mode } };\n } else {\n mode = state.view.mode;\n newState = { selectedDate: date, view: { date, mode } };\n }\n\n return Object.assign({}, state, newState);\n }\n\n case BsDatepickerActions.CHANGE_VIEWMODE: {\n if (!canSwitchMode(action.payload, state.minMode) || !state.view) {\n return state;\n }\n\n const date = state.view.date;\n const mode = action.payload;\n const newState = { view: { date, mode } };\n\n return Object.assign({}, state, newState);\n }\n\n case BsDatepickerActions.HOVER: {\n return Object.assign({}, state, { hoveredDate: action.payload });\n }\n\n case BsDatepickerActions.SELECT: {\n if (!state.view) {\n return state;\n }\n\n const newState = {\n selectedDate: action.payload,\n view: state.view\n };\n\n if (Array.isArray(state.selectedTime)) {\n const _time = state.selectedTime[0];\n if (_time) {\n copyTime(newState.selectedDate, _time);\n }\n }\n\n const mode = state.view.mode;\n const _date = action.payload || state.view.date;\n const date = getViewDate(_date, state.minDate, state.maxDate);\n newState.view = { mode, date };\n\n return Object.assign({}, state, newState);\n }\n\n case BsDatepickerActions.SELECT_TIME: {\n const {date, index} = action.payload;\n const selectedTime = state.selectedTime ? [...state.selectedTime] : [];\n selectedTime[index] = date;\n return Object.assign({}, state, { selectedTime });\n }\n\n case BsDatepickerActions.SET_OPTIONS: {\n if (!state.view) {\n return state;\n }\n\n const newState = action.payload;\n // preserve view mode\n const mode = newState.minMode ? newState.minMode : state.view.mode;\n const _viewDate = isDateValid(newState.value) && newState.value\n || isArray(newState.value) && isDateValid(newState.value[0]) && newState.value[0]\n || state.view.date;\n const date = getViewDate(_viewDate, newState.minDate, newState.maxDate);\n newState.view = { mode, date };\n // update selected value\n if (newState.value) {\n // if new value is array we work with date range\n if (isArray(newState.value)) {\n newState.selectedRange = newState.value;\n newState.selectedTime = newState.value.map((i: Date) => i);\n }\n\n // if new value is a date -> datepicker\n if (newState.value instanceof Date) {\n newState.selectedDate = newState.value;\n newState.selectedTime = [newState.value];\n }\n\n // provided value is not supported :)\n // need to report it somehow\n }\n\n return Object.assign({}, state, newState);\n }\n\n // date range picker\n case BsDatepickerActions.SELECT_RANGE: {\n if (!state.view) {\n return state;\n }\n\n const newState = {\n selectedRange: action.payload,\n view: state.view\n };\n\n newState.selectedRange.forEach((dte: Date, index: number) => {\n if (Array.isArray(state.selectedTime)) {\n const _time = state.selectedTime[index];\n if (_time) {\n copyTime(dte, _time);\n }\n }\n });\n\n const mode = state.view.mode;\n const _date = action.payload && action.payload[0] || state.view.date;\n const date = getViewDate(_date, state.minDate, state.maxDate);\n newState.view = { mode, date };\n\n return Object.assign({}, state, newState);\n }\n\n case BsDatepickerActions.SET_MIN_DATE: {\n return Object.assign({}, state, {\n minDate: action.payload\n });\n }\n case BsDatepickerActions.SET_MAX_DATE: {\n return Object.assign({}, state, {\n maxDate: action.payload\n });\n }\n case BsDatepickerActions.SET_IS_DISABLED: {\n return Object.assign({}, state, {\n isDisabled: action.payload\n });\n }\n case BsDatepickerActions.SET_DATE_CUSTOM_CLASSES: {\n return Object.assign({}, state, {\n dateCustomClasses: action.payload\n });\n }\n case BsDatepickerActions.SET_DATE_TOOLTIP_TEXTS: {\n return Object.assign({}, state, {\n dateTooltipTexts: action.payload\n });\n }\n\n default:\n return state;\n }\n}\n\nfunction calculateReducer(state: BsDatepickerState): BsDatepickerState {\n if (!state.view) {\n return state;\n }\n\n // how many calendars\n let displayMonths: number | undefined;\n if (state.displayOneMonthRange &&\n isDisplayOneMonth(state.view.date, state.minDate, state.maxDate)) {\n displayMonths = 1;\n } else {\n displayMonths = state.displayMonths || 1;\n }\n\n // use selected date on initial rendering if set\n let viewDate = state.view.date;\n\n if (state.view.mode === 'day' && state.monthViewOptions) {\n if (state.showPreviousMonth && state.selectedRange && state.selectedRange.length === 0) {\n viewDate = shiftDate(viewDate, { month: -1 });\n }\n\n state.monthViewOptions.firstDayOfWeek = getLocale(state.locale).firstDayOfWeek();\n let monthsModel = new Array(displayMonths);\n for (let monthIndex = 0; monthIndex < displayMonths; monthIndex++) {\n // todo: for unlinked calendars it will be harder\n monthsModel[monthIndex] = calcDaysCalendar(\n viewDate,\n state.monthViewOptions\n );\n viewDate = shiftDate(viewDate, { month: 1 });\n }\n // Check if parameter enabled and check if it's not months navigation event\n if (state.preventChangeToNextMonth && state.flaggedMonths && state.hoveredDate) {\n const viewMonth = calcDaysCalendar(state.view.date, state.monthViewOptions);\n // Check if viewed right month same as in flaggedMonths state, then override months model with flaggedMonths\n if (state.flaggedMonths.length && state.flaggedMonths[1].month.getMonth() === viewMonth.month.getMonth()) {\n monthsModel = state.flaggedMonths\n .map(item => {\n if (state.monthViewOptions) {\n return calcDaysCalendar(\n item.month,\n state.monthViewOptions\n );\n }\n return null;\n })\n .filter(item => item !== null);\n }\n }\n\n return Object.assign({}, state, { monthsModel });\n }\n\n if (state.view.mode === 'month') {\n const monthsCalendar = new Array(displayMonths);\n for (\n let calendarIndex = 0;\n calendarIndex < displayMonths;\n calendarIndex++\n ) {\n // todo: for unlinked calendars it will be harder\n monthsCalendar[calendarIndex] = formatMonthsCalendar(\n viewDate,\n getFormatOptions(state)\n );\n viewDate = shiftDate(viewDate, { year: 1 });\n }\n\n return Object.assign({}, state, { monthsCalendar });\n }\n\n if (state.view.mode === 'year') {\n const yearsCalendarModel = new Array(displayMonths);\n\n for (\n let calendarIndex = 0;\n calendarIndex < displayMonths;\n calendarIndex++\n ) {\n // todo: for unlinked calendars it will be harder\n yearsCalendarModel[calendarIndex] = formatYearsCalendar(\n viewDate,\n getFormatOptions(state),\n state.minMode === 'year' ? getYearsCalendarInitialDate(state, calendarIndex) : undefined\n );\n viewDate = shiftDate(viewDate, { year: yearsPerCalendar });\n }\n\n return Object.assign({}, state, { yearsCalendarModel });\n }\n\n return state;\n}\n\nfunction formatReducer(state: BsDatepickerState): BsDatepickerState {\n if (!state.view) {\n return state;\n }\n\n if (state.view.mode === 'day' && state.monthsModel) {\n const formattedMonths = state.monthsModel.map((month, monthIndex) =>\n formatDaysCalendar(month, getFormatOptions(state), monthIndex)\n );\n\n return Object.assign({}, state, { formattedMonths });\n }\n\n // how many calendars\n const displayMonths = state.displayMonths || 1;\n // check initial rendering\n // use selected date on initial rendering if set\n let viewDate = state.view.date;\n\n if (state.view.mode === 'month') {\n const monthsCalendar = new Array(displayMonths);\n for (\n let calendarIndex = 0;\n calendarIndex < displayMonths;\n calendarIndex++\n ) {\n // todo: for unlinked calendars it will be harder\n monthsCalendar[calendarIndex] = formatMonthsCalendar(\n viewDate,\n getFormatOptions(state)\n );\n viewDate = shiftDate(viewDate, { year: 1 });\n }\n\n return Object.assign({}, state, { monthsCalendar });\n }\n\n if (state.view.mode === 'year') {\n const yearsCalendarModel = new Array(displayMonths);\n for (\n let calendarIndex = 0;\n calendarIndex < displayMonths;\n calendarIndex++\n ) {\n // todo: for unlinked calendars it will be harder\n yearsCalendarModel[calendarIndex] = formatYearsCalendar(\n viewDate,\n getFormatOptions(state)\n );\n viewDate = shiftDate(viewDate, { year: 16 });\n }\n\n return Object.assign({}, state, { yearsCalendarModel });\n }\n\n return state;\n}\n\nfunction flagReducer(state: BsDatepickerState): BsDatepickerState {\n if (!state.view) {\n return state;\n }\n\n const displayMonths = isDisplayOneMonth(state.view.date, state.minDate, state.maxDate) ? 1 : state.displayMonths;\n if (state.formattedMonths && state.view.mode === 'day') {\n const flaggedMonths = state.formattedMonths.map(\n (formattedMonth, monthIndex) =>\n flagDaysCalendar(formattedMonth, {\n isDisabled: state.isDisabled,\n minDate: state.minDate,\n maxDate: state.maxDate,\n daysDisabled: state.daysDisabled,\n datesDisabled: state.datesDisabled,\n datesEnabled: state.datesEnabled,\n hoveredDate: state.hoveredDate,\n selectedDate: state.selectedDate,\n selectedRange: state.selectedRange,\n displayMonths,\n dateCustomClasses: state.dateCustomClasses,\n dateTooltipTexts: state.dateTooltipTexts,\n monthIndex\n })\n );\n\n return Object.assign({}, state, { flaggedMonths });\n }\n\n if (state.view.mode === 'month' && state.monthsCalendar) {\n const flaggedMonthsCalendar = state.monthsCalendar.map(\n (formattedMonth, monthIndex) =>\n flagMonthsCalendar(formattedMonth, {\n isDisabled: state.isDisabled,\n minDate: state.minDate,\n maxDate: state.maxDate,\n hoveredMonth: state.hoveredMonth,\n selectedDate: state.selectedDate,\n datesDisabled: state.datesDisabled,\n datesEnabled: state.datesEnabled,\n selectedRange: state.selectedRange,\n displayMonths,\n monthIndex\n })\n );\n\n return Object.assign({}, state, { flaggedMonthsCalendar });\n }\n\n if (state.view.mode === 'year' && state.yearsCalendarModel) {\n const yearsCalendarFlagged = state.yearsCalendarModel.map(\n (formattedMonth, yearIndex) =>\n flagYearsCalendar(formattedMonth, {\n isDisabled: state.isDisabled,\n minDate: state.minDate,\n maxDate: state.maxDate,\n hoveredYear: state.hoveredYear,\n selectedDate: state.selectedDate,\n datesDisabled: state.datesDisabled,\n datesEnabled: state.datesEnabled,\n selectedRange: state.selectedRange,\n displayMonths,\n yearIndex\n })\n );\n\n return Object.assign({}, state, { yearsCalendarFlagged });\n }\n\n return state;\n}\n\nfunction navigateOffsetReducer(state: BsDatepickerState, action: Action): BsDatepickerState {\n if (!state.view) {\n return state;\n }\n\n const date = shiftViewDate(state, action);\n if (!date) {\n return state;\n }\n\n const newState: {view: BsDatepickerViewState} = {\n view: {\n mode: state.view.mode,\n date\n }\n };\n\n return Object.assign({}, state, newState);\n}\n\nfunction shiftViewDate(state: BsDatepickerState, action: Action): Date | undefined {\n if (!state.view) {\n return undefined;\n }\n\n if (state.view.mode === 'year' && state.minMode === 'year') {\n const initialDate = getYearsCalendarInitialDate(state, 0);\n if (initialDate) {\n const middleDate = shiftDate(initialDate, { year: -initialYearShift });\n return shiftDate(middleDate, action.payload);\n }\n }\n\n return shiftDate(startOf(state.view.date, 'month'), action.payload);\n}\n\nfunction getFormatOptions(state: BsDatepickerState): DatepickerFormatOptions {\n return {\n locale: state.locale,\n\n monthTitle: state.monthTitle,\n yearTitle: state.yearTitle,\n\n dayLabel: state.dayLabel,\n monthLabel: state.monthLabel,\n yearLabel: state.yearLabel,\n\n weekNumbers: state.weekNumbers\n };\n}\n\n/**\n * if view date is provided (bsValue|ngModel) it should be shown\n * if view date is not provider:\n * if minDate>currentDate (default view value), show minDate\n * if maxDate<currentDate(default view value) show maxDate\n */\nfunction getViewDate(viewDate: Date | Date[], minDate?: Date, maxDate?: Date) {\n const _date = Array.isArray(viewDate) ? viewDate[0] : viewDate;\n\n if (minDate && isAfter(minDate, _date, 'day')) {\n return minDate;\n }\n\n if (maxDate && isBefore(maxDate, _date, 'day')) {\n return maxDate;\n }\n\n return _date;\n}\n\nfunction isDisplayOneMonth(viewDate: Date, minDate?: Date, maxDate?: Date) {\n if (maxDate && isSame(maxDate, viewDate, 'day')) {\n return true;\n }\n\n return minDate && maxDate && minDate.getMonth() === maxDate.getMonth();\n}\n","import {\n DaysCalendarViewModel,\n DayViewModel,\n WeekViewModel,\n DatepickerDateCustomClasses,\n DatepickerDateTooltipText\n} from '../models';\n\nimport {\n isAfter,\n isBefore,\n isDisabledDay,\n isSameDay,\n isSameMonth,\n shiftDate\n} from 'ngx-bootstrap/chronos';\n\nimport { isMonthDisabled, isDisabledDate, isEnabledDate } from '../utils/bs-calendar-utils';\n\nexport interface FlagDaysCalendarOptions {\n isDisabled: boolean;\n minDate: Date;\n maxDate: Date;\n daysDisabled: number[];\n datesDisabled: Date[];\n datesEnabled: Date[];\n hoveredDate: Date;\n selectedDate: Date;\n selectedRange: Date[];\n displayMonths: number;\n monthIndex: number;\n dateCustomClasses: DatepickerDateCustomClasses[];\n dateTooltipTexts: DatepickerDateTooltipText[];\n}\n\nexport function flagDaysCalendar(\n formattedMonth: DaysCalendarViewModel,\n options: Partial<FlagDaysCalendarOptions>\n): DaysCalendarViewModel {\n formattedMonth.weeks.forEach((week: WeekViewModel) => {\n week.days.forEach((day: DayViewModel, dayIndex: number) => {\n // datepicker\n const isOtherMonth = !isSameMonth(day.date, formattedMonth.month);\n\n const isHovered =\n !isOtherMonth && isSameDay(day.date, options.hoveredDate);\n // date range picker\n const isSelectionStart =\n !isOtherMonth &&\n options.selectedRange &&\n isSameDay(day.date, options.selectedRange[0]);\n const isSelectionEnd =\n !isOtherMonth &&\n options.selectedRange &&\n isSameDay(day.date, options.selectedRange[1]);\n\n const isSelected =\n (!isOtherMonth && isSameDay(day.date, options.selectedDate)) ||\n isSelectionStart ||\n isSelectionEnd;\n\n const isInRange =\n !isOtherMonth &&\n options.selectedRange &&\n isDateInRange(day.date, options.selectedRange, options.hoveredDate);\n\n const isDisabled =\n options.isDisabled ||\n isBefore(day.date, options.minDate, 'day') ||\n isAfter(day.date, options.maxDate, 'day') ||\n isDisabledDay(day.date, options.daysDisabled) ||\n isDisabledDate(day.date, options.datesDisabled) ||\n isEnabledDate(day.date, options.datesEnabled);\n\n const currentDate = new Date();\n const isToday = !isOtherMonth && isSameDay(day.date, currentDate);\n\n const customClasses = options.dateCustomClasses && options.dateCustomClasses\n .map(dcc => isSameDay(day.date, dcc.date) ? dcc.classes : [])\n .reduce((previousValue, currentValue) => previousValue.concat(currentValue), [])\n .join(' ')\n || '';\n\n const tooltipText = options.dateTooltipTexts && options.dateTooltipTexts\n .map(tt => isSameDay(day.date, tt.date) ? tt.tooltipText : '')\n .reduce((previousValue, currentValue) => {\n previousValue.push(currentValue);\n return previousValue;\n }, [] as string[])\n .join(' ')\n || '';\n\n // decide update or not\n const newDay = Object.assign({}, day, {\n isOtherMonth,\n isHovered,\n isSelected,\n isSelectionStart,\n isSelectionEnd,\n isInRange,\n isDisabled,\n isToday,\n customClasses,\n tooltipText\n });\n\n if (\n day.isOtherMonth !== newDay.isOtherMonth ||\n day.isHovered !== newDay.isHovered ||\n day.isSelected !== newDay.isSelected ||\n day.isSelectionStart !== newDay.isSelectionStart ||\n day.isSelectionEnd !== newDay.isSelectionEnd ||\n day.isDisabled !== newDay.isDisabled ||\n day.isInRange !== newDay.isInRange ||\n day.customClasses !== newDay.customClasses ||\n day.tooltipText !== newDay.tooltipText\n ) {\n week.days[dayIndex] = newDay;\n }\n });\n });\n\n // todo: add check for linked calendars\n formattedMonth.hideLeftArrow =\n options.isDisabled ||\n (!!options.monthIndex && options.monthIndex > 0 && options.monthIndex !== options.displayMonths);\n formattedMonth.hideRightArrow =\n options.isDisabled ||\n ((!!options.monthIndex || options.monthIndex === 0) && !!options.displayMonths && options.monthIndex < options.displayMonths &&\n options.monthIndex + 1 !== options.displayMonths);\n\n formattedMonth.disableLeftArrow = isMonthDisabled(\n shiftDate(formattedMonth.month, { month: -1 }),\n options.minDate,\n options.maxDate\n );\n formattedMonth.disableRightArrow = isMonthDisabled(\n shiftDate(formattedMonth.month, { month: 1 }),\n options.minDate,\n options.maxDate\n );\n return formattedMonth;\n}\n\nfunction isDateInRange(\n date: Date,\n selectedRange?: Date[],\n hoveredDate?: Date\n): boolean {\n if (!date || !selectedRange || !selectedRange[0]) {\n return false;\n }\n\n if (selectedRange[1]) {\n return date > selectedRange[0] && date <= selectedRange[1];\n }\n\n if (hoveredDate) {\n return date > selectedRange[0] && date <= hoveredDate;\n }\n\n return false;\n}\n","import { isSameMonth, shiftDate } from 'ngx-bootstrap/chronos';\nimport {\n MonthsCalendarViewModel,\n CalendarCellViewModel\n} from '../models';\nimport { isDisabledDate, isEnabledDate, isMonthDisabled, isYearDisabled } from '../utils/bs-calendar-utils';\n\nexport interface FlagMonthCalendarOptions {\n isDisabled: boolean;\n minDate: Date;\n maxDate: Date;\n hoveredMonth: Date;\n selectedDate: Date;\n selectedRange: Date[];\n datesDisabled: Date[];\n datesEnabled: Date[];\n displayMonths: number;\n monthIndex: number;\n}\n\nexport function flagMonthsCalendar(\n monthCalendar: MonthsCalendarViewModel,\n options: Partial<FlagMonthCalendarOptions>\n): MonthsCalendarViewModel {\n monthCalendar.months.forEach(\n (months: CalendarCellViewModel[], rowIndex: number) => {\n months.forEach((month: CalendarCellViewModel, monthIndex: number) => {\n let isSelected: boolean;\n const isHovered = isSameMonth(month.date, options.hoveredMonth);\n const isDisabled =\n options.isDisabled ||\n isDisabledDate(month.date, options.datesDisabled) ||\n isEnabledDate(month.date, options.datesEnabled) ||\n isMonthDisabled(month.date, options.minDate, options.maxDate);\n\n if (!options.selectedDate && options.selectedRange) {\n isSelected = isSameMonth(month.date, options.selectedRange[0]);\n if (!isSelected) {\n isSelected = isSameMonth(month.date, options.selectedRange[1]);\n }\n } else {\n isSelected = isSameMonth(month.date, options.selectedDate);\n }\n const newMonth = Object.assign(/*{},*/ month, {\n isHovered,\n isDisabled,\n isSelected\n });\n if (\n month.isHovered !== newMonth.isHovered ||\n month.isDisabled !== newMonth.isDisabled ||\n month.isSelected !== newMonth.isSelected\n ) {\n monthCalendar.months[rowIndex][monthIndex] = newMonth;\n }\n });\n }\n );\n\n // todo: add check for linked calendars\n monthCalendar.hideLeftArrow =\n !!options.monthIndex && options.monthIndex > 0 && options.monthIndex !== options.displayMonths;\n\n monthCalendar.hideRightArrow =\n (!!options.monthIndex || options.monthIndex === 0 )\n && (!!options.displayMonths || options.displayMonths === 0)\n && options.monthIndex < options.displayMonths\n && options.monthIndex + 1 !== options.displayMonths;\n\n monthCalendar.disableLeftArrow = isYearDisabled(\n shiftDate(monthCalendar.months[0][0].date, { year: -1 }),\n options.minDate,\n options.maxDate\n );\n monthCalendar.disableRightArrow = isYearDisabled(\n shiftDate(monthCalendar.months[0][0].date, { year: 1 }),\n options.minDate,\n options.maxDate\n );\n\n return monthCalendar;\n}\n","import { isSameYear, shiftDate } from 'ngx-bootstrap/chronos';\nimport { YearsCalendarViewModel, CalendarCellViewModel } from '../models';\nimport { isDisabledDate, isEnabledDate, isYearDisabled } from '../utils/bs-calendar-utils';\n\nexport interface FlagYearsCalendarOptions {\n isDisabled: boolean;\n minDate: Date;\n maxDate: Date;\n hoveredYear: Date;\n selectedDate: Date;\n selectedRange: Date[];\n datesDisabled: Date[];\n datesEnabled: Date[];\n displayMonths: number;\n yearIndex: number;\n}\n\nexport function flagYearsCalendar(\n yearsCalendar: YearsCalendarViewModel,\n options: Partial<FlagYearsCalendarOptions>\n): YearsCalendarViewModel {\n yearsCalendar.years.forEach(\n (years: CalendarCellViewModel[], rowIndex: number) => {\n years.forEach((year: CalendarCellViewModel, yearIndex: number) => {\n let isSelected: boolean;\n const isHovered = isSameYear(year.date, options.hoveredYear);\n const isDisabled =\n options.isDisabled ||\n isDisabledDate(year.date, options.datesDisabled, 'year') ||\n isEnabledDate(year.date, options.datesEnabled, 'year') ||\n isYearDisabled(year.date, options.minDate, options.maxDate);\n\n if (!options.selectedDate && options.selectedRange) {\n isSelected = isSameYear(year.date, options.selectedRange[0]);\n if (!isSelected) {\n isSelected = isSameYear(year.date, options.selectedRange[1]);\n }\n } else {\n isSelected = isSameYear(year.date, options.selectedDate);\n }\n\n const newMonth = Object.assign(/*{},*/ year, { isHovered, isDisabled, isSelected });\n if (\n year.isHovered !== newMonth.isHovered ||\n year.isDisabled !== newMonth.isDisabled ||\n year.isSelected !== newMonth.isSelected\n ) {\n yearsCalendar.years[rowIndex][yearIndex] = newMonth;\n }\n });\n }\n );\n\n // todo: add check for linked calendars\n yearsCalendar.hideLeftArrow =\n !!options.yearIndex && options.yearIndex > 0 && options.yearIndex !== options.displayMonths;\n yearsCalendar.hideRightArrow =\n !!options.yearIndex && !!options.displayMonths &&\n options.yearIndex < options.displayMonths &&\n options.yearIndex + 1 !== options.displayMonths;\n\n yearsCalendar.disableLeftArrow = isYearDisabled(\n shiftDate(yearsCalendar.years[0][0].date, { year: -1 }),\n options.minDate,\n options.maxDate\n );\n const i = yearsCalendar.years.length - 1;\n const j = yearsCalendar.years[i].length - 1;\n yearsCalendar.disableRightArrow = isYearDisabled(\n shiftDate(yearsCalendar.years[i][j].date, { year: 1 }),\n options.minDate,\n options.maxDate\n );\n\n return yearsCalendar;\n}\n","import { Injectable } from '@angular/core';\nimport { MiniStore, Action, MiniState } from 'ngx-bootstrap/mini-ngrx';\nimport { BsDatepickerState, initialDatepickerState } from './bs-datepicker.state';\nimport { BehaviorSubject } from 'rxjs';\nimport { bsDatepickerReducer } from './bs-datepicker.reducer';\n\n@Injectable()\nexport class BsDatepickerStore extends MiniStore<BsDatepickerState> {\n constructor() {\n const _dispatcher = new BehaviorSubject<Action>({\n type: '[datepicker] dispatcher init'\n });\n const state = new MiniState<BsDatepickerState>(\n initialDatepickerState,\n _dispatcher,\n bsDatepickerReducer\n );\n super(_dispatcher, bsDatepickerReducer, state);\n }\n}\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n EventEmitter,\n OnDestroy,\n OnInit,\n Renderer2,\n ViewChild\n} from '@angular/core';\n\nimport { take } from 'rxjs/operators';\nimport { Subscription } from 'rxjs';\n\nimport { getFullYear, getMonth } from 'ngx-bootstrap/chronos';\nimport { PositioningService } from 'ngx-bootstrap/positioning';\nimport { TimepickerComponent } from 'ngx-bootstrap/timepicker';\n\nimport { datepickerAnimation } from '../../datepicker-animations';\nimport { BsDatepickerAbstractComponent } from '../../base/bs-datepicker-container';\nimport { BsDatepickerConfig } from '../../bs-datepicker.config';\nimport { CalendarCellViewModel, DayViewModel } from '../../models';\nimport { BsDatepickerActions } from '../../reducer/bs-datepicker.actions';\nimport { BsDatepickerEffects } from '../../reducer/bs-datepicker.effects';\nimport { BsDatepickerStore } from '../../reducer/bs-datepicker.store';\n\n@Component({\n selector: 'bs-datepicker-container',\n providers: [BsDatepickerStore, BsDatepickerEffects],\n templateUrl: './bs-datepicker-view.html',\n host: {\n class: 'bottom',\n '(click)': '_stopPropagation($event)',\n role: 'dialog',\n 'aria-label': 'calendar'\n },\n animations: [datepickerAnimation]\n})\nexport class BsDatepickerContainerComponent extends BsDatepickerAbstractComponent\n implements OnInit, AfterViewInit, OnDestroy {\n\n set value(value: Date|undefined) {\n this._effects?.setValue(value);\n }\n\n valueChange: EventEmitter<Date> = new EventEmitter<Date>();\n animationState = 'void';\n isRangePicker = false;\n\n _subs: Subscription[] = [];\n\n @ViewChild('startTP') startTimepicker?: TimepickerComponent;\n\n constructor(\n _renderer: Renderer2,\n private _config: BsDatepickerConfig,\n private _store: BsDatepickerStore,\n private _element: ElementRef,\n private _actions: BsDatepickerActions,\n _effects: BsDatepickerEffects,\n private _positionService: PositioningService\n ) {\n super();\n this._effects = _effects;\n\n _renderer.setStyle(_element.nativeElement, 'display', 'block');\n _renderer.setStyle(_element.nativeElement, 'position', 'absolute');\n }\n\n ngOnInit(): void {\n this._positionService.setOptions({\n modifiers: { flip: { enabled: this._config.adaptivePosition } },\n allowedPositions: ['top', 'bottom']\n });\n\n this._positionService.event$?.pipe(take(1))\n .subscribe(() => {\n this._positionService.disable();\n\n if (this._config.isAnimated) {\n this.animationState = this.isTopPosition ? 'animated-up' : 'animated-down';\n\n return;\n }\n\n this.animationState = 'unanimated';\n });\n\n this.isOtherMonthsActive = this._config.selectFromOtherMonth;\n this.containerClass = this._config.containerClass;\n this.showTodayBtn = this._config.showTodayButton;\n this.todayBtnLbl = this._config.todayButtonLabel;\n this.todayPos = this._config.todayPosition;\n this.showClearBtn = this._config.showClearButton;\n this.clearBtnLbl = this._config.clearButtonLabel;\n this.clearPos = this._config.clearPosition;\n this.customRangeBtnLbl = this._config.customRangeButtonLabel;\n this.withTimepicker = this._config.withTimepicker;\n this._effects?.init(this._store)\n // intial state options\n .setOptions(this._config)\n // data binding view --> model\n .setBindings(this)\n // set event handlers\n .setEventHandlers(this)\n .registerDatepickerSideEffects();\n\n // todo: move it somewhere else\n // on selected date change\n this._subs.push(\n this._store\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .select((state: any) => state.selectedDate)\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .subscribe((date: any) => this.valueChange.emit(date))\n );\n\n this._store.dispatch(this._actions.changeViewMode(this._config.startView));\n }\n\n ngAfterViewInit(): void {\n this.selectedTimeSub.add(this.selectedTime?.subscribe((val) => {\n if (Array.isArray(val) && val.length >= 1) {\n this.startTimepicker?.writeValue(val[0]);\n }\n }));\n this.startTimepicker?.registerOnChange((val) => {\n this.timeSelectHandler(val, 0);\n });\n }\n\n get isTopPosition(): boolean {\n return this._element.nativeElement.classList.contains('top');\n }\n\n positionServiceEnable(): void {\n this._positionService.enable();\n }\n\n timeSelectHandler(date: Date, index: number) {\n this._store.dispatch(this._actions.selectTime(date, index));\n }\n\n daySelectHandler(day: DayViewModel): void {\n if (!day) {\n return;\n }\n\n const isDisabled = this.isOtherMonthsActive ? day.isDisabled : (day.isOtherMonth || day.isDisabled);\n\n if (isDisabled) {\n return;\n }\n\n this._store.dispatch(this._actions.select(day.date));\n }\n\n monthSelectHandler(day: CalendarCellViewModel): void {\n if (!day || day.isDisabled) {\n return;\n }\n\n this._store.dispatch(\n this._actions.navigateTo({\n unit: {\n month: getMonth(day.date),\n year: getFullYear(day.date)\n },\n viewMode: 'day'\n })\n );\n }\n\n yearSelectHandler(day: CalendarCellViewModel): void {\n if (!day || day.isDisabled) {\n return;\n }\n\n this._store.dispatch(\n this._actions.navigateTo({\n unit: {\n year: getFullYear(day.date)\n },\n viewMode: 'month'\n })\n );\n }\n\n setToday(): void {\n this._store.dispatch(this._actions.select(new Date()));\n }\n\n clearDate(): void {\n this._store.dispatch(this._actions.select(undefined));\n }\n\n ngOnDestroy(): void {\n for (const sub of this._subs) {\n sub.unsubscribe();\n }\n this.selectedTimeSub.unsubscribe();\n this._effects?.destroy();\n }\n}\n","import {\n AfterViewInit,\n ComponentRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n Renderer2,\n SimpleChanges,\n ViewContainerRef\n} from '@angular/core';\nimport { ComponentLoader, ComponentLoaderFactory } from 'ngx-bootstrap/component-loader';\nimport { BehaviorSubject, Observable, Subject, Subscription } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\nimport { BsDatepickerConfig } from './bs-datepicker.config';\nimport { BsDatepickerViewMode, DatepickerDateCustomClasses, DatepickerDateTooltipText } from './models';\nimport { BsDatepickerContainerComponent } from './themes/bs/bs-datepicker-container.component';\nimport { copyTime } from './utils/copy-time-utils';\nimport { checkBsValue, setCurrentTimeOnDateSelect } from './utils/bs-calendar-utils';\n\n@Directive({\n selector: '[bsDatepicker]',\n exportAs: 'bsDatepicker'\n})\nexport class BsDatepickerDirective implements OnInit, OnDestroy, OnChanges, AfterViewInit {\n /**\n * Placement of a datepicker. Accepts: \"top\", \"bottom\", \"left\", \"right\"\n */\n @Input() placement: 'top' | 'bottom' | 'left' | 'right' = 'bottom';\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n @Input() triggers = 'click';\n /**\n * Close datepicker on outside click\n */\n @Input() outsideClick = true;\n /**\n * A selector specifying the element the datepicker should be appended to.\n */\n @Input() container = 'body';\n\n @Input() outsideEsc = true;\n /**\n * Emits an event when the datepicker is shown\n */\n @Output() onShown: EventEmitter<unknown>;\n /**\n * Emits an event when the datepicker is hidden\n */\n @Output() onHidden: EventEmitter<unknown>;\n isOpen$: BehaviorSubject<boolean>;\n isDestroy$ = new Subject();\n /**\n * Indicates whether datepicker's content is enabled or not\n */\n @Input() isDisabled = false;\n /**\n * Minimum date which is available for selection\n */\n @Input() minDate?: Date;\n /**\n * Maximum date which is available for selection\n */\n @Input() maxDate?: Date;\n /**\n * Minimum view mode : day, month, or year\n */\n @Input() minMode?: BsDatepickerViewMode;\n /**\n * Disable Certain days in the week\n */\n @Input() daysDisabled?: number[];\n /**\n * Disable specific dates\n */\n @Input() datesDisabled?: Date[];\n /**\n * Enable specific dates\n */\n @Input() datesEnabled?: Date[];\n /**\n * Date custom classes\n */\n @Input() dateCustomClasses?: DatepickerDateCustomClasses[];\n /**\n * Date tooltip text\n */\n @Input() dateTooltipTexts?: DatepickerDateTooltipText[];\n /**\n * Emits when datepicker value has been changed\n */\n @Output() bsValueChange: EventEmitter<Date> = new EventEmitter();\n protected _subs: Subscription[] = [];\n private _datepicker: ComponentLoader<BsDatepickerContainerComponent>;\n private _datepickerRef?: ComponentRef<BsDatepickerContainerComponent>;\n private readonly _dateInputFormat$ = new Subject<string>();\n\n constructor(public _config: BsDatepickerConfig,\n private _elementRef: ElementRef,\n private _renderer: Renderer2,\n _viewContainerRef: ViewContainerRef,\n cis: ComponentLoaderFactory) {\n // todo: assign only subset of fields\n Object.assign(this, this._config);\n this._datepicker = cis.createLoader<BsDatepickerContainerComponent>(\n _elementRef,\n _viewContainerRef,\n _renderer\n );\n this.onShown = this._datepicker.onShown;\n this.onHidden = this._datepicker.onHidden;\n this.isOpen$ = new BehaviorSubject(this.isOpen);\n }\n\n /**\n * Returns whether or not the datepicker is currently being shown\n */\n @Input()\n get isOpen(): boolean {\n return this._datepicker.isShown;\n }\n\n set isOpen(value: boolean) {\n this.isOpen$.next(value);\n }\n\n _bsValue?: Date;\n\n /**\n * Initial value of datepicker\n */\n @Input()\n set bsValue(value: Date | undefined) {\n if (this._bsValue && value && this._bsValue.getTime() === value.getTime()) {\n return;\n }\n\n if (!this._bsValue && value && !this._config.withTimepicker) {\n const now = new Date();\n copyTime(value, now);\n }\n\n if (value && this.bsConfig?.initCurrentTime) {\n value = setCurrentTimeOnDateSelect(value);\n }\n\n this._bsValue = value;\n this.bsValueChange.emit(value);\n }\n\n get dateInputFormat$(): Observable<string> {\n return this._dateInputFormat$;\n }\n\n /**\n * Config object for datepicker\n */\n @Input() bsConfig?: Partial<BsDatepickerConfig>;\n\n ngOnInit(): void {\n this._datepicker.listen({\n outsideClick: this.outsideClick,\n outsideEsc: this.outsideEsc,\n triggers: this.triggers,\n show: () => this.show()\n });\n this.setConfig();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.bsConfig) {\n if (changes.bsConfig.currentValue?.initCurrentTime && changes.bsConfig.currentValue?.initCurrentTime !== changes.bsConfig.previousValue?.initCurrentTime && this._bsValue) {\n this._bsValue = setCurrentTimeOnDateSelect(this._bsValue);\n this.bsValueChange.emit(this._bsValue);\n }\n\n this.setConfig();\n this._dateInputFormat$.next(this.bsConfig && this.bsConfig.dateInputFormat);\n }\n\n if (!this._datepickerRef || !this._datepickerRef.instance) {\n return;\n }\n\n if (changes.minDate) {\n this._datepickerRef.instance.minDate = this.minDate;\n }\n\n if (changes.maxDate) {\n this._datepickerRef.instance.maxDate = this.maxDate;\n }\n\n if (changes.daysDisabled) {\n this._datepickerRef.instance.daysDisabled = this.daysDisabled;\n }\n\n if (changes.datesDisabled) {\n this._datepickerRef.instance.datesDisabled = this.datesDisabled;\n }\n\n if (changes.datesEnabled) {\n this._datepickerRef.instance.datesEnabled = this.datesEnabled;\n }\n\n if (changes.isDisabled) {\n if (this._elementRef?.nativeElement) {\n this._elementRef.nativeElement.setAttribute('readonly', this.isDisabled);\n }\n this._datepickerRef.instance.isDisabled = this.isDisabled;\n }\n\n if (changes.dateCustomClasses) {\n this._datepickerRef.instance.dateCustomClasses = this.dateCustomClasses;\n }\n\n if (changes.dateTooltipTexts) {\n this._datepickerRef.instance.dateTooltipTexts = this.dateTooltipTexts;\n }\n }\n\n ngAfterViewInit(): void {\n this.isOpen$.pipe(\n filter(isOpen => isOpen !== this.isOpen),\n takeUntil(this.isDestroy$)\n )\n .subscribe(() => this.toggle());\n }\n\n /**\n * Opens an element’s datepicker. This is considered a “manual” triggering of\n * the datepicker.\n */\n show(): void {\n if (this._datepicker.isShown) {\n return;\n }\n\n this.setConfig();\n\n this._datepickerRef = this._datepicker\n .provide({ provide: BsDatepickerConfig, useValue: this._config })\n .attach(BsDatepickerContainerComponent)\n .to(this.container)\n .position({ attachment: this.placement })\n .show({ placement: this.placement });\n\n // if date changes from external source (model -> view)\n this._subs.push(\n this.bsValueChange.subscribe((value: Date) => {\n if (this._datepickerRef) {\n this._datepickerRef.instance.value = value;\n }\n })\n );\n\n // if date changes from picker (view -> model)\n if (this._datepickerRef) {\n this._subs.push(\n this._datepickerRef.instance.valueChange.subscribe((value: Date) => {\n this.bsValue = value;\n this.hide();\n })\n );\n }\n }\n\n /**\n * Closes an element’s datepicker. This is considered a “manual” triggering of\n * the datepicker.\n */\n hide(): void {\n if (this.isOpen) {\n this._datepicker.hide();\n }\n for (const sub of this._subs) {\n sub.unsubscribe();\n }\n\n if (this._config.returnFocusToInput) {\n this._renderer.selectRootElement(this._elementRef.nativeElement).focus();\n }\n }\n\n /**\n * Toggles an element’s datepicker. This is considered a “manual” triggering\n * of the datepicker.\n */\n toggle(): void {\n if (this.isOpen) {\n return this.hide();\n }\n\n this.show();\n }\n\n /**\n * Set config for datepicker\n */\n setConfig(): void {\n this._config = Object.assign({}, this._config, this.bsConfig, {\n value: checkBsValue(this._bsValue, this.maxDate || this.bsConfig && this.bsConfig.maxDate),\n isDisabled: this.isDisabled,\n minDate: this.minDate || this.bsConfig && this.bsConfig.minDate,\n maxDate: this.maxDate || this.bsConfig && this.bsConfig.maxDate,\n daysDisabled: this.daysDisabled || this.bsConfig && this.bsConfig.daysDisabled,\n dateCustomClasses: this.dateCustomClasses || this.bsConfig && this.bsConfig.dateCustomClasses,\n dateTooltipTexts: this.dateTooltipTexts || this.bsConfig && this.bsConfig.dateTooltipTexts,\n datesDisabled: this.datesDisabled || this.bsConfig && this.bsConfig.datesDisabled,\n datesEnabled: this.datesEnabled || this.bsConfig && this.bsConfig.datesEnabled,\n minMode: this.minMode || this.bsConfig && this.bsConfig.minMode,\n initCurrentTime: this.bsConfig?.initCurrentTime\n });\n }\n\n ngOnDestroy(): void {\n this._datepicker.dispose();\n this.isOpen$.next(false);\n if (this.isDestroy$) {\n this.isDestroy$.next();\n this.isDestroy$.complete();\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BsDatepickerConfig } from './bs-datepicker.config';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BsDatepickerInlineConfig extends BsDatepickerConfig { }\n","import { Component, ElementRef, OnDestroy, OnInit, Renderer2 } from '@angular/core';\nimport { BsDatepickerContainerComponent } from './bs-datepicker-container.component';\n\nimport { BsDatepickerActions } from '../../reducer/bs-datepicker.actions';\nimport { BsDatepickerConfig } from '../../bs-datepicker.config';\nimport { BsDatepickerEffects } from '../../reducer/bs-datepicker.effects';\nimport { BsDatepickerStore } from '../../reducer/bs-datepicker.store';\n\nimport { PositioningService } from 'ngx-bootstrap/positioning';\nimport { datepickerAnimation } from '../../datepicker-animations';\n\n@Component({\n selector: 'bs-datepicker-inline-container',\n providers: [BsDatepickerStore, BsDatepickerEffects],\n templateUrl: './bs-datepicker-view.html',\n host: {\n '(click)': '_stopPropagation($event)'\n },\n animations: [datepickerAnimation]\n})\nexport class BsDatepickerInlineContainerComponent extends BsDatepickerContainerComponent\n implements OnInit, OnDestroy {\n\n constructor(\n _renderer: Renderer2,\n _config: BsDatepickerConfig,\n _store: BsDatepickerStore,\n _element: ElementRef,\n _actions: BsDatepickerActions,\n _effects: BsDatepickerEffects,\n _positioningService: PositioningService\n ) {\n super(_renderer, _config, _store, _element, _actions, _effects, _positioningService);\n\n _renderer.setStyle(_element.nativeElement, 'display', 'inline-block');\n _renderer.setStyle(_element.nativeElement, 'position', 'static');\n }\n}\n","import {\n ComponentRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n Renderer2,\n SimpleChanges,\n ViewContainerRef\n} from '@angular/core';\n\nimport { ComponentLoader, ComponentLoaderFactory } from 'ngx-bootstrap/component-loader';\n\nimport { Subscription } from 'rxjs';\nimport { BsDatepickerInlineConfig } from './bs-datepicker-inline.config';\n\nimport { BsDatepickerConfig } from './bs-datepicker.config';\nimport { DatepickerDateCustomClasses, DatepickerDateTooltipText } from './models';\nimport { BsDatepickerInlineContainerComponent } from './themes/bs/bs-datepicker-inline-container.component';\nimport { copyTime } from './utils/copy-time-utils';\nimport { checkBsValue, setCurrentTimeOnDateSelect } from './utils/bs-calendar-utils';\n\n@Directive({\n selector: 'bs-datepicker-inline',\n exportAs: 'bsDatepickerInline'\n})\nexport class BsDatepickerInlineDirective implements OnInit, OnDestroy, OnChanges {\n /**\n * Config object for datepicker\n */\n @Input() bsConfig?: Partial<BsDatepickerInlineConfig>;\n /**\n * Indicates whether datepicker is enabled or not\n */\n @Input() isDisabled = false;\n /**\n * Minimum date which is available for selection\n */\n @Input() minDate?: Date;\n /**\n * Maximum date which is available for selection\n */\n @Input() maxDate?: Date;\n /**\n * Date custom classes\n */\n @Input() dateCustomClasses?: DatepickerDateCustomClasses[];\n /**\n * Date tooltip text\n */\n @Input() dateTooltipTexts?: DatepickerDateTooltipText[];\n /**\n * Disable specific dates\n */\n @Input() datesEnabled?: Date[];\n /**\n * Enable specific dates\n */\n @Input() datesDisabled?: Date[];\n /**\n * Emits when datepicker value has been changed\n */\n @Output() bsValueChange: EventEmitter<Date> = new EventEmitter();\n protected _subs: Subscription[] = [];\n private readonly _datepicker: ComponentLoader<BsDatepickerInlineContainerComponent>;\n private _datepickerRef?: ComponentRef<BsDatepickerInlineContainerComponent>;\n\n constructor(\n public _config: BsDatepickerInlineConfig,\n private _elementRef: ElementRef,\n _renderer: Renderer2,\n _viewContainerRef: ViewContainerRef,\n cis: ComponentLoaderFactory\n ) {\n // todo: assign only subset of fields\n Object.assign(this, this._config);\n this._datepicker = cis.createLoader<BsDatepickerInlineContainerComponent>(\n _elementRef,\n _viewContainerRef,\n _renderer\n );\n }\n\n _bsValue?: Date;\n\n /**\n * Initial value of datepicker\n */\n @Input()\n set bsValue(value: Date | undefined) {\n if (this._bsValue === value) {\n return;\n }\n\n if (!this._bsValue && value && !this._config.withTimepicker) {\n const now = new Date();\n copyTime(value, now);\n }\n\n if (value && this.bsConfig?.initCurrentTime) {\n value = setCurrentTimeOnDateSelect(value);\n }\n\n this._bsValue = value;\n this.bsValueChange.emit(value);\n }\n\n ngOnInit(): void {\n this.setConfig();\n\n // if date changes from external source (model -> view)\n this._subs.push(\n this.bsValueChange.subscribe((value: Date) => {\n if (this._datepickerRef) {\n this._datepickerRef.instance.value = value;\n }\n })\n );\n\n // if date changes from picker (view -> model)\n if (this._datepickerRef) {\n this._subs.push(\n this._datepickerRef.instance.valueChange.subscribe((value: Date) => {\n this.bsValue = value;\n })\n );\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.bsConfig) {\n if (changes.bsConfig.currentValue?.initCurrentTime && changes.bsConfig.currentValue?.initCurrentTime !== changes.bsConfig.previousValue?.initCurrentTime && this._bsValue) {\n this._bsValue = setCurrentTimeOnDateSelect(this._bsValue);\n this.bsValueChange.emit(this._bsValue);\n }\n }\n\n if (!this._datepickerRef || !this._datepickerRef.instance) {\n return;\n }\n\n if (changes.minDate) {\n this._datepickerRef.instance.minDate = this.minDate;\n }\n\n if (changes.maxDate) {\n this._datepickerRef.instance.maxDate = this.maxDate;\n }\n\n if (changes.datesDisabled) {\n this._datepickerRef.instance.datesDisabled = this.datesDisabled;\n }\n\n if (changes.datesEnabled) {\n this._datepickerRef.instance.datesEnabled = this.datesEnabled;\n this._datepickerRef.instance.value = this._bsValue;\n }\n\n if (changes.isDisabled) {\n this._datepickerRef.instance.isDisabled = this.isDisabled;\n }\n\n if (changes.dateCustomClasses) {\n this._datepickerRef.instance.dateCustomClasses = this.dateCustomClasses;\n }\n\n if (changes.dateTooltipTexts) {\n this._datepickerRef.instance.dateTooltipTexts = this.dateTooltipTexts;\n }\n\n this.setConfig();\n }\n\n /**\n * Set config for datepicker\n */\n setConfig(): void {\n if (this._datepicker) {\n this._datepicker.hide();\n }\n\n this._config = Object.assign({}, this._config, this.bsConfig, {\n value: checkBsValue(this._bsValue, this.maxDate || this.bsConfig && this.bsConfig.maxDate),\n isDisabled: this.isDisabled,\n minDate: this.minDate || this.bsConfig && this.bsConfig.minDate,\n maxDate: this.maxDate || this.bsConfig && this.bsConfig.maxDate,\n dateCustomClasses: this.dateCustomClasses || this.bsConfig && this.bsConfig.dateCustomClasses,\n dateTooltipTexts: this.dateTooltipTexts || this.bsConfig && this.bsConfig.dateTooltipTexts,\n datesDisabled: this.datesDisabled || this.bsConfig && this.bsConfig.datesDisabled,\n datesEnabled: this.datesEnabled || this.bsConfig && this.bsConfig.datesEnabled,\n initCurrentTime: this.bsConfig?.initCurrentTime\n });\n\n\n this._datepickerRef = this._datepicker\n .provide({ provide: BsDatepickerConfig, useValue: this._config })\n .attach(BsDatepickerInlineContainerComponent)\n .to(this._elementRef)\n .show();\n }\n\n ngOnDestroy() {\n this._datepicker.dispose();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BsDatepickerConfig } from './bs-datepicker.config';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BsDaterangepickerInlineConfig extends BsDatepickerConfig {\n // DatepickerRenderOptions\n displayMonths = 2;\n /** turn on/off animation */\n isAnimated = false;\n}\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n EventEmitter,\n OnDestroy,\n OnInit,\n Renderer2,\n ViewChild\n} from '@angular/core';\n\nimport { take } from 'rxjs/operators';\nimport { Subscription } from 'rxjs';\n\nimport { getFullYear, getMonth } from 'ngx-bootstrap/chronos';\nimport { PositioningService } from 'ngx-bootstrap/positioning';\nimport { TimepickerComponent } from 'ngx-bootstrap/timepicker';\n\nimport { BsDatepickerAbstractComponent } from '../../base/bs-datepicker-container';\nimport { BsDatepickerConfig } from '../../bs-datepicker.config';\nimport { CalendarCellViewModel, DayViewModel } from '../../models';\nimport { BsDatepickerActions } from '../../reducer/bs-datepicker.actions';\nimport { BsDatepickerEffects } from '../../reducer/bs-datepicker.effects';\nimport { BsDatepickerStore } from '../../reducer/bs-datepicker.store';\nimport { datepickerAnimation } from '../../datepicker-animations';\nimport { BsCustomDates } from './bs-custom-dates-view.component';\nimport { dayInMilliseconds } from '../../reducer/_defaults';\n\n@Component({\n selector: 'bs-daterangepicker-container',\n providers: [BsDatepickerStore, BsDatepickerEffects],\n templateUrl: './bs-datepicker-view.html',\n host: {\n class: 'bottom',\n '(click)': '_stopPropagation($event)',\n role: 'dialog',\n 'aria-label': 'calendar'\n },\n animations: [datepickerAnimation]\n})\nexport class BsDaterangepickerContainerComponent extends BsDatepickerAbstractComponent\n implements OnInit, OnDestroy, AfterViewInit {\n\n set value(value: (Date|undefined)[] | undefined) {\n this._effects?.setRangeValue(value);\n }\n\n valueChange = new EventEmitter<Date[]>();\n animationState = 'void';\n\n _rangeStack: Date[] = [];\n chosenRange: Date[] = [];\n _subs: Subscription[] = [];\n isRangePicker = true;\n\n @ViewChild('startTP') startTimepicker?: TimepickerComponent;\n @ViewChild('endTP') endTimepicker?: TimepickerComponent;\n\n constructor(\n _renderer: Renderer2,\n private _config: BsDatepickerConfig,\n private _store: BsDatepickerStore,\n private _element: ElementRef,\n private _actions: BsDatepickerActions,\n _effects: BsDatepickerEffects,\n private _positionService: PositioningService\n ) {\n super();\n this._effects = _effects;\n\n this.customRanges = this._config.ranges || [];\n this.customRangeBtnLbl = this._config.customRangeButtonLabel;\n\n _renderer.setStyle(_element.nativeElement, 'display', 'block');\n _renderer.setStyle(_element.nativeElement, 'position', 'absolute');\n }\n\n ngOnInit(): void {\n this._positionService.setOptions({\n modifiers: { flip: { enabled: this._config.adaptivePosition } },\n allowedPositions: ['top', 'bottom']\n });\n\n this._positionService.event$?.pipe(take(1))\n .subscribe(() => {\n this._positionService.disable();\n\n if (this._config.isAnimated) {\n this.animationState = this.isTopPosition ? 'animated-up' : 'animated-down';\n\n return;\n }\n\n this.animationState = 'unanimated';\n });\n this.containerClass = this._config.containerClass;\n this.isOtherMonthsActive = this._config.selectFromOtherMonth;\n this.withTimepicker = this._config.withTimepicker;\n this._effects?.init(this._store)\n // intial state options\n // todo: fix this, split configs\n .setOptions(this._config)\n // data binding view --> model\n .setBindings(this)\n // set event handlers\n .setEventHandlers(this)\n .registerDatepickerSideEffects();\n\n // todo: move it somewhere else\n // on selected date change\n this._subs.push(\n this._store\n .select(state => state.selectedRange)\n .subscribe(dateRange => {\n this.valueChange.emit(dateRange);\n this.chosenRange = dateRange || [];\n })\n );\n }\n\n ngAfterViewInit(): void {\n this.selectedTimeSub.add(this.selectedTime?.subscribe((val) => {\n if (Array.isArray(val) && val.length >= 2) {\n this.startTimepicker?.writeValue(val[0]);\n this.endTimepicker?.writeValue(val[1]);\n }\n }));\n this.startTimepicker?.registerOnChange((val) => {\n this.timeSelectHandler(val, 0);\n });\n this.endTimepicker?.registerOnChange((val) => {\n this.timeSelectHandler(val, 1);\n });\n }\n\n get isTopPosition(): boolean {\n return this._element.nativeElement.classList.contains('top');\n }\n\n positionServiceEnable(): void {\n this._positionService.enable();\n }\n\n timeSelectHandler(date: Date, index: number): void {\n this._store.dispatch(this._actions.selectTime(date, index));\n }\n\n daySelectHandler(day: DayViewModel): void {\n if (!day) {\n return;\n }\n const isDisabled = this.isOtherMonthsActive ? day.isDisabled : (day.isOtherMonth || day.isDisabled);\n\n if (isDisabled) {\n return;\n }\n this.rangesProcessing(day);\n }\n\n monthSelectHandler(day: CalendarCellViewModel): void {\n if (!day || day.isDisabled) {\n return;\n }\n\n day.isSelected = true;\n\n if (this._config.minMode !== 'month') {\n if (day.isDisabled) {\n return;\n }\n this._store.dispatch(\n this._actions.navigateTo({\n unit: {\n month: getMonth(day.date),\n year: getFullYear(day.date)\n },\n viewMode: 'day'\n })\n );\n\n return;\n }\n this.rangesProcessing(day);\n }\n\n yearSelectHandler(day: CalendarCellViewModel): void {\n if (!day || day.isDisabled) {\n return;\n }\n\n day.isSelected = true;\n\n if (this._config.minMode !== 'year') {\n if (day.isDisabled) {\n return;\n }\n this._store.dispatch(\n this._actions.navigateTo({\n unit: {\n year: getFullYear(day.date)\n },\n viewMode: 'month'\n })\n );\n\n return;\n }\n this.rangesProcessing(day);\n }\n\n rangesProcessing(day: CalendarCellViewModel): void {\n // if only one date is already selected\n // and user clicks on previous date\n // start selection from new date\n // but if new date is after initial one\n // than finish selection\n\n if (this._rangeStack.length === 1) {\n this._rangeStack =\n day.date >= this._rangeStack[0]\n ? [this._rangeStack[0], day.date]\n : [day.date];\n }\n\n if (this._config.maxDateRange) {\n this.setMaxDateRangeOnCalendar(day.date);\n }\n\n if (this._rangeStack.length === 0) {\n this._rangeStack = [day.date];\n\n if (this._config.maxDateRange) {\n this.setMaxDateRangeOnCalendar(day.date);\n }\n }\n\n this._store.dispatch(this._actions.selectRange(this._rangeStack));\n\n if (this._rangeStack.length === 2) {\n this._rangeStack = [];\n }\n }\n\n ngOnDestroy(): void {\n for (const sub of this._subs) {\n sub.unsubscribe();\n }\n this.selectedTimeSub.unsubscribe();\n this._effects?.destroy();\n }\n\n setRangeOnCalendar(dates: BsCustomDates): void {\n if (dates) {\n this._rangeStack = dates.value instanceof Date ? [dates.value] : dates.value;\n }\n this._store.dispatch(this._actions.selectRange(this._rangeStack));\n }\n\n setMaxDateRangeOnCalendar(currentSelection: Date): void {\n let maxDateRange = new Date(currentSelection);\n\n if (this._config.maxDate) {\n const maxDateValueInMilliseconds = this._config.maxDate.getTime();\n const maxDateRangeInMilliseconds = currentSelection.getTime() + ((this._config.maxDateRange || 0) * dayInMilliseconds );\n maxDateRange = maxDateRangeInMilliseconds > maxDateValueInMilliseconds ?\n new Date(this._config.maxDate) :\n new Date(maxDateRangeInMilliseconds);\n } else {\n maxDateRange.setDate(currentSelection.getDate() + (this._config.maxDateRange || 0));\n }\n\n this._effects?.setMaxDate(maxDateRange);\n }\n}\n","import { OnInit, OnDestroy, ElementRef, Component, Renderer2 } from '@angular/core';\nimport { BsDaterangepickerContainerComponent } from './bs-daterangepicker-container.component';\n\nimport { BsDatepickerActions } from '../../reducer/bs-datepicker.actions';\nimport { BsDatepickerConfig } from '../../bs-datepicker.config';\nimport { BsDatepickerEffects } from '../../reducer/bs-datepicker.effects';\nimport { BsDatepickerStore } from '../../reducer/bs-datepicker.store';\n\nimport { PositioningService } from 'ngx-bootstrap/positioning';\nimport { datepickerAnimation } from '../../datepicker-animations';\n\n@Component({\n selector: 'bs-daterangepicker-inline-container',\n providers: [BsDatepickerStore, BsDatepickerEffects],\n templateUrl: './bs-datepicker-view.html',\n host: {\n '(click)': '_stopPropagation($event)'\n },\n animations: [datepickerAnimation]\n})\nexport class BsDaterangepickerInlineContainerComponent extends BsDaterangepickerContainerComponent\n implements OnInit, OnDestroy {\n\n constructor(\n _renderer: Renderer2,\n _config: BsDatepickerConfig,\n _store: BsDatepickerStore,\n _element: ElementRef,\n _actions: BsDatepickerActions,\n _effects: BsDatepickerEffects,\n _positioningService: PositioningService\n ) {\n super(_renderer, _config, _store, _element, _actions, _effects, _positioningService);\n\n _renderer.setStyle(_element.nativeElement, 'display', 'inline-block');\n _renderer.setStyle(_element.nativeElement, 'position', 'static');\n }\n}\n","import {\n ComponentRef, Directive, ElementRef, EventEmitter, Input, OnChanges,\n OnDestroy, OnInit, Output, Renderer2, SimpleChanges, ViewContainerRef\n} from '@angular/core';\n\nimport { ComponentLoader, ComponentLoaderFactory } from 'ngx-bootstrap/component-loader';\n\nimport { Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { BsDatepickerConfig } from './bs-datepicker.config';\nimport { BsDaterangepickerInlineConfig } from './bs-daterangepicker-inline.config';\nimport { BsDaterangepickerInlineContainerComponent } from './themes/bs/bs-daterangepicker-inline-container.component';\nimport { DatepickerDateCustomClasses } from './models';\nimport {\n checkBsValue,\n checkRangesWithMaxDate,\n setDateRangesCurrentTimeOnDateSelect\n} from './utils/bs-calendar-utils';\n\n@Directive({\n selector: 'bs-daterangepicker-inline',\n exportAs: 'bsDaterangepickerInline'\n})\nexport class BsDaterangepickerInlineDirective implements OnInit, OnDestroy, OnChanges {\n _bsValue?: (Date|undefined)[] | undefined;\n /**\n * Initial value of datepicker\n */\n @Input()\n set bsValue(value: (Date|undefined)[] | undefined) {\n if (this._bsValue === value) {\n return;\n }\n\n if (value && this.bsConfig?.initCurrentTime) {\n value = setDateRangesCurrentTimeOnDateSelect(value);\n }\n\n this._bsValue = value;\n this.bsValueChange.emit(value);\n }\n\n /**\n * Config object for datepicker\n */\n @Input() bsConfig?: Partial<BsDaterangepickerInlineConfig>;\n /**\n * Indicates whether datepicker is enabled or not\n */\n @Input() isDisabled = false;\n /**\n * Minimum date which is available for selection\n */\n @Input() minDate?: Date;\n /**\n * Maximum date which is available for selection\n */\n @Input() maxDate?: Date;\n /**\n * Date custom classes\n */\n @Input() dateCustomClasses?: DatepickerDateCustomClasses[];\n /**\n * Disable specific days, e.g. [0,6] will disable all Saturdays and Sundays\n */\n @Input() daysDisabled?: number[];\n /**\n * Disable specific dates\n */\n @Input() datesDisabled?: Date[];\n /**\n * Disable specific dates\n */\n @Input() datesEnabled?: Date[];\n /**\n * Emits when daterangepicker value has been changed\n */\n @Output() bsValueChange: EventEmitter<(Date|undefined)[] | undefined> = new EventEmitter();\n\n protected _subs: Subscription[] = [];\n\n private readonly _datepicker: ComponentLoader<BsDaterangepickerInlineContainerComponent>;\n private _datepickerRef?: ComponentRef<BsDaterangepickerInlineContainerComponent>;\n\n constructor(\n public _config: BsDaterangepickerInlineConfig,\n private _elementRef: ElementRef,\n _renderer: Renderer2,\n _viewContainerRef: ViewContainerRef,\n cis: ComponentLoaderFactory\n ) {\n // todo: assign only subset of fields\n Object.assign(this, this._config);\n this._datepicker = cis.createLoader<BsDaterangepickerInlineContainerComponent>(\n _elementRef,\n _viewContainerRef,\n _renderer\n );\n }\n\n ngOnInit(): void {\n this.setConfig();\n\n // if date changes from external source (model -> view)\n this._subs.push(\n this.bsValueChange.subscribe((value: Date[]) => {\n if (this._datepickerRef) {\n this._datepickerRef.instance.value = value;\n }\n })\n );\n\n // if date changes from picker (view -> model)\n if (this._datepickerRef) {\n this._subs.push(\n this._datepickerRef.instance.valueChange\n .pipe(\n filter((range: Date[]) => range && range[0] && !!range[1])\n )\n .subscribe((value: Date[]) => {\n this.bsValue = value;\n })\n );\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.bsConfig) {\n if (changes.bsConfig.currentValue.initCurrentTime && changes.bsConfig.currentValue.initCurrentTime !== changes.bsConfig.previousValue.initCurrentTime && this._bsValue) {\n this._bsValue = setDateRangesCurrentTimeOnDateSelect(this._bsValue);\n this.bsValueChange.emit(this._bsValue);\n }\n }\n\n if (!this._datepickerRef || !this._datepickerRef.instance) {\n return;\n }\n\n if (changes.minDate) {\n this._datepickerRef.instance.minDate = this.minDate;\n }\n\n if (changes.maxDate) {\n this._datepickerRef.instance.maxDate = this.maxDate;\n }\n\n if (changes.datesEnabled) {\n this._datepickerRef.instance.datesEnabled = this.datesEnabled;\n this._datepickerRef.instance.value = this._bsValue;\n }\n\n if (changes.datesDisabled) {\n this._datepickerRef.instance.datesDisabled = this.datesDisabled;\n }\n\n if (changes.daysDisabled) {\n this._datepickerRef.instance.daysDisabled = this.daysDisabled;\n }\n\n if (changes.isDisabled) {\n this._datepickerRef.instance.isDisabled = this.isDisabled;\n }\n\n if (changes.dateCustomClasses) {\n this._datepickerRef.instance.dateCustomClasses = this.dateCustomClasses;\n }\n\n this.setConfig();\n }\n\n /**\n * Set config for datepicker\n */\n setConfig(): void {\n if (this._datepicker) {\n this._datepicker.hide();\n }\n\n this._config = Object.assign({}, this._config, this.bsConfig, {\n value: checkBsValue(this._bsValue, this.maxDate || this.bsConfig && this.bsConfig.maxDate),\n isDisabled: this.isDisabled,\n minDate: this.minDate || this.bsConfig && this.bsConfig.minDate,\n maxDate: this.maxDate || this.bsConfig && this.bsConfig.maxDate,\n daysDisabled: this.daysDisabled || this.bsConfig && this.bsConfig.daysDisabled,\n dateCustomClasses: this.dateCustomClasses || this.bsConfig && this.bsConfig.dateCustomClasses,\n datesDisabled: this.datesDisabled || this.bsConfig && this.bsConfig.datesDisabled,\n datesEnabled: this.datesEnabled || this.bsConfig && this.bsConfig.datesEnabled,\n ranges: checkRangesWithMaxDate(this.bsConfig && this.bsConfig.ranges, this.maxDate || this.bsConfig && this.bsConfig.maxDate),\n maxDateRange: this.bsConfig && this.bsConfig.maxDateRange,\n initCurrentTime: this.bsConfig?.initCurrentTime\n });\n\n this._datepickerRef = this._datepicker\n .provide({provide: BsDatepickerConfig, useValue: this._config})\n .attach(BsDaterangepickerInlineContainerComponent)\n .to(this._elementRef)\n .show();\n }\n\n ngOnDestroy() {\n this._datepicker.dispose();\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n forwardRef,\n Host,\n OnDestroy,\n OnInit,\n Provider,\n Renderer2\n} from '@angular/core';\n\nimport {\n AbstractControl,\n ControlValueAccessor,\n NG_VALIDATORS,\n NG_VALUE_ACCESSOR,\n ValidationErrors,\n Validator\n} from '@angular/forms';\n\nimport {\n formatDate,\n getLocale,\n isAfter,\n isBefore,\n isDate,\n isDateValid,\n parseDate,\n utcAsLocal\n} from 'ngx-bootstrap/chronos';\n\nimport { BsDatepickerDirective } from './bs-datepicker.component';\nimport { BsLocaleService } from './bs-locale.service';\nimport { Subscription } from 'rxjs';\nimport { distinctUntilChanged } from 'rxjs/operators';\n\nconst BS_DATEPICKER_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => BsDatepickerInputDirective),\n multi: true\n};\n\nconst BS_DATEPICKER_VALIDATOR: Provider = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => BsDatepickerInputDirective),\n multi: true\n};\n\n@Directive({\n selector: `input[bsDatepicker]`,\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n '(change)': 'onChange($event)',\n '(keyup.esc)': 'hide()',\n '(keydown)': 'onKeydownEvent($event)',\n '(blur)': 'onBlur()'\n },\n providers: [BS_DATEPICKER_VALUE_ACCESSOR, BS_DATEPICKER_VALIDATOR]\n})\nexport class BsDatepickerInputDirective\n implements ControlValueAccessor, Validator, OnInit, OnDestroy {\n private _onChange = Function.prototype;\n private _onTouched = Function.prototype;\n private _validatorChange = Function.prototype;\n private _value?: Date;\n private _subs = new Subscription();\n\n constructor(@Host() private _picker: BsDatepickerDirective,\n private _localeService: BsLocaleService,\n private _renderer: Renderer2,\n private _elRef: ElementRef,\n private changeDetection: ChangeDetectorRef) {}\n\n ngOnInit() {\n const setBsValue = (value: Date) => {\n this._setInputValue(value);\n if (this._value !== value) {\n this._value = value;\n this._onChange(value);\n this._onTouched();\n }\n this.changeDetection.markForCheck();\n };\n\n // if value set via [bsValue] it will not get into value change\n if (this._picker._bsValue) {\n setBsValue(this._picker._bsValue);\n }\n\n // update input value on datepicker value update\n this._subs.add(\n this._picker.bsValueChange.subscribe(setBsValue)\n );\n\n // update input value on locale change\n this._subs.add(\n this._localeService.localeChange.subscribe(() => {\n this._setInputValue(this._value);\n })\n );\n\n this._subs.add(\n this._picker.dateInputFormat$.pipe(distinctUntilChanged()).subscribe(() => {\n this._setInputValue(this._value);\n })\n );\n}\n\n ngOnDestroy() {\n this._subs.unsubscribe();\n }\n\n onKeydownEvent(event: KeyboardEvent): void {\n if (event.keyCode === 13 || event.code === 'Enter') {\n this.hide();\n }\n }\n\n _setInputValue(value?: Date): void {\n const initialDate = !value ? ''\n : formatDate(value, this._picker._config.dateInputFormat, this._localeService.currentLocale);\n\n this._renderer.setProperty(this._elRef.nativeElement, 'value', initialDate);\n }\n\n onChange(event: Event) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n this.writeValue((event.target as any).value);\n this._onChange(this._value);\n if (this._picker._config.returnFocusToInput) {\n this._renderer.selectRootElement(this._elRef.nativeElement).focus();\n }\n this._onTouched();\n }\n\n validate(c: AbstractControl): ValidationErrors | null {\n const _value: Date | string = c.value;\n\n if (_value === null || _value === undefined || _value === '') {\n return null;\n }\n\n if (isDate(_value)) {\n const _isDateValid = isDateValid(_value);\n if (!_isDateValid) {\n return { bsDate: { invalid: _value } };\n }\n\n if (this._picker && this._picker.minDate && isBefore(_value, this._picker.minDate, 'date')) {\n this.writeValue(this._picker.minDate);\n\n return { bsDate: { minDate: this._picker.minDate } };\n }\n\n if (this._picker && this._picker.maxDate && isAfter(_value, this._picker.maxDate, 'date')) {\n this.writeValue(this._picker.maxDate);\n\n return { bsDate: { maxDate: this._picker.maxDate } };\n }\n }\n\n return null;\n }\n\n registerOnValidatorChange(fn: () => void): void {\n this._validatorChange = fn;\n }\n\n writeValue(value: Date | string) {\n if (!value) {\n this._value = void 0;\n } else {\n const _localeKey = this._localeService.currentLocale;\n const _locale = getLocale(_localeKey);\n if (!_locale) {\n throw new Error(\n `Locale \"${_localeKey}\" is not defined, please add it with \"defineLocale(...)\"`\n );\n }\n\n this._value = parseDate(value, this._picker._config.dateInputFormat, this._localeService.currentLocale);\n\n if (this._picker._config.useUtc) {\n this._value = utcAsLocal(this._value);\n }\n }\n\n this._picker.bsValue = this._value;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._picker.isDisabled = isDisabled;\n if (isDisabled) {\n this._renderer.setAttribute(this._elRef.nativeElement, 'disabled', 'disabled');\n\n return;\n }\n this._renderer.removeAttribute(this._elRef.nativeElement, 'disabled');\n }\n\n registerOnChange(fn: () => void): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this._onTouched = fn;\n }\n\n onBlur() {\n this._onTouched();\n }\n\n hide() {\n this._picker.hide();\n this._renderer.selectRootElement(this._elRef.nativeElement).blur();\n if (this._picker._config.returnFocusToInput) {\n this._renderer.selectRootElement(this._elRef.nativeElement).focus();\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BsDatepickerConfig } from './bs-datepicker.config';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BsDaterangepickerConfig extends BsDatepickerConfig {\n // DatepickerRenderOptions\n displayMonths = 2;\n}\n","import { AfterViewInit, ComponentRef,\n Directive, ElementRef, EventEmitter,\n Input, OnChanges, OnDestroy, OnInit,\n Output, Renderer2, SimpleChanges,\n ViewContainerRef\n} from '@angular/core';\nimport { BsDaterangepickerConfig } from './bs-daterangepicker.config';\nimport { BsDaterangepickerContainerComponent } from './themes/bs/bs-daterangepicker-container.component';\nimport { Observable, Subscription, Subject, BehaviorSubject } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\nimport { ComponentLoaderFactory, ComponentLoader } from 'ngx-bootstrap/component-loader';\nimport { BsDatepickerConfig } from './bs-datepicker.config';\nimport { DatepickerDateCustomClasses } from './models';\nimport {\n checkBsValue,\n checkRangesWithMaxDate,\n setDateRangesCurrentTimeOnDateSelect\n} from './utils/bs-calendar-utils';\n\n@Directive({\n selector: '[bsDaterangepicker]',\n exportAs: 'bsDaterangepicker'\n})\nexport class BsDaterangepickerDirective\n implements OnInit, OnDestroy, OnChanges, AfterViewInit {\n /**\n * Placement of a daterangepicker. Accepts: \"top\", \"bottom\", \"left\", \"right\"\n */\n @Input() placement: 'top' | 'bottom' | 'left' | 'right' = 'bottom';\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n @Input() triggers = 'click';\n /**\n * Close daterangepicker on outside click\n */\n @Input() outsideClick = true;\n /**\n * A selector specifying the element the daterangepicker should be appended to.\n */\n @Input() container = 'body';\n\n @Input() outsideEsc = true;\n\n /**\n * Returns whether or not the daterangepicker is currently being shown\n */\n @Input()\n get isOpen(): boolean {\n return this._datepicker.isShown;\n }\n\n set isOpen(value: boolean) {\n this.isOpen$.next(value);\n }\n\n /**\n * Emits an event when the daterangepicker is shown\n */\n @Output() onShown: EventEmitter<unknown>;\n /**\n * Emits an event when the daterangepicker is hidden\n */\n @Output() onHidden: EventEmitter<unknown>;\n\n _bsValue?: (Date|undefined)[];\n isOpen$: BehaviorSubject<boolean>;\n isDestroy$ = new Subject();\n\n /**\n * Initial value of daterangepicker\n */\n @Input()\n set bsValue(value: (Date|undefined)[] | undefined) {\n if (this._bsValue === value) {\n return;\n }\n\n if (value && this.bsConfig?.initCurrentTime) {\n value = setDateRangesCurrentTimeOnDateSelect(value);\n }\n\n this._bsValue = value;\n this.bsValueChange.emit(value);\n }\n\n /**\n * Config object for daterangepicker\n */\n @Input() bsConfig?: Partial<BsDaterangepickerConfig>;\n /**\n * Indicates whether daterangepicker's content is enabled or not\n */\n @Input() isDisabled = false;\n /**\n * Minimum date which is available for selection\n */\n @Input() minDate?: Date;\n /**\n * Maximum date which is available for selection\n */\n @Input() maxDate?: Date;\n /**\n * Date custom classes\n */\n @Input() dateCustomClasses?: DatepickerDateCustomClasses[];\n /**\n * Disable specific days, e.g. [0,6] will disable all Saturdays and Sundays\n */\n @Input() daysDisabled?: number[];\n /**\n * Disable specific dates\n */\n @Input() datesDisabled?: Date[];\n\n /**\n * Enable specific dates\n */\n @Input() datesEnabled?: Date[];\n /**\n * Emits when daterangepicker value has been changed\n */\n @Output() bsValueChange = new EventEmitter<((Date|undefined)[]|undefined)>();\n\n get rangeInputFormat$(): Observable<string> {\n return this._rangeInputFormat$;\n }\n\n protected _subs: Subscription[] = [];\n private _datepicker: ComponentLoader<BsDaterangepickerContainerComponent>;\n private _datepickerRef?: ComponentRef<BsDaterangepickerContainerComponent>;\n private readonly _rangeInputFormat$ = new Subject<string>();\n\n constructor(public _config: BsDaterangepickerConfig,\n private _elementRef: ElementRef,\n private _renderer: Renderer2,\n _viewContainerRef: ViewContainerRef,\n cis: ComponentLoaderFactory) {\n this._datepicker = cis.createLoader<BsDaterangepickerContainerComponent>(\n _elementRef,\n _viewContainerRef,\n _renderer\n );\n Object.assign(this, _config);\n this.onShown = this._datepicker.onShown;\n this.onHidden = this._datepicker.onHidden;\n this.isOpen$ = new BehaviorSubject(this.isOpen);\n }\n\n ngOnInit(): void {\n this.isDestroy$ = new Subject();\n this._datepicker.listen({\n outsideClick: this.outsideClick,\n outsideEsc: this.outsideEsc,\n triggers: this.triggers,\n show: () => this.show()\n });\n this.setConfig();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.bsConfig) {\n if (changes.bsConfig.currentValue?.initCurrentTime && changes.bsConfig.currentValue?.initCurrentTime !== changes.bsConfig.previousValue?.initCurrentTime && this._bsValue) {\n this._bsValue = setDateRangesCurrentTimeOnDateSelect(this._bsValue);\n this.bsValueChange.emit(this._bsValue);\n }\n\n this.setConfig();\n this._rangeInputFormat$.next(changes.bsConfig.currentValue && changes.bsConfig.currentValue.rangeInputFormat);\n }\n\n\n if (!this._datepickerRef || !this._datepickerRef.instance) {\n return;\n }\n if (changes.minDate) {\n this._datepickerRef.instance.minDate = this.minDate;\n }\n if (changes.maxDate) {\n this._datepickerRef.instance.maxDate = this.maxDate;\n }\n if (changes.datesDisabled) {\n this._datepickerRef.instance.datesDisabled = this.datesDisabled;\n }\n if (changes.datesEnabled) {\n this._datepickerRef.instance.datesEnabled = this.datesEnabled;\n }\n if (changes.daysDisabled) {\n this._datepickerRef.instance.daysDisabled = this.daysDisabled;\n }\n if (changes.isDisabled) {\n if (this._elementRef?.nativeElement) {\n this._elementRef.nativeElement.setAttribute('readonly', this.isDisabled);\n }\n this._datepickerRef.instance.isDisabled = this.isDisabled;\n }\n if (changes.dateCustomClasses) {\n this._datepickerRef.instance.dateCustomClasses = this.dateCustomClasses;\n }\n }\n\n ngAfterViewInit(): void {\n this.isOpen$.pipe(\n filter(isOpen => isOpen !== this.isOpen),\n takeUntil(this.isDestroy$)\n )\n .subscribe(() => this.toggle());\n }\n\n /**\n * Opens an element’s datepicker. This is considered a “manual” triggering of\n * the datepicker.\n */\n show(): void {\n if (this._datepicker.isShown) {\n return;\n }\n\n this.setConfig();\n\n this._datepickerRef = this._datepicker\n .provide({ provide: BsDatepickerConfig, useValue: this._config })\n .attach(BsDaterangepickerContainerComponent)\n .to(this.container)\n .position({ attachment: this.placement })\n .show({ placement: this.placement });\n\n // if date changes from external source (model -> view)\n this._subs.push(\n this.bsValueChange.subscribe((value: Date[]) => {\n if (this._datepickerRef) {\n this._datepickerRef.instance.value = value;\n }\n })\n );\n\n // if date changes from picker (view -> model)\n if (this._datepickerRef) {\n this._subs.push(\n this._datepickerRef.instance.valueChange\n .pipe(\n filter((range: Date[]) => range && range[0] && !!range[1])\n )\n .subscribe((value: Date[]) => {\n this.bsValue = value;\n this.hide();\n })\n );\n }\n }\n\n /**\n * Set config for daterangepicker\n */\n setConfig() {\n this._config = Object.assign(\n {},\n this._config,\n this.bsConfig,\n {\n value: checkBsValue(this._bsValue, this.maxDate || this.bsConfig && this.bsConfig.maxDate),\n isDisabled: this.isDisabled,\n minDate: this.minDate || this.bsConfig && this.bsConfig.minDate,\n maxDate: this.maxDate || this.bsConfig && this.bsConfig.maxDate,\n daysDisabled: this.daysDisabled || this.bsConfig && this.bsConfig.daysDisabled,\n dateCustomClasses: this.dateCustomClasses || this.bsConfig && this.bsConfig.dateCustomClasses,\n datesDisabled: this.datesDisabled || this.bsConfig && this.bsConfig.datesDisabled,\n datesEnabled: this.datesEnabled || this.bsConfig && this.bsConfig.datesEnabled,\n ranges: checkRangesWithMaxDate(this.bsConfig && this.bsConfig.ranges, this.maxDate || this.bsConfig && this.bsConfig.maxDate),\n maxDateRange: this.bsConfig && this.bsConfig.maxDateRange,\n initCurrentTime: this.bsConfig?.initCurrentTime\n }\n );\n }\n\n /**\n * Closes an element’s datepicker. This is considered a “manual” triggering of\n * the datepicker.\n */\n hide(): void {\n if (this.isOpen) {\n this._datepicker.hide();\n }\n for (const sub of this._subs) {\n sub.unsubscribe();\n }\n\n if (this._config.returnFocusToInput) {\n this._renderer.selectRootElement(this._elementRef.nativeElement).focus();\n }\n }\n\n /**\n * Toggles an element’s datepicker. This is considered a “manual” triggering\n * of the datepicker.\n */\n toggle(): void {\n if (this.isOpen) {\n return this.hide();\n }\n\n this.show();\n }\n\n ngOnDestroy(): void {\n this._datepicker.dispose();\n this.isOpen$.next(false);\n if (this.isDestroy$) {\n this.isDestroy$.next();\n this.isDestroy$.complete();\n }\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n forwardRef,\n Host,\n OnDestroy,\n OnInit,\n Provider,\n Renderer2\n} from '@angular/core';\n\nimport {\n AbstractControl,\n ControlValueAccessor,\n NG_VALIDATORS,\n NG_VALUE_ACCESSOR,\n ValidationErrors,\n Validator\n} from '@angular/forms';\n\nimport {\n parseDate,\n formatDate,\n getLocale,\n isAfter,\n isBefore,\n isArray,\n isDateValid,\n utcAsLocal\n} from 'ngx-bootstrap/chronos';\n\nimport { BsDaterangepickerDirective } from './bs-daterangepicker.component';\nimport { BsLocaleService } from './bs-locale.service';\nimport { Subscription } from 'rxjs';\nimport { distinctUntilChanged } from 'rxjs/operators';\n\nconst BS_DATERANGEPICKER_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => BsDaterangepickerInputDirective),\n multi: true\n};\n\nconst BS_DATERANGEPICKER_VALIDATOR: Provider = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => BsDaterangepickerInputDirective),\n multi: true\n};\n\n\n@Directive({\n selector: `input[bsDaterangepicker]`,\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n '(change)': 'onChange($event)',\n '(keyup.esc)': 'hide()',\n '(keydown)': 'onKeydownEvent($event)',\n '(blur)': 'onBlur()'\n },\n providers: [BS_DATERANGEPICKER_VALUE_ACCESSOR, BS_DATERANGEPICKER_VALIDATOR]\n})\nexport class BsDaterangepickerInputDirective\n implements ControlValueAccessor, Validator, OnInit, OnDestroy {\n private _onChange = Function.prototype;\n private _onTouched = Function.prototype;\n private _validatorChange = Function.prototype;\n private _value?: (Date|undefined)[];\n private _subs = new Subscription();\n\n constructor(@Host() private _picker: BsDaterangepickerDirective,\n private _localeService: BsLocaleService,\n private _renderer: Renderer2,\n private _elRef: ElementRef,\n private changeDetection: ChangeDetectorRef) {\n }\n\n ngOnInit() {\n const setBsValue = (value: (Date|undefined)[]) => {\n this._setInputValue(value);\n if (this._value !== value) {\n this._value = value;\n this._onChange(value);\n this._onTouched();\n }\n this.changeDetection.markForCheck();\n };\n\n // if value set via [bsValue] it will not get into value change\n if (this._picker._bsValue) {\n setBsValue(this._picker._bsValue);\n }\n\n // update input value on datepicker value update\n this._subs.add(\n this._picker.bsValueChange.subscribe((value: Date[]) => {\n this._setInputValue(value);\n if (this._value !== value) {\n this._value = value;\n this._onChange(value);\n this._onTouched();\n }\n this.changeDetection.markForCheck();\n }));\n\n // update input value on locale change\n this._subs.add(this._localeService.localeChange.subscribe(() => {\n this._setInputValue(this._value);\n }));\n\n this._subs.add(\n // update input value on format change\n this._picker.rangeInputFormat$.pipe(distinctUntilChanged()).subscribe(() => {\n this._setInputValue(this._value);\n }));\n }\n\n ngOnDestroy() {\n this._subs.unsubscribe();\n }\n\n onKeydownEvent(event: KeyboardEvent) {\n if (event.keyCode === 13 || event.code === 'Enter') {\n this.hide();\n }\n }\n\n _setInputValue(date?: (Date|undefined)[]): void {\n let range = '';\n if (date) {\n const start: string = !date[0] ? ''\n : formatDate(date[0],\n this._picker._config.rangeInputFormat,\n this._localeService.currentLocale\n );\n const end: string = !date[1] ? ''\n : formatDate(\n date[1],\n this._picker._config.rangeInputFormat,\n this._localeService.currentLocale\n );\n range = (start && end) ? start + this._picker._config.rangeSeparator + end : '';\n }\n this._renderer.setProperty(this._elRef.nativeElement, 'value', range);\n }\n\n onChange(event: Event) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n this.writeValue((event.target as any).value);\n this._onChange(this._value);\n if (this._picker._config.returnFocusToInput) {\n this._renderer.selectRootElement(this._elRef.nativeElement).focus();\n }\n this._onTouched();\n }\n\n validate(c: AbstractControl): ValidationErrors | null {\n let _value: [Date, Date] = c.value;\n const errors: Record<string, unknown>[] = [];\n\n if (_value === null || _value === undefined || !isArray(_value)) {\n return null;\n }\n\n _value = _value.slice().sort((a, b) => a.getTime() - b.getTime()) as [Date, Date];\n\n const _isFirstDateValid = isDateValid(_value[0]);\n const _isSecondDateValid = isDateValid(_value[1]);\n\n if (!_isFirstDateValid) {\n return { bsDate: { invalid: _value[0] } };\n }\n\n if (!_isSecondDateValid) {\n return { bsDate: { invalid: _value[1] } };\n }\n\n if (this._picker && this._picker.minDate && isBefore(_value[0], this._picker.minDate, 'date')) {\n _value[0] = this._picker.minDate;\n errors.push({ bsDate: { minDate: this._picker.minDate } });\n }\n\n if (this._picker && this._picker.maxDate && isAfter(_value[1], this._picker.maxDate, 'date')) {\n _value[1] = this._picker.maxDate;\n errors.push({ bsDate: { maxDate: this._picker.maxDate } });\n }\n if (errors.length > 0) {\n this.writeValue(_value);\n\n return errors;\n }\n\n return null;\n }\n\n registerOnValidatorChange(fn: () => void): void {\n this._validatorChange = fn;\n }\n\n writeValue(value: Date[] | string) {\n if (!value) {\n this._value = void 0;\n } else {\n const _localeKey = this._localeService.currentLocale;\n const _locale = getLocale(_localeKey);\n if (!_locale) {\n throw new Error(\n `Locale \"${_localeKey}\" is not defined, please add it with \"defineLocale(...)\"`\n );\n }\n\n let _input: (string | Date)[] = [];\n if (typeof value === 'string') {\n const trimmedSeparator = this._picker._config.rangeSeparator.trim();\n if (value.replace(/[^-]/g, '').length > 1) {\n _input = value.split(this._picker._config.rangeSeparator);\n } else {\n _input = value\n .split(trimmedSeparator.length > 0 ? trimmedSeparator : this._picker._config.rangeSeparator)\n .map(_val => _val.trim());\n }\n }\n\n if (Array.isArray(value)) {\n _input = value;\n }\n\n this._value = _input\n .map((_val: string | Date): Date => {\n if (this._picker._config.useUtc) {\n return utcAsLocal(\n parseDate(_val, this._picker._config.rangeInputFormat, this._localeService.currentLocale)\n );\n }\n\n return parseDate(_val, this._picker._config.rangeInputFormat, this._localeService.currentLocale);\n }\n )\n .map((date: Date) => (isNaN(date.valueOf()) ? void 0 : date));\n }\n\n this._picker.bsValue = this._value;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._picker.isDisabled = isDisabled;\n if (isDisabled) {\n this._renderer.setAttribute(this._elRef.nativeElement, 'disabled', 'disabled');\n\n return;\n }\n this._renderer.removeAttribute(this._elRef.nativeElement, 'disabled');\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerOnChange(fn: () => void): void {\n this._onChange = fn;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerOnTouched(fn: () => void): void {\n this._onTouched = fn;\n }\n\n onBlur() {\n this._onTouched();\n }\n\n hide() {\n this._picker.hide();\n this._renderer.selectRootElement(this._elRef.nativeElement).blur();\n\n if (this._picker._config.returnFocusToInput) {\n this._renderer.selectRootElement(this._elRef.nativeElement).focus();\n }\n }\n}\n","import { formatDate } from 'ngx-bootstrap/chronos';\n\nexport class DateFormatter {\n format(date: Date, format: string, locale?: string): string {\n return formatDate(date, format, locale);\n }\n}\n","import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\n\nimport { DateFormatter } from './date-formatter';\n\ntype CompareDatesFn = (date1: Date, date2: Date) => number;\n\n@Component({\n selector: 'datepicker-inner',\n template: `\n <!--<!–ng-keydown=\"keydown($event)\"–>-->\n <div *ngIf='datepickerMode' class='well well-sm bg-faded p-a card' role='application'>\n <ng-content></ng-content>\n </div>\n `\n})\nexport class DatePickerInnerComponent implements OnInit, OnChanges {\n @Input() locale?: string;\n @Input() datepickerMode?: string;\n @Input() startingDay?: number;\n @Input() yearRange?: number;\n\n @Input() minDate?: Date;\n @Input() maxDate?: Date;\n @Input() minMode?: string;\n @Input() maxMode?: string;\n @Input() showWeeks?: boolean;\n @Input() formatDay?: string;\n @Input() formatMonth?: string;\n @Input() formatYear?: string;\n @Input() formatDayHeader?: string;\n @Input() formatDayTitle?: string;\n @Input() formatMonthTitle?: string;\n @Input() onlyCurrentMonth?: boolean;\n @Input() shortcutPropagation?: boolean;\n @Input() customClass?: { date: Date; mode: string; clazz: string }[];\n @Input() monthColLimit = 0;\n @Input() yearColLimit = 0;\n @Input() dateDisabled?: { date: Date; mode: string }[];\n @Input() dayDisabled?: number[];\n @Input() initDate?: Date;\n\n @Output() selectionDone: EventEmitter<Date> = new EventEmitter<Date>(undefined);\n @Output() update: EventEmitter<Date> = new EventEmitter<Date>(false);\n @Output() activeDateChange: EventEmitter<Date> = new EventEmitter<Date>(undefined);\n\n stepDay = {};\n stepMonth = {};\n stepYear = {};\n\n uniqueId?: string;\n\n protected modes: string[] = ['day', 'month', 'year'];\n protected dateFormatter: DateFormatter = new DateFormatter();\n protected selectedDate?: Date;\n protected activeDateId?: string;\n protected refreshViewHandlerDay?: () => void;\n protected compareHandlerDay?: CompareDatesFn;\n protected refreshViewHandlerMonth?: () => void;\n protected compareHandlerMonth?: CompareDatesFn;\n protected refreshViewHandlerYear?: () => void;\n protected compareHandlerYear?: CompareDatesFn;\n\n protected _activeDate?: Date;\n\n @Input()\n get activeDate(): Date|undefined {\n return this._activeDate;\n }\n\n set activeDate(value: Date|undefined) {\n this._activeDate = value;\n }\n\n // todo: add formatter value to Date object\n ngOnInit(): void {\n // todo: use date for unique value\n this.uniqueId = `datepicker--${Math.floor(Math.random() * 10000)}`;\n\n if (this.initDate) {\n this.activeDate = this.initDate;\n this.selectedDate = new Date(this.activeDate.valueOf());\n this.update.emit(this.activeDate);\n } else if (this.activeDate === undefined) {\n this.activeDate = new Date();\n }\n }\n\n // this.refreshView should be called here to reflect the changes on the fly\n ngOnChanges(changes: SimpleChanges): void {\n this.refreshView();\n this.checkIfActiveDateGotUpdated(changes.activeDate);\n }\n\n // Check if activeDate has been update and then emit the activeDateChange with the new date\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n checkIfActiveDateGotUpdated(activeDate: any): void {\n if (activeDate && !activeDate.firstChange) {\n const previousValue = activeDate.previousValue;\n if (\n previousValue &&\n previousValue instanceof Date &&\n previousValue.getTime() !== activeDate.currentValue.getTime()\n ) {\n this.activeDateChange.emit(this.activeDate);\n }\n }\n }\n\n setCompareHandler(handler: CompareDatesFn, type: string): void {\n if (type === 'day') {\n this.compareHandlerDay = handler;\n }\n\n if (type === 'month') {\n this.compareHandlerMonth = handler;\n }\n\n if (type === 'year') {\n this.compareHandlerYear = handler;\n }\n }\n\n compare(date1?: Date, date2?: Date): number | undefined {\n if (date1 === undefined || date2 === undefined) {\n return undefined;\n }\n\n if (this.datepickerMode === 'day' && this.compareHandlerDay) {\n return this.compareHandlerDay(date1, date2);\n }\n\n if (this.datepickerMode === 'month' && this.compareHandlerMonth) {\n return this.compareHandlerMonth(date1, date2);\n }\n\n if (this.datepickerMode === 'year' && this.compareHandlerYear) {\n return this.compareHandlerYear(date1, date2);\n }\n\n return void 0;\n }\n\n setRefreshViewHandler(handler: () => void, type: string): void {\n if (type === 'day') {\n this.refreshViewHandlerDay = handler;\n }\n\n if (type === 'month') {\n this.refreshViewHandlerMonth = handler;\n }\n\n if (type === 'year') {\n this.refreshViewHandlerYear = handler;\n }\n }\n\n refreshView(): void {\n if (this.datepickerMode === 'day' && this.refreshViewHandlerDay) {\n this.refreshViewHandlerDay();\n }\n\n if (this.datepickerMode === 'month' && this.refreshViewHandlerMonth) {\n this.refreshViewHandlerMonth();\n }\n\n if (this.datepickerMode === 'year' && this.refreshViewHandlerYear) {\n this.refreshViewHandlerYear();\n }\n }\n\n dateFilter(date: Date, format: string): string {\n return this.dateFormatter.format(date, format, this.locale);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n isActive(dateObject: any): boolean {\n if (this.compare(dateObject.date, this.activeDate) === 0) {\n this.activeDateId = dateObject.uid;\n\n return true;\n }\n\n return false;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n createDateObject(date: Date, format: string): any {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const dateObject: any = {};\n dateObject.date = new Date(\n date.getFullYear(),\n date.getMonth(),\n date.getDate()\n );\n dateObject.date = this.fixTimeZone(dateObject.date);\n dateObject.label = this.dateFilter(date, format);\n dateObject.selected = this.compare(date, this.selectedDate) === 0;\n dateObject.disabled = this.isDisabled(date);\n dateObject.current = this.compare(date, new Date()) === 0;\n dateObject.customClass = this.getCustomClassForDate(dateObject.date);\n\n return dateObject;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n split(arr: any[], size: number): any[] {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const arrays: any[] = [];\n while (arr.length > 0) {\n arrays.push(arr.splice(0, size));\n }\n\n return arrays;\n }\n\n // Fix a hard-reproducible bug with timezones\n // The bug depends on OS, browser, current timezone and current date\n // i.e.\n // var date = new Date(2014, 0, 1);\n // console.log(date.getFullYear(), date.getMonth(), date.getDate(),\n // date.getHours()); can result in \"2013 11 31 23\" because of the bug.\n fixTimeZone(date: Date): Date {\n const hours = date.getHours();\n\n return new Date(\n date.getFullYear(),\n date.getMonth(),\n date.getDate(),\n hours === 23 ? hours + 2 : 0\n );\n }\n\n select(date: Date, isManual = true): void {\n if (this.datepickerMode === this.minMode) {\n if (!this.activeDate) {\n this.activeDate = new Date(0, 0, 0, 0, 0, 0, 0);\n }\n\n this.activeDate = new Date(\n date.getFullYear(),\n date.getMonth(),\n date.getDate()\n );\n this.activeDate = this.fixTimeZone(this.activeDate);\n if (isManual) {\n this.selectionDone.emit(this.activeDate);\n }\n } else {\n this.activeDate = new Date(\n date.getFullYear(),\n date.getMonth(),\n date.getDate()\n );\n this.activeDate = this.fixTimeZone(this.activeDate);\n if (isManual && this.datepickerMode) {\n this.datepickerMode = this.modes[this.modes.indexOf(this.datepickerMode) - 1];\n }\n }\n\n this.selectedDate = new Date(this.activeDate.valueOf());\n this.update.emit(this.activeDate);\n this.refreshView();\n }\n\n move(direction: number): void {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let expectedStep: any;\n if (this.datepickerMode === 'day') {\n expectedStep = this.stepDay;\n }\n\n if (this.datepickerMode === 'month') {\n expectedStep = this.stepMonth;\n }\n\n if (this.datepickerMode === 'year') {\n expectedStep = this.stepYear;\n }\n\n if (expectedStep && this.activeDate) {\n const year =\n this.activeDate.getFullYear() + direction * (expectedStep.years || 0);\n const month =\n this.activeDate.getMonth() + direction * (expectedStep.months || 0);\n this.activeDate = new Date(year, month, 1);\n\n this.refreshView();\n this.activeDateChange.emit(this.activeDate);\n }\n }\n\n toggleMode(_direction: number): void {\n const direction = _direction || 1;\n\n if (\n (this.datepickerMode === this.maxMode && direction === 1) ||\n (this.datepickerMode === this.minMode && direction === -1)\n ) {\n return;\n }\n\n if (this.datepickerMode) {\n this.datepickerMode = this.modes[this.modes.indexOf(this.datepickerMode) + direction];\n }\n\n this.refreshView();\n }\n\n protected getCustomClassForDate(date: Date): string {\n if (!this.customClass) {\n return '';\n }\n // todo: build a hash of custom classes, it will work faster\n const customClassObject: ({\n date: Date;\n mode: string;\n clazz: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } | undefined) = this.customClass.find((customClass: any) => {\n return (\n customClass.date.valueOf() === date.valueOf() &&\n customClass.mode === this.datepickerMode\n );\n }, this);\n\n return customClassObject === undefined ? '' : customClassObject.clazz;\n }\n\n protected compareDateDisabled(\n date1Disabled: { date: Date; mode: string },\n date2: Date\n ): number | undefined {\n if (date1Disabled === undefined || date2 === undefined) {\n return undefined;\n }\n\n if (date1Disabled.mode === 'day' && this.compareHandlerDay) {\n return this.compareHandlerDay(date1Disabled.date, date2);\n }\n\n if (date1Disabled.mode === 'month' && this.compareHandlerMonth) {\n return this.compareHandlerMonth(date1Disabled.date, date2);\n }\n\n if (date1Disabled.mode === 'year' && this.compareHandlerYear) {\n return this.compareHandlerYear(date1Disabled.date, date2);\n }\n\n return undefined;\n }\n\n protected isDisabled(date: Date): boolean {\n let isDateDisabled = false;\n if (this.dateDisabled) {\n this.dateDisabled.forEach(\n (disabledDate: { date: Date; mode: string }) => {\n if (this.compareDateDisabled(disabledDate, date) === 0) {\n isDateDisabled = true;\n }\n }\n );\n }\n\n if (this.dayDisabled) {\n isDateDisabled =\n isDateDisabled ||\n this.dayDisabled.indexOf(date.getDay()) > -1;\n }\n\n if (isDateDisabled) {\n return isDateDisabled;\n }\n\n const minDate = Number(this.minDate && this.compare(date, this.minDate));\n if (!isNaN(minDate)) {\n return minDate < 0;\n }\n\n const maxDate = Number(this.maxDate && this.compare(date, this.maxDate));\n if (!isNaN(maxDate)) {\n return maxDate > 0;\n }\n\n return false;\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DatepickerConfig {\n locale = 'en';\n datepickerMode = 'day';\n startingDay = 0;\n yearRange = 20;\n minMode = 'day';\n maxMode = 'year';\n showWeeks = true;\n formatDay = 'DD';\n formatMonth = 'MMMM';\n formatYear = 'YYYY';\n formatDayHeader = 'dd';\n formatDayTitle = 'MMMM YYYY';\n formatMonthTitle = 'YYYY';\n onlyCurrentMonth = false;\n monthColLimit = 3;\n yearColLimit = 5;\n shortcutPropagation = false;\n}\n","import {\n Component,\n EventEmitter,\n forwardRef,\n Input,\n Output,\n Provider,\n ViewChild\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { DatePickerInnerComponent } from './datepicker-inner.component';\nimport { DatepickerConfig } from './datepicker.config';\n\nexport const DATEPICKER_CONTROL_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => DatePickerComponent),\n multi: true\n};\n\n@Component({\n selector: 'datepicker',\n template: `\n <datepicker-inner [activeDate]=\"activeDate\"\n (update)=\"onUpdate($event)\"\n [locale]=\"config.locale\"\n [datepickerMode]=\"datepickerMode\"\n [initDate]=\"initDate\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [minMode]=\"minMode\"\n [maxMode]=\"maxMode\"\n [showWeeks]=\"showWeeks\"\n [formatDay]=\"formatDay\"\n [formatMonth]=\"formatMonth\"\n [formatYear]=\"formatYear\"\n [formatDayHeader]=\"formatDayHeader\"\n [formatDayTitle]=\"formatDayTitle\"\n [formatMonthTitle]=\"formatMonthTitle\"\n [startingDay]=\"startingDay\"\n [yearRange]=\"yearRange\"\n [customClass]=\"customClass\"\n [dateDisabled]=\"dateDisabled\"\n [dayDisabled]=\"dayDisabled\"\n [onlyCurrentMonth]=\"onlyCurrentMonth\"\n [shortcutPropagation]=\"shortcutPropagation\"\n [monthColLimit]=\"monthColLimit\"\n [yearColLimit]=\"yearColLimit\"\n (selectionDone)=\"onSelectionDone($event)\"\n (activeDateChange)=\"onActiveDateChange($event)\">\n <daypicker tabindex=\"0\"></daypicker>\n <monthpicker tabindex=\"0\"></monthpicker>\n <yearpicker tabindex=\"0\"></yearpicker>\n </datepicker-inner>\n `,\n providers: [DATEPICKER_CONTROL_VALUE_ACCESSOR]\n})\nexport class DatePickerComponent implements ControlValueAccessor {\n /** sets datepicker mode, supports: `day`, `month`, `year` */\n @Input() datepickerMode = 'day';\n /** default date to show if `ng-model` value is not specified */\n @Input() initDate?: Date;\n /** oldest selectable date */\n @Input() minDate?: Date;\n /** latest selectable date */\n @Input() maxDate?: Date;\n /** set lower datepicker mode, supports: `day`, `month`, `year` */\n @Input() minMode?: string;\n /** sets upper datepicker mode, supports: `day`, `month`, `year` */\n @Input() maxMode?: string;\n /** if false week numbers will be hidden */\n @Input() showWeeks = true;\n /** format of day in month */\n @Input() formatDay?: string;\n /** format of month in year */\n @Input() formatMonth?: string;\n /** format of year in year range */\n @Input() formatYear?: string;\n /** format of day in week header */\n @Input() formatDayHeader?: string;\n /** format of title when selecting day */\n @Input() formatDayTitle?: string;\n /** format of title when selecting month */\n @Input() formatMonthTitle?: string;\n /** starting day of the week from 0-6 (0=Sunday, ..., 6=Saturday) */\n @Input() startingDay?: number;\n /** number of years displayed in year selection */\n @Input() yearRange?: number;\n /** if true only dates from the currently displayed month will be shown */\n @Input() onlyCurrentMonth?: boolean;\n /** if true shortcut`s event propagation will be disabled */\n @Input() shortcutPropagation?: boolean;\n /** number of months displayed in a single row of month picker */\n @Input() monthColLimit = 3;\n /** number of years displayed in a single row of year picker */\n @Input() yearColLimit = 5;\n /** array of custom css classes to be applied to targeted dates */\n @Input() customClass?: { date: Date; mode: string; clazz: string }[];\n /** array of disabled dates */\n @Input() dateDisabled?: { date: Date; mode: string }[];\n /** disabled days of the week from 0-6 (0=Sunday, ..., 6=Saturday) */\n @Input() dayDisabled?: number[];\n\n /** currently active date */\n @Input()\n get activeDate(): Date|undefined {\n return this._activeDate || this._now;\n }\n\n set activeDate(value: Date|undefined) {\n this._activeDate = value;\n }\n\n @Output()\n selectionDone: EventEmitter<Date> = new EventEmitter<Date>(undefined);\n\n /** callback to invoke when the activeDate is changed. */\n @Output()\n activeDateChange: EventEmitter<Date> = new EventEmitter<Date>(\n undefined\n );\n\n @ViewChild(DatePickerInnerComponent, { static: true })\n _datePicker?: DatePickerInnerComponent;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onChange: any = Function.prototype;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onTouched: any = Function.prototype;\n\n config: DatepickerConfig;\n\n protected _now: Date = new Date();\n protected _activeDate?: Date;\n\n constructor(config: DatepickerConfig) {\n this.config = config;\n this.configureOptions();\n }\n\n configureOptions(): void {\n Object.assign(this, this.config);\n }\n\n onUpdate(event: Date): void {\n this.activeDate = event;\n this.onChange(event);\n }\n\n onSelectionDone(event: Date): void {\n this.selectionDone.emit(event);\n }\n\n onActiveDateChange(event: Date): void {\n this.activeDateChange.emit(event);\n }\n // todo: support null value\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n writeValue(value: any): void {\n if (this._datePicker?.compare(value, this._activeDate) === 0) {\n return;\n }\n if (value && value instanceof Date) {\n this.activeDate = value;\n this._datePicker?.select(value, false);\n\n return;\n }\n\n this.activeDate = value ? new Date(value) : void 0;\n }\n\n registerOnChange(fn: () => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n}\n","// @deprecated\nimport { Component, OnInit } from '@angular/core';\nimport { isBs3 } from 'ngx-bootstrap/utils';\nimport { DatePickerInnerComponent } from './datepicker-inner.component';\n\n@Component({\n selector: 'daypicker',\n template: `\n<table *ngIf=\"datePicker.datepickerMode === 'day'\" role=\"grid\" [attr.aria-labelledby]=\"datePicker.uniqueId + '-title'\" aria-activedescendant=\"activeDateId\">\n <thead>\n <tr>\n <th>\n <button *ngIf=\"!isBs4\"\n type=\"button\"\n class=\"btn btn-default btn-secondary btn-sm pull-left float-left\"\n (click)=\"datePicker.move(-1)\"\n tabindex=\"-1\">‹</button>\n <button *ngIf=\"isBs4\"\n type=\"button\"\n class=\"btn btn-default btn-secondary btn-sm pull-left float-left\"\n (click)=\"datePicker.move(-1)\"\n tabindex=\"-1\"><</button>\n </th>\n <th [attr.colspan]=\"5 + (datePicker.showWeeks ? 1 : 0)\">\n <button [id]=\"datePicker.uniqueId + '-title'\"\n type=\"button\" class=\"btn btn-default btn-secondary btn-sm\"\n (click)=\"datePicker.toggleMode(0)\"\n [disabled]=\"datePicker.datepickerMode === datePicker.maxMode\"\n [ngClass]=\"{disabled: datePicker.datepickerMode === datePicker.maxMode}\" tabindex=\"-1\" style=\"width:100%;\">\n <strong>{{ title }}</strong>\n </button>\n </th>\n <th>\n <button *ngIf=\"!isBs4\"\n type=\"button\"\n class=\"btn btn-default btn-secondary btn-sm pull-right float-right\"\n (click)=\"datePicker.move(1)\"\n tabindex=\"-1\">›</button>\n <button *ngIf=\"isBs4\"\n type=\"button\"\n class=\"btn btn-default btn-secondary btn-sm pull-right float-right\"\n (click)=\"datePicker.move(1)\"\n tabindex=\"-1\">>\n </button>\n </th>\n </tr>\n <tr>\n <th *ngIf=\"datePicker.showWeeks\"></th>\n <th *ngFor=\"let labelz of labels\" class=\"text-center\">\n <small aria-label=\"labelz.full\"><b>{{ labelz.abbr }}</b></small>\n </th>\n </tr>\n </thead>\n <tbody>\n <ng-template ngFor [ngForOf]=\"rows\" let-rowz=\"$implicit\" let-index=\"index\">\n <tr *ngIf=\"!(datePicker.onlyCurrentMonth && rowz[0].secondary && rowz[6].secondary)\">\n <td *ngIf=\"datePicker.showWeeks\" class=\"h6\" class=\"text-center\">\n <em>{{ weekNumbers[index] }}</em>\n </td>\n <td *ngFor=\"let dtz of rowz\" class=\"text-center\" role=\"gridcell\" [id]=\"dtz.uid\">\n <button type=\"button\" style=\"min-width:100%;\" class=\"btn btn-sm {{dtz.customClass}}\"\n *ngIf=\"!(datePicker.onlyCurrentMonth && dtz.secondary)\"\n [ngClass]=\"{'btn-secondary': isBs4 && !dtz.selected && !datePicker.isActive(dtz), 'btn-info': dtz.selected, disabled: dtz.disabled, active: !isBs4 && datePicker.isActive(dtz), 'btn-default': !isBs4}\"\n [disabled]=\"dtz.disabled\"\n (click)=\"datePicker.select(dtz.date)\" tabindex=\"-1\">\n <span [ngClass]=\"{'text-muted': dtz.secondary || dtz.current, 'text-info': !isBs4 && dtz.current}\">{{ dtz.label }}</span>\n </button>\n </td>\n </tr>\n </ng-template>\n </tbody>\n</table>\n `,\n styles: [\n `\n :host .btn-secondary {\n color: #292b2c;\n background-color: #fff;\n border-color: #ccc;\n }\n :host .btn-info .text-muted {\n color: #292b2c !important;\n }\n `\n ]\n})\nexport class DayPickerComponent implements OnInit {\n labels: {abbr?: unknown, full?: unknown}[] = [];\n title?: string;\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n rows: any = [];\n weekNumbers: number[] = [];\n datePicker: DatePickerInnerComponent;\n\n constructor(datePicker: DatePickerInnerComponent) {\n this.datePicker = datePicker;\n }\n\n get isBs4(): boolean {\n return !isBs3();\n }\n\n /*protected getDaysInMonth(year:number, month:number) {\n return ((month === 1) && (year % 4 === 0) &&\n ((year % 100 !== 0) || (year % 400 === 0))) ? 29 : DAYS_IN_MONTH[month];\n }*/\n ngOnInit(): void {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const self = this;\n\n this.datePicker.stepDay = { months: 1 };\n\n // todo valorkin fix\n this.datePicker.setRefreshViewHandler(function(): void {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const that = this;\n const year = that.activeDate.getFullYear();\n const month = that.activeDate.getMonth();\n const firstDayOfMonth = new Date(year, month, 1);\n const difference = that.startingDay - firstDayOfMonth.getDay();\n const numDisplayedFromPreviousMonth =\n difference > 0 ? 7 - difference : -difference;\n const firstDate = new Date(firstDayOfMonth.getTime());\n\n if (numDisplayedFromPreviousMonth > 0) {\n firstDate.setDate(-numDisplayedFromPreviousMonth + 1);\n }\n\n // 42 is the number of days on a six-week calendar\n const _days: Date[] = self.getDates(firstDate, 42);\n const days = [];\n for (let i = 0; i < 42; i++) {\n const _dateObject = that.createDateObject(_days[i], that.formatDay);\n _dateObject.secondary = _days[i].getMonth() !== month;\n _dateObject.uid = that.uniqueId + '-' + i;\n days[i] = _dateObject;\n }\n\n self.labels = [];\n for (let j = 0; j < 7; j++) {\n self.labels[j] = {};\n self.labels[j].abbr = that.dateFilter(\n days[j].date,\n that.formatDayHeader\n );\n self.labels[j].full = that.dateFilter(days[j].date, 'EEEE');\n }\n\n self.title = that.dateFilter(that.activeDate, that.formatDayTitle);\n self.rows = that.split(days, 7);\n\n if (that.showWeeks) {\n self.weekNumbers = [];\n const thursdayIndex = (4 + 7 - that.startingDay) % 7;\n const numWeeks = self.rows.length;\n for (let curWeek = 0; curWeek < numWeeks; curWeek++) {\n const _date = self.rows[curWeek][thursdayIndex].date;\n if (_date) {\n self.weekNumbers.push(self.getISO8601WeekNumber(_date));\n }\n }\n }\n }, 'day');\n\n this.datePicker.setCompareHandler(function(\n date1: Date,\n date2: Date\n ): number {\n const d1 = new Date(date1.getFullYear(), date1.getMonth(), date1.getDate());\n const d2 = new Date(date2.getFullYear(), date2.getMonth(), date2.getDate());\n return d1.getTime() - d2.getTime();\n }, 'day');\n\n this.datePicker.refreshView();\n }\n\n protected getDates(startDate: Date, n: number): Date[] {\n const dates: Date[] = new Array(n);\n let current = new Date(startDate.getTime());\n let i = 0;\n let date: Date;\n while (i < n) {\n date = new Date(current.getTime());\n date = this.datePicker.fixTimeZone(date);\n dates[i++] = date;\n current = new Date(\n date.getFullYear(),\n date.getMonth(),\n date.getDate() + 1\n );\n }\n return dates;\n }\n\n protected getISO8601WeekNumber(date: Date): number {\n const checkDate = new Date(date.getTime());\n // Thursday\n checkDate.setDate(checkDate.getDate() + 4 - (checkDate.getDay() || 7));\n const time = checkDate.getTime();\n // Compare with Jan 1\n checkDate.setMonth(0);\n checkDate.setDate(1);\n return (\n Math.floor(Math.round((time - checkDate.getTime()) / 86400000) / 7) + 1\n );\n }\n\n // todo: key events implementation\n}\n","// @deprecated\nimport { Component, OnInit } from '@angular/core';\n\nimport { isBs3 } from 'ngx-bootstrap/utils';\nimport { DatePickerInnerComponent } from './datepicker-inner.component';\n\n@Component({\n selector: 'monthpicker',\n template: `\n<table *ngIf=\"datePicker.datepickerMode==='month'\" role=\"grid\">\n <thead>\n <tr>\n <th>\n <button type=\"button\" class=\"btn btn-default btn-sm pull-left float-left\"\n (click)=\"datePicker.move(-1)\" tabindex=\"-1\">‹</button></th>\n <th [attr.colspan]=\"((datePicker.monthColLimit - 2) <= 0) ? 1 : datePicker.monthColLimit - 2\">\n <button [id]=\"datePicker.uniqueId + '-title'\"\n type=\"button\" class=\"btn btn-default btn-sm\"\n (click)=\"datePicker.toggleMode(0)\"\n [disabled]=\"datePicker.datepickerMode === maxMode\"\n [ngClass]=\"{disabled: datePicker.datepickerMode === maxMode}\" tabindex=\"-1\" style=\"width:100%;\">\n <strong>{{ title }}</strong>\n </button>\n </th>\n <th>\n <button type=\"button\" class=\"btn btn-default btn-sm pull-right float-right\"\n (click)=\"datePicker.move(1)\" tabindex=\"-1\">›</button>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let rowz of rows\">\n <td *ngFor=\"let dtz of rowz\" class=\"text-center\" role=\"gridcell\" [attr.id]=\"dtz.uid\" [ngClass]=\"dtz.customClass\">\n <button type=\"button\" style=\"min-width:100%;\" class=\"btn btn-default\"\n [ngClass]=\"{'btn-link': isBs4 && !dtz.selected && !datePicker.isActive(dtz), 'btn-info': dtz.selected || (isBs4 && !dtz.selected && datePicker.isActive(dtz)), disabled: dtz.disabled, active: !isBs4 && datePicker.isActive(dtz)}\"\n [disabled]=\"dtz.disabled\"\n (click)=\"datePicker.select(dtz.date)\" tabindex=\"-1\">\n <span [ngClass]=\"{'text-success': isBs4 && dtz.current, 'text-info': !isBs4 && dtz.current}\">{{ dtz.label }}</span>\n </button>\n </td>\n </tr>\n </tbody>\n</table>\n `,\n styles: [\n `\n :host .btn-info .text-success {\n color: #fff !important;\n }\n `\n ]\n})\nexport class MonthPickerComponent implements OnInit {\n title?: string;\n rows = [];\n datePicker: DatePickerInnerComponent;\n maxMode?: string;\n\n constructor(datePicker: DatePickerInnerComponent) {\n this.datePicker = datePicker;\n }\n\n get isBs4(): boolean {\n return !isBs3();\n }\n\n ngOnInit(): void {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const self = this;\n\n this.datePicker.stepMonth = { years: 1 };\n\n this.datePicker.setRefreshViewHandler(function(): void {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const that = this;\n const months = new Array(12);\n const year: number = that.activeDate.getFullYear();\n let date: Date;\n\n for (let i = 0; i < 12; i++) {\n date = new Date(year, i, 1);\n date = that.fixTimeZone(date);\n months[i] = that.createDateObject(date, that.formatMonth);\n months[i].uid = that.uniqueId + '-' + i;\n }\n\n self.title = that.dateFilter(that.activeDate, that.formatMonthTitle);\n self.rows = that.split(months, self.datePicker.monthColLimit);\n }, 'month');\n\n this.datePicker.setCompareHandler(function(\n date1: Date,\n date2: Date\n ): number {\n const d1 = new Date(date1.getFullYear(), date1.getMonth());\n const d2 = new Date(date2.getFullYear(), date2.getMonth());\n return d1.getTime() - d2.getTime();\n }, 'month');\n\n this.datePicker.refreshView();\n }\n\n // todo: key events implementation\n}\n","// @deprecated\nimport { Component, OnInit } from '@angular/core';\n\nimport { isBs3 } from 'ngx-bootstrap/utils';\nimport { DatePickerInnerComponent } from './datepicker-inner.component';\n\n@Component({\n selector: 'yearpicker',\n template: `\n <table *ngIf=\"datePicker.datepickerMode==='year'\" role='grid'>\n <thead>\n <tr>\n <th>\n <button type='button' class='btn btn-default btn-sm pull-left float-left'\n (click)='datePicker.move(-1)' tabindex='-1'>‹\n </button>\n </th>\n <th [attr.colspan]='((datePicker.yearColLimit - 2) <= 0) ? 1 : datePicker.yearColLimit - 2'>\n <button [id]=\"datePicker.uniqueId + '-title'\" role='heading'\n type='button' class='btn btn-default btn-sm'\n (click)='datePicker.toggleMode(0)'\n [disabled]='datePicker.datepickerMode === datePicker.maxMode'\n [ngClass]='{disabled: datePicker.datepickerMode === datePicker.maxMode}' tabindex='-1'\n style='width:100%;'>\n <strong>{{ title }}</strong>\n </button>\n </th>\n <th>\n <button type='button' class='btn btn-default btn-sm pull-right float-right'\n (click)='datePicker.move(1)' tabindex='-1'>›\n </button>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor='let rowz of rows'>\n <td *ngFor='let dtz of rowz' class='text-center' role='gridcell' [attr.id]='dtz.uid'>\n <button type='button' style='min-width:100%;' class='btn btn-default'\n [ngClass]=\"{'btn-link': isBs4 && !dtz.selected && !datePicker.isActive(dtz), 'btn-info': dtz.selected || (isBs4 && !dtz.selected && datePicker.isActive(dtz)), disabled: dtz.disabled, active: !isBs4 && datePicker.isActive(dtz)}\"\n [disabled]='dtz.disabled'\n (click)='datePicker.select(dtz.date)' tabindex='-1'>\n <span\n [ngClass]=\"{'text-success': isBs4 && dtz.current, 'text-info': !isBs4 && dtz.current}\">{{ dtz.label }}</span>\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n `,\n styles: [\n `\n :host .btn-info .text-success {\n color: #fff !important;\n }\n `\n ]\n})\nexport class YearPickerComponent implements OnInit {\n datePicker: DatePickerInnerComponent;\n title?: string;\n rows = [];\n\n constructor(datePicker: DatePickerInnerComponent) {\n this.datePicker = datePicker;\n }\n\n get isBs4(): boolean {\n return !isBs3();\n }\n\n ngOnInit(): void {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const self = this;\n\n this.datePicker.stepYear = { years: this.datePicker.yearRange };\n\n this.datePicker.setRefreshViewHandler(function(): void {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const that = this;\n const years = new Array(that.yearRange);\n let date: Date;\n const start = self.getStartingYear(that.activeDate.getFullYear()) || 0;\n\n for (let i = 0; i < that.yearRange; i++) {\n date = new Date(start + i, 0, 1);\n date = that.fixTimeZone(date);\n years[i] = that.createDateObject(date, that.formatYear);\n years[i].uid = that.uniqueId + '-' + i;\n }\n\n self.title = [years[0].label, years[that.yearRange - 1].label].join(\n ' - '\n );\n self.rows = that.split(years, self.datePicker.yearColLimit);\n }, 'year');\n\n this.datePicker.setCompareHandler(function(\n date1: Date,\n date2: Date\n ): number {\n return date1.getFullYear() - date2.getFullYear();\n }, 'year');\n\n this.datePicker.refreshView();\n }\n\n protected getStartingYear(year: number): number | undefined {\n // todo: parseInt\n if (this.datePicker && this.datePicker.yearRange) {\n return (\n (year - 1) / this.datePicker.yearRange * this.datePicker.yearRange + 1\n );\n }\n return undefined;\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'bs-calendar-layout',\n template: `\n <!-- current date, will be added in nearest releases -->\n <bs-current-date title=\"hey there\" *ngIf=\"false\"></bs-current-date>\n\n <!--navigation-->\n <div class=\"bs-datepicker-head\">\n <ng-content select=\"bs-datepicker-navigation-view\"></ng-content>\n </div>\n\n <div class=\"bs-datepicker-body\">\n <ng-content></ng-content>\n </div>\n\n <!--timepicker-->\n <bs-timepicker *ngIf=\"false\"></bs-timepicker>\n `\n})\nexport class BsCalendarLayoutComponent {}\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'bs-current-date',\n template: `<div class=\"current-timedate\"><span>{{ title }}</span></div>`\n})\nexport class BsCurrentDateViewComponent {\n @Input() title?: string;\n}\n","import { Component, ChangeDetectionStrategy, Input, Output, EventEmitter } from '@angular/core';\n\nexport interface BsCustomDates {\n label: string;\n value: Date | Date[];\n}\n\n@Component({\n selector: 'bs-custom-date-view',\n template: `\n <div class=\"bs-datepicker-predefined-btns\">\n <button *ngFor=\"let range of ranges\"\n type=\"button\"\n class=\"btn\"\n (click)=\"selectFromRanges(range)\"\n [class.selected]=\"range.value === selectedRange\">\n {{ range.label }}\n </button>\n </div>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class BsCustomDatesViewComponent {\n @Input() ranges?: BsCustomDates[];\n @Input() selectedRange?: Date[];\n @Input() customRangeLabel?: string;\n @Output() onSelect = new EventEmitter<BsCustomDates>();\n\n selectFromRanges(range?: BsCustomDates) {\n this.onSelect.emit(range);\n }\n}\n","import { TimeUnit } from 'ngx-bootstrap/chronos';\n\nexport type BsDatepickerViewMode = 'day' | 'month' | 'year';\n\n/** *************** */\n// navigation bar settings\nexport interface NavigationViewModel {\n monthTitle: string;\n yearTitle: string;\n hideLeftArrow: boolean;\n hideRightArrow: boolean;\n disableLeftArrow: boolean;\n disableRightArrow: boolean;\n}\n\nexport interface CalendarCellViewModel {\n date: Date;\n label: string;\n isDisabled?: boolean;\n isHovered?: boolean;\n isSelected?: boolean;\n}\n\n/** *************** */\n// days matrix: day cell view model\nexport interface DayViewModel extends CalendarCellViewModel {\n isOtherMonthHovered?: boolean;\n isOtherMonth?: boolean;\n isInRange?: boolean;\n isSelectionStart?: boolean;\n isSelectionEnd?: boolean;\n isToday?: boolean;\n customClasses?: string;\n tooltipText?: string;\n // day index\n monthIndex?: number;\n weekIndex?: number;\n dayIndex?: number;\n}\n\nexport interface WeekViewModel {\n days: DayViewModel[];\n isHovered?: boolean;\n}\n\n// todo: split navigation settings\nexport interface DaysCalendarViewModel extends NavigationViewModel {\n weeks: WeekViewModel[];\n // additional information\n month: Date;\n weekNumbers: string[];\n weekdays: string[];\n}\n\n/** *************** */\n// months calendar\nexport interface MonthsCalendarViewModel extends NavigationViewModel {\n months: CalendarCellViewModel[][];\n}\n\n/** *************** */\n// years calendar\nexport interface YearsCalendarViewModel extends NavigationViewModel {\n years: CalendarCellViewModel[][];\n}\n\n/** *************** */\n\n// math model\n/** *************** */\n\n// days Date's array\nexport interface DaysCalendarModel {\n daysMatrix: Date[][];\n month: Date;\n}\n\n/** *************** */\n// some func options\nexport interface MonthViewOptions {\n width?: number;\n height?: number;\n firstDayOfWeek?: number;\n}\n\n/** *************** */\n// rendering options\nexport interface DatepickerFormatOptions {\n locale?: string;\n\n monthTitle?: string;\n yearTitle?: string;\n\n dayLabel?: string;\n monthLabel?: string;\n yearLabel?: string;\n\n weekNumbers?: string;\n}\n\nexport interface DatepickerRenderOptions {\n showWeekNumbers: boolean;\n displayMonths: number;\n}\n\nexport interface DatepickerDateCustomClasses {\n date: Date;\n classes: string[];\n}\n\nexport interface DatepickerDateTooltipText {\n date: Date;\n tooltipText: string;\n}\n\n/** *************** */\n// events\n/** *************** */\nexport enum BsNavigationDirection {\n UP,\n DOWN\n}\n\n// used for navigation events, to change view date in state\nexport interface BsNavigationEvent {\n direction?: BsNavigationDirection;\n step?: TimeUnit;\n}\n\nexport interface BsViewNavigationEvent {\n unit?: TimeUnit;\n viewMode: BsDatepickerViewMode;\n}\n\nexport interface CellHoverEvent {\n cell: CalendarCellViewModel;\n isHovered: boolean;\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Input,\n OnInit,\n Renderer2\n} from '@angular/core';\n\nimport { BsDatepickerConfig } from '../../bs-datepicker.config';\nimport { DayViewModel } from '../../models';\n\n@Component({\n selector: '[bsDatepickerDayDecorator]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.disabled]': 'day.isDisabled',\n '[class.is-highlighted]': 'day.isHovered',\n '[class.is-other-month]': 'day.isOtherMonth',\n '[class.is-active-other-month]': 'day.isOtherMonthHovered',\n '[class.in-range]': 'day.isInRange',\n '[class.select-start]': 'day.isSelectionStart',\n '[class.select-end]': 'day.isSelectionEnd',\n '[class.selected]': 'day.isSelected'\n },\n template: `{{ day && day.label || '' }}`\n})\nexport class BsDatepickerDayDecoratorComponent implements OnInit {\n @Input() day: DayViewModel = { date: new Date(), label: '' };\n\n constructor(\n private _config: BsDatepickerConfig,\n private _elRef: ElementRef,\n private _renderer: Renderer2\n ) { }\n\n ngOnInit(): void {\n\n if (this.day?.isToday && this._config && this._config.customTodayClass) {\n this._renderer.addClass(this._elRef.nativeElement, this._config.customTodayClass);\n }\n\n if (typeof this.day?.customClasses === 'string') {\n this.day?.customClasses.split(' ')\n .filter((className: string) => className)\n .forEach((className: string) => {\n this._renderer.addClass(this._elRef.nativeElement, className);\n });\n }\n }\n}\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { BsDatepickerViewMode, BsNavigationDirection, NavigationViewModel } from '../../models';\n\n@Component({\n selector: 'bs-datepicker-navigation-view',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <button class=\"previous\"\n [disabled]=\"calendar.disableLeftArrow\"\n [style.visibility]=\"calendar.hideLeftArrow ? 'hidden' : 'visible'\"\n type=\"button\"\n (click)=\"navTo(true)\">\n <span>‹</span>\n </button>\n\n <ng-container *ngIf=\"calendar && calendar.monthTitle\">\n ​ <!-- zero-width space needed for correct alignment\n with preserveWhitespaces: false in Angular -->\n\n <button class=\"current\"\n type=\"button\"\n (click)=\"view('month')\"\n ><span>{{ calendar.monthTitle }}</span>\n </button>\n </ng-container>\n\n ​ <!-- zero-width space needed for correct alignment\n with preserveWhitespaces: false in Angular -->\n\n <button class=\"current\" (click)=\"view('year')\" type=\"button\">\n <span>{{ calendar.yearTitle }}</span>\n </button>\n\n ​ <!-- zero-width space needed for correct alignment\n with preserveWhitespaces: false in Angular -->\n\n <button class=\"next\"\n [disabled]=\"calendar.disableRightArrow\"\n [style.visibility]=\"calendar.hideRightArrow ? 'hidden' : 'visible'\"\n type=\"button\"\n (click)=\"navTo(false)\"><span>›</span>\n </button>\n `\n})\nexport class BsDatepickerNavigationViewComponent {\n @Input() calendar!: NavigationViewModel;\n\n @Output() onNavigate = new EventEmitter<BsNavigationDirection>();\n @Output() onViewMode = new EventEmitter<BsDatepickerViewMode>();\n\n navTo(down: boolean): void {\n this.onNavigate.emit(\n down ? BsNavigationDirection.DOWN : BsNavigationDirection.UP\n );\n }\n\n view(viewMode: BsDatepickerViewMode): void {\n this.onViewMode.emit(viewMode);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output\n} from '@angular/core';\n\nimport { isSameDay } from 'ngx-bootstrap/chronos';\n\nimport {\n BsDatepickerViewMode,\n BsNavigationDirection,\n BsNavigationEvent,\n CellHoverEvent, DatepickerDateTooltipText,\n DatepickerRenderOptions,\n DaysCalendarViewModel,\n DayViewModel, WeekViewModel\n} from '../../models';\n\nimport { BsDatepickerConfig } from '../../bs-datepicker.config';\n\n@Component({\n selector: 'bs-days-calendar-view',\n // changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <bs-calendar-layout>\n <bs-datepicker-navigation-view\n [calendar]=\"calendar\"\n (onNavigate)=\"navigateTo($event)\"\n (onViewMode)=\"changeViewMode($event)\"\n ></bs-datepicker-navigation-view>\n <!--days matrix-->\n <table role=\"grid\" class=\"days weeks\">\n <thead>\n <tr>\n <!--if show weeks-->\n <th *ngIf=\"options && options.showWeekNumbers\"></th>\n <th *ngFor=\"let weekday of calendar.weekdays; let i = index\"\n aria-label=\"weekday\">{{ calendar.weekdays[i] }}\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let week of calendar.weeks; let i = index\">\n <td class=\"week\" [class.active-week]=\"isWeekHovered\" *ngIf=\"options && options.showWeekNumbers\">\n <span *ngIf=\"isiOS\" (click)=\"selectWeek(week)\">{{ calendar.weekNumbers[i] }}</span>\n <span *ngIf=\"!isiOS\"\n (click)=\"selectWeek(week)\"\n (mouseenter)=\"weekHoverHandler(week, true)\"\n (mouseleave)=\"weekHoverHandler(week, false)\">{{ calendar.weekNumbers[i] }}</span>\n </td>\n <td *ngFor=\"let day of week.days\" role=\"gridcell\">\n\n <!-- When we want to show tooltips for dates -->\n <span *ngIf=\"!isiOS && isShowTooltip\" bsDatepickerDayDecorator\n [day]=\"day\"\n (click)=\"selectDay(day)\"\n tooltip=\"{{day.tooltipText}}\"\n (mouseenter)=\"hoverDay(day, true)\"\n (mouseleave)=\"hoverDay(day, false)\">{{ day.label }} 3</span>\n <!-- When tooltips for dates are disabled -->\n <span *ngIf=\"!isiOS && !isShowTooltip\" bsDatepickerDayDecorator\n [day]=\"day\"\n (click)=\"selectDay(day)\"\n (mouseenter)=\"hoverDay(day, true)\"\n (mouseleave)=\"hoverDay(day, false)\">{{ day.label }} 2</span>\n\n <!-- For mobile iOS view, tooltips are not needed -->\n <span *ngIf=\"isiOS\" bsDatepickerDayDecorator\n [day]=\"day\"\n (click)=\"selectDay(day)\">{{ day.label }} 1</span>\n </td>\n </tr>\n </tbody>\n </table>\n\n </bs-calendar-layout>\n `\n})\nexport class BsDaysCalendarViewComponent {\n @Input() calendar!: DaysCalendarViewModel;\n @Input() options?: DatepickerRenderOptions | null;\n\n @Output() onNavigate = new EventEmitter<BsNavigationEvent>();\n @Output() onViewMode = new EventEmitter<BsDatepickerViewMode>();\n\n @Output() onSelect = new EventEmitter<DayViewModel>();\n @Output() onHover = new EventEmitter<CellHoverEvent>();\n @Output() onHoverWeek = new EventEmitter<WeekViewModel>();\n\n isWeekHovered?: boolean;\n isiOS: boolean;\n isShowTooltip?: boolean;\n\n constructor(private _config: BsDatepickerConfig) {\n this.isiOS = (/iPad|iPhone|iPod/.test(navigator.platform) ||\n (navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1));\n if (this._config.dateTooltipTexts && this._config.dateTooltipTexts.length > 0) {\n this.isShowTooltip = true;\n }\n }\n\n navigateTo(event: BsNavigationDirection): void {\n const step = BsNavigationDirection.DOWN === event ? -1 : 1;\n this.onNavigate.emit({ step: { month: step } });\n }\n\n changeViewMode(event: BsDatepickerViewMode): void {\n this.onViewMode.emit(event);\n }\n\n selectDay(event: DayViewModel): void {\n this.onSelect.emit(event);\n }\n\n selectWeek(week: WeekViewModel): void {\n if (!this._config.selectWeek && !this._config.selectWeekDateRange) {\n return;\n }\n\n if (week.days.length === 0) {\n return;\n }\n\n if (this._config.selectWeek && week.days[0]\n && !week.days[0].isDisabled\n && this._config.selectFromOtherMonth) {\n\n this.onSelect.emit(week.days[0]);\n\n return;\n }\n\n const selectedDay = week.days.find((day: DayViewModel) => {\n return this._config.selectFromOtherMonth\n ? !day.isDisabled\n : !day.isOtherMonth && !day.isDisabled;\n });\n\n this.onSelect.emit(selectedDay);\n\n if (this._config.selectWeekDateRange) {\n const days = week.days.slice(0);\n const lastDayOfRange = days.reverse().find((day: DayViewModel) => {\n return this._config.selectFromOtherMonth\n ? !day.isDisabled\n : !day.isOtherMonth && !day.isDisabled;\n });\n\n this.onSelect.emit(lastDayOfRange);\n }\n }\n\n weekHoverHandler(cell: WeekViewModel, isHovered: boolean): void {\n if (!this._config.selectWeek && !this._config.selectWeekDateRange) {\n return;\n }\n\n const hasActiveDays = cell.days.find((day: DayViewModel) => {\n return this._config.selectFromOtherMonth\n ? !day.isDisabled\n : !day.isOtherMonth && !day.isDisabled;\n });\n\n if (hasActiveDays) {\n cell.isHovered = isHovered;\n this.isWeekHovered = isHovered;\n this.onHoverWeek.emit(cell);\n }\n }\n\n hoverDay(cell: DayViewModel, isHovered: boolean): void {\n if (this._config.selectFromOtherMonth && cell.isOtherMonth) {\n cell.isOtherMonthHovered = isHovered;\n }\n\n if (this._config.dateTooltipTexts) {\n cell.tooltipText = '';\n this._config.dateTooltipTexts.forEach((dateData: DatepickerDateTooltipText) => {\n\n if (isSameDay(dateData.date, cell.date)) {\n cell.tooltipText = dateData.tooltipText;\n\n return;\n }\n });\n }\n\n this.onHover.emit({ cell, isHovered });\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport {\n BsDatepickerViewMode,\n BsNavigationDirection,\n BsNavigationEvent,\n CellHoverEvent,\n MonthsCalendarViewModel,\n CalendarCellViewModel\n} from '../../models';\n\n@Component({\n selector: 'bs-month-calendar-view',\n template: `\n <bs-calendar-layout>\n <bs-datepicker-navigation-view\n [calendar]=\"calendar\"\n (onNavigate)=\"navigateTo($event)\"\n (onViewMode)=\"changeViewMode($event)\"\n ></bs-datepicker-navigation-view>\n\n <table role=\"grid\" class=\"months\">\n <tbody>\n <tr *ngFor=\"let row of calendar?.months\">\n <td *ngFor=\"let month of row\" role=\"gridcell\"\n (click)=\"viewMonth(month)\"\n (mouseenter)=\"hoverMonth(month, true)\"\n (mouseleave)=\"hoverMonth(month, false)\"\n [class.disabled]=\"month.isDisabled\"\n [class.is-highlighted]=\"month.isHovered\">\n <span [class.selected]=\"month.isSelected\">{{ month.label }}</span>\n </td>\n </tr>\n </tbody>\n </table>\n </bs-calendar-layout>\n `\n})\nexport class BsMonthCalendarViewComponent {\n @Input() calendar!: MonthsCalendarViewModel;\n\n @Output() onNavigate = new EventEmitter<BsNavigationEvent>();\n @Output() onViewMode = new EventEmitter<BsDatepickerViewMode>();\n\n @Output() onSelect = new EventEmitter<CalendarCellViewModel>();\n @Output() onHover = new EventEmitter<CellHoverEvent>();\n\n navigateTo(event: BsNavigationDirection): void {\n const step = BsNavigationDirection.DOWN === event ? -1 : 1;\n this.onNavigate.emit({ step: { year: step } });\n }\n\n viewMonth(month: CalendarCellViewModel) {\n this.onSelect.emit(month);\n }\n\n hoverMonth(cell: CalendarCellViewModel, isHovered: boolean) {\n this.onHover.emit({ cell, isHovered });\n }\n\n changeViewMode(event: BsDatepickerViewMode): void {\n this.onViewMode.emit(event);\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'bs-timepicker',\n template: `\n <div class=\"bs-timepicker-container\">\n <div class=\"bs-timepicker-controls\">\n <button class=\"bs-decrease\" type=\"button\">-</button>\n <input type=\"text\" [value]=\"hours\" placeholder=\"00\">\n <button class=\"bs-increase\" type=\"button\">+</button>\n </div>\n <div class=\"bs-timepicker-controls\">\n <button class=\"bs-decrease\" type=\"button\">-</button>\n <input type=\"text\" [value]=\"minutes\" placeholder=\"00\">\n <button class=\"bs-increase\" type=\"button\">+</button>\n </div>\n <button class=\"switch-time-format\" type=\"button\">{{ ampm }}\n <img\n src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAKCAYAAABi8KSDAAABSElEQVQYV3XQPUvDUBQG4HNuagtVqc6KgouCv6GIuIntYBLB9hcIQpLStCAIV7DYmpTcRWcXqZio3Vwc/UCc/QEqfgyKGbr0I7nS1EiHeqYzPO/h5SD0jaxUZjmSLCB+OFb+UFINFwASAEAdpu9gaGXVyAHHFQBkHpKHc6a9dzECvADyY9sqlAMsK9W0jzxDXqeytr3mhQckxSji27TJJ5/rPmIpwJJq3HrtduriYOurv1a4i1p5HnhkG9OFymi0ReoO05cGwb+ayv4dysVygjeFmsP05f8wpZQ8fsdvfmuY9zjWSNqUtgYFVnOVReILYoBFzdQI5/GGFzNHhGbeZnopDGU29sZbscgldmC99w35VOATTycIMMcBXIfpSVGzZhA6C8hh00conln6VQ9TGgV32OEAKQC4DrBq7CJwd0ggR7Vq/rPrfgB+C3sGypY5DAAAAABJRU5ErkJggg==\"\n alt=\"\">\n </button>\n </div>\n `\n})\nexport class BsTimepickerViewComponent {\n ampm = 'ok';\n hours = 0;\n minutes = 0;\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { yearsPerCalendar } from '../../engine/format-years-calendar';\nimport {\n BsDatepickerViewMode,\n BsNavigationDirection,\n BsNavigationEvent,\n CalendarCellViewModel,\n CellHoverEvent,\n YearsCalendarViewModel\n} from '../../models';\n\n@Component({\n selector: 'bs-years-calendar-view',\n template: `\n <bs-calendar-layout>\n <bs-datepicker-navigation-view\n [calendar]=\"calendar\"\n (onNavigate)=\"navigateTo($event)\"\n (onViewMode)=\"changeViewMode($event)\"\n ></bs-datepicker-navigation-view>\n\n <table role=\"grid\" class=\"years\">\n <tbody>\n <tr *ngFor=\"let row of calendar?.years\">\n <td *ngFor=\"let year of row\" role=\"gridcell\"\n (click)=\"viewYear(year)\"\n (mouseenter)=\"hoverYear(year, true)\"\n (mouseleave)=\"hoverYear(year, false)\"\n [class.disabled]=\"year.isDisabled\"\n [class.is-highlighted]=\"year.isHovered\">\n <span [class.selected]=\"year.isSelected\">{{ year.label }}</span>\n </td>\n </tr>\n </tbody>\n </table>\n </bs-calendar-layout>\n `\n})\nexport class BsYearsCalendarViewComponent {\n @Input() calendar!: YearsCalendarViewModel;\n\n @Output() onNavigate = new EventEmitter<BsNavigationEvent>();\n @Output() onViewMode = new EventEmitter<BsDatepickerViewMode>();\n\n @Output() onSelect = new EventEmitter<CalendarCellViewModel>();\n @Output() onHover = new EventEmitter<CellHoverEvent>();\n\n navigateTo(event: BsNavigationDirection): void {\n const step = BsNavigationDirection.DOWN === event ? -1 : 1;\n this.onNavigate.emit({ step: { year: step * yearsPerCalendar } });\n }\n\n viewYear(year: CalendarCellViewModel) {\n this.onSelect.emit(year);\n }\n\n hoverYear(cell: CalendarCellViewModel, isHovered: boolean) {\n this.onHover.emit({ cell, isHovered });\n }\n\n changeViewMode(event: BsDatepickerViewMode): void {\n this.onViewMode.emit(event);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { ComponentLoaderFactory } from 'ngx-bootstrap/component-loader';\nimport { PositioningService } from 'ngx-bootstrap/positioning';\n\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\nimport { TimepickerModule } from 'ngx-bootstrap/timepicker';\nimport { TimepickerActions } from 'ngx-bootstrap/timepicker';\n\nimport { BsDatepickerInputDirective } from './bs-datepicker-input.directive';\nimport { BsDatepickerDirective } from './bs-datepicker.component';\nimport { BsDaterangepickerInputDirective } from './bs-daterangepicker-input.directive';\nimport { BsDaterangepickerDirective } from './bs-daterangepicker.component';\n\nimport { BsDatepickerInlineDirective } from './bs-datepicker-inline.component';\n\nimport { BsLocaleService } from './bs-locale.service';\nimport { BsDatepickerActions } from './reducer/bs-datepicker.actions';\nimport { BsDatepickerEffects } from './reducer/bs-datepicker.effects';\nimport { BsDatepickerStore } from './reducer/bs-datepicker.store';\nimport { BsDatepickerContainerComponent } from './themes/bs/bs-datepicker-container.component';\nimport { BsDaterangepickerContainerComponent } from './themes/bs/bs-daterangepicker-container.component';\n\nimport { BsDatepickerInlineContainerComponent } from './themes/bs/bs-datepicker-inline-container.component';\nimport { BsDaterangepickerInlineContainerComponent } from './themes/bs/bs-daterangepicker-inline-container.component';\n\nimport { BsDaterangepickerInlineDirective } from './bs-daterangepicker-inline.component';\n\nimport { BsCalendarLayoutComponent } from './themes/bs/bs-calendar-layout.component';\nimport { BsCurrentDateViewComponent } from './themes/bs/bs-current-date-view.component';\nimport { BsCustomDatesViewComponent } from './themes/bs/bs-custom-dates-view.component';\nimport { BsDatepickerDayDecoratorComponent } from './themes/bs/bs-datepicker-day-decorator.directive';\nimport { BsDatepickerNavigationViewComponent } from './themes/bs/bs-datepicker-navigation-view.component';\nimport { BsDaysCalendarViewComponent } from './themes/bs/bs-days-calendar-view.component';\nimport { BsMonthCalendarViewComponent } from './themes/bs/bs-months-calendar-view.component';\nimport { BsTimepickerViewComponent } from './themes/bs/bs-timepicker-view.component';\nimport { BsYearsCalendarViewComponent } from './themes/bs/bs-years-calendar-view.component';\n\n@NgModule({\n imports: [CommonModule, TooltipModule, TimepickerModule],\n declarations: [\n BsCalendarLayoutComponent,\n BsCurrentDateViewComponent,\n BsCustomDatesViewComponent,\n BsDatepickerDayDecoratorComponent,\n BsDatepickerNavigationViewComponent,\n BsDaysCalendarViewComponent,\n BsMonthCalendarViewComponent,\n BsTimepickerViewComponent,\n BsYearsCalendarViewComponent,\n BsDatepickerContainerComponent,\n BsDatepickerDirective,\n BsDatepickerInlineContainerComponent,\n BsDatepickerInlineDirective,\n BsDatepickerInputDirective,\n BsDaterangepickerContainerComponent,\n BsDaterangepickerDirective,\n BsDaterangepickerInlineContainerComponent,\n BsDaterangepickerInlineDirective,\n BsDaterangepickerInputDirective\n ],\n entryComponents: [\n BsDatepickerContainerComponent,\n BsDaterangepickerContainerComponent,\n BsDatepickerInlineContainerComponent,\n BsDaterangepickerInlineContainerComponent\n ],\n exports: [\n BsDatepickerContainerComponent,\n BsDatepickerDirective,\n BsDatepickerInlineContainerComponent,\n BsDatepickerInlineDirective,\n BsDatepickerInputDirective,\n BsDaterangepickerContainerComponent,\n BsDaterangepickerDirective,\n BsDaterangepickerInlineContainerComponent,\n BsDaterangepickerInlineDirective,\n BsDaterangepickerInputDirective\n ]\n})\nexport class BsDatepickerModule {\n static forRoot(): ModuleWithProviders<BsDatepickerModule> {\n return {\n ngModule: BsDatepickerModule,\n providers: [\n ComponentLoaderFactory,\n PositioningService,\n BsDatepickerStore,\n BsDatepickerActions,\n BsDatepickerEffects,\n BsLocaleService,\n TimepickerActions\n ]\n };\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { DatePickerInnerComponent } from './datepicker-inner.component';\nimport { DatePickerComponent } from './datepicker.component';\nimport { DatepickerConfig } from './datepicker.config';\nimport { DayPickerComponent } from './daypicker.component';\nimport { MonthPickerComponent } from './monthpicker.component';\nimport { YearPickerComponent } from './yearpicker.component';\n\n@NgModule({\n imports: [CommonModule, FormsModule],\n declarations: [\n DatePickerComponent,\n DatePickerInnerComponent,\n DayPickerComponent,\n MonthPickerComponent,\n YearPickerComponent\n ],\n exports: [\n DatePickerComponent,\n DatePickerInnerComponent,\n DayPickerComponent,\n MonthPickerComponent,\n YearPickerComponent\n ],\n entryComponents: [DatePickerComponent]\n})\nexport class DatepickerModule {\n static forRoot(): ModuleWithProviders<DatepickerModule> {\n return { ngModule: DatepickerModule, providers: [DatepickerConfig] };\n }\n}\n"]}
|