mis-crystal-design-system 2.3.19 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/mis-crystal-design-system-datepicker.umd.js +13916 -0
- package/bundles/mis-crystal-design-system-datepicker.umd.js.map +1 -0
- package/bundles/mis-crystal-design-system-datepicker.umd.min.js +68 -0
- package/bundles/mis-crystal-design-system-datepicker.umd.min.js.map +1 -0
- package/bundles/mis-crystal-design-system-datepicker_v2.umd.js +43 -25
- package/bundles/mis-crystal-design-system-datepicker_v2.umd.js.map +1 -1
- package/bundles/mis-crystal-design-system-datepicker_v2.umd.min.js +2 -2
- package/bundles/mis-crystal-design-system-datepicker_v2.umd.min.js.map +1 -1
- package/bundles/mis-crystal-design-system-multi-select-dropdown.umd.js +7 -1
- package/bundles/mis-crystal-design-system-multi-select-dropdown.umd.js.map +1 -1
- package/bundles/mis-crystal-design-system-multi-select-dropdown.umd.min.js +2 -2
- package/bundles/mis-crystal-design-system-multi-select-dropdown.umd.min.js.map +1 -1
- package/datepicker/base/bs-datepicker-container.d.ts +44 -0
- package/datepicker/bs-datepicker-inline.component.d.ts +61 -0
- package/datepicker/bs-datepicker-inline.config.d.ts +3 -0
- package/datepicker/bs-datepicker-input.directive.d.ts +30 -0
- package/datepicker/bs-datepicker.component.d.ts +123 -0
- package/datepicker/bs-datepicker.config.d.ts +140 -0
- package/datepicker/bs-datepicker.module.d.ts +4 -0
- package/datepicker/bs-daterangepicker-inline.component.d.ts +61 -0
- package/datepicker/bs-daterangepicker-inline.config.d.ts +6 -0
- package/datepicker/bs-daterangepicker-input.directive.d.ts +30 -0
- package/datepicker/bs-daterangepicker.component.d.ts +115 -0
- package/datepicker/bs-daterangepicker.config.d.ts +4 -0
- package/datepicker/bs-locale.service.d.ts +10 -0
- package/datepicker/date-formatter.d.ts +3 -0
- package/datepicker/datepicker-animations.d.ts +3 -0
- package/datepicker/datepicker-inner.component.d.ts +75 -0
- package/datepicker/datepicker.component.d.ts +78 -0
- package/datepicker/datepicker.config.d.ts +19 -0
- package/datepicker/datepicker.module.d.ts +4 -0
- package/datepicker/daypicker.component.d.ts +14 -0
- package/datepicker/engine/calc-days-calendar.d.ts +2 -0
- package/datepicker/engine/flag-days-calendar.d.ts +17 -0
- package/datepicker/engine/flag-months-calendar.d.ts +12 -0
- package/datepicker/engine/flag-years-calendar.d.ts +12 -0
- package/datepicker/engine/format-days-calendar.d.ts +4 -0
- package/datepicker/engine/format-months-calendar.d.ts +2 -0
- package/datepicker/engine/format-years-calendar.d.ts +4 -0
- package/datepicker/engine/view-mode.d.ts +2 -0
- package/datepicker/index.d.ts +1 -0
- package/datepicker/mis-crystal-design-system-datepicker.d.ts +24 -0
- package/datepicker/mis-crystal-design-system-datepicker.metadata.json +1 -0
- package/datepicker/models/index.d.ts +102 -0
- package/datepicker/monthpicker.component.d.ts +11 -0
- package/datepicker/package.json +11 -0
- package/datepicker/public_api.d.ts +26 -0
- package/datepicker/reducer/_defaults.d.ts +2 -0
- package/datepicker/reducer/bs-datepicker.actions.d.ts +43 -0
- package/datepicker/reducer/bs-datepicker.effects.d.ts +38 -0
- package/datepicker/reducer/bs-datepicker.reducer.d.ts +3 -0
- package/datepicker/reducer/bs-datepicker.state.d.ts +43 -0
- package/datepicker/reducer/bs-datepicker.store.d.ts +5 -0
- package/datepicker/sub-components/chronos/create/check-overflow.d.ts +2 -0
- package/datepicker/sub-components/chronos/create/clone.d.ts +1 -0
- package/datepicker/sub-components/chronos/create/date-from-array.d.ts +2 -0
- package/datepicker/sub-components/chronos/create/from-anything.d.ts +4 -0
- package/datepicker/sub-components/chronos/create/from-array.d.ts +2 -0
- package/datepicker/sub-components/chronos/create/from-object.d.ts +2 -0
- package/datepicker/sub-components/chronos/create/from-string-and-array.d.ts +2 -0
- package/datepicker/sub-components/chronos/create/from-string-and-format.d.ts +4 -0
- package/datepicker/sub-components/chronos/create/from-string.d.ts +4 -0
- package/datepicker/sub-components/chronos/create/local.d.ts +3 -0
- package/datepicker/sub-components/chronos/create/parsing-flags.d.ts +2 -0
- package/datepicker/sub-components/chronos/create/parsing.types.d.ts +64 -0
- package/datepicker/sub-components/chronos/create/valid.d.ts +6 -0
- package/datepicker/sub-components/chronos/duration/bubble.d.ts +4 -0
- package/datepicker/sub-components/chronos/duration/constructor.d.ts +21 -0
- package/datepicker/sub-components/chronos/duration/create.d.ts +8 -0
- package/datepicker/sub-components/chronos/duration/humanize.d.ts +5 -0
- package/datepicker/sub-components/chronos/duration/valid.d.ts +2 -0
- package/datepicker/sub-components/chronos/format/format.d.ts +11 -0
- package/datepicker/sub-components/chronos/format.d.ts +5 -0
- package/datepicker/sub-components/chronos/i18n/ar.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/bg.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/ca.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/cs.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/da.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/de.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/en-gb.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/es-do.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/es-us.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/es.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/et.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/fi.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/fr.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/gl.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/he.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/hi.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/hr.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/hu.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/id.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/it.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/ja.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/ka.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/kk.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/ko.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/lt.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/lv.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/mn.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/nb.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/nl-be.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/nl.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/pl.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/pt-br.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/ro.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/ru.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/sk.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/sl.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/sq.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/sv.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/th-be.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/th.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/tr.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/uk.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/vi.d.ts +2 -0
- package/datepicker/sub-components/chronos/i18n/zh-cn.d.ts +2 -0
- package/datepicker/sub-components/chronos/index.d.ts +1 -0
- package/datepicker/sub-components/chronos/locale/calendar.d.ts +8 -0
- package/datepicker/sub-components/chronos/locale/locale.class.d.ts +143 -0
- package/datepicker/sub-components/chronos/locale/locale.defaults.d.ts +11 -0
- package/datepicker/sub-components/chronos/locale/locales.d.ts +7 -0
- package/datepicker/sub-components/chronos/moment/add-subtract.d.ts +5 -0
- package/datepicker/sub-components/chronos/moment/calendar.d.ts +15 -0
- package/datepicker/sub-components/chronos/moment/diff.d.ts +3 -0
- package/datepicker/sub-components/chronos/moment/min-max.d.ts +2 -0
- package/datepicker/sub-components/chronos/parse/regex.d.ts +22 -0
- package/datepicker/sub-components/chronos/parse/token.d.ts +5 -0
- package/datepicker/sub-components/chronos/public_api.d.ts +57 -0
- package/datepicker/sub-components/chronos/test/chain.d.ts +214 -0
- package/datepicker/sub-components/chronos/types.d.ts +36 -0
- package/datepicker/sub-components/chronos/units/aliases.d.ts +7 -0
- package/datepicker/sub-components/chronos/units/constants.d.ts +9 -0
- package/datepicker/sub-components/chronos/units/day-of-month.d.ts +1 -0
- package/datepicker/sub-components/chronos/units/day-of-week.d.ts +20 -0
- package/datepicker/sub-components/chronos/units/day-of-year.d.ts +3 -0
- package/datepicker/sub-components/chronos/units/hour.d.ts +1 -0
- package/datepicker/sub-components/chronos/units/index.d.ts +18 -0
- package/datepicker/sub-components/chronos/units/millisecond.d.ts +1 -0
- package/datepicker/sub-components/chronos/units/minute.d.ts +1 -0
- package/datepicker/sub-components/chronos/units/month.d.ts +2 -0
- package/datepicker/sub-components/chronos/units/offset.d.ts +10 -0
- package/datepicker/sub-components/chronos/units/priorities.d.ts +1 -0
- package/datepicker/sub-components/chronos/units/quarter.d.ts +3 -0
- package/datepicker/sub-components/chronos/units/second.d.ts +1 -0
- package/datepicker/sub-components/chronos/units/timestamp.d.ts +1 -0
- package/datepicker/sub-components/chronos/units/timezone.d.ts +3 -0
- package/datepicker/sub-components/chronos/units/week-calendar-utils.d.ts +9 -0
- package/datepicker/sub-components/chronos/units/week-year.d.ts +8 -0
- package/datepicker/sub-components/chronos/units/week.d.ts +6 -0
- package/datepicker/sub-components/chronos/units/year.d.ts +4 -0
- package/datepicker/sub-components/chronos/utils/abs-ceil.d.ts +1 -0
- package/datepicker/sub-components/chronos/utils/abs-round.d.ts +1 -0
- package/datepicker/sub-components/chronos/utils/compare-arrays.d.ts +1 -0
- package/datepicker/sub-components/chronos/utils/date-compare.d.ts +9 -0
- package/datepicker/sub-components/chronos/utils/date-getters.d.ts +18 -0
- package/datepicker/sub-components/chronos/utils/date-setters.d.ts +12 -0
- package/datepicker/sub-components/chronos/utils/defaults.d.ts +1 -0
- package/datepicker/sub-components/chronos/utils/start-end-of.d.ts +3 -0
- package/datepicker/sub-components/chronos/utils/type-checks.d.ts +12 -0
- package/datepicker/sub-components/chronos/utils/zero-fill.d.ts +1 -0
- package/datepicker/sub-components/chronos/utils.d.ts +2 -0
- package/datepicker/sub-components/component-loader/bs-component-ref.class.d.ts +5 -0
- package/datepicker/sub-components/component-loader/component-loader.class.d.ts +75 -0
- package/datepicker/sub-components/component-loader/component-loader.factory.d.ts +18 -0
- package/datepicker/sub-components/component-loader/content-ref.class.d.ts +7 -0
- package/datepicker/sub-components/component-loader/index.d.ts +1 -0
- package/datepicker/sub-components/component-loader/listen-options.model.d.ts +11 -0
- package/datepicker/sub-components/component-loader/public_api.d.ts +4 -0
- package/datepicker/sub-components/mini-ngrx/index.d.ts +1 -0
- package/datepicker/sub-components/mini-ngrx/public_api.d.ts +7 -0
- package/datepicker/sub-components/mini-ngrx/state.class.d.ts +8 -0
- package/datepicker/sub-components/mini-ngrx/store.class.d.ts +16 -0
- package/datepicker/sub-components/positioning/index.d.ts +1 -0
- package/datepicker/sub-components/positioning/models/index.d.ts +41 -0
- package/datepicker/sub-components/positioning/modifiers/arrow.d.ts +2 -0
- package/datepicker/sub-components/positioning/modifiers/flip.d.ts +2 -0
- package/datepicker/sub-components/positioning/modifiers/index.d.ts +5 -0
- package/datepicker/sub-components/positioning/modifiers/initData.d.ts +2 -0
- package/datepicker/sub-components/positioning/modifiers/preventOverflow.d.ts +2 -0
- package/datepicker/sub-components/positioning/modifiers/shift.d.ts +2 -0
- package/datepicker/sub-components/positioning/ng-positioning.d.ts +8 -0
- package/datepicker/sub-components/positioning/positioning.service.d.ts +45 -0
- package/datepicker/sub-components/positioning/public_api.d.ts +2 -0
- package/datepicker/sub-components/positioning/utils/computeAutoPlacement.d.ts +2 -0
- package/datepicker/sub-components/positioning/utils/findCommonOffsetParent.d.ts +1 -0
- package/datepicker/sub-components/positioning/utils/getBordersSize.d.ts +4 -0
- package/datepicker/sub-components/positioning/utils/getBoundaries.d.ts +1 -0
- package/datepicker/sub-components/positioning/utils/getBoundingClientRect.d.ts +2 -0
- package/datepicker/sub-components/positioning/utils/getClientRect.d.ts +5 -0
- package/datepicker/sub-components/positioning/utils/getFixedPositionOffsetParent.d.ts +4 -0
- package/datepicker/sub-components/positioning/utils/getOffsetParent.d.ts +1 -0
- package/datepicker/sub-components/positioning/utils/getOffsetRectRelativeToArbitraryNode.d.ts +2 -0
- package/datepicker/sub-components/positioning/utils/getOffsets.d.ts +2 -0
- package/datepicker/sub-components/positioning/utils/getOppositePlacement.d.ts +4 -0
- package/datepicker/sub-components/positioning/utils/getOppositeVariation.d.ts +4 -0
- package/datepicker/sub-components/positioning/utils/getOuterSizes.d.ts +7 -0
- package/datepicker/sub-components/positioning/utils/getParentNode.d.ts +4 -0
- package/datepicker/sub-components/positioning/utils/getReferenceOffsets.d.ts +2 -0
- package/datepicker/sub-components/positioning/utils/getRoot.d.ts +4 -0
- package/datepicker/sub-components/positioning/utils/getScroll.d.ts +4 -0
- package/datepicker/sub-components/positioning/utils/getScrollParent.d.ts +1 -0
- package/datepicker/sub-components/positioning/utils/getStyleComputedProperty.d.ts +4 -0
- package/datepicker/sub-components/positioning/utils/getTargetOffsets.d.ts +2 -0
- package/datepicker/sub-components/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.d.ts +2 -0
- package/datepicker/sub-components/positioning/utils/getWindowSizes.d.ts +4 -0
- package/datepicker/sub-components/positioning/utils/includeScroll.d.ts +2 -0
- package/datepicker/sub-components/positioning/utils/index.d.ts +23 -0
- package/datepicker/sub-components/positioning/utils/isBrowser.d.ts +1 -0
- package/datepicker/sub-components/positioning/utils/isFixed.d.ts +1 -0
- package/datepicker/sub-components/positioning/utils/isIE.d.ts +1 -0
- package/datepicker/sub-components/positioning/utils/isModifierEnabled.d.ts +4 -0
- package/datepicker/sub-components/positioning/utils/isNumeric.d.ts +4 -0
- package/datepicker/sub-components/positioning/utils/isOffsetContainer.d.ts +1 -0
- package/datepicker/sub-components/positioning/utils/setStyles.d.ts +5 -0
- package/datepicker/sub-components/positioning/utils/updateContainerClass.d.ts +6 -0
- package/datepicker/sub-components/tooltip/index.d.ts +1 -0
- package/datepicker/sub-components/tooltip/public_api.d.ts +4 -0
- package/datepicker/sub-components/tooltip/tooltip-container.component.d.ts +14 -0
- package/datepicker/sub-components/tooltip/tooltip.config.d.ts +13 -0
- package/datepicker/sub-components/tooltip/tooltip.directive.d.ts +109 -0
- package/datepicker/sub-components/tooltip/tooltip.module.d.ts +4 -0
- package/datepicker/sub-components/utils/decorators.d.ts +1 -0
- package/datepicker/sub-components/utils/facade/browser.d.ts +23 -0
- package/datepicker/sub-components/utils/index.d.ts +1 -0
- package/datepicker/sub-components/utils/linked-list.class.d.ts +26 -0
- package/datepicker/sub-components/utils/public_api.d.ts +10 -0
- package/datepicker/sub-components/utils/theme-provider.d.ts +2 -0
- package/datepicker/sub-components/utils/trigger.class.d.ts +6 -0
- package/datepicker/sub-components/utils/triggers.d.ts +18 -0
- package/datepicker/sub-components/utils/utils.class.d.ts +4 -0
- package/datepicker/sub-components/utils/warn-once.d.ts +1 -0
- package/datepicker/themes/bs/bs-calendar-layout.component.d.ts +2 -0
- package/datepicker/themes/bs/bs-current-date-view.component.d.ts +3 -0
- package/datepicker/themes/bs/bs-custom-dates-view.component.d.ts +14 -0
- package/datepicker/themes/bs/bs-datepicker-container.component.d.ts +33 -0
- package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.d.ts +11 -0
- package/datepicker/themes/bs/bs-datepicker-inline-container.component.d.ts +10 -0
- package/datepicker/themes/bs/bs-datepicker-navigation-view.component.d.ts +9 -0
- package/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts +37 -0
- package/datepicker/themes/bs/bs-daterangepicker-inline-container.component.d.ts +10 -0
- package/datepicker/themes/bs/bs-days-calendar-view.component.d.ts +23 -0
- package/datepicker/themes/bs/bs-months-calendar-view.component.d.ts +13 -0
- package/datepicker/themes/bs/bs-timepicker-view.component.d.ts +5 -0
- package/datepicker/themes/bs/bs-years-calendar-view.component.d.ts +13 -0
- package/datepicker/utils/bs-calendar-utils.d.ts +10 -0
- package/datepicker/utils/matrix-utils.d.ts +9 -0
- package/datepicker/yearpicker.component.d.ts +11 -0
- package/datepicker_v2/mis-crystal-design-system-datepicker_v2.metadata.json +1 -1
- package/datepicker_v2/models/dp-config.model.d.ts +1 -0
- package/datepicker_v2/tz-datepicker.directive.d.ts +4 -3
- package/datepicker_v2/tz-dp-container/tz-dp-container.component.d.ts +3 -0
- package/esm2015/datepicker/base/bs-datepicker-container.js +47 -0
- package/esm2015/datepicker/bs-datepicker-inline.component.js +132 -0
- package/esm2015/datepicker/bs-datepicker-inline.config.js +12 -0
- package/esm2015/datepicker/bs-datepicker-input.directive.js +159 -0
- package/esm2015/datepicker/bs-datepicker.component.js +238 -0
- package/esm2015/datepicker/bs-datepicker.config.js +85 -0
- package/esm2015/datepicker/bs-datepicker.module.js +101 -0
- package/esm2015/datepicker/bs-daterangepicker-inline.component.js +129 -0
- package/esm2015/datepicker/bs-daterangepicker-inline.config.js +19 -0
- package/esm2015/datepicker/bs-daterangepicker-input.directive.js +191 -0
- package/esm2015/datepicker/bs-daterangepicker.component.js +227 -0
- package/esm2015/datepicker/bs-daterangepicker.config.js +17 -0
- package/esm2015/datepicker/bs-locale.service.js +28 -0
- package/esm2015/datepicker/date-formatter.js +7 -0
- package/esm2015/datepicker/datepicker-animations.js +16 -0
- package/esm2015/datepicker/datepicker-inner.component.js +282 -0
- package/esm2015/datepicker/datepicker.component.js +140 -0
- package/esm2015/datepicker/datepicker.config.js +30 -0
- package/esm2015/datepicker/datepicker.module.js +35 -0
- package/esm2015/datepicker/daypicker.component.js +174 -0
- package/esm2015/datepicker/engine/calc-days-calendar.js +19 -0
- package/esm2015/datepicker/engine/flag-days-calendar.js +91 -0
- package/esm2015/datepicker/engine/flag-months-calendar.js +41 -0
- package/esm2015/datepicker/engine/flag-years-calendar.js +39 -0
- package/esm2015/datepicker/engine/format-days-calendar.js +29 -0
- package/esm2015/datepicker/engine/format-months-calendar.js +19 -0
- package/esm2015/datepicker/engine/format-years-calendar.js +35 -0
- package/esm2015/datepicker/engine/view-mode.js +4 -0
- package/esm2015/datepicker/index.js +2 -0
- package/esm2015/datepicker/mis-crystal-design-system-datepicker.js +25 -0
- package/esm2015/datepicker/models/index.js +9 -0
- package/esm2015/datepicker/monthpicker.component.js +87 -0
- package/esm2015/datepicker/public_api.js +26 -0
- package/esm2015/datepicker/reducer/_defaults.js +5 -0
- package/esm2015/datepicker/reducer/bs-datepicker.actions.js +132 -0
- package/esm2015/datepicker/reducer/bs-datepicker.effects.js +170 -0
- package/esm2015/datepicker/reducer/bs-datepicker.reducer.js +302 -0
- package/esm2015/datepicker/reducer/bs-datepicker.state.js +12 -0
- package/esm2015/datepicker/reducer/bs-datepicker.store.js +19 -0
- package/esm2015/datepicker/sub-components/chronos/create/check-overflow.js +30 -0
- package/esm2015/datepicker/sub-components/chronos/create/clone.js +6 -0
- package/esm2015/datepicker/sub-components/chronos/create/date-from-array.js +17 -0
- package/esm2015/datepicker/sub-components/chronos/create/from-anything.js +107 -0
- package/esm2015/datepicker/sub-components/chronos/create/from-array.js +136 -0
- package/esm2015/datepicker/sub-components/chronos/create/from-object.js +17 -0
- package/esm2015/datepicker/sub-components/chronos/create/from-string-and-array.js +38 -0
- package/esm2015/datepicker/sub-components/chronos/create/from-string-and-format.js +106 -0
- package/esm2015/datepicker/sub-components/chronos/create/from-string.js +227 -0
- package/esm2015/datepicker/sub-components/chronos/create/local.js +16 -0
- package/esm2015/datepicker/sub-components/chronos/create/parsing-flags.js +26 -0
- package/esm2015/datepicker/sub-components/chronos/create/parsing.types.js +2 -0
- package/esm2015/datepicker/sub-components/chronos/create/valid.js +42 -0
- package/esm2015/datepicker/sub-components/chronos/duration/bubble.js +47 -0
- package/esm2015/datepicker/sub-components/chronos/duration/constructor.js +130 -0
- package/esm2015/datepicker/sub-components/chronos/duration/create.js +113 -0
- package/esm2015/datepicker/sub-components/chronos/duration/humanize.js +80 -0
- package/esm2015/datepicker/sub-components/chronos/duration/valid.js +45 -0
- package/esm2015/datepicker/sub-components/chronos/format/format.js +51 -0
- package/esm2015/datepicker/sub-components/chronos/format.js +46 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/ar.js +131 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/bg.js +96 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/ca.js +91 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/cs.js +181 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/da.js +50 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/de.js +72 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/en-gb.js +61 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/es-do.js +85 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/es-us.js +79 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/es.js +84 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/et.js +75 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/fi.js +100 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/fr.js +76 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/gl.js +84 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/he.js +98 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/hi.js +124 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/hr.js +62 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/hu.js +104 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/id.js +83 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/it.js +65 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/ja.js +75 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/ka.js +87 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/kk.js +76 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/ko.js +77 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/lt.js +116 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/lv.js +56 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/mn.js +99 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/nb.js +53 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/nl-be.js +81 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/nl.js +80 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/pl.js +126 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/pt-br.js +56 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/ro.js +66 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/ru.js +181 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/sk.js +157 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/sl.js +184 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/sq.js +54 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/sv.js +63 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/th-be.js +74 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/th.js +59 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/tr.js +82 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/uk.js +147 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/vi.js +74 -0
- package/esm2015/datepicker/sub-components/chronos/i18n/zh-cn.js +114 -0
- package/esm2015/datepicker/sub-components/chronos/index.js +2 -0
- package/esm2015/datepicker/sub-components/chronos/locale/calendar.js +9 -0
- package/esm2015/datepicker/sub-components/chronos/locale/locale.class.js +532 -0
- package/esm2015/datepicker/sub-components/chronos/locale/locale.defaults.js +40 -0
- package/esm2015/datepicker/sub-components/chronos/locale/locales.js +229 -0
- package/esm2015/datepicker/sub-components/chronos/moment/add-subtract.js +35 -0
- package/esm2015/datepicker/sub-components/chronos/moment/calendar.js +41 -0
- package/esm2015/datepicker/sub-components/chronos/moment/diff.js +70 -0
- package/esm2015/datepicker/sub-components/chronos/moment/min-max.js +38 -0
- package/esm2015/datepicker/sub-components/chronos/parse/regex.js +49 -0
- package/esm2015/datepicker/sub-components/chronos/parse/token.js +32 -0
- package/esm2015/datepicker/sub-components/chronos/public_api.js +56 -0
- package/esm2015/datepicker/sub-components/chronos/test/chain.js +711 -0
- package/esm2015/datepicker/sub-components/chronos/types.js +2 -0
- package/esm2015/datepicker/sub-components/chronos/units/aliases.js +35 -0
- package/esm2015/datepicker/sub-components/chronos/units/constants.js +11 -0
- package/esm2015/datepicker/sub-components/chronos/units/day-of-month.js +31 -0
- package/esm2015/datepicker/sub-components/chronos/units/day-of-week.js +129 -0
- package/esm2015/datepicker/sub-components/chronos/units/day-of-year.js +37 -0
- package/esm2015/datepicker/sub-components/chronos/units/hour.js +127 -0
- package/esm2015/datepicker/sub-components/chronos/units/index.js +19 -0
- package/esm2015/datepicker/sub-components/chronos/units/millisecond.js +60 -0
- package/esm2015/datepicker/sub-components/chronos/units/minute.js +23 -0
- package/esm2015/datepicker/sub-components/chronos/units/month.js +63 -0
- package/esm2015/datepicker/sub-components/chronos/units/offset.js +210 -0
- package/esm2015/datepicker/sub-components/chronos/units/priorities.js +21 -0
- package/esm2015/datepicker/sub-components/chronos/units/quarter.js +39 -0
- package/esm2015/datepicker/sub-components/chronos/units/second.js +23 -0
- package/esm2015/datepicker/sub-components/chronos/units/timestamp.js +28 -0
- package/esm2015/datepicker/sub-components/chronos/units/timezone.js +19 -0
- package/esm2015/datepicker/sub-components/chronos/units/week-calendar-utils.js +70 -0
- package/esm2015/datepicker/sub-components/chronos/units/week-year.js +101 -0
- package/esm2015/datepicker/sub-components/chronos/units/week.js +58 -0
- package/esm2015/datepicker/sub-components/chronos/units/year.js +60 -0
- package/esm2015/datepicker/sub-components/chronos/utils/abs-ceil.js +4 -0
- package/esm2015/datepicker/sub-components/chronos/utils/abs-round.js +4 -0
- package/esm2015/datepicker/sub-components/chronos/utils/compare-arrays.js +16 -0
- package/esm2015/datepicker/sub-components/chronos/utils/date-compare.js +55 -0
- package/esm2015/datepicker/sub-components/chronos/utils/date-getters.js +67 -0
- package/esm2015/datepicker/sub-components/chronos/utils/date-setters.js +75 -0
- package/esm2015/datepicker/sub-components/chronos/utils/defaults.js +11 -0
- package/esm2015/datepicker/sub-components/chronos/utils/start-end-of.js +57 -0
- package/esm2015/datepicker/sub-components/chronos/utils/type-checks.js +56 -0
- package/esm2015/datepicker/sub-components/chronos/utils/zero-fill.js +10 -0
- package/esm2015/datepicker/sub-components/chronos/utils.js +7 -0
- package/esm2015/datepicker/sub-components/component-loader/bs-component-ref.class.js +3 -0
- package/esm2015/datepicker/sub-components/component-loader/component-loader.class.js +272 -0
- package/esm2015/datepicker/sub-components/component-loader/component-loader.factory.js +32 -0
- package/esm2015/datepicker/sub-components/component-loader/content-ref.class.js +12 -0
- package/esm2015/datepicker/sub-components/component-loader/index.js +2 -0
- package/esm2015/datepicker/sub-components/component-loader/listen-options.model.js +2 -0
- package/esm2015/datepicker/sub-components/component-loader/public_api.js +5 -0
- package/esm2015/datepicker/sub-components/mini-ngrx/index.js +2 -0
- package/esm2015/datepicker/sub-components/mini-ngrx/public_api.js +3 -0
- package/esm2015/datepicker/sub-components/mini-ngrx/state.class.js +16 -0
- package/esm2015/datepicker/sub-components/mini-ngrx/store.class.js +43 -0
- package/esm2015/datepicker/sub-components/positioning/index.js +2 -0
- package/esm2015/datepicker/sub-components/positioning/models/index.js +2 -0
- package/esm2015/datepicker/sub-components/positioning/modifiers/arrow.js +56 -0
- package/esm2015/datepicker/sub-components/positioning/modifiers/flip.js +60 -0
- package/esm2015/datepicker/sub-components/positioning/modifiers/index.js +6 -0
- package/esm2015/datepicker/sub-components/positioning/modifiers/initData.js +42 -0
- package/esm2015/datepicker/sub-components/positioning/modifiers/preventOverflow.js +56 -0
- package/esm2015/datepicker/sub-components/positioning/modifiers/shift.js +22 -0
- package/esm2015/datepicker/sub-components/positioning/ng-positioning.js +30 -0
- package/esm2015/datepicker/sub-components/positioning/positioning.service.js +71 -0
- package/esm2015/datepicker/sub-components/positioning/public_api.js +3 -0
- package/esm2015/datepicker/sub-components/positioning/utils/computeAutoPlacement.js +53 -0
- package/esm2015/datepicker/sub-components/positioning/utils/findCommonOffsetParent.js +40 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getBordersSize.js +10 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getBoundaries.js +56 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getBoundingClientRect.js +55 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getClientRect.js +4 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getFixedPositionOffsetParent.js +17 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getOffsetParent.js +32 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getOffsetRectRelativeToArbitraryNode.js +51 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getOffsets.js +11 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getOppositePlacement.js +8 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getOppositeVariation.js +13 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getOuterSizes.js +14 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getParentNode.js +10 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getReferenceOffsets.js +13 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getRoot.js +10 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getScroll.js +14 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getScrollParent.js +26 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getStyleComputedProperty.js +13 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getTargetOffsets.js +30 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.js +19 -0
- package/esm2015/datepicker/sub-components/positioning/utils/getWindowSizes.js +18 -0
- package/esm2015/datepicker/sub-components/positioning/utils/includeScroll.js +15 -0
- package/esm2015/datepicker/sub-components/positioning/utils/index.js +24 -0
- package/esm2015/datepicker/sub-components/positioning/utils/isBrowser.js +2 -0
- package/esm2015/datepicker/sub-components/positioning/utils/isFixed.js +16 -0
- package/esm2015/datepicker/sub-components/positioning/utils/isIE.js +16 -0
- package/esm2015/datepicker/sub-components/positioning/utils/isModifierEnabled.js +10 -0
- package/esm2015/datepicker/sub-components/positioning/utils/isNumeric.js +7 -0
- package/esm2015/datepicker/sub-components/positioning/utils/isOffsetContainer.js +9 -0
- package/esm2015/datepicker/sub-components/positioning/utils/setStyles.js +17 -0
- package/esm2015/datepicker/sub-components/positioning/utils/updateContainerClass.js +22 -0
- package/esm2015/datepicker/sub-components/tooltip/index.js +2 -0
- package/esm2015/datepicker/sub-components/tooltip/public_api.js +5 -0
- package/esm2015/datepicker/sub-components/tooltip/tooltip-container.component.js +63 -0
- package/esm2015/datepicker/sub-components/tooltip/tooltip.config.js +22 -0
- package/esm2015/datepicker/sub-components/tooltip/tooltip.directive.js +282 -0
- package/esm2015/datepicker/sub-components/tooltip/tooltip.module.js +23 -0
- package/esm2015/datepicker/sub-components/utils/decorators.js +25 -0
- package/esm2015/datepicker/sub-components/utils/facade/browser.js +24 -0
- package/esm2015/datepicker/sub-components/utils/index.js +2 -0
- package/esm2015/datepicker/sub-components/utils/linked-list.class.js +240 -0
- package/esm2015/datepicker/sub-components/utils/public_api.js +11 -0
- package/esm2015/datepicker/sub-components/utils/theme-provider.js +35 -0
- package/esm2015/datepicker/sub-components/utils/trigger.class.js +10 -0
- package/esm2015/datepicker/sub-components/utils/triggers.js +110 -0
- package/esm2015/datepicker/sub-components/utils/utils.class.js +21 -0
- package/esm2015/datepicker/sub-components/utils/warn-once.js +12 -0
- package/esm2015/datepicker/themes/bs/bs-calendar-layout.component.js +25 -0
- package/esm2015/datepicker/themes/bs/bs-current-date-view.component.js +13 -0
- package/esm2015/datepicker/themes/bs/bs-custom-dates-view.component.js +44 -0
- package/esm2015/datepicker/themes/bs/bs-datepicker-container.component.js +152 -0
- package/esm2015/datepicker/themes/bs/bs-datepicker-day-decorator.directive.js +47 -0
- package/esm2015/datepicker/themes/bs/bs-datepicker-inline-container.component.js +36 -0
- package/esm2015/datepicker/themes/bs/bs-datepicker-navigation-view.component.js +63 -0
- package/esm2015/datepicker/themes/bs/bs-daterangepicker-container.component.js +195 -0
- package/esm2015/datepicker/themes/bs/bs-daterangepicker-inline-container.component.js +36 -0
- package/esm2015/datepicker/themes/bs/bs-days-calendar-view.component.js +162 -0
- package/esm2015/datepicker/themes/bs/bs-months-calendar-view.component.js +60 -0
- package/esm2015/datepicker/themes/bs/bs-timepicker-view.component.js +34 -0
- package/esm2015/datepicker/themes/bs/bs-years-calendar-view.component.js +61 -0
- package/esm2015/datepicker/utils/bs-calendar-utils.js +43 -0
- package/esm2015/datepicker/utils/matrix-utils.js +14 -0
- package/esm2015/datepicker/yearpicker.component.js +90 -0
- package/esm2015/datepicker_v2/datepicker.module.js +3 -2
- package/esm2015/datepicker_v2/models/dp-config.model.js +1 -1
- package/esm2015/datepicker_v2/tz-datepicker.directive.js +9 -7
- package/esm2015/datepicker_v2/tz-dp-container/tz-dp-container.component.js +30 -15
- package/esm2015/multi-select-dropdown/multi-select-dropdown.component.js +7 -2
- package/fesm2015/mis-crystal-design-system-datepicker.js +13512 -0
- package/fesm2015/mis-crystal-design-system-datepicker.js.map +1 -0
- package/fesm2015/mis-crystal-design-system-datepicker_v2.js +39 -21
- package/fesm2015/mis-crystal-design-system-datepicker_v2.js.map +1 -1
- package/fesm2015/mis-crystal-design-system-multi-select-dropdown.js +6 -1
- package/fesm2015/mis-crystal-design-system-multi-select-dropdown.js.map +1 -1
- package/multi-select-dropdown/mis-crystal-design-system-multi-select-dropdown.metadata.json +1 -1
- package/multi-select-dropdown/multi-select-dropdown.component.d.ts +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
// tslint:disable:max-file-line-count
|
|
2
|
+
import { Directive, ElementRef, EventEmitter, Input, Output, Renderer2, ViewContainerRef } from '@angular/core';
|
|
3
|
+
import { ComponentLoaderFactory } from './sub-components/component-loader';
|
|
4
|
+
import { MisDatePickerContainerComponent } from './themes/bs/bs-datepicker-container.component';
|
|
5
|
+
import { Subject, BehaviorSubject } from 'rxjs';
|
|
6
|
+
import { filter, takeUntil } from 'rxjs/operators';
|
|
7
|
+
import { MisDatePickerConfig } from './bs-datepicker.config';
|
|
8
|
+
export class MisDatePickerDirective {
|
|
9
|
+
constructor(_config, _elementRef, _renderer, _viewContainerRef, cis) {
|
|
10
|
+
this._config = _config;
|
|
11
|
+
this._elementRef = _elementRef;
|
|
12
|
+
this._renderer = _renderer;
|
|
13
|
+
/**
|
|
14
|
+
* Placement of a datepicker. Accepts: "top", "bottom", "left", "right"
|
|
15
|
+
*/
|
|
16
|
+
this.placement = 'bottom';
|
|
17
|
+
/**
|
|
18
|
+
* Specifies events that should trigger. Supports a space separated list of
|
|
19
|
+
* event names.
|
|
20
|
+
*/
|
|
21
|
+
this.triggers = 'click';
|
|
22
|
+
/**
|
|
23
|
+
* Close datepicker on outside click
|
|
24
|
+
*/
|
|
25
|
+
this.outsideClick = true;
|
|
26
|
+
/**
|
|
27
|
+
* A selector specifying the element the datepicker should be appended to.
|
|
28
|
+
*/
|
|
29
|
+
this.container = 'body';
|
|
30
|
+
this.outsideEsc = true;
|
|
31
|
+
/**
|
|
32
|
+
* Emits when datepicker value has been changed
|
|
33
|
+
*/
|
|
34
|
+
this.bsValueChange = new EventEmitter();
|
|
35
|
+
this._subs = [];
|
|
36
|
+
this._dateInputFormat$ = new Subject();
|
|
37
|
+
// todo: assign only subset of fields
|
|
38
|
+
Object.assign(this, this._config);
|
|
39
|
+
this._datepicker = cis.createLoader(_elementRef, _viewContainerRef, _renderer);
|
|
40
|
+
this.onShown = this._datepicker.onShown;
|
|
41
|
+
this.onHidden = this._datepicker.onHidden;
|
|
42
|
+
this.isOpen$ = new BehaviorSubject(this.isOpen);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Returns whether or not the datepicker is currently being shown
|
|
46
|
+
*/
|
|
47
|
+
get isOpen() {
|
|
48
|
+
return this._datepicker.isShown;
|
|
49
|
+
}
|
|
50
|
+
set isOpen(value) {
|
|
51
|
+
this.isOpen$.next(value);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Initial value of datepicker
|
|
55
|
+
*/
|
|
56
|
+
set bsValue(value) {
|
|
57
|
+
if (this._bsValue && value && this._bsValue.getTime() === value.getTime()) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
if (!this._bsValue && value) {
|
|
61
|
+
const now = new Date();
|
|
62
|
+
value.setMilliseconds(now.getMilliseconds());
|
|
63
|
+
value.setSeconds(now.getSeconds());
|
|
64
|
+
value.setMinutes(now.getMinutes());
|
|
65
|
+
value.setHours(now.getHours());
|
|
66
|
+
}
|
|
67
|
+
this._bsValue = value;
|
|
68
|
+
this.bsValueChange.emit(value);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Config object for datepicker
|
|
72
|
+
*/
|
|
73
|
+
set misConfig(misConfig) {
|
|
74
|
+
this._misConfig = misConfig;
|
|
75
|
+
this.setConfig();
|
|
76
|
+
this._dateInputFormat$.next(misConfig && misConfig.dateInputFormat);
|
|
77
|
+
}
|
|
78
|
+
get misConfig() {
|
|
79
|
+
return this._misConfig;
|
|
80
|
+
}
|
|
81
|
+
get dateInputFormat$() {
|
|
82
|
+
return this._dateInputFormat$;
|
|
83
|
+
}
|
|
84
|
+
ngOnInit() {
|
|
85
|
+
this.isDestroy$ = new Subject();
|
|
86
|
+
this._datepicker.listen({
|
|
87
|
+
outsideClick: this.outsideClick,
|
|
88
|
+
outsideEsc: this.outsideEsc,
|
|
89
|
+
triggers: this.triggers,
|
|
90
|
+
show: () => this.show()
|
|
91
|
+
});
|
|
92
|
+
this.setConfig();
|
|
93
|
+
}
|
|
94
|
+
ngOnChanges(changes) {
|
|
95
|
+
if (!this._datepickerRef || !this._datepickerRef.instance) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
if (changes.minDate) {
|
|
99
|
+
this._datepickerRef.instance.minDate = this.minDate;
|
|
100
|
+
}
|
|
101
|
+
if (changes.maxDate) {
|
|
102
|
+
this._datepickerRef.instance.maxDate = this.maxDate;
|
|
103
|
+
}
|
|
104
|
+
if (changes.daysDisabled) {
|
|
105
|
+
this._datepickerRef.instance.daysDisabled = this.daysDisabled;
|
|
106
|
+
}
|
|
107
|
+
if (changes.datesDisabled) {
|
|
108
|
+
this._datepickerRef.instance.datesDisabled = this.datesDisabled;
|
|
109
|
+
}
|
|
110
|
+
if (changes.datesEnabled) {
|
|
111
|
+
this._datepickerRef.instance.datesEnabled = this.datesEnabled;
|
|
112
|
+
}
|
|
113
|
+
if (changes.isDisabled) {
|
|
114
|
+
this._datepickerRef.instance.isDisabled = this.isDisabled;
|
|
115
|
+
}
|
|
116
|
+
if (changes.dateCustomClasses) {
|
|
117
|
+
this._datepickerRef.instance.dateCustomClasses = this.dateCustomClasses;
|
|
118
|
+
}
|
|
119
|
+
if (changes.dateTooltipTexts) {
|
|
120
|
+
this._datepickerRef.instance.dateTooltipTexts = this.dateTooltipTexts;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
ngAfterViewInit() {
|
|
124
|
+
this.isOpen$.pipe(filter(isOpen => isOpen !== this.isOpen), takeUntil(this.isDestroy$))
|
|
125
|
+
.subscribe(() => this.toggle());
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Opens an element’s datepicker. This is considered a “manual” triggering of
|
|
129
|
+
* the datepicker.
|
|
130
|
+
*/
|
|
131
|
+
show() {
|
|
132
|
+
if (this._datepicker.isShown) {
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
this.setConfig();
|
|
136
|
+
this._datepickerRef = this._datepicker
|
|
137
|
+
.provide({ provide: MisDatePickerConfig, useValue: this._config })
|
|
138
|
+
.attach(MisDatePickerContainerComponent)
|
|
139
|
+
.to(this.container)
|
|
140
|
+
.position({ attachment: this.placement })
|
|
141
|
+
.show({ placement: this.placement });
|
|
142
|
+
// if date changes from external source (model -> view)
|
|
143
|
+
this._subs.push(this.bsValueChange.subscribe((value) => {
|
|
144
|
+
this._datepickerRef.instance.value = value;
|
|
145
|
+
}));
|
|
146
|
+
// if date changes from picker (view -> model)
|
|
147
|
+
this._subs.push(this._datepickerRef.instance.valueChange.subscribe((value) => {
|
|
148
|
+
this.bsValue = value;
|
|
149
|
+
this.hide();
|
|
150
|
+
}));
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Closes an element’s datepicker. This is considered a “manual” triggering of
|
|
154
|
+
* the datepicker.
|
|
155
|
+
*/
|
|
156
|
+
hide() {
|
|
157
|
+
if (this.isOpen) {
|
|
158
|
+
this._datepicker.hide();
|
|
159
|
+
}
|
|
160
|
+
for (const sub of this._subs) {
|
|
161
|
+
sub.unsubscribe();
|
|
162
|
+
}
|
|
163
|
+
if (this._config.returnFocusToInput) {
|
|
164
|
+
this._renderer.selectRootElement(this._elementRef.nativeElement).focus();
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Toggles an element’s datepicker. This is considered a “manual” triggering
|
|
169
|
+
* of the datepicker.
|
|
170
|
+
*/
|
|
171
|
+
toggle() {
|
|
172
|
+
if (this.isOpen) {
|
|
173
|
+
return this.hide();
|
|
174
|
+
}
|
|
175
|
+
this.show();
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Set config for datepicker
|
|
179
|
+
*/
|
|
180
|
+
setConfig() {
|
|
181
|
+
this._config = Object.assign({}, this._config, this.misConfig, {
|
|
182
|
+
value: this._bsValue,
|
|
183
|
+
isDisabled: this.isDisabled,
|
|
184
|
+
minDate: this.minDate || this.misConfig && this.misConfig.minDate,
|
|
185
|
+
maxDate: this.maxDate || this.misConfig && this.misConfig.maxDate,
|
|
186
|
+
daysDisabled: this.daysDisabled || this.misConfig && this.misConfig.daysDisabled,
|
|
187
|
+
dateCustomClasses: this.dateCustomClasses || this.misConfig && this.misConfig.dateCustomClasses,
|
|
188
|
+
dateTooltipTexts: this.dateTooltipTexts || this.misConfig && this.misConfig.dateTooltipTexts,
|
|
189
|
+
datesDisabled: this.datesDisabled || this.misConfig && this.misConfig.datesDisabled,
|
|
190
|
+
datesEnabled: this.datesEnabled || this.misConfig && this.misConfig.datesEnabled,
|
|
191
|
+
minMode: this.minMode || this.misConfig && this.misConfig.minMode
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
ngOnDestroy() {
|
|
195
|
+
this._datepicker.dispose();
|
|
196
|
+
this.isOpen$.next(false);
|
|
197
|
+
if (this.isDestroy$) {
|
|
198
|
+
this.isDestroy$.next();
|
|
199
|
+
this.isDestroy$.complete();
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
MisDatePickerDirective.decorators = [
|
|
204
|
+
{ type: Directive, args: [{
|
|
205
|
+
selector: '[misDatePicker]',
|
|
206
|
+
exportAs: 'misDatePicker'
|
|
207
|
+
},] }
|
|
208
|
+
];
|
|
209
|
+
MisDatePickerDirective.ctorParameters = () => [
|
|
210
|
+
{ type: MisDatePickerConfig },
|
|
211
|
+
{ type: ElementRef },
|
|
212
|
+
{ type: Renderer2 },
|
|
213
|
+
{ type: ViewContainerRef },
|
|
214
|
+
{ type: ComponentLoaderFactory }
|
|
215
|
+
];
|
|
216
|
+
MisDatePickerDirective.propDecorators = {
|
|
217
|
+
placement: [{ type: Input }],
|
|
218
|
+
triggers: [{ type: Input }],
|
|
219
|
+
outsideClick: [{ type: Input }],
|
|
220
|
+
container: [{ type: Input }],
|
|
221
|
+
outsideEsc: [{ type: Input }],
|
|
222
|
+
isOpen: [{ type: Input }],
|
|
223
|
+
onShown: [{ type: Output }],
|
|
224
|
+
onHidden: [{ type: Output }],
|
|
225
|
+
bsValue: [{ type: Input }],
|
|
226
|
+
misConfig: [{ type: Input }],
|
|
227
|
+
isDisabled: [{ type: Input }],
|
|
228
|
+
minDate: [{ type: Input }],
|
|
229
|
+
maxDate: [{ type: Input }],
|
|
230
|
+
minMode: [{ type: Input }],
|
|
231
|
+
daysDisabled: [{ type: Input }],
|
|
232
|
+
datesDisabled: [{ type: Input }],
|
|
233
|
+
datesEnabled: [{ type: Input }],
|
|
234
|
+
dateCustomClasses: [{ type: Input }],
|
|
235
|
+
dateTooltipTexts: [{ type: Input }],
|
|
236
|
+
bsValueChange: [{ type: Output }]
|
|
237
|
+
};
|
|
238
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2JzLWRhdGVwaWNrZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHFDQUFxQztBQUNyQyxPQUFPLEVBQ1MsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUNyQyxNQUFNLEVBQUUsU0FBUyxFQUFpQixnQkFBZ0IsRUFDdEUsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFtQixzQkFBc0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2hHLE9BQU8sRUFBNEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBTzdELE1BQU0sT0FBTyxzQkFBc0I7SUF1SWpDLFlBQW1CLE9BQTRCLEVBQzFCLFdBQXVCLEVBQ3ZCLFNBQW9CLEVBQzdCLGlCQUFtQyxFQUNuQyxHQUEyQjtRQUpwQixZQUFPLEdBQVAsT0FBTyxDQUFxQjtRQUMxQixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUN2QixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBeEl6Qzs7V0FFRztRQUNNLGNBQVMsR0FBd0MsUUFBUSxDQUFDO1FBQ25FOzs7V0FHRztRQUNNLGFBQVEsR0FBRyxPQUFPLENBQUM7UUFDNUI7O1dBRUc7UUFDTSxpQkFBWSxHQUFHLElBQUksQ0FBQztRQUM3Qjs7V0FFRztRQUNNLGNBQVMsR0FBRyxNQUFNLENBQUM7UUFFbkIsZUFBVSxHQUFHLElBQUksQ0FBQztRQW9HM0I7O1dBRUc7UUFD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LFNBQVM7WUFBaUIsZ0JBQWdCO1lBRTdDLHNCQUFzQjs7O3dCQWU3QyxLQUFLO3VCQUtMLEtBQUs7MkJBSUwsS0FBSzt3QkFJTCxLQUFLO3lCQUVMLEtBQUs7cUJBS0wsS0FBSztzQkFhTCxNQUFNO3VCQUtOLE1BQU07c0JBUU4sS0FBSzt3QkFzQkwsS0FBSzt5QkFXTCxLQUFLO3NCQUlMLEtBQUs7c0JBSUwsS0FBSztzQkFLTCxLQUFLOzJCQUtMLEtBQUs7NEJBS0wsS0FBSzsyQkFJTCxLQUFLO2dDQUlMLEtBQUs7K0JBSUwsS0FBSzs0QkFJTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdHNsaW50OmRpc2FibGU6bWF4LWZpbGUtbGluZS1jb3VudFxuaW1wb3J0IHtcbiAgQ29tcG9uZW50UmVmLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgUmVuZGVyZXIyLCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q29udGFpbmVyUmVmLCBBZnRlclZpZXdJbml0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50TG9hZGVyLCBDb21wb25lbnRMb2FkZXJGYWN0b3J5IH0gZnJvbSAnLi9zdWItY29tcG9uZW50cy9jb21wb25lbnQtbG9hZGVyJztcbmltcG9ydCB7IE1pc0RhdGVQaWNrZXJDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3RoZW1lcy9icy9icy1kYXRlcGlja2VyLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uLCBTdWJqZWN0LCBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTWlzRGF0ZVBpY2tlckNvbmZpZyB9IGZyb20gJy4vYnMtZGF0ZXBpY2tlci5jb25maWcnO1xuaW1wb3J0IHsgTWlzRGF0ZVBpY2tlclZpZXdNb2RlLCBEYXRlUGlja2VyRGF0ZUN1c3RvbUNsYXNzZXMsIERhdGVQaWNrZXJEYXRlVG9vbHRpcFRleHQgfSBmcm9tICcuL21vZGVscyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1ttaXNEYXRlUGlja2VyXScsXG4gIGV4cG9ydEFzOiAnbWlzRGF0ZVBpY2tlcidcbn0pXG5leHBvcnQgY2xhc3MgTWlzRGF0ZVBpY2tlckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQge1xuICAvKipcbiAgICogUGxhY2VtZW50IG9mIGEgZGF0ZXBpY2tlci4gQWNjZXB0czogXCJ0b3BcIiwgXCJib3R0b21cIiwgXCJsZWZ0XCIsIFwicmlnaHRcIlxuICAgKi9cbiAgQElucHV0KCkgcGxhY2VtZW50OiAndG9wJyB8ICdib3R0b20nIHwgJ2xlZnQnIHwgJ3JpZ2h0JyA9ICdib3R0b20nO1xuICAvKipcbiAgICogU3BlY2lmaWVzIGV2ZW50cyB0aGF0IHNob3VsZCB0cmlnZ2VyLiBTdXBwb3J0cyBhIHNwYWNlIHNlcGFyYXRlZCBsaXN0IG9mXG4gICAqIGV2ZW50IG5hbWVzLlxuICAgKi9cbiAgQElucHV0KCkgdHJpZ2dlcnMgPSAnY2xpY2snO1xuICAvKipcbiAgICogQ2xvc2UgZGF0ZXBpY2tlciBvbiBvdXRzaWRlIGNsaWNrXG4gICAqL1xuICBASW5wdXQoKSBvdXRzaWRlQ2xpY2sgPSB0cnVlO1xuICAvKipcbiAgICogQSBzZWxlY3RvciBzcGVjaWZ5aW5nIHRoZSBlbGVtZW50IHRoZSBkYXRlcGlja2VyIHNob3VsZCBiZSBhcHBlbmRlZCB0by5cbiAgICovXG4gIEBJbnB1dCgpIGNvbnRhaW5lciA9ICdib2R5JztcblxuICBASW5wdXQoKSBvdXRzaWRlRXNjID0gdHJ1ZTtcblxuICAvKipcbiAgICogUmV0dXJucyB3aGV0aGVyIG9yIG5vdCB0aGUgZGF0ZXBpY2tlciBpcyBjdXJyZW50bHkgYmVpbmcgc2hvd25cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBpc09wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGVwaWNrZXIuaXNTaG93bjtcbiAgfVxuXG4gIHNldCBpc09wZW4odmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmlzT3BlbiQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbiB0aGUgZGF0ZXBpY2tlciBpcyBzaG93blxuICAgKi9cbiAgLyogdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1hbnkqL1xuICBAT3V0cHV0KCkgb25TaG93bjogRXZlbnRFbWl0dGVyPGFueT47XG4gIC8qKlxuICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIHRoZSBkYXRlcGlja2VyIGlzIGhpZGRlblxuICAgKi9cbiAgLyogdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1hbnkqL1xuICBAT3V0cHV0KCkgb25IaWRkZW46IEV2ZW50RW1pdHRlcjxhbnk+O1xuXG4gIF9ic1ZhbHVlOiBEYXRlO1xuICBpc09wZW4kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj47XG4gIGlzRGVzdHJveSQ6IFN1YmplY3Q8dm9pZD47XG4gIC8qKlxuICAgKiBJbml0aWFsIHZhbHVlIG9mIGRhdGVwaWNrZXJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBic1ZhbHVlKHZhbHVlOiBEYXRlKSB7XG4gICAgaWYgKHRoaXMuX2JzVmFsdWUgJiYgdmFsdWUgJiYgdGhpcy5fYnNWYWx1ZS5nZXRUaW1lKCkgPT09IHZhbHVlLmdldFRpbWUoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5fYnNWYWx1ZSAmJiB2YWx1ZSkge1xuICAgICAgY29uc3Qgbm93ID0gbmV3IERhdGUoKTtcblxuICAgICAgdmFsdWUuc2V0TWlsbGlzZWNvbmRzKG5vdy5nZXRNaWxsaXNlY29uZHMoKSk7XG4gICAgICB2YWx1ZS5zZXRTZWNvbmRzKG5vdy5nZXRTZWNvbmRzKCkpO1xuICAgICAgdmFsdWUuc2V0TWludXRlcyhub3cuZ2V0TWludXRlcygpKTtcbiAgICAgIHZhbHVlLnNldEhvdXJzKG5vdy5nZXRIb3VycygpKTtcbiAgICB9XG5cbiAgICB0aGlzLl9ic1ZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5ic1ZhbHVlQ2hhbmdlLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbmZpZyBvYmplY3QgZm9yIGRhdGVwaWNrZXJcbiAgICovXG4gIEBJbnB1dCgpIHNldCBtaXNDb25maWcobWlzQ29uZmlnOiBQYXJ0aWFsPE1pc0RhdGVQaWNrZXJDb25maWc+KSB7XG4gICAgdGhpcy5fbWlzQ29uZmlnID0gbWlzQ29uZmlnO1xuICAgIHRoaXMuc2V0Q29uZmlnKCk7XG4gICAgdGhpcy5fZGF0ZUlucHV0Rm9ybWF0JC5uZXh0KG1pc0NvbmZpZyAmJiBtaXNDb25maWcuZGF0ZUlucHV0Rm9ybWF0KTtcbiAgfVxuICBnZXQgbWlzQ29uZmlnKCk6IFBhcnRpYWw8TWlzRGF0ZVBpY2tlckNvbmZpZz4ge1xuICAgIHJldHVybiB0aGlzLl9taXNDb25maWc7XG4gIH1cbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIGRhdGVwaWNrZXIncyBjb250ZW50IGlzIGVuYWJsZWQgb3Igbm90XG4gICAqL1xuICBASW5wdXQoKSBpc0Rpc2FibGVkOiBib29sZWFuO1xuICAvKipcbiAgICogTWluaW11bSBkYXRlIHdoaWNoIGlzIGF2YWlsYWJsZSBmb3Igc2VsZWN0aW9uXG4gICAqL1xuICBASW5wdXQoKSBtaW5EYXRlOiBEYXRlO1xuICAvKipcbiAgICogTWF4aW11bSBkYXRlIHdoaWNoIGlzIGF2YWlsYWJsZSBmb3Igc2VsZWN0aW9uXG4gICAqL1xuICBASW5wdXQoKSBtYXhEYXRlOiBEYXRlO1xuXG4gIC8qKlxuICAgKiBNaW5pbXVtIHZpZXcgbW9kZSA6IGRheSwgbW9udGgsIG9yIHllYXJcbiAgICovXG4gIEBJbnB1dCgpIG1pbk1vZGU6IE1pc0RhdGVQaWNrZXJWaWV3TW9kZTtcblxuICAvKipcbiAgICogRGlzYWJsZSBDZXJ0YWluIGRheXMgaW4gdGhlIHdlZWtcbiAgICovXG4gIEBJbnB1dCgpIGRheXNEaXNhYmxlZDogbnVtYmVyW107XG5cbiAgLyoqXG4gICAqIERpc2FibGUgc3BlY2lmaWMgZGF0ZXNcbiAgICovXG4gIEBJbnB1dCgpIGRhdGVzRGlzYWJsZWQ6IERhdGVbXTtcbiAgLyoqXG4gICAqIEVuYWJsZSBzcGVjaWZpYyBkYXRlc1xuICAgKi9cbiAgQElucHV0KCkgZGF0ZXNFbmFibGVkOiBEYXRlW107XG4gIC8qKlxuICAgKiBEYXRlIGN1c3RvbSBjbGFzc2VzXG4gICAqL1xuICBASW5wdXQoKSBkYXRlQ3VzdG9tQ2xhc3NlczogRGF0ZVBpY2tlckRhdGVDdXN0b21DbGFzc2VzW107XG4gIC8qKlxuICAgKiBEYXRlIHRvb2x0aXAgdGV4dFxuICAgKi9cbiAgQElucHV0KCkgZGF0ZVRvb2x0aXBUZXh0czogRGF0ZVBpY2tlckRhdGVUb29sdGlwVGV4dFtdO1xuICAvKipcbiAgICogRW1pdHMgd2hlbiBkYXRlcGlja2VyIHZhbHVlIGhhcyBiZWVuIGNoYW5nZWRcbiAgICovXG4gIEBPdXRwdXQoKSBic1ZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8RGF0ZT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgZ2V0IGRhdGVJbnB1dEZvcm1hdCQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5fZGF0ZUlucHV0Rm9ybWF0JDtcbiAgfVxuXG4gIHByb3RlY3RlZCBfc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcblxuICBwcml2YXRlIF9kYXRlcGlja2VyOiBDb21wb25lbnRMb2FkZXI8TWlzRGF0ZVBpY2tlckNvbnRhaW5lckNvbXBvbmVudD47XG4gIHByaXZhdGUgX2RhdGVwaWNrZXJSZWY6IENvbXBvbmVudFJlZjxNaXNEYXRlUGlja2VyQ29udGFpbmVyQ29tcG9uZW50PjtcbiAgcHJpdmF0ZSBfbWlzQ29uZmlnOiBQYXJ0aWFsPE1pc0RhdGVQaWNrZXJDb25maWc+O1xuICBwcml2YXRlIHJlYWRvbmx5IF9kYXRlSW5wdXRGb3JtYXQkID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBfY29uZmlnOiBNaXNEYXRlUGlja2VyQ29uZmlnLFxuICAgICAgICAgICAgICBwcml2YXRlICBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgICAgICAgcHJpdmF0ZSAgX3JlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgICAgICAgIF92aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICAgICAgICBjaXM6IENvbXBvbmVudExvYWRlckZhY3RvcnkpIHtcbiAgICAvLyB0b2RvOiBhc3NpZ24gb25seSBzdWJzZXQgb2YgZmllbGRzXG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCB0aGlzLl9jb25maWcpO1xuICAgIHRoaXMuX2RhdGVwaWNrZXIgPSBjaXMuY3JlYXRlTG9hZGVyPE1pc0RhdGVQaWNrZXJDb250YWluZXJDb21wb25lbnQ+KFxuICAgICAgX2VsZW1lbnRSZWYsXG4gICAgICBfdmlld0NvbnRhaW5lclJlZixcbiAgICAgIF9yZW5kZXJlclxuICAgICk7XG4gICAgdGhpcy5vblNob3duID0gdGhpcy5fZGF0ZXBpY2tlci5vblNob3duO1xuICAgIHRoaXMub25IaWRkZW4gPSB0aGlzLl9kYXRlcGlja2VyLm9uSGlkZGVuO1xuICAgIHRoaXMuaXNPcGVuJCA9IG5ldyBCZWhhdmlvclN1YmplY3QodGhpcy5pc09wZW4pO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pc0Rlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcbiAgICB0aGlzLl9kYXRlcGlja2VyLmxpc3Rlbih7XG4gICAgICBvdXRzaWRlQ2xpY2s6IHRoaXMub3V0c2lkZUNsaWNrLFxuICAgICAgb3V0c2lkZUVzYzogdGhpcy5vdXRzaWRlRXNjLFxuICAgICAgdHJpZ2dlcnM6IHRoaXMudHJpZ2dlcnMsXG4gICAgICBzaG93OiAoKSA9PiB0aGlzLnNob3coKVxuICAgIH0pO1xuICAgIHRoaXMuc2V0Q29uZmlnKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9kYXRlcGlja2VyUmVmIHx8ICF0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXMubWluRGF0ZSkge1xuICAgICAgdGhpcy5fZGF0ZXBpY2tlclJlZi5pbnN0YW5jZS5taW5EYXRlID0gdGhpcy5taW5EYXRlO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLm1heERhdGUpIHtcbiAgICAgIHRoaXMuX2RhdGVwaWNrZXJSZWYuaW5zdGFuY2UubWF4RGF0ZSA9IHRoaXMubWF4RGF0ZTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlcy5kYXlzRGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuX2RhdGVwaWNrZXJSZWYuaW5zdGFuY2UuZGF5c0Rpc2FibGVkID0gdGhpcy5kYXlzRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXMuZGF0ZXNEaXNhYmxlZCkge1xuICAgICAgdGhpcy5fZGF0ZXBpY2tlclJlZi5pbnN0YW5jZS5kYXRlc0Rpc2FibGVkID0gdGhpcy5kYXRlc0Rpc2FibGVkO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLmRhdGVzRW5hYmxlZCkge1xuICAgICAgdGhpcy5fZGF0ZXBpY2tlclJlZi5pbnN0YW5jZS5kYXRlc0VuYWJsZWQgPSB0aGlzLmRhdGVzRW5hYmxlZDtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlcy5pc0Rpc2FibGVkKSB7XG4gICAgICB0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlLmlzRGlzYWJsZWQgPSB0aGlzLmlzRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXMuZGF0ZUN1c3RvbUNsYXNzZXMpIHtcbiAgICAgIHRoaXMuX2RhdGVwaWNrZXJSZWYuaW5zdGFuY2UuZGF0ZUN1c3RvbUNsYXNzZXMgPSB0aGlzLmRhdGVDdXN0b21DbGFzc2VzO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLmRhdGVUb29sdGlwVGV4dHMpIHtcbiAgICAgIHRoaXMuX2RhdGVwaWNrZXJSZWYuaW5zdGFuY2UuZGF0ZVRvb2x0aXBUZXh0cyA9IHRoaXMuZGF0ZVRvb2x0aXBUZXh0cztcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pc09wZW4kLnBpcGUoXG4gICAgICBmaWx0ZXIoaXNPcGVuID0+IGlzT3BlbiAhPT0gdGhpcy5pc09wZW4pLFxuICAgICAgdGFrZVVudGlsKHRoaXMuaXNEZXN0cm95JClcbiAgICApXG4gICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLnRvZ2dsZSgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyBhbiBlbGVtZW504oCZcyBkYXRlcGlja2VyLiBUaGlzIGlzIGNvbnNpZGVyZWQgYSDigJxtYW51YWzigJ0gdHJpZ2dlcmluZyBvZlxuICAgKiB0aGUgZGF0ZXBpY2tlci5cbiAgICovXG4gIHNob3coKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2RhdGVwaWNrZXIuaXNTaG93bikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc2V0Q29uZmlnKCk7XG5cbiAgICB0aGlzLl9kYXRlcGlja2VyUmVmID0gdGhpcy5fZGF0ZXBpY2tlclxuICAgICAgLnByb3ZpZGUoe3Byb3ZpZGU6IE1pc0RhdGVQaWNrZXJDb25maWcsIHVzZVZhbHVlOiB0aGlzLl9jb25maWd9KVxuICAgICAgLmF0dGFjaChNaXNEYXRlUGlja2VyQ29udGFpbmVyQ29tcG9uZW50KVxuICAgICAgLnRvKHRoaXMuY29udGFpbmVyKVxuICAgICAgLnBvc2l0aW9uKHthdHRhY2htZW50OiB0aGlzLnBsYWNlbWVudH0pXG4gICAgICAuc2hvdyh7cGxhY2VtZW50OiB0aGlzLnBsYWNlbWVudH0pO1xuXG4gICAgLy8gaWYgZGF0ZSBjaGFuZ2VzIGZyb20gZXh0ZXJuYWwgc291cmNlIChtb2RlbCAtPiB2aWV3KVxuICAgIHRoaXMuX3N1YnMucHVzaChcbiAgICAgIHRoaXMuYnNWYWx1ZUNoYW5nZS5zdWJzY3JpYmUoKHZhbHVlOiBEYXRlKSA9PiB7XG4gICAgICAgIHRoaXMuX2RhdGVwaWNrZXJSZWYuaW5zdGFuY2UudmFsdWUgPSB2YWx1ZTtcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIC8vIGlmIGRhdGUgY2hhbmdlcyBmcm9tIHBpY2tlciAodmlldyAtPiBtb2RlbClcbiAgICB0aGlzLl9zdWJzLnB1c2goXG4gICAgICB0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlLnZhbHVlQ2hhbmdlLnN1YnNjcmliZSgodmFsdWU6IERhdGUpID0+IHtcbiAgICAgICAgdGhpcy5ic1ZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMuaGlkZSgpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlcyBhbiBlbGVtZW504oCZcyBkYXRlcGlja2VyLiBUaGlzIGlzIGNvbnNpZGVyZWQgYSDigJxtYW51YWzigJ0gdHJpZ2dlcmluZyBvZlxuICAgKiB0aGUgZGF0ZXBpY2tlci5cbiAgICovXG4gIGhpZGUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICB0aGlzLl9kYXRlcGlja2VyLmhpZGUoKTtcbiAgICB9XG4gICAgZm9yIChjb25zdCBzdWIgb2YgdGhpcy5fc3Vicykge1xuICAgICAgc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2NvbmZpZy5yZXR1cm5Gb2N1c1RvSW5wdXQpIHtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLnNlbGVjdFJvb3RFbGVtZW50KHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkuZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVG9nZ2xlcyBhbiBlbGVtZW504oCZcyBkYXRlcGlja2VyLiBUaGlzIGlzIGNvbnNpZGVyZWQgYSDigJxtYW51YWzigJ0gdHJpZ2dlcmluZ1xuICAgKiBvZiB0aGUgZGF0ZXBpY2tlci5cbiAgICovXG4gIHRvZ2dsZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgIHJldHVybiB0aGlzLmhpZGUoKTtcbiAgICB9XG5cbiAgICB0aGlzLnNob3coKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgY29uZmlnIGZvciBkYXRlcGlja2VyXG4gICAqL1xuICBzZXRDb25maWcoKTogdm9pZCB7XG4gICAgdGhpcy5fY29uZmlnID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5fY29uZmlnLCB0aGlzLm1pc0NvbmZpZywge1xuICAgICAgdmFsdWU6IHRoaXMuX2JzVmFsdWUsXG4gICAgICBpc0Rpc2FibGVkOiB0aGlzLmlzRGlzYWJsZWQsXG4gICAgICBtaW5EYXRlOiB0aGlzLm1pbkRhdGUgfHwgdGhpcy5taXNDb25maWcgJiYgdGhpcy5taXNDb25maWcubWluRGF0ZSxcbiAgICAgIG1heERhdGU6IHRoaXMubWF4RGF0ZSB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5tYXhEYXRlLFxuICAgICAgZGF5c0Rpc2FibGVkOiB0aGlzLmRheXNEaXNhYmxlZCB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5kYXlzRGlzYWJsZWQsXG4gICAgICBkYXRlQ3VzdG9tQ2xhc3NlczogdGhpcy5kYXRlQ3VzdG9tQ2xhc3NlcyB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5kYXRlQ3VzdG9tQ2xhc3NlcyxcbiAgICAgIGRhdGVUb29sdGlwVGV4dHM6IHRoaXMuZGF0ZVRvb2x0aXBUZXh0cyB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5kYXRlVG9vbHRpcFRleHRzLFxuICAgICAgZGF0ZXNEaXNhYmxlZDogdGhpcy5kYXRlc0Rpc2FibGVkIHx8IHRoaXMubWlzQ29uZmlnICYmIHRoaXMubWlzQ29uZmlnLmRhdGVzRGlzYWJsZWQsXG4gICAgICBkYXRlc0VuYWJsZWQ6IHRoaXMuZGF0ZXNFbmFibGVkIHx8IHRoaXMubWlzQ29uZmlnICYmIHRoaXMubWlzQ29uZmlnLmRhdGVzRW5hYmxlZCxcbiAgICAgIG1pbk1vZGU6IHRoaXMubWluTW9kZSB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5taW5Nb2RlXG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kYXRlcGlja2VyLmRpc3Bvc2UoKTtcbiAgICB0aGlzLmlzT3BlbiQubmV4dChmYWxzZSk7XG4gICAgaWYgKHRoaXMuaXNEZXN0cm95JCkge1xuICAgICAgdGhpcy5pc0Rlc3Ryb3kkLm5leHQoKTtcbiAgICAgIHRoaXMuaXNEZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* For date range picker there are `MisDateRangePickerConfig` which inherits all properties,
|
|
5
|
+
* except `displayMonths`, for range picker it default to `2`
|
|
6
|
+
*/
|
|
7
|
+
export class MisDatePickerConfig {
|
|
8
|
+
constructor() {
|
|
9
|
+
/** sets use adaptive position */
|
|
10
|
+
this.adaptivePosition = false;
|
|
11
|
+
/** sets use UTC date time format */
|
|
12
|
+
this.useUtc = false;
|
|
13
|
+
/** turn on/off animation */
|
|
14
|
+
this.isAnimated = false;
|
|
15
|
+
/**
|
|
16
|
+
* The view that the datepicker should start in
|
|
17
|
+
*/
|
|
18
|
+
this.startView = 'day';
|
|
19
|
+
/**
|
|
20
|
+
* If true, returns focus to the datepicker / daterangepicker input after date selection
|
|
21
|
+
*/
|
|
22
|
+
this.returnFocusToInput = false;
|
|
23
|
+
/** CSS class which will be applied to datepicker container,
|
|
24
|
+
* usually used to set color theme
|
|
25
|
+
*/
|
|
26
|
+
this.containerClass = 'theme-green';
|
|
27
|
+
// DatePickerRenderOptions
|
|
28
|
+
this.displayMonths = 1;
|
|
29
|
+
/**
|
|
30
|
+
* Allows to hide week numbers in datepicker
|
|
31
|
+
*/
|
|
32
|
+
this.showWeekNumbers = false;
|
|
33
|
+
this.dateInputFormat = 'L';
|
|
34
|
+
// range picker
|
|
35
|
+
this.rangeSeparator = ' - ';
|
|
36
|
+
/**
|
|
37
|
+
* Date format for date range input field
|
|
38
|
+
*/
|
|
39
|
+
this.rangeInputFormat = 'L';
|
|
40
|
+
// DatePickerFormatOptions
|
|
41
|
+
this.monthTitle = 'MMMM';
|
|
42
|
+
this.yearTitle = 'YYYY';
|
|
43
|
+
this.dayLabel = 'D';
|
|
44
|
+
this.monthLabel = 'MMMM';
|
|
45
|
+
this.yearLabel = 'YYYY';
|
|
46
|
+
this.weekNumbers = 'w';
|
|
47
|
+
/**
|
|
48
|
+
* Shows 'today' button
|
|
49
|
+
*/
|
|
50
|
+
this.showTodayButton = false;
|
|
51
|
+
/**
|
|
52
|
+
* Shows clear button
|
|
53
|
+
*/
|
|
54
|
+
this.showClearButton = false;
|
|
55
|
+
/**
|
|
56
|
+
* Positioning of 'today' button
|
|
57
|
+
*/
|
|
58
|
+
this.todayPosition = 'center';
|
|
59
|
+
/**
|
|
60
|
+
* Positioning of 'clear' button
|
|
61
|
+
*/
|
|
62
|
+
this.clearPosition = 'right';
|
|
63
|
+
/**
|
|
64
|
+
* Label for 'today' button
|
|
65
|
+
*/
|
|
66
|
+
this.todayButtonLabel = 'Today';
|
|
67
|
+
/**
|
|
68
|
+
* Label for 'clear' button
|
|
69
|
+
*/
|
|
70
|
+
this.clearButtonLabel = 'Clear';
|
|
71
|
+
/**
|
|
72
|
+
* Label for 'custom range' button
|
|
73
|
+
*/
|
|
74
|
+
this.customRangeButtonLabel = 'Custom Range';
|
|
75
|
+
/* To enable emmission of date range on selecting start and end dates */
|
|
76
|
+
this.emitOnDateRangeSelect = false;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
MisDatePickerConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function MisDatePickerConfig_Factory() { return new MisDatePickerConfig(); }, token: MisDatePickerConfig, providedIn: "root" });
|
|
80
|
+
MisDatePickerConfig.decorators = [
|
|
81
|
+
{ type: Injectable, args: [{
|
|
82
|
+
providedIn: 'root'
|
|
83
|
+
},] }
|
|
84
|
+
];
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF0ZXBpY2tlci5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2JzLWRhdGVwaWNrZXIuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVTNDOzs7R0FHRztBQUlILE1BQU0sT0FBTyxtQkFBbUI7SUFIaEM7UUFJRSxpQ0FBaUM7UUFDakMscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLG9DQUFvQztRQUNwQyxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2YsNEJBQTRCO1FBQzVCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFXbkI7O1dBRUc7UUFDSCxjQUFTLEdBQTBCLEtBQUssQ0FBQztRQXlEekM7O1dBRUc7UUFDSCx1QkFBa0IsR0FBRyxLQUFLLENBQUM7UUFFM0I7O1dBRUc7UUFDSCxtQkFBYyxHQUFHLGFBQWEsQ0FBQztRQUUvQiwwQkFBMEI7UUFDMUIsa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFDbEI7O1dBRUc7UUFDSCxvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUV4QixvQkFBZSxHQUFHLEdBQUcsQ0FBQztRQUN0QixlQUFlO1FBQ2YsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDdkI7O1dBRUc7UUFDSCxxQkFBZ0IsR0FBRyxHQUFHLENBQUM7UUFZdkIsMEJBQTBCO1FBQzFCLGVBQVUsR0FBRyxNQUFNLENBQUM7UUFDcEIsY0FBUyxHQUFHLE1BQU0sQ0FBQztRQUNuQixhQUFRLEdBQUcsR0FBRyxDQUFDO1FBQ2YsZUFBVSxHQUFHLE1BQU0sQ0FBQztRQUNwQixjQUFTLEdBQUcsTUFBTSxDQUFDO1FBQ25CLGdCQUFXLEdBQUcsR0FBRyxDQUFDO1FBRWxCOztXQUVHO1FBQ0gsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFFeEI7O1dBRUc7UUFDSCxvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUV4Qjs7V0FFRztRQUNILGtCQUFhLEdBQUcsUUFBUSxDQUFDO1FBRXpCOztXQUVHO1FBQ0gsa0JBQWEsR0FBRyxPQUFPLENBQUM7UUFFeEI7O1dBRUc7UUFDSCxxQkFBZ0IsR0FBRyxPQUFPLENBQUM7UUFFM0I7O1dBRUc7UUFDSCxxQkFBZ0IsR0FBRyxPQUFPLENBQUM7UUFFM0I7O1dBRUc7UUFDSCwyQkFBc0IsR0FBRyxjQUFjLENBQUM7UUFFeEMsd0VBQXdFO1FBQ3hFLDBCQUFxQixHQUFhLEtBQUssQ0FBQztLQUN6Qzs7OztZQWhLQSxVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBEYXRlUGlja2VyUmVuZGVyT3B0aW9ucyxcbiAgTWlzRGF0ZVBpY2tlclZpZXdNb2RlLFxuICBEYXRlUGlja2VyRGF0ZUN1c3RvbUNsYXNzZXMsXG4gIERhdGVQaWNrZXJEYXRlVG9vbHRpcFRleHRcbn0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgQnNDdXN0b21EYXRlcyB9IGZyb20gJy4vdGhlbWVzL2JzL2JzLWN1c3RvbS1kYXRlcy12aWV3LmNvbXBvbmVudCc7XG5cblxuLyoqXG4gKiBGb3IgZGF0ZSByYW5nZSBwaWNrZXIgdGhlcmUgYXJlIGBNaXNEYXRlUmFuZ2VQaWNrZXJDb25maWdgIHdoaWNoIGluaGVyaXRzIGFsbCBwcm9wZXJ0aWVzLFxuICogZXhjZXB0IGBkaXNwbGF5TW9udGhzYCwgZm9yIHJhbmdlIHBpY2tlciBpdCBkZWZhdWx0IHRvIGAyYFxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBNaXNEYXRlUGlja2VyQ29uZmlnIGltcGxlbWVudHMgRGF0ZVBpY2tlclJlbmRlck9wdGlvbnMge1xuICAvKiogc2V0cyB1c2UgYWRhcHRpdmUgcG9zaXRpb24gKi9cbiAgYWRhcHRpdmVQb3NpdGlvbiA9IGZhbHNlO1xuICAvKiogc2V0cyB1c2UgVVRDIGRhdGUgdGltZSBmb3JtYXQgKi9cbiAgdXNlVXRjID0gZmFsc2U7XG4gIC8qKiB0dXJuIG9uL29mZiBhbmltYXRpb24gKi9cbiAgaXNBbmltYXRlZCA9IGZhbHNlO1xuICB2YWx1ZT86IERhdGUgfCBEYXRlW107XG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogRGVmYXVsdCBtaW4gZGF0ZSBmb3IgYWxsIGRhdGUvcmFuZ2UgcGlja2Vyc1xuICAgKi9cbiAgbWluRGF0ZT86IERhdGU7XG4gIC8qKlxuICAgKiBEZWZhdWx0IG1heCBkYXRlIGZvciBhbGwgZGF0ZS9yYW5nZSBwaWNrZXJzXG4gICAqL1xuICBtYXhEYXRlPzogRGF0ZTtcbiAgLyoqXG4gICAqIFRoZSB2aWV3IHRoYXQgdGhlIGRhdGVwaWNrZXIgc2hvdWxkIHN0YXJ0IGluXG4gICAqL1xuICBzdGFydFZpZXc6IE1pc0RhdGVQaWNrZXJWaWV3TW9kZSA9ICdkYXknO1xuICAvKipcbiAgICogRGVmYXVsdCBkYXRlIGN1c3RvbSBjbGFzc2VzIGZvciBhbGwgZGF0ZS9yYW5nZSBwaWNrZXJzXG4gICAqL1xuICBkYXRlQ3VzdG9tQ2xhc3NlczogRGF0ZVBpY2tlckRhdGVDdXN0b21DbGFzc2VzW107XG4gIC8qKlxuICAgKiBEZWZhdWx0IHRvb2x0aXAgdGV4dCBmb3IgYWxsIGRhdGUvcmFuZ2UgcGlja2Vyc1xuICAgKi9cbiAgZGF0ZVRvb2x0aXBUZXh0cz86IERhdGVQaWNrZXJEYXRlVG9vbHRpcFRleHRbXTtcbiAgLyoqXG4gICAqIERpc2FibGUgc3BlY2lmaWMgZGF5cywgZS5nLiBbMCw2XSB3aWxsIGRpc2FibGUgYWxsIFNhdHVyZGF5cyBhbmQgU3VuZGF5c1xuICAgKi9cbiAgZGF5c0Rpc2FibGVkPzogbnVtYmVyW107XG4gIC8qKlxuICAgKiBEaXNhYmxlIHNwZWNpZmljIGRhdGVzXG4gICAqL1xuICBkYXRlc0Rpc2FibGVkPzogRGF0ZVtdO1xuICAvKipcbiAgICogU2hvdyBvbmUgbW9udGhzIGZvciBzcGVjaWFsIGNhc2VzIChvbmx5IGZvciBkYXRlUmFuZ2VQaWNrZXIpXG4gICAqIDEuIG1heERhdGUgaXMgZXF1YWwgdG8gdG9kYXkncyBkYXRlXG4gICAqIDIuIG1pbkRhdGUncyBtb250aCBpcyBlcXVhbCB0byBtYXhEYXRlJ3MgbW9udGhcbiAgICovXG4gIGRpc3BsYXlPbmVNb250aFJhbmdlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVuYWJsZSBzcGVjaWZpYyBkYXRlc1xuICAgKi9cbiAgZGF0ZXNFbmFibGVkPzogRGF0ZVtdO1xuICAvKipcbiAgICogTWFrZXMgZGF0ZXMgZnJvbSBvdGhlciBtb250aHMgYWN0aXZlXG4gICAqL1xuICBzZWxlY3RGcm9tT3RoZXJNb250aD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFsbG93cyBzZWxlY3QgZmlyc3QgZGF0ZSBvZiB0aGUgd2VlayBieSBjbGljayBvbiB3ZWVrIG51bWJlclxuICAgKi9cbiAgc2VsZWN0V2Vlaz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFsbG93cyBzZWxlY3QgZGF0ZXJhbmdlIGFzIGZpcnN0IGFuZCBsYXN0IGRheSBvZiB3ZWVrIGJ5IGNsaWNrIG9uIHdlZWsgbnVtYmVyIChkYXRlUmFuZ2VQaWNrZXIgb25seSlcbiAgICovXG4gIHNlbGVjdFdlZWtEYXRlUmFuZ2U/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTaG93cyBwcmV2aW91cyBhbmQgY3VycmVudCBtb250aCwgaW5zdGVhZCBvZiBjdXJyZW50IGFuZCBuZXh0IChkYXRlUmFuZ2VQaWNrZXIgb25seSlcbiAgICovXG4gIHNob3dQcmV2aW91c01vbnRoPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQWRkIGNsYXNzIHRvIGN1cnJlbnQgZGF5XG4gICAqL1xuICBjdXN0b21Ub2RheUNsYXNzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IG1vZGUgZm9yIGFsbCBkYXRlIHBpY2tlcnNcbiAgICovXG4gIG1pbk1vZGU/OiBNaXNEYXRlUGlja2VyVmlld01vZGU7XG5cbiAgLyoqXG4gICAqIElmIHRydWUsIHJldHVybnMgZm9jdXMgdG8gdGhlIGRhdGVwaWNrZXIgLyBkYXRlcmFuZ2VwaWNrZXIgaW5wdXQgYWZ0ZXIgZGF0ZSBzZWxlY3Rpb25cbiAgICovXG4gIHJldHVybkZvY3VzVG9JbnB1dCA9IGZhbHNlO1xuXG4gIC8qKiBDU1MgY2xhc3Mgd2hpY2ggd2lsbCBiZSBhcHBsaWVkIHRvIGRhdGVwaWNrZXIgY29udGFpbmVyLFxuICAgKiB1c3VhbGx5IHVzZWQgdG8gc2V0IGNvbG9yIHRoZW1lXG4gICAqL1xuICBjb250YWluZXJDbGFzcyA9ICd0aGVtZS1ncmVlbic7XG5cbiAgLy8gRGF0ZVBpY2tlclJlbmRlck9wdGlvbnNcbiAgZGlzcGxheU1vbnRocyA9IDE7XG4gIC8qKlxuICAgKiBBbGxvd3MgdG8gaGlkZSB3ZWVrIG51bWJlcnMgaW4gZGF0ZXBpY2tlclxuICAgKi9cbiAgc2hvd1dlZWtOdW1iZXJzID0gZmFsc2U7XG5cbiAgZGF0ZUlucHV0Rm9ybWF0ID0gJ0wnO1xuICAvLyByYW5nZSBwaWNrZXJcbiAgcmFuZ2VTZXBhcmF0b3IgPSAnIC0gJztcbiAgLyoqXG4gICAqIERhdGUgZm9ybWF0IGZvciBkYXRlIHJhbmdlIGlucHV0IGZpZWxkXG4gICAqL1xuICByYW5nZUlucHV0Rm9ybWF0ID0gJ0wnO1xuXG4gIC8qKlxuICAgKiBQcmVkZWZpbmVkIHJhbmdlc1xuICAgKi9cbiAgcmFuZ2VzPzogQnNDdXN0b21EYXRlc1tdO1xuXG4gIC8qKlxuICAgKiBNYXggRGF0ZSBSYW5nZSBpbiBkYXlzXG4gICAqL1xuICBtYXhEYXRlUmFuZ2U/OiBudW1iZXI7XG5cbiAgLy8gRGF0ZVBpY2tlckZvcm1hdE9wdGlvbnNcbiAgbW9udGhUaXRsZSA9ICdNTU1NJztcbiAgeWVhclRpdGxlID0gJ1lZWVknO1xuICBkYXlMYWJlbCA9ICdEJztcbiAgbW9udGhMYWJlbCA9ICdNTU1NJztcbiAgeWVhckxhYmVsID0gJ1lZWVknO1xuICB3ZWVrTnVtYmVycyA9ICd3JztcblxuICAvKipcbiAgICogU2hvd3MgJ3RvZGF5JyBidXR0b25cbiAgICovXG4gIHNob3dUb2RheUJ1dHRvbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBTaG93cyBjbGVhciBidXR0b25cbiAgICovXG4gIHNob3dDbGVhckJ1dHRvbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBQb3NpdGlvbmluZyBvZiAndG9kYXknIGJ1dHRvblxuICAgKi9cbiAgdG9kYXlQb3NpdGlvbiA9ICdjZW50ZXInO1xuXG4gIC8qKlxuICAgKiBQb3NpdGlvbmluZyBvZiAnY2xlYXInIGJ1dHRvblxuICAgKi9cbiAgY2xlYXJQb3NpdGlvbiA9ICdyaWdodCc7XG5cbiAgLyoqXG4gICAqIExhYmVsIGZvciAndG9kYXknIGJ1dHRvblxuICAgKi9cbiAgdG9kYXlCdXR0b25MYWJlbCA9ICdUb2RheSc7XG5cbiAgLyoqXG4gICAqIExhYmVsIGZvciAnY2xlYXInIGJ1dHRvblxuICAgKi9cbiAgY2xlYXJCdXR0b25MYWJlbCA9ICdDbGVhcic7XG5cbiAgLyoqXG4gICAqIExhYmVsIGZvciAnY3VzdG9tIHJhbmdlJyBidXR0b25cbiAgICovXG4gIGN1c3RvbVJhbmdlQnV0dG9uTGFiZWwgPSAnQ3VzdG9tIFJhbmdlJztcblxuICAvKiBUbyBlbmFibGUgZW1taXNzaW9uIG9mIGRhdGUgcmFuZ2Ugb24gc2VsZWN0aW5nIHN0YXJ0IGFuZCBlbmQgZGF0ZXMgKi9cbiAgZW1pdE9uRGF0ZVJhbmdlU2VsZWN0OiBib29sZWFuID0gIGZhbHNlO1xufVxuIl19
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { ComponentLoaderFactory } from './sub-components/component-loader';
|
|
4
|
+
import { PositioningService } from './sub-components/positioning';
|
|
5
|
+
import { TooltipModule } from './sub-components/tooltip';
|
|
6
|
+
import { MisDatePickerConfig } from './bs-datepicker.config';
|
|
7
|
+
import { MisDateRangePickerConfig } from './bs-daterangepicker.config';
|
|
8
|
+
import { MisDatePickerInputDirective } from './bs-datepicker-input.directive';
|
|
9
|
+
import { MisDatePickerDirective } from './bs-datepicker.component';
|
|
10
|
+
import { MisDateRangePickerInputDirective } from './bs-daterangepicker-input.directive';
|
|
11
|
+
import { MisDateRangePickerDirective } from './bs-daterangepicker.component';
|
|
12
|
+
import { MisDatePickerInlineDirective } from './bs-datepicker-inline.component';
|
|
13
|
+
import { BsLocaleService } from './bs-locale.service';
|
|
14
|
+
import { MisDatePickerActions } from './reducer/bs-datepicker.actions';
|
|
15
|
+
import { MisDatePickerEffects } from './reducer/bs-datepicker.effects';
|
|
16
|
+
import { MisDatePickerStore } from './reducer/bs-datepicker.store';
|
|
17
|
+
import { MisDatePickerContainerComponent } from './themes/bs/bs-datepicker-container.component';
|
|
18
|
+
import { MisDateRangePickerContainerComponent } from './themes/bs/bs-daterangepicker-container.component';
|
|
19
|
+
import { MisDatePickerInlineContainerComponent } from './themes/bs/bs-datepicker-inline-container.component';
|
|
20
|
+
import { MisDateRangePickerInlineContainerComponent } from './themes/bs/bs-daterangepicker-inline-container.component';
|
|
21
|
+
import { MisDateRangePickerInlineDirective } from './bs-daterangepicker-inline.component';
|
|
22
|
+
import { BsCalendarLayoutComponent } from './themes/bs/bs-calendar-layout.component';
|
|
23
|
+
import { BsCurrentDateViewComponent } from './themes/bs/bs-current-date-view.component';
|
|
24
|
+
import { BsCustomDatesViewComponent } from './themes/bs/bs-custom-dates-view.component';
|
|
25
|
+
import { MisDatePickerDayDecoratorComponent } from './themes/bs/bs-datepicker-day-decorator.directive';
|
|
26
|
+
import { MisDatePickerNavigationViewComponent } from './themes/bs/bs-datepicker-navigation-view.component';
|
|
27
|
+
import { MisDaysCalendarViewComponent } from './themes/bs/bs-days-calendar-view.component';
|
|
28
|
+
import { BsMonthCalendarViewComponent } from './themes/bs/bs-months-calendar-view.component';
|
|
29
|
+
import { BsTimepickerViewComponent } from './themes/bs/bs-timepicker-view.component';
|
|
30
|
+
import { BsYearsCalendarViewComponent } from './themes/bs/bs-years-calendar-view.component';
|
|
31
|
+
export class MisDatePickerModule {
|
|
32
|
+
static forRoot() {
|
|
33
|
+
return {
|
|
34
|
+
ngModule: MisDatePickerModule,
|
|
35
|
+
providers: [
|
|
36
|
+
ComponentLoaderFactory,
|
|
37
|
+
PositioningService,
|
|
38
|
+
MisDatePickerStore,
|
|
39
|
+
MisDatePickerActions,
|
|
40
|
+
MisDatePickerEffects,
|
|
41
|
+
BsLocaleService,
|
|
42
|
+
MisDatePickerConfig,
|
|
43
|
+
MisDateRangePickerConfig
|
|
44
|
+
]
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
MisDatePickerModule.decorators = [
|
|
49
|
+
{ type: NgModule, args: [{
|
|
50
|
+
imports: [CommonModule, TooltipModule.forRoot()],
|
|
51
|
+
declarations: [
|
|
52
|
+
BsCalendarLayoutComponent,
|
|
53
|
+
BsCurrentDateViewComponent,
|
|
54
|
+
BsCustomDatesViewComponent,
|
|
55
|
+
MisDatePickerDayDecoratorComponent,
|
|
56
|
+
MisDatePickerNavigationViewComponent,
|
|
57
|
+
MisDaysCalendarViewComponent,
|
|
58
|
+
BsMonthCalendarViewComponent,
|
|
59
|
+
BsTimepickerViewComponent,
|
|
60
|
+
BsYearsCalendarViewComponent,
|
|
61
|
+
MisDatePickerContainerComponent,
|
|
62
|
+
MisDatePickerDirective,
|
|
63
|
+
MisDatePickerInlineContainerComponent,
|
|
64
|
+
MisDatePickerInlineDirective,
|
|
65
|
+
MisDatePickerInputDirective,
|
|
66
|
+
MisDateRangePickerContainerComponent,
|
|
67
|
+
MisDateRangePickerDirective,
|
|
68
|
+
MisDateRangePickerInlineContainerComponent,
|
|
69
|
+
MisDateRangePickerInlineDirective,
|
|
70
|
+
MisDateRangePickerInputDirective
|
|
71
|
+
],
|
|
72
|
+
entryComponents: [
|
|
73
|
+
MisDatePickerContainerComponent,
|
|
74
|
+
MisDateRangePickerContainerComponent,
|
|
75
|
+
MisDatePickerInlineContainerComponent,
|
|
76
|
+
MisDateRangePickerInlineContainerComponent
|
|
77
|
+
],
|
|
78
|
+
exports: [
|
|
79
|
+
BsCalendarLayoutComponent,
|
|
80
|
+
BsCurrentDateViewComponent,
|
|
81
|
+
BsCustomDatesViewComponent,
|
|
82
|
+
MisDatePickerDayDecoratorComponent,
|
|
83
|
+
MisDatePickerNavigationViewComponent,
|
|
84
|
+
MisDaysCalendarViewComponent,
|
|
85
|
+
BsMonthCalendarViewComponent,
|
|
86
|
+
BsTimepickerViewComponent,
|
|
87
|
+
BsYearsCalendarViewComponent,
|
|
88
|
+
MisDatePickerContainerComponent,
|
|
89
|
+
MisDatePickerDirective,
|
|
90
|
+
MisDatePickerInlineContainerComponent,
|
|
91
|
+
MisDatePickerInlineDirective,
|
|
92
|
+
MisDatePickerInputDirective,
|
|
93
|
+
MisDateRangePickerContainerComponent,
|
|
94
|
+
MisDateRangePickerDirective,
|
|
95
|
+
MisDateRangePickerInlineContainerComponent,
|
|
96
|
+
MisDateRangePickerInlineDirective,
|
|
97
|
+
MisDateRangePickerInputDirective
|
|
98
|
+
]
|
|
99
|
+
},] }
|
|
100
|
+
];
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF0ZXBpY2tlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2JzLWRhdGVwaWNrZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdkUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDeEYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFN0UsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFaEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ25FLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBRTFHLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzdHLE9BQU8sRUFBRSwwQ0FBMEMsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBRXZILE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRTFGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzNHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQzNGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzdGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBcUQ1RixNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxtQkFBbUI7WUFDN0IsU0FBUyxFQUFFO2dCQUNULHNCQUFzQjtnQkFDdEIsa0JBQWtCO2dCQUNsQixrQkFBa0I7Z0JBQ2xCLG9CQUFvQjtnQkFDcEIsb0JBQW9CO2dCQUNwQixlQUFlO2dCQUNmLG1CQUFtQjtnQkFDbkIsd0JBQXdCO2FBQ3pCO1NBQ0YsQ0FBQztJQUNKLENBQUM7OztZQWxFRixRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDaEQsWUFBWSxFQUFFO29CQUNaLHlCQUF5QjtvQkFDekIsMEJBQTBCO29CQUMxQiwwQkFBMEI7b0JBQzFCLGtDQUFrQztvQkFDbEMsb0NBQW9DO29CQUNwQyw0QkFBNEI7b0JBQzVCLDRCQUE0QjtvQkFDNUIseUJBQXlCO29CQUN6Qiw0QkFBNEI7b0JBQzVCLCtCQUErQjtvQkFDL0Isc0JBQXNCO29CQUN0QixxQ0FBcUM7b0JBQ3JDLDRCQUE0QjtvQkFDNUIsMkJBQTJCO29CQUMzQixvQ0FBb0M7b0JBQ3BDLDJCQUEyQjtvQkFDM0IsMENBQTBDO29CQUMxQyxpQ0FBaUM7b0JBQ2pDLGdDQUFnQztpQkFDakM7Z0JBQ0QsZUFBZSxFQUFFO29CQUNmLCtCQUErQjtvQkFDL0Isb0NBQW9DO29CQUNwQyxxQ0FBcUM7b0JBQ3JDLDBDQUEwQztpQkFDM0M7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLHlCQUF5QjtvQkFDekIsMEJBQTBCO29CQUMxQiwwQkFBMEI7b0JBQzFCLGtDQUFrQztvQkFDbEMsb0NBQW9DO29CQUNwQyw0QkFBNEI7b0JBQzVCLDRCQUE0QjtvQkFDNUIseUJBQXlCO29CQUN6Qiw0QkFBNEI7b0JBQzVCLCtCQUErQjtvQkFDL0Isc0JBQXNCO29CQUN0QixxQ0FBcUM7b0JBQ3JDLDRCQUE0QjtvQkFDNUIsMkJBQTJCO29CQUMzQixvQ0FBb0M7b0JBQ3BDLDJCQUEyQjtvQkFDM0IsMENBQTBDO29CQUMxQyxpQ0FBaUM7b0JBQ2pDLGdDQUFnQztpQkFDakM7YUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50TG9hZGVyRmFjdG9yeSB9IGZyb20gJy4vc3ViLWNvbXBvbmVudHMvY29tcG9uZW50LWxvYWRlcic7XG5pbXBvcnQgeyBQb3NpdGlvbmluZ1NlcnZpY2UgfSBmcm9tICcuL3N1Yi1jb21wb25lbnRzL3Bvc2l0aW9uaW5nJztcblxuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJy4vc3ViLWNvbXBvbmVudHMvdG9vbHRpcCc7XG5pbXBvcnQgeyBNaXNEYXRlUGlja2VyQ29uZmlnIH0gZnJvbSAnLi9icy1kYXRlcGlja2VyLmNvbmZpZyc7XG5pbXBvcnQgeyBNaXNEYXRlUmFuZ2VQaWNrZXJDb25maWcgfSBmcm9tICcuL2JzLWRhdGVyYW5nZXBpY2tlci5jb25maWcnO1xuaW1wb3J0IHsgTWlzRGF0ZVBpY2tlcklucHV0RGlyZWN0aXZlIH0gZnJvbSAnLi9icy1kYXRlcGlja2VyLWlucHV0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBNaXNEYXRlUGlja2VyRGlyZWN0aXZlIH0gZnJvbSAnLi9icy1kYXRlcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNaXNEYXRlUmFuZ2VQaWNrZXJJbnB1dERpcmVjdGl2ZSB9IGZyb20gJy4vYnMtZGF0ZXJhbmdlcGlja2VyLWlucHV0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBNaXNEYXRlUmFuZ2VQaWNrZXJEaXJlY3RpdmUgfSBmcm9tICcuL2JzLWRhdGVyYW5nZXBpY2tlci5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBNaXNEYXRlUGlja2VySW5saW5lRGlyZWN0aXZlIH0gZnJvbSAnLi9icy1kYXRlcGlja2VyLWlubGluZS5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBCc0xvY2FsZVNlcnZpY2UgfSBmcm9tICcuL2JzLWxvY2FsZS5zZXJ2aWNlJztcbmltcG9ydCB7IE1pc0RhdGVQaWNrZXJBY3Rpb25zIH0gZnJvbSAnLi9yZWR1Y2VyL2JzLWRhdGVwaWNrZXIuYWN0aW9ucyc7XG5pbXBvcnQgeyBNaXNEYXRlUGlja2VyRWZmZWN0cyB9IGZyb20gJy4vcmVkdWNlci9icy1kYXRlcGlja2VyLmVmZmVjdHMnO1xuaW1wb3J0IHsgTWlzRGF0ZVBpY2tlclN0b3JlIH0gZnJvbSAnLi9yZWR1Y2VyL2JzLWRhdGVwaWNrZXIuc3RvcmUnO1xuaW1wb3J0IHsgTWlzRGF0ZVBpY2tlckNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vdGhlbWVzL2JzL2JzLWRhdGVwaWNrZXItY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNaXNEYXRlUmFuZ2VQaWNrZXJDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3RoZW1lcy9icy9icy1kYXRlcmFuZ2VwaWNrZXItY29udGFpbmVyLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IE1pc0RhdGVQaWNrZXJJbmxpbmVDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3RoZW1lcy9icy9icy1kYXRlcGlja2VyLWlubGluZS1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1pc0RhdGVSYW5nZVBpY2tlcklubGluZUNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vdGhlbWVzL2JzL2JzLWRhdGVyYW5nZXBpY2tlci1pbmxpbmUtY29udGFpbmVyLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IE1pc0RhdGVSYW5nZVBpY2tlcklubGluZURpcmVjdGl2ZSB9IGZyb20gJy4vYnMtZGF0ZXJhbmdlcGlja2VyLWlubGluZS5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBCc0NhbGVuZGFyTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi90aGVtZXMvYnMvYnMtY2FsZW5kYXItbGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCc0N1cnJlbnREYXRlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdGhlbWVzL2JzL2JzLWN1cnJlbnQtZGF0ZS12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCc0N1c3RvbURhdGVzVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdGhlbWVzL2JzL2JzLWN1c3RvbS1kYXRlcy12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNaXNEYXRlUGlja2VyRGF5RGVjb3JhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi90aGVtZXMvYnMvYnMtZGF0ZXBpY2tlci1kYXktZGVjb3JhdG9yLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBNaXNEYXRlUGlja2VyTmF2aWdhdGlvblZpZXdDb21wb25lbnQgfSBmcm9tICcuL3RoZW1lcy9icy9icy1kYXRlcGlja2VyLW5hdmlnYXRpb24tdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWlzRGF5c0NhbGVuZGFyVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdGhlbWVzL2JzL2JzLWRheXMtY2FsZW5kYXItdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNNb250aENhbGVuZGFyVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdGhlbWVzL2JzL2JzLW1vbnRocy1jYWxlbmRhci12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCc1RpbWVwaWNrZXJWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi90aGVtZXMvYnMvYnMtdGltZXBpY2tlci12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCc1llYXJzQ2FsZW5kYXJWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi90aGVtZXMvYnMvYnMteWVhcnMtY2FsZW5kYXItdmlldy5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUb29sdGlwTW9kdWxlLmZvclJvb3QoKV0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJzQ2FsZW5kYXJMYXlvdXRDb21wb25lbnQsXG4gICAgQnNDdXJyZW50RGF0ZVZpZXdDb21wb25lbnQsXG4gICAgQnNDdXN0b21EYXRlc1ZpZXdDb21wb25lbnQsXG4gICAgTWlzRGF0ZVBpY2tlckRheURlY29yYXRvckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUGlja2VyTmF2aWdhdGlvblZpZXdDb21wb25lbnQsXG4gICAgTWlzRGF5c0NhbGVuZGFyVmlld0NvbXBvbmVudCxcbiAgICBCc01vbnRoQ2FsZW5kYXJWaWV3Q29tcG9uZW50LFxuICAgIEJzVGltZXBpY2tlclZpZXdDb21wb25lbnQsXG4gICAgQnNZZWFyc0NhbGVuZGFyVmlld0NvbXBvbmVudCxcbiAgICBNaXNEYXRlUGlja2VyQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIE1pc0RhdGVQaWNrZXJEaXJlY3RpdmUsXG4gICAgTWlzRGF0ZVBpY2tlcklubGluZUNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUGlja2VySW5saW5lRGlyZWN0aXZlLFxuICAgIE1pc0RhdGVQaWNrZXJJbnB1dERpcmVjdGl2ZSxcbiAgICBNaXNEYXRlUmFuZ2VQaWNrZXJDb250YWluZXJDb21wb25lbnQsXG4gICAgTWlzRGF0ZVJhbmdlUGlja2VyRGlyZWN0aXZlLFxuICAgIE1pc0RhdGVSYW5nZVBpY2tlcklubGluZUNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUmFuZ2VQaWNrZXJJbmxpbmVEaXJlY3RpdmUsXG4gICAgTWlzRGF0ZVJhbmdlUGlja2VySW5wdXREaXJlY3RpdmVcbiAgXSxcbiAgZW50cnlDb21wb25lbnRzOiBbXG4gICAgTWlzRGF0ZVBpY2tlckNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUmFuZ2VQaWNrZXJDb250YWluZXJDb21wb25lbnQsXG4gICAgTWlzRGF0ZVBpY2tlcklubGluZUNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUmFuZ2VQaWNrZXJJbmxpbmVDb250YWluZXJDb21wb25lbnRcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEJzQ2FsZW5kYXJMYXlvdXRDb21wb25lbnQsXG4gICAgQnNDdXJyZW50RGF0ZVZpZXdDb21wb25lbnQsXG4gICAgQnNDdXN0b21EYXRlc1ZpZXdDb21wb25lbnQsXG4gICAgTWlzRGF0ZVBpY2tlckRheURlY29yYXRvckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUGlja2VyTmF2aWdhdGlvblZpZXdDb21wb25lbnQsXG4gICAgTWlzRGF5c0NhbGVuZGFyVmlld0NvbXBvbmVudCxcbiAgICBCc01vbnRoQ2FsZW5kYXJWaWV3Q29tcG9uZW50LFxuICAgIEJzVGltZXBpY2tlclZpZXdDb21wb25lbnQsXG4gICAgQnNZZWFyc0NhbGVuZGFyVmlld0NvbXBvbmVudCxcbiAgICBNaXNEYXRlUGlja2VyQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIE1pc0RhdGVQaWNrZXJEaXJlY3RpdmUsXG4gICAgTWlzRGF0ZVBpY2tlcklubGluZUNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUGlja2VySW5saW5lRGlyZWN0aXZlLFxuICAgIE1pc0RhdGVQaWNrZXJJbnB1dERpcmVjdGl2ZSxcbiAgICBNaXNEYXRlUmFuZ2VQaWNrZXJDb250YWluZXJDb21wb25lbnQsXG4gICAgTWlzRGF0ZVJhbmdlUGlja2VyRGlyZWN0aXZlLFxuICAgIE1pc0RhdGVSYW5nZVBpY2tlcklubGluZUNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUmFuZ2VQaWNrZXJJbmxpbmVEaXJlY3RpdmUsXG4gICAgTWlzRGF0ZVJhbmdlUGlja2VySW5wdXREaXJlY3RpdmVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBNaXNEYXRlUGlja2VyTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxNaXNEYXRlUGlja2VyTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBNaXNEYXRlUGlja2VyTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIENvbXBvbmVudExvYWRlckZhY3RvcnksXG4gICAgICAgIFBvc2l0aW9uaW5nU2VydmljZSxcbiAgICAgICAgTWlzRGF0ZVBpY2tlclN0b3JlLFxuICAgICAgICBNaXNEYXRlUGlja2VyQWN0aW9ucyxcbiAgICAgICAgTWlzRGF0ZVBpY2tlckVmZmVjdHMsXG4gICAgICAgIEJzTG9jYWxlU2VydmljZSxcbiAgICAgICAgTWlzRGF0ZVBpY2tlckNvbmZpZyxcbiAgICAgICAgTWlzRGF0ZVJhbmdlUGlja2VyQ29uZmlnXG4gICAgICBdXG4gICAgfTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { Directive, ElementRef, EventEmitter, Input, Output, Renderer2, ViewContainerRef } from '@angular/core';
|
|
2
|
+
import { ComponentLoaderFactory } from './sub-components/component-loader';
|
|
3
|
+
import { filter } from 'rxjs/operators';
|
|
4
|
+
import { MisDatePickerConfig } from './bs-datepicker.config';
|
|
5
|
+
import { MisDateRangePickerInlineConfig } from './bs-daterangepicker-inline.config';
|
|
6
|
+
import { MisDateRangePickerInlineContainerComponent } from './themes/bs/bs-daterangepicker-inline-container.component';
|
|
7
|
+
export class MisDateRangePickerInlineDirective {
|
|
8
|
+
constructor(_config, _elementRef, _renderer, _viewContainerRef, cis) {
|
|
9
|
+
this._config = _config;
|
|
10
|
+
this._elementRef = _elementRef;
|
|
11
|
+
/**
|
|
12
|
+
* Emits when daterangepicker value has been changed
|
|
13
|
+
*/
|
|
14
|
+
this.bsValueChange = new EventEmitter();
|
|
15
|
+
this._subs = [];
|
|
16
|
+
// todo: assign only subset of fields
|
|
17
|
+
Object.assign(this, this._config);
|
|
18
|
+
this._datepicker = cis.createLoader(_elementRef, _viewContainerRef, _renderer);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Initial value of datepicker
|
|
22
|
+
*/
|
|
23
|
+
set bsValue(value) {
|
|
24
|
+
if (this._bsValue === value) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
this._bsValue = value;
|
|
28
|
+
this.bsValueChange.emit(value);
|
|
29
|
+
}
|
|
30
|
+
ngOnInit() {
|
|
31
|
+
this.setConfig();
|
|
32
|
+
// if date changes from external source (model -> view)
|
|
33
|
+
this._subs.push(this.bsValueChange.subscribe((value) => {
|
|
34
|
+
this._datepickerRef.instance.value = value;
|
|
35
|
+
}));
|
|
36
|
+
// if date changes from picker (view -> model)
|
|
37
|
+
this._subs.push(this._datepickerRef.instance.valueChange
|
|
38
|
+
.pipe(filter((range) => range && range[0] && !!range[1]))
|
|
39
|
+
.subscribe((value) => {
|
|
40
|
+
this.bsValue = value;
|
|
41
|
+
}));
|
|
42
|
+
}
|
|
43
|
+
ngOnChanges(changes) {
|
|
44
|
+
if (!this._datepickerRef || !this._datepickerRef.instance) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
if (changes.minDate) {
|
|
48
|
+
this._datepickerRef.instance.minDate = this.minDate;
|
|
49
|
+
this.setConfig();
|
|
50
|
+
}
|
|
51
|
+
if (changes.maxDate) {
|
|
52
|
+
this._datepickerRef.instance.maxDate = this.maxDate;
|
|
53
|
+
this.setConfig();
|
|
54
|
+
}
|
|
55
|
+
if (changes.datesEnabled) {
|
|
56
|
+
this._datepickerRef.instance.datesEnabled = this.datesEnabled;
|
|
57
|
+
}
|
|
58
|
+
if (changes.datesDisabled) {
|
|
59
|
+
this._datepickerRef.instance.datesDisabled = this.datesDisabled;
|
|
60
|
+
this.setConfig();
|
|
61
|
+
}
|
|
62
|
+
if (changes.daysDisabled) {
|
|
63
|
+
this._datepickerRef.instance.daysDisabled = this.daysDisabled;
|
|
64
|
+
this.setConfig();
|
|
65
|
+
}
|
|
66
|
+
if (changes.isDisabled) {
|
|
67
|
+
this._datepickerRef.instance.isDisabled = this.isDisabled;
|
|
68
|
+
this.setConfig();
|
|
69
|
+
}
|
|
70
|
+
if (changes.dateCustomClasses) {
|
|
71
|
+
this._datepickerRef.instance.dateCustomClasses = this.dateCustomClasses;
|
|
72
|
+
this.setConfig();
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Set config for datepicker
|
|
77
|
+
*/
|
|
78
|
+
setConfig() {
|
|
79
|
+
if (this._datepicker) {
|
|
80
|
+
this._datepicker.hide();
|
|
81
|
+
}
|
|
82
|
+
this._config = Object.assign({}, this._config, this.misConfig, {
|
|
83
|
+
value: this._bsValue,
|
|
84
|
+
isDisabled: this.isDisabled,
|
|
85
|
+
minDate: this.minDate || this.misConfig && this.misConfig.minDate,
|
|
86
|
+
maxDate: this.maxDate || this.misConfig && this.misConfig.maxDate,
|
|
87
|
+
daysDisabled: this.daysDisabled || this.misConfig && this.misConfig.daysDisabled,
|
|
88
|
+
dateCustomClasses: this.dateCustomClasses || this.misConfig && this.misConfig.dateCustomClasses,
|
|
89
|
+
datesDisabled: this.datesDisabled || this.misConfig && this.misConfig.datesDisabled,
|
|
90
|
+
datesEnabled: this.datesEnabled || this.misConfig && this.misConfig.datesEnabled,
|
|
91
|
+
ranges: this.misConfig && this.misConfig.ranges,
|
|
92
|
+
maxDateRange: this.misConfig && this.misConfig.maxDateRange
|
|
93
|
+
});
|
|
94
|
+
this._datepickerRef = this._datepicker
|
|
95
|
+
.provide({ provide: MisDatePickerConfig, useValue: this._config })
|
|
96
|
+
.attach(MisDateRangePickerInlineContainerComponent)
|
|
97
|
+
.to(this._elementRef)
|
|
98
|
+
.show();
|
|
99
|
+
}
|
|
100
|
+
ngOnDestroy() {
|
|
101
|
+
this._datepicker.dispose();
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
MisDateRangePickerInlineDirective.decorators = [
|
|
105
|
+
{ type: Directive, args: [{
|
|
106
|
+
selector: 'mis-daterangepicker-inline',
|
|
107
|
+
exportAs: 'misDateRangePickerInline'
|
|
108
|
+
},] }
|
|
109
|
+
];
|
|
110
|
+
MisDateRangePickerInlineDirective.ctorParameters = () => [
|
|
111
|
+
{ type: MisDateRangePickerInlineConfig },
|
|
112
|
+
{ type: ElementRef },
|
|
113
|
+
{ type: Renderer2 },
|
|
114
|
+
{ type: ViewContainerRef },
|
|
115
|
+
{ type: ComponentLoaderFactory }
|
|
116
|
+
];
|
|
117
|
+
MisDateRangePickerInlineDirective.propDecorators = {
|
|
118
|
+
bsValue: [{ type: Input }],
|
|
119
|
+
misConfig: [{ type: Input }],
|
|
120
|
+
isDisabled: [{ type: Input }],
|
|
121
|
+
minDate: [{ type: Input }],
|
|
122
|
+
maxDate: [{ type: Input }],
|
|
123
|
+
dateCustomClasses: [{ type: Input }],
|
|
124
|
+
daysDisabled: [{ type: Input }],
|
|
125
|
+
datesDisabled: [{ type: Input }],
|
|
126
|
+
datesEnabled: [{ type: Input }],
|
|
127
|
+
bsValueChange: [{ type: Output }]
|
|
128
|
+
};
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF0ZXJhbmdlcGlja2VyLWlubGluZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2JzLWRhdGVyYW5nZXBpY2tlci1pbmxpbmUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDUyxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQ3JDLE1BQU0sRUFBRSxTQUFTLEVBQWlCLGdCQUFnQixFQUN0RSxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQW1CLHNCQUFzQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFHNUYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXhDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSwwQ0FBMEMsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBT3ZILE1BQU0sT0FBTyxpQ0FBaUM7SUF3RDVDLFlBQ1MsT0FBdUMsRUFDdEMsV0FBdUIsRUFDL0IsU0FBb0IsRUFDcEIsaUJBQW1DLEVBQ25DLEdBQTJCO1FBSnBCLFlBQU8sR0FBUCxPQUFPLENBQWdDO1FBQ3RDLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBWmpDOztXQUVHO1FBQ08sa0JBQWEsR0FBeUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUV6RCxVQUFLLEdBQW1CLEVBQUUsQ0FBQztRQVluQyxxQ0FBcUM7UUFDckMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxXQUFXLEdBQUcsR0FBRyxDQUFDLFlBQVksQ0FDakMsV0FBVyxFQUNYLGlCQUFpQixFQUNqQixTQUFTLENB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bkMsT0FBTyxDQUFDLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDakUsTUFBTSxDQUFDLDBDQUEwQyxDQUFDO2FBQ2xELEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO2FBQ3BCLElBQUksRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzdCLENBQUM7OztZQXpLRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtnQkFDdEMsUUFBUSxFQUFFLDBCQUEwQjthQUNyQzs7O1lBUFEsOEJBQThCO1lBVlosVUFBVTtZQUNSLFNBQVM7WUFBaUIsZ0JBQWdCO1lBRzdDLHNCQUFzQjs7O3NCQW1CN0MsS0FBSzt3QkFZTCxLQUFLO3lCQUlMLEtBQUs7c0JBSUwsS0FBSztzQkFJTCxLQUFLO2dDQUlMLEtBQUs7MkJBSUwsS0FBSzs0QkFJTCxLQUFLOzJCQUlMLEtBQUs7NEJBSUwsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudFJlZiwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFJlbmRlcmVyMiwgU2ltcGxlQ2hhbmdlcywgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ29tcG9uZW50TG9hZGVyLCBDb21wb25lbnRMb2FkZXJGYWN0b3J5IH0gZnJvbSAnLi9zdWItY29tcG9uZW50cy9jb21wb25lbnQtbG9hZGVyJztcblxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IE1pc0RhdGVQaWNrZXJDb25maWcgfSBmcm9tICcuL2JzLWRhdGVwaWNrZXIuY29uZmlnJztcbmltcG9ydCB7IE1pc0RhdGVSYW5nZVBpY2tlcklubGluZUNvbmZpZyB9IGZyb20gJy4vYnMtZGF0ZXJhbmdlcGlja2VyLWlubGluZS5jb25maWcnO1xuaW1wb3J0IHsgTWlzRGF0ZVJhbmdlUGlja2VySW5saW5lQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi90aGVtZXMvYnMvYnMtZGF0ZXJhbmdlcGlja2VyLWlubGluZS1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGVQaWNrZXJEYXRlQ3VzdG9tQ2xhc3NlcyB9IGZyb20gJy4vbW9kZWxzJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnbWlzLWRhdGVyYW5nZXBpY2tlci1pbmxpbmUnLFxuICBleHBvcnRBczogJ21pc0RhdGVSYW5nZVBpY2tlcklubGluZSdcbn0pXG5leHBvcnQgY2xhc3MgTWlzRGF0ZVJhbmdlUGlja2VySW5saW5lRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XG4gIF9ic1ZhbHVlOiBEYXRlW107XG4gIC8qKlxuICAgKiBJbml0aWFsIHZhbHVlIG9mIGRhdGVwaWNrZXJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBic1ZhbHVlKHZhbHVlOiBEYXRlW10pIHtcbiAgICBpZiAodGhpcy5fYnNWYWx1ZSA9PT0gdmFsdWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fYnNWYWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMuYnNWYWx1ZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25maWcgb2JqZWN0IGZvciBkYXRlcGlja2VyXG4gICAqL1xuICBASW5wdXQoKSBtaXNDb25maWc6IFBhcnRpYWw8TWlzRGF0ZVJhbmdlUGlja2VySW5saW5lQ29uZmlnPjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIGRhdGVwaWNrZXIgaXMgZW5hYmxlZCBvciBub3RcbiAgICovXG4gIEBJbnB1dCgpIGlzRGlzYWJsZWQ6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBNaW5pbXVtIGRhdGUgd2hpY2ggaXMgYXZhaWxhYmxlIGZvciBzZWxlY3Rpb25cbiAgICovXG4gIEBJbnB1dCgpIG1pbkRhdGU6IERhdGU7XG4gIC8qKlxuICAgKiBNYXhpbXVtIGRhdGUgd2hpY2ggaXMgYXZhaWxhYmxlIGZvciBzZWxlY3Rpb25cbiAgICovXG4gIEBJbnB1dCgpIG1heERhdGU6IERhdGU7XG4gIC8qKlxuICAgKiBEYXRlIGN1c3RvbSBjbGFzc2VzXG4gICAqL1xuICBASW5wdXQoKSBkYXRlQ3VzdG9tQ2xhc3NlczogRGF0ZVBpY2tlckRhdGVDdXN0b21DbGFzc2VzW107XG4gIC8qKlxuICAgKiBEaXNhYmxlIHNwZWNpZmljIGRheXMsIGUuZy4gWzAsNl0gd2lsbCBkaXNhYmxlIGFsbCBTYXR1cmRheXMgYW5kIFN1bmRheXNcbiAgICovXG4gIEBJbnB1dCgpIGRheXNEaXNhYmxlZD86IG51bWJlcltdO1xuICAvKipcbiAgICogRGlzYWJsZSBzcGVjaWZpYyBkYXRlc1xuICAgKi9cbiAgQElucHV0KCkgZGF0ZXNEaXNhYmxlZDogRGF0ZVtdO1xuICAvKipcbiAgICogRGlzYWJsZSBzcGVjaWZpYyBkYXRlc1xuICAgKi9cbiAgQElucHV0KCkgZGF0ZXNFbmFibGVkOiBEYXRlW107XG4gIC8qKlxuICAgKiBFbWl0cyB3aGVuIGRhdGVyYW5nZXBpY2tlciB2YWx1ZSBoYXMgYmVlbiBjaGFuZ2VkXG4gICAqL1xuICBAT3V0cHV0KCkgYnNWYWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPERhdGVbXT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcHJvdGVjdGVkIF9zdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXG4gIHByaXZhdGUgX2RhdGVwaWNrZXI6IENvbXBvbmVudExvYWRlcjxNaXNEYXRlUmFuZ2VQaWNrZXJJbmxpbmVDb250YWluZXJDb21wb25lbnQ+O1xuICBwcml2YXRlIF9kYXRlcGlja2VyUmVmOiBDb21wb25lbnRSZWY8TWlzRGF0ZVJhbmdlUGlja2VySW5saW5lQ29udGFpbmVyQ29tcG9uZW50PjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgX2NvbmZpZzogTWlzRGF0ZVJhbmdlUGlja2VySW5saW5lQ29uZmlnLFxuICAgIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgX3JlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgX3ZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgY2lzOiBDb21wb25lbnRMb2FkZXJGYWN0b3J5XG4gICkge1xuICAgIC8vIHRvZG86IGFzc2lnbiBvbmx5IHN1YnNldCBvZiBmaWVsZHNcbiAgICBPYmplY3QuYXNzaWduKHRoaXMsIHRoaXMuX2NvbmZpZyk7XG4gICAgdGhpcy5fZGF0ZXBpY2tlciA9IGNpcy5jcmVhdGVMb2FkZXI8TWlzRGF0ZVJhbmdlUGlja2VySW5saW5lQ29udGFpbmVyQ29tcG9uZW50PihcbiAgICAgIF9lbGVtZW50UmVmLFxuICAgICAgX3ZpZXdDb250YWluZXJSZWYsXG4gICAgICBfcmVuZGVyZXJcbiAgICApO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRDb25maWcoKTtcblxuICAgIC8vIGlmIGRhdGUgY2hhbmdlcyBmcm9tIGV4dGVybmFsIHNvdXJjZSAobW9kZWwgLT4gdmlldylcbiAgICB0aGlzLl9zdWJzLnB1c2goXG4gICAgICB0aGlzLmJzVmFsdWVDaGFuZ2Uuc3Vic2NyaWJlKCh2YWx1ZTogRGF0ZVtdKSA9PiB7XG4gICAgICAgIHRoaXMuX2RhdGVwaWNrZXJSZWYuaW5zdGFuY2UudmFsdWUgPSB2YWx1ZTtcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIC8vIGlmIGRhdGUgY2hhbmdlcyBmcm9tIHBpY2tlciAodmlldyAtPiBtb2RlbClcbiAgICB0aGlzLl9zdWJzLnB1c2goXG4gICAgICB0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlLnZhbHVlQ2hhbmdlXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIGZpbHRlcigocmFuZ2U6IERhdGVbXSkgPT4gcmFuZ2UgJiYgcmFuZ2VbMF0gJiYgISFyYW5nZVsxXSlcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZTogRGF0ZVtdKSA9PiB7XG4gICAgICAgICAgdGhpcy5ic1ZhbHVlID0gdmFsdWU7XG4gICAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2RhdGVwaWNrZXJSZWYgfHwgIXRoaXMuX2RhdGVwaWNrZXJSZWYuaW5zdGFuY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlcy5taW5EYXRlKSB7XG4gICAgICB0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlLm1pbkRhdGUgPSB0aGlzLm1pbkRhdGU7XG4gICAgICB0aGlzLnNldENvbmZpZygpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLm1heERhdGUpIHtcbiAgICAgIHRoaXMuX2RhdGVwaWNrZXJSZWYuaW5zdGFuY2UubWF4RGF0ZSA9IHRoaXMubWF4RGF0ZTtcbiAgICAgIHRoaXMuc2V0Q29uZmlnKCk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXMuZGF0ZXNFbmFibGVkKSB7XG4gICAgICB0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlLmRhdGVzRW5hYmxlZCA9IHRoaXMuZGF0ZXNFbmFibGVkO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLmRhdGVzRGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuX2RhdGVwaWNrZXJSZWYuaW5zdGFuY2UuZGF0ZXNEaXNhYmxlZCA9IHRoaXMuZGF0ZXNEaXNhYmxlZDtcbiAgICAgIHRoaXMuc2V0Q29uZmlnKCk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXMuZGF5c0Rpc2FibGVkKSB7XG4gICAgICB0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlLmRheXNEaXNhYmxlZCA9IHRoaXMuZGF5c0Rpc2FibGVkO1xuICAgICAgdGhpcy5zZXRDb25maWcoKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlcy5pc0Rpc2FibGVkKSB7XG4gICAgICB0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlLmlzRGlzYWJsZWQgPSB0aGlzLmlzRGlzYWJsZWQ7XG4gICAgICB0aGlzLnNldENvbmZpZygpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLmRhdGVDdXN0b21DbGFzc2VzKSB7XG4gICAgICB0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlLmRhdGVDdXN0b21DbGFzc2VzID0gdGhpcy5kYXRlQ3VzdG9tQ2xhc3NlcztcbiAgICAgIHRoaXMuc2V0Q29uZmlnKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNldCBjb25maWcgZm9yIGRhdGVwaWNrZXJcbiAgICovXG4gIHNldENvbmZpZygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZGF0ZXBpY2tlcikge1xuICAgICAgdGhpcy5fZGF0ZXBpY2tlci5oaWRlKCk7XG4gICAgfVxuXG4gICAgdGhpcy5fY29uZmlnID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5fY29uZmlnLCB0aGlzLm1pc0NvbmZpZywge1xuICAgICAgdmFsdWU6IHRoaXMuX2JzVmFsdWUsXG4gICAgICBpc0Rpc2FibGVkOiB0aGlzLmlzRGlzYWJsZWQsXG4gICAgICBtaW5EYXRlOiB0aGlzLm1pbkRhdGUgfHwgdGhpcy5taXNDb25maWcgJiYgdGhpcy5taXNDb25maWcubWluRGF0ZSxcbiAgICAgIG1heERhdGU6IHRoaXMubWF4RGF0ZSB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5tYXhEYXRlLFxuICAgICAgZGF5c0Rpc2FibGVkOiB0aGlzLmRheXNEaXNhYmxlZCB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5kYXlzRGlzYWJsZWQsXG4gICAgICBkYXRlQ3VzdG9tQ2xhc3NlczogdGhpcy5kYXRlQ3VzdG9tQ2xhc3NlcyB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5kYXRlQ3VzdG9tQ2xhc3NlcyxcbiAgICAgIGRhdGVzRGlzYWJsZWQ6IHRoaXMuZGF0ZXNEaXNhYmxlZCB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5kYXRlc0Rpc2FibGVkLFxuICAgICAgZGF0ZXNFbmFibGVkOiB0aGlzLmRhdGVzRW5hYmxlZCB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5kYXRlc0VuYWJsZWQsXG4gICAgICByYW5nZXM6IHRoaXMubWlzQ29uZmlnICYmIHRoaXMubWlzQ29uZmlnLnJhbmdlcyxcbiAgICAgIG1heERhdGVSYW5nZTogdGhpcy5taXNDb25maWcgJiYgdGhpcy5taXNDb25maWcubWF4RGF0ZVJhbmdlXG4gICAgfSk7XG5cblxuICAgIHRoaXMuX2RhdGVwaWNrZXJSZWYgPSB0aGlzLl9kYXRlcGlja2VyXG4gICAgICAucHJvdmlkZSh7IHByb3ZpZGU6IE1pc0RhdGVQaWNrZXJDb25maWcsIHVzZVZhbHVlOiB0aGlzLl9jb25maWcgfSlcbiAgICAgIC5hdHRhY2goTWlzRGF0ZVJhbmdlUGlja2VySW5saW5lQ29udGFpbmVyQ29tcG9uZW50KVxuICAgICAgLnRvKHRoaXMuX2VsZW1lbnRSZWYpXG4gICAgICAuc2hvdygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogYW55IHtcbiAgICB0aGlzLl9kYXRlcGlja2VyLmRpc3Bvc2UoKTtcbiAgfVxufVxuIl19
|