mis-crystal-design-system 2.3.20 → 2.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/mis-crystal-design-system-datepicker_v2.umd.js +31 -13
- 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-daterangepicker_v2.umd.js +772 -0
- package/bundles/mis-crystal-design-system-daterangepicker_v2.umd.js.map +1 -0
- package/bundles/mis-crystal-design-system-daterangepicker_v2.umd.min.js +16 -0
- package/bundles/mis-crystal-design-system-daterangepicker_v2.umd.min.js.map +1 -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/daterangepicker_v2/daterangepicker-constants.d.ts +4 -0
- package/daterangepicker_v2/daterangepicker.module.d.ts +2 -0
- package/{datepicker → daterangepicker_v2}/index.d.ts +0 -0
- package/daterangepicker_v2/mis-crystal-design-system-daterangepicker_v2.d.ts +7 -0
- package/daterangepicker_v2/mis-crystal-design-system-daterangepicker_v2.metadata.json +1 -0
- package/daterangepicker_v2/models/drp-config.model.d.ts +37 -0
- package/daterangepicker_v2/package.json +11 -0
- package/daterangepicker_v2/public_api.d.ts +3 -0
- package/daterangepicker_v2/tz-daterangepicker.directive.d.ts +29 -0
- package/daterangepicker_v2/tz-drp-container/tz-drp-container.component.d.ts +32 -0
- package/daterangepicker_v2/utils/index.d.ts +2 -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 +19 -4
- package/esm2015/daterangepicker_v2/daterangepicker-constants.js +5 -0
- package/esm2015/daterangepicker_v2/daterangepicker.module.js +17 -0
- package/esm2015/daterangepicker_v2/index.js +2 -0
- package/esm2015/daterangepicker_v2/mis-crystal-design-system-daterangepicker_v2.js +7 -0
- package/esm2015/daterangepicker_v2/models/drp-config.model.js +2 -0
- package/esm2015/daterangepicker_v2/public_api.js +3 -0
- package/esm2015/daterangepicker_v2/tz-daterangepicker.directive.js +131 -0
- package/esm2015/daterangepicker_v2/tz-drp-container/tz-drp-container.component.js +228 -0
- package/esm2015/daterangepicker_v2/utils/index.js +45 -0
- package/fesm2015/mis-crystal-design-system-datepicker_v2.js +28 -10
- package/fesm2015/mis-crystal-design-system-datepicker_v2.js.map +1 -1
- package/fesm2015/mis-crystal-design-system-daterangepicker_v2.js +423 -0
- package/fesm2015/mis-crystal-design-system-daterangepicker_v2.js.map +1 -0
- package/package.json +1 -1
- package/bundles/mis-crystal-design-system-datepicker.umd.js +0 -13916
- package/bundles/mis-crystal-design-system-datepicker.umd.js.map +0 -1
- package/bundles/mis-crystal-design-system-datepicker.umd.min.js +0 -68
- package/bundles/mis-crystal-design-system-datepicker.umd.min.js.map +0 -1
- package/datepicker/base/bs-datepicker-container.d.ts +0 -44
- package/datepicker/bs-datepicker-inline.component.d.ts +0 -61
- package/datepicker/bs-datepicker-inline.config.d.ts +0 -3
- package/datepicker/bs-datepicker-input.directive.d.ts +0 -30
- package/datepicker/bs-datepicker.component.d.ts +0 -123
- package/datepicker/bs-datepicker.config.d.ts +0 -140
- package/datepicker/bs-datepicker.module.d.ts +0 -4
- package/datepicker/bs-daterangepicker-inline.component.d.ts +0 -61
- package/datepicker/bs-daterangepicker-inline.config.d.ts +0 -6
- package/datepicker/bs-daterangepicker-input.directive.d.ts +0 -30
- package/datepicker/bs-daterangepicker.component.d.ts +0 -115
- package/datepicker/bs-daterangepicker.config.d.ts +0 -4
- package/datepicker/bs-locale.service.d.ts +0 -10
- package/datepicker/date-formatter.d.ts +0 -3
- package/datepicker/datepicker-animations.d.ts +0 -3
- package/datepicker/datepicker-inner.component.d.ts +0 -75
- package/datepicker/datepicker.component.d.ts +0 -78
- package/datepicker/datepicker.config.d.ts +0 -19
- package/datepicker/datepicker.module.d.ts +0 -4
- package/datepicker/daypicker.component.d.ts +0 -14
- package/datepicker/engine/calc-days-calendar.d.ts +0 -2
- package/datepicker/engine/flag-days-calendar.d.ts +0 -17
- package/datepicker/engine/flag-months-calendar.d.ts +0 -12
- package/datepicker/engine/flag-years-calendar.d.ts +0 -12
- package/datepicker/engine/format-days-calendar.d.ts +0 -4
- package/datepicker/engine/format-months-calendar.d.ts +0 -2
- package/datepicker/engine/format-years-calendar.d.ts +0 -4
- package/datepicker/engine/view-mode.d.ts +0 -2
- package/datepicker/mis-crystal-design-system-datepicker.d.ts +0 -24
- package/datepicker/mis-crystal-design-system-datepicker.metadata.json +0 -1
- package/datepicker/models/index.d.ts +0 -102
- package/datepicker/monthpicker.component.d.ts +0 -11
- package/datepicker/package.json +0 -11
- package/datepicker/public_api.d.ts +0 -26
- package/datepicker/reducer/_defaults.d.ts +0 -2
- package/datepicker/reducer/bs-datepicker.actions.d.ts +0 -43
- package/datepicker/reducer/bs-datepicker.effects.d.ts +0 -38
- package/datepicker/reducer/bs-datepicker.reducer.d.ts +0 -3
- package/datepicker/reducer/bs-datepicker.state.d.ts +0 -43
- package/datepicker/reducer/bs-datepicker.store.d.ts +0 -5
- package/datepicker/sub-components/chronos/create/check-overflow.d.ts +0 -2
- package/datepicker/sub-components/chronos/create/clone.d.ts +0 -1
- package/datepicker/sub-components/chronos/create/date-from-array.d.ts +0 -2
- package/datepicker/sub-components/chronos/create/from-anything.d.ts +0 -4
- package/datepicker/sub-components/chronos/create/from-array.d.ts +0 -2
- package/datepicker/sub-components/chronos/create/from-object.d.ts +0 -2
- package/datepicker/sub-components/chronos/create/from-string-and-array.d.ts +0 -2
- package/datepicker/sub-components/chronos/create/from-string-and-format.d.ts +0 -4
- package/datepicker/sub-components/chronos/create/from-string.d.ts +0 -4
- package/datepicker/sub-components/chronos/create/local.d.ts +0 -3
- package/datepicker/sub-components/chronos/create/parsing-flags.d.ts +0 -2
- package/datepicker/sub-components/chronos/create/parsing.types.d.ts +0 -64
- package/datepicker/sub-components/chronos/create/valid.d.ts +0 -6
- package/datepicker/sub-components/chronos/duration/bubble.d.ts +0 -4
- package/datepicker/sub-components/chronos/duration/constructor.d.ts +0 -21
- package/datepicker/sub-components/chronos/duration/create.d.ts +0 -8
- package/datepicker/sub-components/chronos/duration/humanize.d.ts +0 -5
- package/datepicker/sub-components/chronos/duration/valid.d.ts +0 -2
- package/datepicker/sub-components/chronos/format/format.d.ts +0 -11
- package/datepicker/sub-components/chronos/format.d.ts +0 -5
- package/datepicker/sub-components/chronos/i18n/ar.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/bg.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/ca.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/cs.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/da.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/de.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/en-gb.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/es-do.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/es-us.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/es.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/et.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/fi.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/fr.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/gl.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/he.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/hi.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/hr.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/hu.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/id.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/it.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/ja.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/ka.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/kk.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/ko.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/lt.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/lv.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/mn.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/nb.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/nl-be.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/nl.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/pl.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/pt-br.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/ro.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/ru.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/sk.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/sl.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/sq.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/sv.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/th-be.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/th.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/tr.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/uk.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/vi.d.ts +0 -2
- package/datepicker/sub-components/chronos/i18n/zh-cn.d.ts +0 -2
- package/datepicker/sub-components/chronos/index.d.ts +0 -1
- package/datepicker/sub-components/chronos/locale/calendar.d.ts +0 -8
- package/datepicker/sub-components/chronos/locale/locale.class.d.ts +0 -143
- package/datepicker/sub-components/chronos/locale/locale.defaults.d.ts +0 -11
- package/datepicker/sub-components/chronos/locale/locales.d.ts +0 -7
- package/datepicker/sub-components/chronos/moment/add-subtract.d.ts +0 -5
- package/datepicker/sub-components/chronos/moment/calendar.d.ts +0 -15
- package/datepicker/sub-components/chronos/moment/diff.d.ts +0 -3
- package/datepicker/sub-components/chronos/moment/min-max.d.ts +0 -2
- package/datepicker/sub-components/chronos/parse/regex.d.ts +0 -22
- package/datepicker/sub-components/chronos/parse/token.d.ts +0 -5
- package/datepicker/sub-components/chronos/public_api.d.ts +0 -57
- package/datepicker/sub-components/chronos/test/chain.d.ts +0 -214
- package/datepicker/sub-components/chronos/types.d.ts +0 -36
- package/datepicker/sub-components/chronos/units/aliases.d.ts +0 -7
- package/datepicker/sub-components/chronos/units/constants.d.ts +0 -9
- package/datepicker/sub-components/chronos/units/day-of-month.d.ts +0 -1
- package/datepicker/sub-components/chronos/units/day-of-week.d.ts +0 -20
- package/datepicker/sub-components/chronos/units/day-of-year.d.ts +0 -3
- package/datepicker/sub-components/chronos/units/hour.d.ts +0 -1
- package/datepicker/sub-components/chronos/units/index.d.ts +0 -18
- package/datepicker/sub-components/chronos/units/millisecond.d.ts +0 -1
- package/datepicker/sub-components/chronos/units/minute.d.ts +0 -1
- package/datepicker/sub-components/chronos/units/month.d.ts +0 -2
- package/datepicker/sub-components/chronos/units/offset.d.ts +0 -10
- package/datepicker/sub-components/chronos/units/priorities.d.ts +0 -1
- package/datepicker/sub-components/chronos/units/quarter.d.ts +0 -3
- package/datepicker/sub-components/chronos/units/second.d.ts +0 -1
- package/datepicker/sub-components/chronos/units/timestamp.d.ts +0 -1
- package/datepicker/sub-components/chronos/units/timezone.d.ts +0 -3
- package/datepicker/sub-components/chronos/units/week-calendar-utils.d.ts +0 -9
- package/datepicker/sub-components/chronos/units/week-year.d.ts +0 -8
- package/datepicker/sub-components/chronos/units/week.d.ts +0 -6
- package/datepicker/sub-components/chronos/units/year.d.ts +0 -4
- package/datepicker/sub-components/chronos/utils/abs-ceil.d.ts +0 -1
- package/datepicker/sub-components/chronos/utils/abs-round.d.ts +0 -1
- package/datepicker/sub-components/chronos/utils/compare-arrays.d.ts +0 -1
- package/datepicker/sub-components/chronos/utils/date-compare.d.ts +0 -9
- package/datepicker/sub-components/chronos/utils/date-getters.d.ts +0 -18
- package/datepicker/sub-components/chronos/utils/date-setters.d.ts +0 -12
- package/datepicker/sub-components/chronos/utils/defaults.d.ts +0 -1
- package/datepicker/sub-components/chronos/utils/start-end-of.d.ts +0 -3
- package/datepicker/sub-components/chronos/utils/type-checks.d.ts +0 -12
- package/datepicker/sub-components/chronos/utils/zero-fill.d.ts +0 -1
- package/datepicker/sub-components/chronos/utils.d.ts +0 -2
- package/datepicker/sub-components/component-loader/bs-component-ref.class.d.ts +0 -5
- package/datepicker/sub-components/component-loader/component-loader.class.d.ts +0 -75
- package/datepicker/sub-components/component-loader/component-loader.factory.d.ts +0 -18
- package/datepicker/sub-components/component-loader/content-ref.class.d.ts +0 -7
- package/datepicker/sub-components/component-loader/index.d.ts +0 -1
- package/datepicker/sub-components/component-loader/listen-options.model.d.ts +0 -11
- package/datepicker/sub-components/component-loader/public_api.d.ts +0 -4
- package/datepicker/sub-components/mini-ngrx/index.d.ts +0 -1
- package/datepicker/sub-components/mini-ngrx/public_api.d.ts +0 -7
- package/datepicker/sub-components/mini-ngrx/state.class.d.ts +0 -8
- package/datepicker/sub-components/mini-ngrx/store.class.d.ts +0 -16
- package/datepicker/sub-components/positioning/index.d.ts +0 -1
- package/datepicker/sub-components/positioning/models/index.d.ts +0 -41
- package/datepicker/sub-components/positioning/modifiers/arrow.d.ts +0 -2
- package/datepicker/sub-components/positioning/modifiers/flip.d.ts +0 -2
- package/datepicker/sub-components/positioning/modifiers/index.d.ts +0 -5
- package/datepicker/sub-components/positioning/modifiers/initData.d.ts +0 -2
- package/datepicker/sub-components/positioning/modifiers/preventOverflow.d.ts +0 -2
- package/datepicker/sub-components/positioning/modifiers/shift.d.ts +0 -2
- package/datepicker/sub-components/positioning/ng-positioning.d.ts +0 -8
- package/datepicker/sub-components/positioning/positioning.service.d.ts +0 -45
- package/datepicker/sub-components/positioning/public_api.d.ts +0 -2
- package/datepicker/sub-components/positioning/utils/computeAutoPlacement.d.ts +0 -2
- package/datepicker/sub-components/positioning/utils/findCommonOffsetParent.d.ts +0 -1
- package/datepicker/sub-components/positioning/utils/getBordersSize.d.ts +0 -4
- package/datepicker/sub-components/positioning/utils/getBoundaries.d.ts +0 -1
- package/datepicker/sub-components/positioning/utils/getBoundingClientRect.d.ts +0 -2
- package/datepicker/sub-components/positioning/utils/getClientRect.d.ts +0 -5
- package/datepicker/sub-components/positioning/utils/getFixedPositionOffsetParent.d.ts +0 -4
- package/datepicker/sub-components/positioning/utils/getOffsetParent.d.ts +0 -1
- package/datepicker/sub-components/positioning/utils/getOffsetRectRelativeToArbitraryNode.d.ts +0 -2
- package/datepicker/sub-components/positioning/utils/getOffsets.d.ts +0 -2
- package/datepicker/sub-components/positioning/utils/getOppositePlacement.d.ts +0 -4
- package/datepicker/sub-components/positioning/utils/getOppositeVariation.d.ts +0 -4
- package/datepicker/sub-components/positioning/utils/getOuterSizes.d.ts +0 -7
- package/datepicker/sub-components/positioning/utils/getParentNode.d.ts +0 -4
- package/datepicker/sub-components/positioning/utils/getReferenceOffsets.d.ts +0 -2
- package/datepicker/sub-components/positioning/utils/getRoot.d.ts +0 -4
- package/datepicker/sub-components/positioning/utils/getScroll.d.ts +0 -4
- package/datepicker/sub-components/positioning/utils/getScrollParent.d.ts +0 -1
- package/datepicker/sub-components/positioning/utils/getStyleComputedProperty.d.ts +0 -4
- package/datepicker/sub-components/positioning/utils/getTargetOffsets.d.ts +0 -2
- package/datepicker/sub-components/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.d.ts +0 -2
- package/datepicker/sub-components/positioning/utils/getWindowSizes.d.ts +0 -4
- package/datepicker/sub-components/positioning/utils/includeScroll.d.ts +0 -2
- package/datepicker/sub-components/positioning/utils/index.d.ts +0 -23
- package/datepicker/sub-components/positioning/utils/isBrowser.d.ts +0 -1
- package/datepicker/sub-components/positioning/utils/isFixed.d.ts +0 -1
- package/datepicker/sub-components/positioning/utils/isIE.d.ts +0 -1
- package/datepicker/sub-components/positioning/utils/isModifierEnabled.d.ts +0 -4
- package/datepicker/sub-components/positioning/utils/isNumeric.d.ts +0 -4
- package/datepicker/sub-components/positioning/utils/isOffsetContainer.d.ts +0 -1
- package/datepicker/sub-components/positioning/utils/setStyles.d.ts +0 -5
- package/datepicker/sub-components/positioning/utils/updateContainerClass.d.ts +0 -6
- package/datepicker/sub-components/tooltip/index.d.ts +0 -1
- package/datepicker/sub-components/tooltip/public_api.d.ts +0 -4
- package/datepicker/sub-components/tooltip/tooltip-container.component.d.ts +0 -14
- package/datepicker/sub-components/tooltip/tooltip.config.d.ts +0 -13
- package/datepicker/sub-components/tooltip/tooltip.directive.d.ts +0 -109
- package/datepicker/sub-components/tooltip/tooltip.module.d.ts +0 -4
- package/datepicker/sub-components/utils/decorators.d.ts +0 -1
- package/datepicker/sub-components/utils/facade/browser.d.ts +0 -23
- package/datepicker/sub-components/utils/index.d.ts +0 -1
- package/datepicker/sub-components/utils/linked-list.class.d.ts +0 -26
- package/datepicker/sub-components/utils/public_api.d.ts +0 -10
- package/datepicker/sub-components/utils/theme-provider.d.ts +0 -2
- package/datepicker/sub-components/utils/trigger.class.d.ts +0 -6
- package/datepicker/sub-components/utils/triggers.d.ts +0 -18
- package/datepicker/sub-components/utils/utils.class.d.ts +0 -4
- package/datepicker/sub-components/utils/warn-once.d.ts +0 -1
- package/datepicker/themes/bs/bs-calendar-layout.component.d.ts +0 -2
- package/datepicker/themes/bs/bs-current-date-view.component.d.ts +0 -3
- package/datepicker/themes/bs/bs-custom-dates-view.component.d.ts +0 -14
- package/datepicker/themes/bs/bs-datepicker-container.component.d.ts +0 -33
- package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.d.ts +0 -11
- package/datepicker/themes/bs/bs-datepicker-inline-container.component.d.ts +0 -10
- package/datepicker/themes/bs/bs-datepicker-navigation-view.component.d.ts +0 -9
- package/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts +0 -37
- package/datepicker/themes/bs/bs-daterangepicker-inline-container.component.d.ts +0 -10
- package/datepicker/themes/bs/bs-days-calendar-view.component.d.ts +0 -23
- package/datepicker/themes/bs/bs-months-calendar-view.component.d.ts +0 -13
- package/datepicker/themes/bs/bs-timepicker-view.component.d.ts +0 -5
- package/datepicker/themes/bs/bs-years-calendar-view.component.d.ts +0 -13
- package/datepicker/utils/bs-calendar-utils.d.ts +0 -10
- package/datepicker/utils/matrix-utils.d.ts +0 -9
- package/datepicker/yearpicker.component.d.ts +0 -11
- package/esm2015/datepicker/base/bs-datepicker-container.js +0 -47
- package/esm2015/datepicker/bs-datepicker-inline.component.js +0 -132
- package/esm2015/datepicker/bs-datepicker-inline.config.js +0 -12
- package/esm2015/datepicker/bs-datepicker-input.directive.js +0 -159
- package/esm2015/datepicker/bs-datepicker.component.js +0 -238
- package/esm2015/datepicker/bs-datepicker.config.js +0 -85
- package/esm2015/datepicker/bs-datepicker.module.js +0 -101
- package/esm2015/datepicker/bs-daterangepicker-inline.component.js +0 -129
- package/esm2015/datepicker/bs-daterangepicker-inline.config.js +0 -19
- package/esm2015/datepicker/bs-daterangepicker-input.directive.js +0 -191
- package/esm2015/datepicker/bs-daterangepicker.component.js +0 -227
- package/esm2015/datepicker/bs-daterangepicker.config.js +0 -17
- package/esm2015/datepicker/bs-locale.service.js +0 -28
- package/esm2015/datepicker/date-formatter.js +0 -7
- package/esm2015/datepicker/datepicker-animations.js +0 -16
- package/esm2015/datepicker/datepicker-inner.component.js +0 -282
- package/esm2015/datepicker/datepicker.component.js +0 -140
- package/esm2015/datepicker/datepicker.config.js +0 -30
- package/esm2015/datepicker/datepicker.module.js +0 -35
- package/esm2015/datepicker/daypicker.component.js +0 -174
- package/esm2015/datepicker/engine/calc-days-calendar.js +0 -19
- package/esm2015/datepicker/engine/flag-days-calendar.js +0 -91
- package/esm2015/datepicker/engine/flag-months-calendar.js +0 -41
- package/esm2015/datepicker/engine/flag-years-calendar.js +0 -39
- package/esm2015/datepicker/engine/format-days-calendar.js +0 -29
- package/esm2015/datepicker/engine/format-months-calendar.js +0 -19
- package/esm2015/datepicker/engine/format-years-calendar.js +0 -35
- package/esm2015/datepicker/engine/view-mode.js +0 -4
- package/esm2015/datepicker/index.js +0 -2
- package/esm2015/datepicker/mis-crystal-design-system-datepicker.js +0 -25
- package/esm2015/datepicker/models/index.js +0 -9
- package/esm2015/datepicker/monthpicker.component.js +0 -87
- package/esm2015/datepicker/public_api.js +0 -26
- package/esm2015/datepicker/reducer/_defaults.js +0 -5
- package/esm2015/datepicker/reducer/bs-datepicker.actions.js +0 -132
- package/esm2015/datepicker/reducer/bs-datepicker.effects.js +0 -170
- package/esm2015/datepicker/reducer/bs-datepicker.reducer.js +0 -302
- package/esm2015/datepicker/reducer/bs-datepicker.state.js +0 -12
- package/esm2015/datepicker/reducer/bs-datepicker.store.js +0 -19
- package/esm2015/datepicker/sub-components/chronos/create/check-overflow.js +0 -30
- package/esm2015/datepicker/sub-components/chronos/create/clone.js +0 -6
- package/esm2015/datepicker/sub-components/chronos/create/date-from-array.js +0 -17
- package/esm2015/datepicker/sub-components/chronos/create/from-anything.js +0 -107
- package/esm2015/datepicker/sub-components/chronos/create/from-array.js +0 -136
- package/esm2015/datepicker/sub-components/chronos/create/from-object.js +0 -17
- package/esm2015/datepicker/sub-components/chronos/create/from-string-and-array.js +0 -38
- package/esm2015/datepicker/sub-components/chronos/create/from-string-and-format.js +0 -106
- package/esm2015/datepicker/sub-components/chronos/create/from-string.js +0 -227
- package/esm2015/datepicker/sub-components/chronos/create/local.js +0 -16
- package/esm2015/datepicker/sub-components/chronos/create/parsing-flags.js +0 -26
- package/esm2015/datepicker/sub-components/chronos/create/parsing.types.js +0 -2
- package/esm2015/datepicker/sub-components/chronos/create/valid.js +0 -42
- package/esm2015/datepicker/sub-components/chronos/duration/bubble.js +0 -47
- package/esm2015/datepicker/sub-components/chronos/duration/constructor.js +0 -130
- package/esm2015/datepicker/sub-components/chronos/duration/create.js +0 -113
- package/esm2015/datepicker/sub-components/chronos/duration/humanize.js +0 -80
- package/esm2015/datepicker/sub-components/chronos/duration/valid.js +0 -45
- package/esm2015/datepicker/sub-components/chronos/format/format.js +0 -51
- package/esm2015/datepicker/sub-components/chronos/format.js +0 -46
- package/esm2015/datepicker/sub-components/chronos/i18n/ar.js +0 -131
- package/esm2015/datepicker/sub-components/chronos/i18n/bg.js +0 -96
- package/esm2015/datepicker/sub-components/chronos/i18n/ca.js +0 -91
- package/esm2015/datepicker/sub-components/chronos/i18n/cs.js +0 -181
- package/esm2015/datepicker/sub-components/chronos/i18n/da.js +0 -50
- package/esm2015/datepicker/sub-components/chronos/i18n/de.js +0 -72
- package/esm2015/datepicker/sub-components/chronos/i18n/en-gb.js +0 -61
- package/esm2015/datepicker/sub-components/chronos/i18n/es-do.js +0 -85
- package/esm2015/datepicker/sub-components/chronos/i18n/es-us.js +0 -79
- package/esm2015/datepicker/sub-components/chronos/i18n/es.js +0 -84
- package/esm2015/datepicker/sub-components/chronos/i18n/et.js +0 -75
- package/esm2015/datepicker/sub-components/chronos/i18n/fi.js +0 -100
- package/esm2015/datepicker/sub-components/chronos/i18n/fr.js +0 -76
- package/esm2015/datepicker/sub-components/chronos/i18n/gl.js +0 -84
- package/esm2015/datepicker/sub-components/chronos/i18n/he.js +0 -98
- package/esm2015/datepicker/sub-components/chronos/i18n/hi.js +0 -124
- package/esm2015/datepicker/sub-components/chronos/i18n/hr.js +0 -62
- package/esm2015/datepicker/sub-components/chronos/i18n/hu.js +0 -104
- package/esm2015/datepicker/sub-components/chronos/i18n/id.js +0 -83
- package/esm2015/datepicker/sub-components/chronos/i18n/it.js +0 -65
- package/esm2015/datepicker/sub-components/chronos/i18n/ja.js +0 -75
- package/esm2015/datepicker/sub-components/chronos/i18n/ka.js +0 -87
- package/esm2015/datepicker/sub-components/chronos/i18n/kk.js +0 -76
- package/esm2015/datepicker/sub-components/chronos/i18n/ko.js +0 -77
- package/esm2015/datepicker/sub-components/chronos/i18n/lt.js +0 -116
- package/esm2015/datepicker/sub-components/chronos/i18n/lv.js +0 -56
- package/esm2015/datepicker/sub-components/chronos/i18n/mn.js +0 -99
- package/esm2015/datepicker/sub-components/chronos/i18n/nb.js +0 -53
- package/esm2015/datepicker/sub-components/chronos/i18n/nl-be.js +0 -81
- package/esm2015/datepicker/sub-components/chronos/i18n/nl.js +0 -80
- package/esm2015/datepicker/sub-components/chronos/i18n/pl.js +0 -126
- package/esm2015/datepicker/sub-components/chronos/i18n/pt-br.js +0 -56
- package/esm2015/datepicker/sub-components/chronos/i18n/ro.js +0 -66
- package/esm2015/datepicker/sub-components/chronos/i18n/ru.js +0 -181
- package/esm2015/datepicker/sub-components/chronos/i18n/sk.js +0 -157
- package/esm2015/datepicker/sub-components/chronos/i18n/sl.js +0 -184
- package/esm2015/datepicker/sub-components/chronos/i18n/sq.js +0 -54
- package/esm2015/datepicker/sub-components/chronos/i18n/sv.js +0 -63
- package/esm2015/datepicker/sub-components/chronos/i18n/th-be.js +0 -74
- package/esm2015/datepicker/sub-components/chronos/i18n/th.js +0 -59
- package/esm2015/datepicker/sub-components/chronos/i18n/tr.js +0 -82
- package/esm2015/datepicker/sub-components/chronos/i18n/uk.js +0 -147
- package/esm2015/datepicker/sub-components/chronos/i18n/vi.js +0 -74
- package/esm2015/datepicker/sub-components/chronos/i18n/zh-cn.js +0 -114
- package/esm2015/datepicker/sub-components/chronos/index.js +0 -2
- package/esm2015/datepicker/sub-components/chronos/locale/calendar.js +0 -9
- package/esm2015/datepicker/sub-components/chronos/locale/locale.class.js +0 -532
- package/esm2015/datepicker/sub-components/chronos/locale/locale.defaults.js +0 -40
- package/esm2015/datepicker/sub-components/chronos/locale/locales.js +0 -229
- package/esm2015/datepicker/sub-components/chronos/moment/add-subtract.js +0 -35
- package/esm2015/datepicker/sub-components/chronos/moment/calendar.js +0 -41
- package/esm2015/datepicker/sub-components/chronos/moment/diff.js +0 -70
- package/esm2015/datepicker/sub-components/chronos/moment/min-max.js +0 -38
- package/esm2015/datepicker/sub-components/chronos/parse/regex.js +0 -49
- package/esm2015/datepicker/sub-components/chronos/parse/token.js +0 -32
- package/esm2015/datepicker/sub-components/chronos/public_api.js +0 -56
- package/esm2015/datepicker/sub-components/chronos/test/chain.js +0 -711
- package/esm2015/datepicker/sub-components/chronos/types.js +0 -2
- package/esm2015/datepicker/sub-components/chronos/units/aliases.js +0 -35
- package/esm2015/datepicker/sub-components/chronos/units/constants.js +0 -11
- package/esm2015/datepicker/sub-components/chronos/units/day-of-month.js +0 -31
- package/esm2015/datepicker/sub-components/chronos/units/day-of-week.js +0 -129
- package/esm2015/datepicker/sub-components/chronos/units/day-of-year.js +0 -37
- package/esm2015/datepicker/sub-components/chronos/units/hour.js +0 -127
- package/esm2015/datepicker/sub-components/chronos/units/index.js +0 -19
- package/esm2015/datepicker/sub-components/chronos/units/millisecond.js +0 -60
- package/esm2015/datepicker/sub-components/chronos/units/minute.js +0 -23
- package/esm2015/datepicker/sub-components/chronos/units/month.js +0 -63
- package/esm2015/datepicker/sub-components/chronos/units/offset.js +0 -210
- package/esm2015/datepicker/sub-components/chronos/units/priorities.js +0 -21
- package/esm2015/datepicker/sub-components/chronos/units/quarter.js +0 -39
- package/esm2015/datepicker/sub-components/chronos/units/second.js +0 -23
- package/esm2015/datepicker/sub-components/chronos/units/timestamp.js +0 -28
- package/esm2015/datepicker/sub-components/chronos/units/timezone.js +0 -19
- package/esm2015/datepicker/sub-components/chronos/units/week-calendar-utils.js +0 -70
- package/esm2015/datepicker/sub-components/chronos/units/week-year.js +0 -101
- package/esm2015/datepicker/sub-components/chronos/units/week.js +0 -58
- package/esm2015/datepicker/sub-components/chronos/units/year.js +0 -60
- package/esm2015/datepicker/sub-components/chronos/utils/abs-ceil.js +0 -4
- package/esm2015/datepicker/sub-components/chronos/utils/abs-round.js +0 -4
- package/esm2015/datepicker/sub-components/chronos/utils/compare-arrays.js +0 -16
- package/esm2015/datepicker/sub-components/chronos/utils/date-compare.js +0 -55
- package/esm2015/datepicker/sub-components/chronos/utils/date-getters.js +0 -67
- package/esm2015/datepicker/sub-components/chronos/utils/date-setters.js +0 -75
- package/esm2015/datepicker/sub-components/chronos/utils/defaults.js +0 -11
- package/esm2015/datepicker/sub-components/chronos/utils/start-end-of.js +0 -57
- package/esm2015/datepicker/sub-components/chronos/utils/type-checks.js +0 -56
- package/esm2015/datepicker/sub-components/chronos/utils/zero-fill.js +0 -10
- package/esm2015/datepicker/sub-components/chronos/utils.js +0 -7
- package/esm2015/datepicker/sub-components/component-loader/bs-component-ref.class.js +0 -3
- package/esm2015/datepicker/sub-components/component-loader/component-loader.class.js +0 -272
- package/esm2015/datepicker/sub-components/component-loader/component-loader.factory.js +0 -32
- package/esm2015/datepicker/sub-components/component-loader/content-ref.class.js +0 -12
- package/esm2015/datepicker/sub-components/component-loader/index.js +0 -2
- package/esm2015/datepicker/sub-components/component-loader/listen-options.model.js +0 -2
- package/esm2015/datepicker/sub-components/component-loader/public_api.js +0 -5
- package/esm2015/datepicker/sub-components/mini-ngrx/index.js +0 -2
- package/esm2015/datepicker/sub-components/mini-ngrx/public_api.js +0 -3
- package/esm2015/datepicker/sub-components/mini-ngrx/state.class.js +0 -16
- package/esm2015/datepicker/sub-components/mini-ngrx/store.class.js +0 -43
- package/esm2015/datepicker/sub-components/positioning/index.js +0 -2
- package/esm2015/datepicker/sub-components/positioning/models/index.js +0 -2
- package/esm2015/datepicker/sub-components/positioning/modifiers/arrow.js +0 -56
- package/esm2015/datepicker/sub-components/positioning/modifiers/flip.js +0 -60
- package/esm2015/datepicker/sub-components/positioning/modifiers/index.js +0 -6
- package/esm2015/datepicker/sub-components/positioning/modifiers/initData.js +0 -42
- package/esm2015/datepicker/sub-components/positioning/modifiers/preventOverflow.js +0 -56
- package/esm2015/datepicker/sub-components/positioning/modifiers/shift.js +0 -22
- package/esm2015/datepicker/sub-components/positioning/ng-positioning.js +0 -30
- package/esm2015/datepicker/sub-components/positioning/positioning.service.js +0 -71
- package/esm2015/datepicker/sub-components/positioning/public_api.js +0 -3
- package/esm2015/datepicker/sub-components/positioning/utils/computeAutoPlacement.js +0 -53
- package/esm2015/datepicker/sub-components/positioning/utils/findCommonOffsetParent.js +0 -40
- package/esm2015/datepicker/sub-components/positioning/utils/getBordersSize.js +0 -10
- package/esm2015/datepicker/sub-components/positioning/utils/getBoundaries.js +0 -56
- package/esm2015/datepicker/sub-components/positioning/utils/getBoundingClientRect.js +0 -55
- package/esm2015/datepicker/sub-components/positioning/utils/getClientRect.js +0 -4
- package/esm2015/datepicker/sub-components/positioning/utils/getFixedPositionOffsetParent.js +0 -17
- package/esm2015/datepicker/sub-components/positioning/utils/getOffsetParent.js +0 -32
- package/esm2015/datepicker/sub-components/positioning/utils/getOffsetRectRelativeToArbitraryNode.js +0 -51
- package/esm2015/datepicker/sub-components/positioning/utils/getOffsets.js +0 -11
- package/esm2015/datepicker/sub-components/positioning/utils/getOppositePlacement.js +0 -8
- package/esm2015/datepicker/sub-components/positioning/utils/getOppositeVariation.js +0 -13
- package/esm2015/datepicker/sub-components/positioning/utils/getOuterSizes.js +0 -14
- package/esm2015/datepicker/sub-components/positioning/utils/getParentNode.js +0 -10
- package/esm2015/datepicker/sub-components/positioning/utils/getReferenceOffsets.js +0 -13
- package/esm2015/datepicker/sub-components/positioning/utils/getRoot.js +0 -10
- package/esm2015/datepicker/sub-components/positioning/utils/getScroll.js +0 -14
- package/esm2015/datepicker/sub-components/positioning/utils/getScrollParent.js +0 -26
- package/esm2015/datepicker/sub-components/positioning/utils/getStyleComputedProperty.js +0 -13
- package/esm2015/datepicker/sub-components/positioning/utils/getTargetOffsets.js +0 -30
- package/esm2015/datepicker/sub-components/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.js +0 -19
- package/esm2015/datepicker/sub-components/positioning/utils/getWindowSizes.js +0 -18
- package/esm2015/datepicker/sub-components/positioning/utils/includeScroll.js +0 -15
- package/esm2015/datepicker/sub-components/positioning/utils/index.js +0 -24
- package/esm2015/datepicker/sub-components/positioning/utils/isBrowser.js +0 -2
- package/esm2015/datepicker/sub-components/positioning/utils/isFixed.js +0 -16
- package/esm2015/datepicker/sub-components/positioning/utils/isIE.js +0 -16
- package/esm2015/datepicker/sub-components/positioning/utils/isModifierEnabled.js +0 -10
- package/esm2015/datepicker/sub-components/positioning/utils/isNumeric.js +0 -7
- package/esm2015/datepicker/sub-components/positioning/utils/isOffsetContainer.js +0 -9
- package/esm2015/datepicker/sub-components/positioning/utils/setStyles.js +0 -17
- package/esm2015/datepicker/sub-components/positioning/utils/updateContainerClass.js +0 -22
- package/esm2015/datepicker/sub-components/tooltip/index.js +0 -2
- package/esm2015/datepicker/sub-components/tooltip/public_api.js +0 -5
- package/esm2015/datepicker/sub-components/tooltip/tooltip-container.component.js +0 -63
- package/esm2015/datepicker/sub-components/tooltip/tooltip.config.js +0 -22
- package/esm2015/datepicker/sub-components/tooltip/tooltip.directive.js +0 -282
- package/esm2015/datepicker/sub-components/tooltip/tooltip.module.js +0 -23
- package/esm2015/datepicker/sub-components/utils/decorators.js +0 -25
- package/esm2015/datepicker/sub-components/utils/facade/browser.js +0 -24
- package/esm2015/datepicker/sub-components/utils/index.js +0 -2
- package/esm2015/datepicker/sub-components/utils/linked-list.class.js +0 -240
- package/esm2015/datepicker/sub-components/utils/public_api.js +0 -11
- package/esm2015/datepicker/sub-components/utils/theme-provider.js +0 -35
- package/esm2015/datepicker/sub-components/utils/trigger.class.js +0 -10
- package/esm2015/datepicker/sub-components/utils/triggers.js +0 -110
- package/esm2015/datepicker/sub-components/utils/utils.class.js +0 -21
- package/esm2015/datepicker/sub-components/utils/warn-once.js +0 -12
- package/esm2015/datepicker/themes/bs/bs-calendar-layout.component.js +0 -25
- package/esm2015/datepicker/themes/bs/bs-current-date-view.component.js +0 -13
- package/esm2015/datepicker/themes/bs/bs-custom-dates-view.component.js +0 -44
- package/esm2015/datepicker/themes/bs/bs-datepicker-container.component.js +0 -152
- package/esm2015/datepicker/themes/bs/bs-datepicker-day-decorator.directive.js +0 -47
- package/esm2015/datepicker/themes/bs/bs-datepicker-inline-container.component.js +0 -36
- package/esm2015/datepicker/themes/bs/bs-datepicker-navigation-view.component.js +0 -63
- package/esm2015/datepicker/themes/bs/bs-daterangepicker-container.component.js +0 -195
- package/esm2015/datepicker/themes/bs/bs-daterangepicker-inline-container.component.js +0 -36
- package/esm2015/datepicker/themes/bs/bs-days-calendar-view.component.js +0 -162
- package/esm2015/datepicker/themes/bs/bs-months-calendar-view.component.js +0 -60
- package/esm2015/datepicker/themes/bs/bs-timepicker-view.component.js +0 -34
- package/esm2015/datepicker/themes/bs/bs-years-calendar-view.component.js +0 -61
- package/esm2015/datepicker/utils/bs-calendar-utils.js +0 -43
- package/esm2015/datepicker/utils/matrix-utils.js +0 -14
- package/esm2015/datepicker/yearpicker.component.js +0 -90
- package/fesm2015/mis-crystal-design-system-datepicker.js +0 -13512
- package/fesm2015/mis-crystal-design-system-datepicker.js.map +0 -1
|
@@ -1,302 +0,0 @@
|
|
|
1
|
-
// tslint:disable:max-file-line-count
|
|
2
|
-
import { initialDatePickerState } from './bs-datepicker.state';
|
|
3
|
-
import { MisDatePickerActions } from './bs-datepicker.actions';
|
|
4
|
-
import { calcDaysCalendar } from '../engine/calc-days-calendar';
|
|
5
|
-
import { formatDaysCalendar } from '../engine/format-days-calendar';
|
|
6
|
-
import { flagDaysCalendar } from '../engine/flag-days-calendar';
|
|
7
|
-
import { setFullDate, shiftDate, isArray, isDateValid, startOf, getLocale, isAfter, isBefore, isSame } from '../sub-components/chronos';
|
|
8
|
-
import { canSwitchMode } from '../engine/view-mode';
|
|
9
|
-
import { formatMonthsCalendar } from '../engine/format-months-calendar';
|
|
10
|
-
import { flagMonthsCalendar } from '../engine/flag-months-calendar';
|
|
11
|
-
import { formatYearsCalendar, initialYearShift, yearsPerCalendar } from '../engine/format-years-calendar';
|
|
12
|
-
import { flagYearsCalendar } from '../engine/flag-years-calendar';
|
|
13
|
-
import { getYearsCalendarInitialDate } from '../utils/bs-calendar-utils';
|
|
14
|
-
/* tslint:disable-next-line: cyclomatic-complexity */
|
|
15
|
-
export function misDatePickerReducer(state = initialDatePickerState, action) {
|
|
16
|
-
switch (action.type) {
|
|
17
|
-
case MisDatePickerActions.CALCULATE: {
|
|
18
|
-
return calculateReducer(state);
|
|
19
|
-
}
|
|
20
|
-
case MisDatePickerActions.FORMAT: {
|
|
21
|
-
return formatReducer(state, action);
|
|
22
|
-
}
|
|
23
|
-
case MisDatePickerActions.FLAG: {
|
|
24
|
-
return flagReducer(state, action);
|
|
25
|
-
}
|
|
26
|
-
case MisDatePickerActions.NAVIGATE_OFFSET: {
|
|
27
|
-
return navigateOffsetReducer(state, action);
|
|
28
|
-
}
|
|
29
|
-
case MisDatePickerActions.NAVIGATE_TO: {
|
|
30
|
-
const payload = action.payload;
|
|
31
|
-
const date = setFullDate(state.view.date, payload.unit);
|
|
32
|
-
let newState;
|
|
33
|
-
let mode;
|
|
34
|
-
if (canSwitchMode(payload.viewMode, state.minMode)) {
|
|
35
|
-
mode = payload.viewMode;
|
|
36
|
-
newState = { view: { date, mode } };
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
mode = state.view.mode;
|
|
40
|
-
newState = { selectedDate: date, view: { date, mode } };
|
|
41
|
-
}
|
|
42
|
-
return Object.assign({}, state, newState);
|
|
43
|
-
}
|
|
44
|
-
case MisDatePickerActions.CHANGE_VIEWMODE: {
|
|
45
|
-
if (!canSwitchMode(action.payload, state.minMode)) {
|
|
46
|
-
return state;
|
|
47
|
-
}
|
|
48
|
-
const date = state.view.date;
|
|
49
|
-
const mode = action.payload;
|
|
50
|
-
const newState = { view: { date, mode } };
|
|
51
|
-
return Object.assign({}, state, newState);
|
|
52
|
-
}
|
|
53
|
-
case MisDatePickerActions.HOVER: {
|
|
54
|
-
return Object.assign({}, state, { hoveredDate: action.payload });
|
|
55
|
-
}
|
|
56
|
-
case MisDatePickerActions.SELECT: {
|
|
57
|
-
const newState = {
|
|
58
|
-
selectedDate: action.payload,
|
|
59
|
-
view: state.view
|
|
60
|
-
};
|
|
61
|
-
const mode = state.view.mode;
|
|
62
|
-
const _date = action.payload || state.view.date;
|
|
63
|
-
const date = getViewDate(_date, state.minDate, state.maxDate);
|
|
64
|
-
newState.view = { mode, date };
|
|
65
|
-
return Object.assign({}, state, newState);
|
|
66
|
-
}
|
|
67
|
-
case MisDatePickerActions.SET_OPTIONS: {
|
|
68
|
-
const newState = action.payload;
|
|
69
|
-
// preserve view mode
|
|
70
|
-
const mode = newState.minMode ? newState.minMode : state.view.mode;
|
|
71
|
-
const _viewDate = isDateValid(newState.value) && newState.value
|
|
72
|
-
|| isArray(newState.value) && isDateValid(newState.value[0]) && newState.value[0]
|
|
73
|
-
|| state.view.date;
|
|
74
|
-
const date = getViewDate(_viewDate, newState.minDate, newState.maxDate);
|
|
75
|
-
newState.view = { mode, date };
|
|
76
|
-
// update selected value
|
|
77
|
-
if (newState.value) {
|
|
78
|
-
// if new value is array we work with date range
|
|
79
|
-
if (isArray(newState.value)) {
|
|
80
|
-
newState.selectedRange = newState.value;
|
|
81
|
-
}
|
|
82
|
-
// if new value is a date -> datepicker
|
|
83
|
-
if (newState.value instanceof Date) {
|
|
84
|
-
newState.selectedDate = newState.value;
|
|
85
|
-
}
|
|
86
|
-
// provided value is not supported :)
|
|
87
|
-
// need to report it somehow
|
|
88
|
-
}
|
|
89
|
-
return Object.assign({}, state, newState);
|
|
90
|
-
}
|
|
91
|
-
// date range picker
|
|
92
|
-
case MisDatePickerActions.SELECT_RANGE: {
|
|
93
|
-
const newState = {
|
|
94
|
-
selectedRange: action.payload,
|
|
95
|
-
view: state.view
|
|
96
|
-
};
|
|
97
|
-
const mode = state.view.mode;
|
|
98
|
-
const _date = action.payload && action.payload[0] || state.view.date;
|
|
99
|
-
const date = getViewDate(_date, state.minDate, state.maxDate);
|
|
100
|
-
newState.view = { mode, date };
|
|
101
|
-
return Object.assign({}, state, newState);
|
|
102
|
-
}
|
|
103
|
-
case MisDatePickerActions.SET_MIN_DATE: {
|
|
104
|
-
return Object.assign({}, state, {
|
|
105
|
-
minDate: action.payload
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
case MisDatePickerActions.SET_MAX_DATE: {
|
|
109
|
-
return Object.assign({}, state, {
|
|
110
|
-
maxDate: action.payload
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
case MisDatePickerActions.SET_IS_DISABLED: {
|
|
114
|
-
return Object.assign({}, state, {
|
|
115
|
-
isDisabled: action.payload
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
case MisDatePickerActions.SET_DATE_CUSTOM_CLASSES: {
|
|
119
|
-
return Object.assign({}, state, {
|
|
120
|
-
dateCustomClasses: action.payload
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
case MisDatePickerActions.SET_DATE_TOOLTIP_TEXTS: {
|
|
124
|
-
return Object.assign({}, state, {
|
|
125
|
-
dateTooltipTexts: action.payload
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
default:
|
|
129
|
-
return state;
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
function calculateReducer(state) {
|
|
133
|
-
// how many calendars
|
|
134
|
-
const displayMonths = (state.displayOneMonthRange &&
|
|
135
|
-
isDisplayOneMonth(state.view.date, state.minDate, state.maxDate)) ? 1 : state.displayMonths;
|
|
136
|
-
// use selected date on initial rendering if set
|
|
137
|
-
let viewDate = state.view.date;
|
|
138
|
-
if (state.view.mode === 'day') {
|
|
139
|
-
if (state.showPreviousMonth && state.selectedRange && state.selectedRange.length === 0) {
|
|
140
|
-
viewDate = shiftDate(viewDate, { month: -1 });
|
|
141
|
-
}
|
|
142
|
-
state.monthViewOptions.firstDayOfWeek = getLocale(state.locale).firstDayOfWeek();
|
|
143
|
-
const monthsModel = new Array(displayMonths);
|
|
144
|
-
for (let monthIndex = 0; monthIndex < displayMonths; monthIndex++) {
|
|
145
|
-
// todo: for unlinked calendars it will be harder
|
|
146
|
-
monthsModel[monthIndex] = calcDaysCalendar(viewDate, state.monthViewOptions);
|
|
147
|
-
viewDate = shiftDate(viewDate, { month: 1 });
|
|
148
|
-
}
|
|
149
|
-
return Object.assign({}, state, { monthsModel });
|
|
150
|
-
}
|
|
151
|
-
if (state.view.mode === 'month') {
|
|
152
|
-
const monthsCalendar = new Array(displayMonths);
|
|
153
|
-
for (let calendarIndex = 0; calendarIndex < displayMonths; calendarIndex++) {
|
|
154
|
-
// todo: for unlinked calendars it will be harder
|
|
155
|
-
monthsCalendar[calendarIndex] = formatMonthsCalendar(viewDate, getFormatOptions(state));
|
|
156
|
-
viewDate = shiftDate(viewDate, { year: 1 });
|
|
157
|
-
}
|
|
158
|
-
return Object.assign({}, state, { monthsCalendar });
|
|
159
|
-
}
|
|
160
|
-
if (state.view.mode === 'year') {
|
|
161
|
-
const yearsCalendarModel = new Array(displayMonths);
|
|
162
|
-
for (let calendarIndex = 0; calendarIndex < displayMonths; calendarIndex++) {
|
|
163
|
-
// todo: for unlinked calendars it will be harder
|
|
164
|
-
yearsCalendarModel[calendarIndex] = formatYearsCalendar(viewDate, getFormatOptions(state), state.minMode === 'year' ? getYearsCalendarInitialDate(state, calendarIndex) : undefined);
|
|
165
|
-
viewDate = shiftDate(viewDate, { year: yearsPerCalendar });
|
|
166
|
-
}
|
|
167
|
-
return Object.assign({}, state, { yearsCalendarModel });
|
|
168
|
-
}
|
|
169
|
-
return state;
|
|
170
|
-
}
|
|
171
|
-
function formatReducer(state, action) {
|
|
172
|
-
if (state.view.mode === 'day') {
|
|
173
|
-
const formattedMonths = state.monthsModel.map((month, monthIndex) => formatDaysCalendar(month, getFormatOptions(state), monthIndex));
|
|
174
|
-
return Object.assign({}, state, { formattedMonths });
|
|
175
|
-
}
|
|
176
|
-
// how many calendars
|
|
177
|
-
const displayMonths = state.displayMonths;
|
|
178
|
-
// check initial rendering
|
|
179
|
-
// use selected date on initial rendering if set
|
|
180
|
-
let viewDate = state.view.date;
|
|
181
|
-
if (state.view.mode === 'month') {
|
|
182
|
-
const monthsCalendar = new Array(displayMonths);
|
|
183
|
-
for (let calendarIndex = 0; calendarIndex < displayMonths; calendarIndex++) {
|
|
184
|
-
// todo: for unlinked calendars it will be harder
|
|
185
|
-
monthsCalendar[calendarIndex] = formatMonthsCalendar(viewDate, getFormatOptions(state));
|
|
186
|
-
viewDate = shiftDate(viewDate, { year: 1 });
|
|
187
|
-
}
|
|
188
|
-
return Object.assign({}, state, { monthsCalendar });
|
|
189
|
-
}
|
|
190
|
-
if (state.view.mode === 'year') {
|
|
191
|
-
const yearsCalendarModel = new Array(displayMonths);
|
|
192
|
-
for (let calendarIndex = 0; calendarIndex < displayMonths; calendarIndex++) {
|
|
193
|
-
// todo: for unlinked calendars it will be harder
|
|
194
|
-
yearsCalendarModel[calendarIndex] = formatYearsCalendar(viewDate, getFormatOptions(state));
|
|
195
|
-
viewDate = shiftDate(viewDate, { year: 16 });
|
|
196
|
-
}
|
|
197
|
-
return Object.assign({}, state, { yearsCalendarModel });
|
|
198
|
-
}
|
|
199
|
-
return state;
|
|
200
|
-
}
|
|
201
|
-
function flagReducer(state, action) {
|
|
202
|
-
const displayMonths = isDisplayOneMonth(state.view.date, state.minDate, state.maxDate) ? 1 : state.displayMonths;
|
|
203
|
-
if (state.view.mode === 'day') {
|
|
204
|
-
const flaggedMonths = state.formattedMonths.map((formattedMonth, monthIndex) => flagDaysCalendar(formattedMonth, {
|
|
205
|
-
isDisabled: state.isDisabled,
|
|
206
|
-
minDate: state.minDate,
|
|
207
|
-
maxDate: state.maxDate,
|
|
208
|
-
daysDisabled: state.daysDisabled,
|
|
209
|
-
datesDisabled: state.datesDisabled,
|
|
210
|
-
datesEnabled: state.datesEnabled,
|
|
211
|
-
hoveredDate: state.hoveredDate,
|
|
212
|
-
selectedDate: state.selectedDate,
|
|
213
|
-
selectedRange: state.selectedRange,
|
|
214
|
-
displayMonths,
|
|
215
|
-
dateCustomClasses: state.dateCustomClasses,
|
|
216
|
-
dateTooltipTexts: state.dateTooltipTexts,
|
|
217
|
-
monthIndex
|
|
218
|
-
}));
|
|
219
|
-
return Object.assign({}, state, { flaggedMonths });
|
|
220
|
-
}
|
|
221
|
-
if (state.view.mode === 'month') {
|
|
222
|
-
const flaggedMonthsCalendar = state.monthsCalendar.map((formattedMonth, monthIndex) => flagMonthsCalendar(formattedMonth, {
|
|
223
|
-
isDisabled: state.isDisabled,
|
|
224
|
-
minDate: state.minDate,
|
|
225
|
-
maxDate: state.maxDate,
|
|
226
|
-
hoveredMonth: state.hoveredMonth,
|
|
227
|
-
selectedDate: state.selectedDate,
|
|
228
|
-
selectedRange: state.selectedRange,
|
|
229
|
-
displayMonths,
|
|
230
|
-
monthIndex
|
|
231
|
-
}));
|
|
232
|
-
return Object.assign({}, state, { flaggedMonthsCalendar });
|
|
233
|
-
}
|
|
234
|
-
if (state.view.mode === 'year') {
|
|
235
|
-
const yearsCalendarFlagged = state.yearsCalendarModel.map((formattedMonth, yearIndex) => flagYearsCalendar(formattedMonth, {
|
|
236
|
-
isDisabled: state.isDisabled,
|
|
237
|
-
minDate: state.minDate,
|
|
238
|
-
maxDate: state.maxDate,
|
|
239
|
-
hoveredYear: state.hoveredYear,
|
|
240
|
-
selectedDate: state.selectedDate,
|
|
241
|
-
selectedRange: state.selectedRange,
|
|
242
|
-
displayMonths,
|
|
243
|
-
yearIndex
|
|
244
|
-
}));
|
|
245
|
-
return Object.assign({}, state, { yearsCalendarFlagged });
|
|
246
|
-
}
|
|
247
|
-
return state;
|
|
248
|
-
}
|
|
249
|
-
function navigateOffsetReducer(state, action) {
|
|
250
|
-
const newState = {
|
|
251
|
-
view: {
|
|
252
|
-
mode: state.view.mode,
|
|
253
|
-
date: shiftViewDate(state, action)
|
|
254
|
-
}
|
|
255
|
-
};
|
|
256
|
-
return Object.assign({}, state, newState);
|
|
257
|
-
}
|
|
258
|
-
function shiftViewDate(state, action) {
|
|
259
|
-
if (state.view.mode === 'year' && state.minMode === 'year') {
|
|
260
|
-
const initialDate = getYearsCalendarInitialDate(state, 0);
|
|
261
|
-
const middleDate = shiftDate(initialDate, { year: -initialYearShift });
|
|
262
|
-
return shiftDate(middleDate, action.payload);
|
|
263
|
-
}
|
|
264
|
-
return shiftDate(startOf(state.view.date, 'month'), action.payload);
|
|
265
|
-
}
|
|
266
|
-
function getFormatOptions(state) {
|
|
267
|
-
return {
|
|
268
|
-
locale: state.locale,
|
|
269
|
-
monthTitle: state.monthTitle,
|
|
270
|
-
yearTitle: state.yearTitle,
|
|
271
|
-
dayLabel: state.dayLabel,
|
|
272
|
-
monthLabel: state.monthLabel,
|
|
273
|
-
yearLabel: state.yearLabel,
|
|
274
|
-
weekNumbers: state.weekNumbers
|
|
275
|
-
};
|
|
276
|
-
}
|
|
277
|
-
/**
|
|
278
|
-
* if view date is provided (bsValue|ngModel) it should be shown
|
|
279
|
-
* if view date is not provider:
|
|
280
|
-
* if minDate>currentDate (default view value), show minDate
|
|
281
|
-
* if maxDate<currentDate(default view value) show maxDate
|
|
282
|
-
*/
|
|
283
|
-
function getViewDate(viewDate, minDate, maxDate) {
|
|
284
|
-
const _date = Array.isArray(viewDate) ? viewDate[0] : viewDate;
|
|
285
|
-
if (minDate && isAfter(minDate, _date, 'day')) {
|
|
286
|
-
return minDate;
|
|
287
|
-
}
|
|
288
|
-
if (maxDate && isBefore(maxDate, _date, 'day')) {
|
|
289
|
-
return maxDate;
|
|
290
|
-
}
|
|
291
|
-
return _date;
|
|
292
|
-
}
|
|
293
|
-
function isDisplayOneMonth(viewDate, minDate, maxDate) {
|
|
294
|
-
if (maxDate && isSame(maxDate, viewDate, 'day')) {
|
|
295
|
-
return true;
|
|
296
|
-
}
|
|
297
|
-
if (minDate && maxDate && minDate.getMonth() === maxDate.getMonth()) {
|
|
298
|
-
return true;
|
|
299
|
-
}
|
|
300
|
-
return false;
|
|
301
|
-
}
|
|
302
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF0ZXBpY2tlci5yZWR1Y2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9yZWR1Y2VyL2JzLWRhdGVwaWNrZXIucmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxQ0FBcUM7QUFDckMsT0FBTyxFQUFzQixzQkFBc0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRW5GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFDTCxXQUFXLEVBQ1gsU0FBUyxFQUNULE9BQU8sRUFDUCxXQUFXLEVBQ1gsT0FBTyxFQUNQLFNBQVMsRUFDVCxPQUFPLEVBQ1AsUUFBUSxFQUNSLE1BQU0sRUFDUCxNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUd6RSxxREFBcUQ7QUFDckQsTUFBTSxVQUFVLG9CQUFvQixDQUFDLEtBQUssR0FBRyxzQkFBc0IsRUFDL0Is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SUFBSSxPQUFPLElBQUksT0FBTyxJQUFLLE9BQU8sQ0FBQyxRQUFRLEVBQUUsS0FBSyxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUU7UUFDcEUsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIHRzbGludDpkaXNhYmxlOm1heC1maWxlLWxpbmUtY291bnRcbmltcG9ydCB7IE1pc0RhdGVQaWNrZXJTdGF0ZSwgaW5pdGlhbERhdGVQaWNrZXJTdGF0ZSB9IGZyb20gJy4vYnMtZGF0ZXBpY2tlci5zdGF0ZSc7XG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICcuLi9zdWItY29tcG9uZW50cy9taW5pLW5ncngnO1xuaW1wb3J0IHsgTWlzRGF0ZVBpY2tlckFjdGlvbnMgfSBmcm9tICcuL2JzLWRhdGVwaWNrZXIuYWN0aW9ucyc7XG5pbXBvcnQgeyBjYWxjRGF5c0NhbGVuZGFyIH0gZnJvbSAnLi4vZW5naW5lL2NhbGMtZGF5cy1jYWxlbmRhcic7XG5pbXBvcnQgeyBmb3JtYXREYXlzQ2FsZW5kYXIgfSBmcm9tICcuLi9lbmdpbmUvZm9ybWF0LWRheXMtY2FsZW5kYXInO1xuaW1wb3J0IHsgZmxhZ0RheXNDYWxlbmRhciB9IGZyb20gJy4uL2VuZ2luZS9mbGFnLWRheXMtY2FsZW5kYXInO1xuaW1wb3J0IHtcbiAgc2V0RnVsbERhdGUsXG4gIHNoaWZ0RGF0ZSxcbiAgaXNBcnJheSxcbiAgaXNEYXRlVmFsaWQsXG4gIHN0YXJ0T2YsXG4gIGdldExvY2FsZSxcbiAgaXNBZnRlcixcbiAgaXNCZWZvcmUsXG4gIGlzU2FtZVxufSBmcm9tICcuLi9zdWItY29tcG9uZW50cy9jaHJvbm9zJztcbmltcG9ydCB7IGNhblN3aXRjaE1vZGUgfSBmcm9tICcuLi9lbmdpbmUvdmlldy1tb2RlJztcbmltcG9ydCB7IGZvcm1hdE1vbnRoc0NhbGVuZGFyIH0gZnJvbSAnLi4vZW5naW5lL2Zvcm1hdC1tb250aHMtY2FsZW5kYXInO1xuaW1wb3J0IHsgZmxhZ01vbnRoc0NhbGVuZGFyIH0gZnJvbSAnLi4vZW5naW5lL2ZsYWctbW9udGhzLWNhbGVuZGFyJztcbmltcG9ydCB7IGZvcm1hdFllYXJzQ2FsZW5kYXIsIGluaXRpYWxZZWFyU2hpZnQsIHllYXJzUGVyQ2FsZW5kYXIgfSBmcm9tICcuLi9lbmdpbmUvZm9ybWF0LXllYXJzLWNhbGVuZGFyJztcbmltcG9ydCB7IGZsYWdZZWFyc0NhbGVuZGFyIH0gZnJvbSAnLi4vZW5naW5lL2ZsYWcteWVhcnMtY2FsZW5kYXInO1xuaW1wb3J0IHsgQnNWaWV3TmF2aWdhdGlvbkV2ZW50LCBEYXRlUGlja2VyRm9ybWF0T3B0aW9ucywgTWlzRGF0ZVBpY2tlclZpZXdNb2RlIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7IGdldFllYXJzQ2FsZW5kYXJJbml0aWFsRGF0ZSB9IGZyb20gJy4uL3V0aWxzL2JzLWNhbGVuZGFyLXV0aWxzJztcblxuXG4vKiB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IGN5Y2xvbWF0aWMtY29tcGxleGl0eSAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1pc0RhdGVQaWNrZXJSZWR1Y2VyKHN0YXRlID0gaW5pdGlhbERhdGVQaWNrZXJTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbjogQWN0aW9uKTogTWlzRGF0ZVBpY2tlclN0YXRlIHtcbiAgc3dpdGNoIChhY3Rpb24udHlwZSkge1xuICAgIGNhc2UgTWlzRGF0ZVBpY2tlckFjdGlvbnMuQ0FMQ1VMQVRFOiB7XG4gICAgICByZXR1cm4gY2FsY3VsYXRlUmVkdWNlcihzdGF0ZSk7XG4gICAgfVxuXG4gICAgY2FzZSBNaXNEYXRlUGlja2VyQWN0aW9ucy5GT1JNQVQ6IHtcbiAgICAgIHJldHVybiBmb3JtYXRSZWR1Y2VyKHN0YXRlLCBhY3Rpb24pO1xuICAgIH1cblxuICAgIGNhc2UgTWlzRGF0ZVBpY2tlckFjdGlvbnMuRkxBRzoge1xuICAgICAgcmV0dXJuIGZsYWdSZWR1Y2VyKHN0YXRlLCBhY3Rpb24pO1xuICAgIH1cblxuICAgIGNhc2UgTWlzRGF0ZVBpY2tlckFjdGlvbnMuTkFWSUdBVEVfT0ZGU0VUOiB7XG4gICAgICByZXR1cm4gbmF2aWdhdGVPZmZzZXRSZWR1Y2VyKHN0YXRlLCBhY3Rpb24pO1xuICAgIH1cblxuICAgIGNhc2UgTWlzRGF0ZVBpY2tlckFjdGlvbnMuTkFWSUdBVEVfVE86IHtcbiAgICAgIGNvbnN0IHBheWxvYWQ6IEJzVmlld05hdmlnYXRpb25FdmVudCA9IGFjdGlvbi5wYXlsb2FkO1xuXG4gICAgICBjb25zdCBkYXRlID0gc2V0RnVsbERhdGUoc3RhdGUudmlldy5kYXRlLCBwYXlsb2FkLnVuaXQpO1xuICAgICAgbGV0IG5ld1N0YXRlO1xuICAgICAgbGV0IG1vZGU6IE1pc0RhdGVQaWNrZXJWaWV3TW9kZTtcbiAgICAgIGlmIChjYW5Td2l0Y2hNb2RlKHBheWxvYWQudmlld01vZGUsIHN0YXRlLm1pbk1vZGUpKSB7XG4gICAgICAgIG1vZGUgPSBwYXlsb2FkLnZpZXdNb2RlO1xuICAgICAgICBuZXdTdGF0ZSA9IHsgdmlldzogeyBkYXRlLCBtb2RlIH0gfTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG1vZGUgPSBzdGF0ZS52aWV3Lm1vZGU7XG4gICAgICAgIG5ld1N0YXRlID0geyBzZWxlY3RlZERhdGU6IGRhdGUsIHZpZXc6IHsgZGF0ZSwgbW9kZSB9IH07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBzdGF0ZSwgbmV3U3RhdGUpO1xuICAgIH1cblxuICAgIGNhc2UgTWlzRGF0ZVBpY2tlckFjdGlvbnMuQ0hBTkdFX1ZJRVdNT0RFOiB7XG4gICAgICBpZiAoIWNhblN3aXRjaE1vZGUoYWN0aW9uLnBheWxvYWQsIHN0YXRlLm1pbk1vZGUpKSB7XG4gICAgICAgIHJldHVybiBzdGF0ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGRhdGUgPSBzdGF0ZS52aWV3LmRhdGU7XG4gICAgICBjb25zdCBtb2RlID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgICBjb25zdCBuZXdTdGF0ZSA9IHsgdmlldzogeyBkYXRlLCBtb2RlIH0gfTtcblxuICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIHN0YXRlLCBuZXdTdGF0ZSk7XG4gICAgfVxuXG4gICAgY2FzZSBNaXNEYXRlUGlja2VyQWN0aW9ucy5IT1ZFUjoge1xuICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIHN0YXRlLCB7IGhvdmVyZWREYXRlOiBhY3Rpb24ucGF5bG9hZCB9KTtcbiAgICB9XG5cbiAgICBjYXNlIE1pc0RhdGVQaWNrZXJBY3Rpb25zLlNFTEVDVDoge1xuICAgICAgY29uc3QgbmV3U3RhdGUgPSB7XG4gICAgICAgIHNlbGVjdGVkRGF0ZTogYWN0aW9uLnBheWxvYWQsXG4gICAgICAgIHZpZXc6IHN0YXRlLnZpZXdcbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IG1vZGUgPSBzdGF0ZS52aWV3Lm1vZGU7XG4gICAgICBjb25zdCBfZGF0ZSA9IGFjdGlvbi5wYXlsb2FkIHx8IHN0YXRlLnZpZXcuZGF0ZTtcbiAgICAgIGNvbnN0IGRhdGUgPSBnZXRWaWV3RGF0ZShfZGF0ZSwgc3RhdGUubWluRGF0ZSwgc3RhdGUubWF4RGF0ZSk7XG4gICAgICBuZXdTdGF0ZS52aWV3ID0geyBtb2RlLCBkYXRlIH07XG5cbiAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBzdGF0ZSwgbmV3U3RhdGUpO1xuICAgIH1cblxuICAgIGNhc2UgTWlzRGF0ZVBpY2tlckFjdGlvbnMuU0VUX09QVElPTlM6IHtcbiAgICAgIGNvbnN0IG5ld1N0YXRlID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgICAvLyBwcmVzZXJ2ZSB2aWV3IG1vZGVcbiAgICAgIGNvbnN0IG1vZGUgPSBuZXdTdGF0ZS5taW5Nb2RlID8gbmV3U3RhdGUubWluTW9kZSA6IHN0YXRlLnZpZXcubW9kZTtcbiAgICAgIGNvbnN0IF92aWV3RGF0ZSA9IGlzRGF0ZVZhbGlkKG5ld1N0YXRlLnZhbHVlKSAmJiBuZXdTdGF0ZS52YWx1ZVxuICAgICAgICB8fCBpc0FycmF5KG5ld1N0YXRlLnZhbHVlKSAmJiBpc0RhdGVWYWxpZChuZXdTdGF0ZS52YWx1ZVswXSkgJiYgbmV3U3RhdGUudmFsdWVbMF1cbiAgICAgICAgfHwgc3RhdGUudmlldy5kYXRlO1xuICAgICAgY29uc3QgZGF0ZSA9IGdldFZpZXdEYXRlKF92aWV3RGF0ZSwgbmV3U3RhdGUubWluRGF0ZSwgbmV3U3RhdGUubWF4RGF0ZSk7XG4gICAgICBuZXdTdGF0ZS52aWV3ID0geyBtb2RlLCBkYXRlIH07XG4gICAgICAvLyB1cGRhdGUgc2VsZWN0ZWQgdmFsdWVcbiAgICAgIGlmIChuZXdTdGF0ZS52YWx1ZSkge1xuICAgICAgICAvLyBpZiBuZXcgdmFsdWUgaXMgYXJyYXkgd2Ugd29yayB3aXRoIGRhdGUgcmFuZ2VcbiAgICAgICAgaWYgKGlzQXJyYXkobmV3U3RhdGUudmFsdWUpKSB7XG4gICAgICAgICAgbmV3U3RhdGUuc2VsZWN0ZWRSYW5nZSA9IG5ld1N0YXRlLnZhbHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gaWYgbmV3IHZhbHVlIGlzIGEgZGF0ZSAtPiBkYXRlcGlja2VyXG4gICAgICAgIGlmIChuZXdTdGF0ZS52YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgICAgICBuZXdTdGF0ZS5zZWxlY3RlZERhdGUgPSBuZXdTdGF0ZS52YWx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHByb3ZpZGVkIHZhbHVlIGlzIG5vdCBzdXBwb3J0ZWQgOilcbiAgICAgICAgLy8gbmVlZCB0byByZXBvcnQgaXQgc29tZWhvd1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgc3RhdGUsIG5ld1N0YXRlKTtcbiAgICB9XG5cbiAgICAvLyBkYXRlIHJhbmdlIHBpY2tlclxuICAgIGNhc2UgTWlzRGF0ZVBpY2tlckFjdGlvbnMuU0VMRUNUX1JBTkdFOiB7XG4gICAgICBjb25zdCBuZXdTdGF0ZSA9IHtcbiAgICAgICAgc2VsZWN0ZWRSYW5nZTogYWN0aW9uLnBheWxvYWQsXG4gICAgICAgIHZpZXc6IHN0YXRlLnZpZXdcbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IG1vZGUgPSBzdGF0ZS52aWV3Lm1vZGU7XG4gICAgICBjb25zdCBfZGF0ZSA9IGFjdGlvbi5wYXlsb2FkICYmIGFjdGlvbi5wYXlsb2FkWzBdIHx8IHN0YXRlLnZpZXcuZGF0ZTtcbiAgICAgIGNvbnN0IGRhdGUgPSBnZXRWaWV3RGF0ZShfZGF0ZSwgc3RhdGUubWluRGF0ZSwgc3RhdGUubWF4RGF0ZSk7XG4gICAgICBuZXdTdGF0ZS52aWV3ID0geyBtb2RlLCBkYXRlIH07XG5cbiAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBzdGF0ZSwgbmV3U3RhdGUpO1xuICAgIH1cblxuICAgIGNhc2UgTWlzRGF0ZVBpY2tlckFjdGlvbnMuU0VUX01JTl9EQVRFOiB7XG4gICAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgc3RhdGUsIHtcbiAgICAgICAgbWluRGF0ZTogYWN0aW9uLnBheWxvYWRcbiAgICAgIH0pO1xuICAgIH1cbiAgICBjYXNlIE1pc0RhdGVQaWNrZXJBY3Rpb25zLlNFVF9NQVhfREFURToge1xuICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIHN0YXRlLCB7XG4gICAgICAgIG1heERhdGU6IGFjdGlvbi5wYXlsb2FkXG4gICAgICB9KTtcbiAgICB9XG4gICAgY2FzZSBNaXNEYXRlUGlja2VyQWN0aW9ucy5TRVRfSVNfRElTQUJMRUQ6IHtcbiAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBzdGF0ZSwge1xuICAgICAgICBpc0Rpc2FibGVkOiBhY3Rpb24ucGF5bG9hZFxuICAgICAgfSk7XG4gICAgfVxuICAgIGNhc2UgTWlzRGF0ZVBpY2tlckFjdGlvbnMuU0VUX0RBVEVfQ1VTVE9NX0NMQVNTRVM6IHtcbiAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBzdGF0ZSwge1xuICAgICAgICBkYXRlQ3VzdG9tQ2xhc3NlczogYWN0aW9uLnBheWxvYWRcbiAgICAgIH0pO1xuICAgIH1cbiAgICBjYXNlIE1pc0RhdGVQaWNrZXJBY3Rpb25zLlNFVF9EQVRFX1RPT0xUSVBfVEVYVFM6IHtcbiAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBzdGF0ZSwge1xuICAgICAgICBkYXRlVG9vbHRpcFRleHRzOiBhY3Rpb24ucGF5bG9hZFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBzdGF0ZTtcbiAgfVxufVxuXG5mdW5jdGlvbiBjYWxjdWxhdGVSZWR1Y2VyKHN0YXRlOiBNaXNEYXRlUGlja2VyU3RhdGUpOiBNaXNEYXRlUGlja2VyU3RhdGUge1xuICAvLyBob3cgbWFueSBjYWxlbmRhcnNcbiAgY29uc3QgZGlzcGxheU1vbnRocyA9IChzdGF0ZS5kaXNwbGF5T25lTW9udGhSYW5nZSAmJlxuICAgIGlzRGlzcGxheU9uZU1vbnRoKHN0YXRlLnZpZXcuZGF0ZSwgc3RhdGUubWluRGF0ZSwgc3RhdGUubWF4RGF0ZSkpID8gMSA6IHN0YXRlLmRpc3BsYXlNb250aHM7XG5cbiAgLy8gdXNlIHNlbGVjdGVkIGRhdGUgb24gaW5pdGlhbCByZW5kZXJpbmcgaWYgc2V0XG4gIGxldCB2aWV3RGF0ZSA9IHN0YXRlLnZpZXcuZGF0ZTtcblxuICBpZiAoc3RhdGUudmlldy5tb2RlID09PSAnZGF5Jykge1xuICAgIGlmIChzdGF0ZS5zaG93UHJldmlvdXNNb250aCAmJiBzdGF0ZS5zZWxlY3RlZFJhbmdlICYmIHN0YXRlLnNlbGVjdGVkUmFuZ2UubGVuZ3RoID09PSAwKSB7XG4gICAgICB2aWV3RGF0ZSA9IHNoaWZ0RGF0ZSh2aWV3RGF0ZSwgeyBtb250aDogLTEgfSk7XG4gICAgfVxuXG4gICAgc3RhdGUubW9udGhWaWV3T3B0aW9ucy5maXJzdERheU9mV2VlayA9IGdldExvY2FsZShzdGF0ZS5sb2NhbGUpLmZpcnN0RGF5T2ZXZWVrKCk7XG4gICAgY29uc3QgbW9udGhzTW9kZWwgPSBuZXcgQXJyYXkoZGlzcGxheU1vbnRocyk7XG4gICAgZm9yIChsZXQgbW9udGhJbmRleCA9IDA7IG1vbnRoSW5kZXggPCBkaXNwbGF5TW9udGhzOyBtb250aEluZGV4KyspIHtcbiAgICAgIC8vIHRvZG86IGZvciB1bmxpbmtlZCBjYWxlbmRhcnMgaXQgd2lsbCBiZSBoYXJkZXJcbiAgICAgIG1vbnRoc01vZGVsW21vbnRoSW5kZXhdID0gY2FsY0RheXNDYWxlbmRhcihcbiAgICAgICAgdmlld0RhdGUsXG4gICAgICAgIHN0YXRlLm1vbnRoVmlld09wdGlvbnNcbiAgICAgICk7XG4gICAgICB2aWV3RGF0ZSA9IHNoaWZ0RGF0ZSh2aWV3RGF0ZSwgeyBtb250aDogMSB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgc3RhdGUsIHsgbW9udGhzTW9kZWwgfSk7XG4gIH1cblxuICBpZiAoc3RhdGUudmlldy5tb2RlID09PSAnbW9udGgnKSB7XG4gICAgY29uc3QgbW9udGhzQ2FsZW5kYXIgPSBuZXcgQXJyYXkoZGlzcGxheU1vbnRocyk7XG4gICAgZm9yIChcbiAgICAgIGxldCBjYWxlbmRhckluZGV4ID0gMDtcbiAgICAgIGNhbGVuZGFySW5kZXggPCBkaXNwbGF5TW9udGhzO1xuICAgICAgY2FsZW5kYXJJbmRleCsrXG4gICAgKSB7XG4gICAgICAvLyB0b2RvOiBmb3IgdW5saW5rZWQgY2FsZW5kYXJzIGl0IHdpbGwgYmUgaGFyZGVyXG4gICAgICBtb250aHNDYWxlbmRhcltjYWxlbmRhckluZGV4XSA9IGZvcm1hdE1vbnRoc0NhbGVuZGFyKFxuICAgICAgICB2aWV3RGF0ZSxcbiAgICAgICAgZ2V0Rm9ybWF0T3B0aW9ucyhzdGF0ZSlcbiAgICAgICk7XG4gICAgICB2aWV3RGF0ZSA9IHNoaWZ0RGF0ZSh2aWV3RGF0ZSwgeyB5ZWFyOiAxIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBzdGF0ZSwgeyBtb250aHNDYWxlbmRhciB9KTtcbiAgfVxuXG4gIGlmIChzdGF0ZS52aWV3Lm1vZGUgPT09ICd5ZWFyJykge1xuICAgIGNvbnN0IHllYXJzQ2FsZW5kYXJNb2RlbCA9IG5ldyBBcnJheShkaXNwbGF5TW9udGhzKTtcblxuICAgIGZvciAoXG4gICAgICBsZXQgY2FsZW5kYXJJbmRleCA9IDA7XG4gICAgICBjYWxlbmRhckluZGV4IDwgZGlzcGxheU1vbnRocztcbiAgICAgIGNhbGVuZGFySW5kZXgrK1xuICAgICkge1xuICAgICAgLy8gdG9kbzogZm9yIHVubGlua2VkIGNhbGVuZGFycyBpdCB3aWxsIGJlIGhhcmRlclxuICAgICAgeWVhcnNDYWxlbmRhck1vZGVsW2NhbGVuZGFySW5kZXhdID0gZm9ybWF0WWVhcnNDYWxlbmRhcihcbiAgICAgICAgdmlld0RhdGUsXG4gICAgICAgIGdldEZvcm1hdE9wdGlvbnMoc3RhdGUpLFxuICAgICAgICBzdGF0ZS5taW5Nb2RlID09PSAneWVhcicgPyBnZXRZZWFyc0NhbGVuZGFySW5pdGlhbERhdGUoc3RhdGUsIGNhbGVuZGFySW5kZXgpIDogdW5kZWZpbmVkXG4gICAgICApO1xuICAgICAgdmlld0RhdGUgPSBzaGlmdERhdGUodmlld0RhdGUsIHsgeWVhcjogeWVhcnNQZXJDYWxlbmRhciB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgc3RhdGUsIHsgeWVhcnNDYWxlbmRhck1vZGVsIH0pO1xuICB9XG5cbiAgcmV0dXJuIHN0YXRlO1xufVxuXG5mdW5jdGlvbiBmb3JtYXRSZWR1Y2VyKHN0YXRlOiBNaXNEYXRlUGlja2VyU3RhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbjogQWN0aW9uKTogTWlzRGF0ZVBpY2tlclN0YXRlIHtcbiAgaWYgKHN0YXRlLnZpZXcubW9kZSA9PT0gJ2RheScpIHtcbiAgICBjb25zdCBmb3JtYXR0ZWRNb250aHMgPSBzdGF0ZS5tb250aHNNb2RlbC5tYXAoKG1vbnRoLCBtb250aEluZGV4KSA9PlxuICAgICAgZm9ybWF0RGF5c0NhbGVuZGFyKG1vbnRoLCBnZXRGb3JtYXRPcHRpb25zKHN0YXRlKSwgbW9udGhJbmRleClcbiAgICApO1xuXG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIHN0YXRlLCB7IGZvcm1hdHRlZE1vbnRocyB9KTtcbiAgfVxuXG4gIC8vIGhvdyBtYW55IGNhbGVuZGFyc1xuICBjb25zdCBkaXNwbGF5TW9udGhzID0gc3RhdGUuZGlzcGxheU1vbnRocztcbiAgLy8gY2hlY2sgaW5pdGlhbCByZW5kZXJpbmdcbiAgLy8gdXNlIHNlbGVjdGVkIGRhdGUgb24gaW5pdGlhbCByZW5kZXJpbmcgaWYgc2V0XG4gIGxldCB2aWV3RGF0ZSA9IHN0YXRlLnZpZXcuZGF0ZTtcblxuICBpZiAoc3RhdGUudmlldy5tb2RlID09PSAnbW9udGgnKSB7XG4gICAgY29uc3QgbW9udGhzQ2FsZW5kYXIgPSBuZXcgQXJyYXkoZGlzcGxheU1vbnRocyk7XG4gICAgZm9yIChcbiAgICAgIGxldCBjYWxlbmRhckluZGV4ID0gMDtcbiAgICAgIGNhbGVuZGFySW5kZXggPCBkaXNwbGF5TW9udGhzO1xuICAgICAgY2FsZW5kYXJJbmRleCsrXG4gICAgKSB7XG4gICAgICAvLyB0b2RvOiBmb3IgdW5saW5rZWQgY2FsZW5kYXJzIGl0IHdpbGwgYmUgaGFyZGVyXG4gICAgICBtb250aHNDYWxlbmRhcltjYWxlbmRhckluZGV4XSA9IGZvcm1hdE1vbnRoc0NhbGVuZGFyKFxuICAgICAgICB2aWV3RGF0ZSxcbiAgICAgICAgZ2V0Rm9ybWF0T3B0aW9ucyhzdGF0ZSlcbiAgICAgICk7XG4gICAgICB2aWV3RGF0ZSA9IHNoaWZ0RGF0ZSh2aWV3RGF0ZSwgeyB5ZWFyOiAxIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBzdGF0ZSwgeyBtb250aHNDYWxlbmRhciB9KTtcbiAgfVxuXG4gIGlmIChzdGF0ZS52aWV3Lm1vZGUgPT09ICd5ZWFyJykge1xuICAgIGNvbnN0IHllYXJzQ2FsZW5kYXJNb2RlbCA9IG5ldyBBcnJheShkaXNwbGF5TW9udGhzKTtcbiAgICBmb3IgKFxuICAgICAgbGV0IGNhbGVuZGFySW5kZXggPSAwO1xuICAgICAgY2FsZW5kYXJJbmRleCA8IGRpc3BsYXlNb250aHM7XG4gICAgICBjYWxlbmRhckluZGV4KytcbiAgICApIHtcbiAgICAgIC8vIHRvZG86IGZvciB1bmxpbmtlZCBjYWxlbmRhcnMgaXQgd2lsbCBiZSBoYXJkZXJcbiAgICAgIHllYXJzQ2FsZW5kYXJNb2RlbFtjYWxlbmRhckluZGV4XSA9IGZvcm1hdFllYXJzQ2FsZW5kYXIoXG4gICAgICAgIHZpZXdEYXRlLFxuICAgICAgICBnZXRGb3JtYXRPcHRpb25zKHN0YXRlKVxuICAgICAgKTtcbiAgICAgIHZpZXdEYXRlID0gc2hpZnREYXRlKHZpZXdEYXRlLCB7IHllYXI6IDE2IH0pO1xuICAgIH1cblxuICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBzdGF0ZSwgeyB5ZWFyc0NhbGVuZGFyTW9kZWwgfSk7XG4gIH1cblxuICByZXR1cm4gc3RhdGU7XG59XG5cbmZ1bmN0aW9uIGZsYWdSZWR1Y2VyKHN0YXRlOiBNaXNEYXRlUGlja2VyU3RhdGUsXG4gICAgICAgICAgICAgICAgICAgICBhY3Rpb246IEFjdGlvbik6IE1pc0RhdGVQaWNrZXJTdGF0ZSB7XG4gIGNvbnN0IGRpc3BsYXlNb250aHMgPSBpc0Rpc3BsYXlPbmVNb250aChzdGF0ZS52aWV3LmRhdGUsIHN0YXRlLm1pbkRhdGUsIHN0YXRlLm1heERhdGUpID8gMSA6IHN0YXRlLmRpc3BsYXlNb250aHM7XG4gIGlmIChzdGF0ZS52aWV3Lm1vZGUgPT09ICdkYXknKSB7XG4gICAgY29uc3QgZmxhZ2dlZE1vbnRocyA9IHN0YXRlLmZvcm1hdHRlZE1vbnRocy5tYXAoXG4gICAgICAoZm9ybWF0dGVkTW9udGgsIG1vbnRoSW5kZXgpID0+XG4gICAgICAgIGZsYWdEYXlzQ2FsZW5kYXIoZm9ybWF0dGVkTW9udGgsIHtcbiAgICAgICAgICBpc0Rpc2FibGVkOiBzdGF0ZS5pc0Rpc2FibGVkLFxuICAgICAgICAgIG1pbkRhdGU6IHN0YXRlLm1pbkRhdGUsXG4gICAgICAgICAgbWF4RGF0ZTogc3RhdGUubWF4RGF0ZSxcbiAgICAgICAgICBkYXlzRGlzYWJsZWQ6IHN0YXRlLmRheXNEaXNhYmxlZCxcbiAgICAgICAgICBkYXRlc0Rpc2FibGVkOiBzdGF0ZS5kYXRlc0Rpc2FibGVkLFxuICAgICAgICAgIGRhdGVzRW5hYmxlZDogc3RhdGUuZGF0ZXNFbmFibGVkLFxuICAgICAgICAgIGhvdmVyZWREYXRlOiBzdGF0ZS5ob3ZlcmVkRGF0ZSxcbiAgICAgICAgICBzZWxlY3RlZERhdGU6IHN0YXRlLnNlbGVjdGVkRGF0ZSxcbiAgICAgICAgICBzZWxlY3RlZFJhbmdlOiBzdGF0ZS5zZWxlY3RlZFJhbmdlLFxuICAgICAgICAgIGRpc3BsYXlNb250aHMsXG4gICAgICAgICAgZGF0ZUN1c3RvbUNsYXNzZXM6IHN0YXRlLmRhdGVDdXN0b21DbGFzc2VzLFxuICAgICAgICAgIGRhdGVUb29sdGlwVGV4dHM6IHN0YXRlLmRhdGVUb29sdGlwVGV4dHMsXG4gICAgICAgICAgbW9udGhJbmRleFxuICAgICAgICB9KVxuICAgICk7XG5cbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgc3RhdGUsIHsgZmxhZ2dlZE1vbnRocyB9KTtcbiAgfVxuXG4gIGlmIChzdGF0ZS52aWV3Lm1vZGUgPT09ICdtb250aCcpIHtcbiAgICBjb25zdCBmbGFnZ2VkTW9udGhzQ2FsZW5kYXIgPSBzdGF0ZS5tb250aHNDYWxlbmRhci5tYXAoXG4gICAgICAoZm9ybWF0dGVkTW9udGgsIG1vbnRoSW5kZXgpID0+XG4gICAgICAgIGZsYWdNb250aHNDYWxlbmRhcihmb3JtYXR0ZWRNb250aCwge1xuICAgICAgICAgIGlzRGlzYWJsZWQ6IHN0YXRlLmlzRGlzYWJsZWQsXG4gICAgICAgICAgbWluRGF0ZTogc3RhdGUubWluRGF0ZSxcbiAgICAgICAgICBtYXhEYXRlOiBzdGF0ZS5tYXhEYXRlLFxuICAgICAgICAgIGhvdmVyZWRNb250aDogc3RhdGUuaG92ZXJlZE1vbnRoLFxuICAgICAgICAgIHNlbGVjdGVkRGF0ZTogc3RhdGUuc2VsZWN0ZWREYXRlLFxuICAgICAgICAgIHNlbGVjdGVkUmFuZ2U6IHN0YXRlLnNlbGVjdGVkUmFuZ2UsXG4gICAgICAgICAgZGlzcGxheU1vbnRocyxcbiAgICAgICAgICBtb250aEluZGV4XG4gICAgICAgIH0pXG4gICAgKTtcblxuICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBzdGF0ZSwgeyBmbGFnZ2VkTW9udGhzQ2FsZW5kYXIgfSk7XG4gIH1cblxuICBpZiAoc3RhdGUudmlldy5tb2RlID09PSAneWVhcicpIHtcbiAgICBjb25zdCB5ZWFyc0NhbGVuZGFyRmxhZ2dlZCA9IHN0YXRlLnllYXJzQ2FsZW5kYXJNb2RlbC5tYXAoXG4gICAgICAoZm9ybWF0dGVkTW9udGgsIHllYXJJbmRleCkgPT5cbiAgICAgICAgZmxhZ1llYXJzQ2FsZW5kYXIoZm9ybWF0dGVkTW9udGgsIHtcbiAgICAgICAgICBpc0Rpc2FibGVkOiBzdGF0ZS5pc0Rpc2FibGVkLFxuICAgICAgICAgIG1pbkRhdGU6IHN0YXRlLm1pbkRhdGUsXG4gICAgICAgICAgbWF4RGF0ZTogc3RhdGUubWF4RGF0ZSxcbiAgICAgICAgICBob3ZlcmVkWWVhcjogc3RhdGUuaG92ZXJlZFllYXIsXG4gICAgICAgICAgc2VsZWN0ZWREYXRlOiBzdGF0ZS5zZWxlY3RlZERhdGUsXG4gICAgICAgICAgc2VsZWN0ZWRSYW5nZTogc3RhdGUuc2VsZWN0ZWRSYW5nZSxcbiAgICAgICAgICBkaXNwbGF5TW9udGhzLFxuICAgICAgICAgIHllYXJJbmRleFxuICAgICAgICB9KVxuICAgICk7XG5cbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgc3RhdGUsIHsgeWVhcnNDYWxlbmRhckZsYWdnZWQgfSk7XG4gIH1cblxuICByZXR1cm4gc3RhdGU7XG59XG5cbmZ1bmN0aW9uIG5hdmlnYXRlT2Zmc2V0UmVkdWNlcihzdGF0ZTogTWlzRGF0ZVBpY2tlclN0YXRlLCBhY3Rpb246IEFjdGlvbik6IE1pc0RhdGVQaWNrZXJTdGF0ZSB7XG4gIGNvbnN0IG5ld1N0YXRlID0ge1xuICAgIHZpZXc6IHtcbiAgICAgIG1vZGU6IHN0YXRlLnZpZXcubW9kZSxcbiAgICAgIGRhdGU6IHNoaWZ0Vmlld0RhdGUoc3RhdGUsIGFjdGlvbilcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIHN0YXRlLCBuZXdTdGF0ZSk7XG59XG5cbmZ1bmN0aW9uIHNoaWZ0Vmlld0RhdGUoc3RhdGU6IE1pc0RhdGVQaWNrZXJTdGF0ZSwgYWN0aW9uOiBBY3Rpb24pOiBEYXRlIHtcbiAgaWYgKHN0YXRlLnZpZXcubW9kZSA9PT0gJ3llYXInICYmIHN0YXRlLm1pbk1vZGUgPT09ICd5ZWFyJykge1xuICAgIGNvbnN0IGluaXRpYWxEYXRlID0gZ2V0WWVhcnNDYWxlbmRhckluaXRpYWxEYXRlKHN0YXRlLCAwKTtcbiAgICBjb25zdCBtaWRkbGVEYXRlID0gc2hpZnREYXRlKGluaXRpYWxEYXRlLCB7IHllYXI6IC1pbml0aWFsWWVhclNoaWZ0IH0pO1xuXG4gICAgcmV0dXJuIHNoaWZ0RGF0ZShtaWRkbGVEYXRlLCBhY3Rpb24ucGF5bG9hZCk7XG4gIH1cblxuICByZXR1cm4gc2hpZnREYXRlKHN0YXJ0T2Yoc3RhdGUudmlldy5kYXRlLCAnbW9udGgnKSwgYWN0aW9uLnBheWxvYWQpO1xufVxuXG5mdW5jdGlvbiBnZXRGb3JtYXRPcHRpb25zKHN0YXRlOiBNaXNEYXRlUGlja2VyU3RhdGUpOiBEYXRlUGlja2VyRm9ybWF0T3B0aW9ucyB7XG4gIHJldHVybiB7XG4gICAgbG9jYWxlOiBzdGF0ZS5sb2NhbGUsXG5cbiAgICBtb250aFRpdGxlOiBzdGF0ZS5tb250aFRpdGxlLFxuICAgIHllYXJUaXRsZTogc3RhdGUueWVhclRpdGxlLFxuXG4gICAgZGF5TGFiZWw6IHN0YXRlLmRheUxhYmVsLFxuICAgIG1vbnRoTGFiZWw6IHN0YXRlLm1vbnRoTGFiZWwsXG4gICAgeWVhckxhYmVsOiBzdGF0ZS55ZWFyTGFiZWwsXG5cbiAgICB3ZWVrTnVtYmVyczogc3RhdGUud2Vla051bWJlcnNcbiAgfTtcbn1cblxuLyoqXG4gKiBpZiB2aWV3IGRhdGUgaXMgcHJvdmlkZWQgKGJzVmFsdWV8bmdNb2RlbCkgaXQgc2hvdWxkIGJlIHNob3duXG4gKiBpZiB2aWV3IGRhdGUgaXMgbm90IHByb3ZpZGVyOlxuICogaWYgbWluRGF0ZT5jdXJyZW50RGF0ZSAoZGVmYXVsdCB2aWV3IHZhbHVlKSwgc2hvdyBtaW5EYXRlXG4gKiBpZiBtYXhEYXRlPGN1cnJlbnREYXRlKGRlZmF1bHQgdmlldyB2YWx1ZSkgc2hvdyBtYXhEYXRlXG4gKi9cbmZ1bmN0aW9uIGdldFZpZXdEYXRlKHZpZXdEYXRlOiBEYXRlIHwgRGF0ZVtdLCBtaW5EYXRlOiBEYXRlLCBtYXhEYXRlOiBEYXRlKSB7XG4gIGNvbnN0IF9kYXRlID0gQXJyYXkuaXNBcnJheSh2aWV3RGF0ZSkgPyB2aWV3RGF0ZVswXSA6IHZpZXdEYXRlO1xuXG4gIGlmIChtaW5EYXRlICYmIGlzQWZ0ZXIobWluRGF0ZSwgX2RhdGUsICdkYXknKSkge1xuICAgIHJldHVybiBtaW5EYXRlO1xuICB9XG5cbiAgaWYgKG1heERhdGUgJiYgaXNCZWZvcmUobWF4RGF0ZSwgX2RhdGUsICdkYXknKSkge1xuICAgIHJldHVybiBtYXhEYXRlO1xuICB9XG5cbiAgcmV0dXJuIF9kYXRlO1xufVxuXG5mdW5jdGlvbiBpc0Rpc3BsYXlPbmVNb250aCh2aWV3RGF0ZTogRGF0ZSwgbWluRGF0ZTogRGF0ZSwgbWF4RGF0ZTogRGF0ZSkge1xuICBpZiAobWF4RGF0ZSAmJiBpc1NhbWUobWF4RGF0ZSwgdmlld0RhdGUsICdkYXknKSkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaWYgKG1pbkRhdGUgJiYgbWF4RGF0ZSAmJiAgbWluRGF0ZS5nZXRNb250aCgpID09PSBtYXhEYXRlLmdldE1vbnRoKCkpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHJldHVybiBmYWxzZTtcbn1cbiJdfQ==
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { defaultMonthOptions } from './_defaults';
|
|
2
|
-
import { MisDatePickerConfig } from '../bs-datepicker.config';
|
|
3
|
-
export class MisDatePickerState {
|
|
4
|
-
}
|
|
5
|
-
const _initialView = { date: new Date(), mode: 'day' };
|
|
6
|
-
export const initialDatePickerState = Object.assign(new MisDatePickerConfig(), {
|
|
7
|
-
locale: 'en',
|
|
8
|
-
view: _initialView,
|
|
9
|
-
selectedRange: [],
|
|
10
|
-
monthViewOptions: defaultMonthOptions
|
|
11
|
-
});
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF0ZXBpY2tlci5zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVwaWNrZXIvcmVkdWNlci9icy1kYXRlcGlja2VyLnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVlBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNsRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQU85RCxNQUFNLE9BQU8sa0JBQWtCO0NBMkQ5QjtBQUVELE1BQU0sWUFBWSxHQUEyQixFQUFFLElBQUksRUFBRSxJQUFJLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQztBQUUvRSxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBdUIsTUFBTSxDQUFDLE1BQU0sQ0FDckUsSUFBSSxtQkFBbUIsRUFBRSxFQUN6QjtJQUNFLE1BQU0sRUFBRSxJQUFJO0lBQ1osSUFBSSxFQUFFLFlBQVk7SUFDbEIsYUFBYSxFQUFFLEVBQUU7SUFDakIsZ0JBQWdCLEVBQUUsbUJBQW1CO0NBQ3RDLENBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIE1pc0RhdGVQaWNrZXJWaWV3TW9kZSxcbiAgRGF0ZVBpY2tlckZvcm1hdE9wdGlvbnMsXG4gIERhdGVQaWNrZXJSZW5kZXJPcHRpb25zLFxuICBEYXRlUGlja2VyRGF0ZUN1c3RvbUNsYXNzZXMsXG4gIERhdGVQaWNrZXJEYXRlVG9vbHRpcFRleHQsXG4gIERheXNDYWxlbmRhck1vZGVsLFxuICBEYXlzQ2FsZW5kYXJWaWV3TW9kZWwsXG4gIE1vbnRoc0NhbGVuZGFyVmlld01vZGVsLFxuICBNb250aFZpZXdPcHRpb25zLFxuICBZZWFyc0NhbGVuZGFyVmlld01vZGVsXG59IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgeyBkZWZhdWx0TW9udGhPcHRpb25zIH0gZnJvbSAnLi9fZGVmYXVsdHMnO1xuaW1wb3J0IHsgTWlzRGF0ZVBpY2tlckNvbmZpZyB9IGZyb20gJy4uL2JzLWRhdGVwaWNrZXIuY29uZmlnJztcblxuZXhwb3J0IGludGVyZmFjZSBNaXNEYXRlUGlja2VyVmlld1N0YXRlIHtcbiAgZGF0ZTogRGF0ZTtcbiAgbW9kZTogTWlzRGF0ZVBpY2tlclZpZXdNb2RlO1xufVxuXG5leHBvcnQgY2xhc3MgTWlzRGF0ZVBpY2tlclN0YXRlXG4gIGltcGxlbWVudHMgRGF0ZVBpY2tlclJlbmRlck9wdGlvbnMsIERhdGVQaWNrZXJGb3JtYXRPcHRpb25zIHtcbiAgLy8gZGF0ZSBwaWNrZXJcbiAgc2VsZWN0ZWREYXRlPzogRGF0ZTtcbiAgLy8gZGF0ZXJhbmdlIHBpY2tlclxuICBzZWxlY3RlZFJhbmdlPzogRGF0ZVtdO1xuXG4gIC8vIGluaXRpYWwgZGF0ZSBvZiBjYWxlbmRhciwgdG9kYXkgYnkgZGVmYXVsdFxuICB2aWV3OiBNaXNEYXRlUGlja2VyVmlld1N0YXRlO1xuXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvLyBib3VuZHNcbiAgbWluRGF0ZT86IERhdGU7XG4gIG1heERhdGU/OiBEYXRlO1xuICBkYXlzRGlzYWJsZWQ/OiBudW1iZXJbXTtcbiAgZGF0ZXNEaXNhYmxlZD86IERhdGVbXTtcbiAgZGF0ZXNFbmFibGVkPzogRGF0ZVtdO1xuICBtaW5Nb2RlPzogTWlzRGF0ZVBpY2tlclZpZXdNb2RlO1xuICBkYXRlQ3VzdG9tQ2xhc3Nlcz86IERhdGVQaWNrZXJEYXRlQ3VzdG9tQ2xhc3Nlc1tdO1xuICBkYXRlVG9vbHRpcFRleHRzPzogRGF0ZVBpY2tlckRhdGVUb29sdGlwVGV4dFtdO1xuXG4gIGhvdmVyZWREYXRlPzogRGF0ZTtcbiAgaG92ZXJlZE1vbnRoPzogRGF0ZTtcbiAgaG92ZXJlZFllYXI/OiBEYXRlO1xuXG4gIC8vIGRheXMgY2FsZW5kYXJcbiAgbW9udGhzTW9kZWw/OiBEYXlzQ2FsZW5kYXJNb2RlbFtdO1xuICBmb3JtYXR0ZWRNb250aHM/OiBEYXlzQ2FsZW5kYXJWaWV3TW9kZWxbXTtcbiAgZmxhZ2dlZE1vbnRocz86IERheXNDYWxlbmRhclZpZXdNb2RlbFtdO1xuICBzZWxlY3RGcm9tT3RoZXJNb250aD86IGJvb2xlYW47XG4gIHNob3dQcmV2aW91c01vbnRoPzogYm9vbGVhbjsgLy8gZGF0ZVJhbmdlUGlja2VyIG9ubHk7XG4gIGRpc3BsYXlPbmVNb250aFJhbmdlPzogYm9vbGVhbjsgLy8gZGF0ZVJhbmdlUGlja2VyIG9ubHk7XG5cbiAgLy8gbW9udGhzIGNhbGVuZGFyXG4gIG1vbnRoc0NhbGVuZGFyPzogTW9udGhzQ2FsZW5kYXJWaWV3TW9kZWxbXTtcbiAgZmxhZ2dlZE1vbnRoc0NhbGVuZGFyPzogTW9udGhzQ2FsZW5kYXJWaWV3TW9kZWxbXTtcblxuICAvLyB5ZWFycyBjYWxlbmRhclxuICB5ZWFyc0NhbGVuZGFyTW9kZWw/OiBZZWFyc0NhbGVuZGFyVmlld01vZGVsW107XG4gIHllYXJzQ2FsZW5kYXJGbGFnZ2VkPzogWWVhcnNDYWxlbmRhclZpZXdNb2RlbFtdO1xuXG4gIC8vIG9wdGlvbnNcbiAgbW9udGhWaWV3T3B0aW9uczogTW9udGhWaWV3T3B0aW9ucztcblxuICAvLyBEYXRlUGlja2VyUmVuZGVyT3B0aW9uc1xuICBzaG93V2Vla051bWJlcnM/OiBib29sZWFuO1xuICBkaXNwbGF5TW9udGhzPzogbnVtYmVyO1xuXG4gIC8vIERhdGVQaWNrZXJGb3JtYXRPcHRpb25zXG4gIGxvY2FsZTogc3RyaW5nO1xuXG4gIG1vbnRoVGl0bGU6IHN0cmluZztcbiAgeWVhclRpdGxlOiBzdHJpbmc7XG5cbiAgZGF5TGFiZWw6IHN0cmluZztcbiAgbW9udGhMYWJlbDogc3RyaW5nO1xuICB5ZWFyTGFiZWw6IHN0cmluZztcblxuICB3ZWVrTnVtYmVyczogc3RyaW5nO1xufVxuXG5jb25zdCBfaW5pdGlhbFZpZXc6IE1pc0RhdGVQaWNrZXJWaWV3U3RhdGUgPSB7IGRhdGU6IG5ldyBEYXRlKCksIG1vZGU6ICdkYXknIH07XG5cbmV4cG9ydCBjb25zdCBpbml0aWFsRGF0ZVBpY2tlclN0YXRlOiBNaXNEYXRlUGlja2VyU3RhdGUgPSBPYmplY3QuYXNzaWduKFxuICBuZXcgTWlzRGF0ZVBpY2tlckNvbmZpZygpLFxuICB7XG4gICAgbG9jYWxlOiAnZW4nLFxuICAgIHZpZXc6IF9pbml0aWFsVmlldyxcbiAgICBzZWxlY3RlZFJhbmdlOiBbXSxcbiAgICBtb250aFZpZXdPcHRpb25zOiBkZWZhdWx0TW9udGhPcHRpb25zXG4gIH1cbik7XG4iXX0=
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { MiniStore, MiniState } from '../sub-components/mini-ngrx';
|
|
3
|
-
import { initialDatePickerState } from './bs-datepicker.state';
|
|
4
|
-
import { BehaviorSubject } from 'rxjs';
|
|
5
|
-
import { misDatePickerReducer } from './bs-datepicker.reducer';
|
|
6
|
-
export class MisDatePickerStore extends MiniStore {
|
|
7
|
-
constructor() {
|
|
8
|
-
const _dispatcher = new BehaviorSubject({
|
|
9
|
-
type: '[datepicker] dispatcher init'
|
|
10
|
-
});
|
|
11
|
-
const state = new MiniState(initialDatePickerState, _dispatcher, misDatePickerReducer);
|
|
12
|
-
super(_dispatcher, misDatePickerReducer, state);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
MisDatePickerStore.decorators = [
|
|
16
|
-
{ type: Injectable }
|
|
17
|
-
];
|
|
18
|
-
MisDatePickerStore.ctorParameters = () => [];
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF0ZXBpY2tlci5zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVwaWNrZXIvcmVkdWNlci9icy1kYXRlcGlja2VyLnN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBVSxTQUFTLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRSxPQUFPLEVBQXNCLHNCQUFzQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUcvRCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsU0FBNkI7SUFDbkU7UUFDRSxNQUFNLFdBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBUztZQUM5QyxJQUFJLEVBQUUsOEJBQThCO1NBQ3JDLENBQUMsQ0FBQztRQUNILE1BQU0sS0FBSyxHQUFHLElBQUksU0FBUyxDQUN6QixzQkFBc0IsRUFDdEIsV0FBVyxFQUNYLG9CQUFvQixDQUNyQixDQUFDO1FBQ0YsS0FBSyxDQUFDLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNsRCxDQUFDOzs7WUFaRixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWluaVN0b3JlLCBBY3Rpb24sIE1pbmlTdGF0ZSB9IGZyb20gJy4uL3N1Yi1jb21wb25lbnRzL21pbmktbmdyeCc7XG5pbXBvcnQgeyBNaXNEYXRlUGlja2VyU3RhdGUsIGluaXRpYWxEYXRlUGlja2VyU3RhdGUgfSBmcm9tICcuL2JzLWRhdGVwaWNrZXIuc3RhdGUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtaXNEYXRlUGlja2VyUmVkdWNlciB9IGZyb20gJy4vYnMtZGF0ZXBpY2tlci5yZWR1Y2VyJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1pc0RhdGVQaWNrZXJTdG9yZSBleHRlbmRzIE1pbmlTdG9yZTxNaXNEYXRlUGlja2VyU3RhdGU+IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29uc3QgX2Rpc3BhdGNoZXIgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFjdGlvbj4oe1xuICAgICAgdHlwZTogJ1tkYXRlcGlja2VyXSBkaXNwYXRjaGVyIGluaXQnXG4gICAgfSk7XG4gICAgY29uc3Qgc3RhdGUgPSBuZXcgTWluaVN0YXRlPE1pc0RhdGVQaWNrZXJTdGF0ZT4oXG4gICAgICBpbml0aWFsRGF0ZVBpY2tlclN0YXRlLFxuICAgICAgX2Rpc3BhdGNoZXIsXG4gICAgICBtaXNEYXRlUGlja2VyUmVkdWNlclxuICAgICk7XG4gICAgc3VwZXIoX2Rpc3BhdGNoZXIsIG1pc0RhdGVQaWNrZXJSZWR1Y2VyLCBzdGF0ZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { getParsingFlags } from './parsing-flags';
|
|
2
|
-
import { DATE, HOUR, MILLISECOND, MINUTE, MONTH, SECOND, WEEK, WEEKDAY, YEAR } from '../units/constants';
|
|
3
|
-
import { daysInMonth } from '../units/month';
|
|
4
|
-
export function checkOverflow(config) {
|
|
5
|
-
let overflow;
|
|
6
|
-
const a = config._a;
|
|
7
|
-
if (a && getParsingFlags(config).overflow === -2) {
|
|
8
|
-
// todo: fix this sh*t
|
|
9
|
-
overflow =
|
|
10
|
-
a[MONTH] < 0 || a[MONTH] > 11 ? MONTH :
|
|
11
|
-
a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) ? DATE :
|
|
12
|
-
a[HOUR] < 0 || a[HOUR] > 24 || (a[HOUR] === 24 && (a[MINUTE] !== 0 || a[SECOND] !== 0 || a[MILLISECOND] !== 0)) ? HOUR :
|
|
13
|
-
a[MINUTE] < 0 || a[MINUTE] > 59 ? MINUTE :
|
|
14
|
-
a[SECOND] < 0 || a[SECOND] > 59 ? SECOND :
|
|
15
|
-
a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ? MILLISECOND :
|
|
16
|
-
-1;
|
|
17
|
-
if (getParsingFlags(config)._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) {
|
|
18
|
-
overflow = DATE;
|
|
19
|
-
}
|
|
20
|
-
if (getParsingFlags(config)._overflowWeeks && overflow === -1) {
|
|
21
|
-
overflow = WEEK;
|
|
22
|
-
}
|
|
23
|
-
if (getParsingFlags(config)._overflowWeekday && overflow === -1) {
|
|
24
|
-
overflow = WEEKDAY;
|
|
25
|
-
}
|
|
26
|
-
getParsingFlags(config).overflow = overflow;
|
|
27
|
-
}
|
|
28
|
-
return config;
|
|
29
|
-
}
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2stb3ZlcmZsb3cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL3N1Yi1jb21wb25lbnRzL2Nocm9ub3MvY3JlYXRlL2NoZWNrLW92ZXJmbG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN6RyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHN0MsTUFBTSxVQUFVLGFBQWEsQ0FBQyxNQUF5QjtJQUNyRCxJQUFJLFFBQVEsQ0FBQztJQUNiLE1BQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7SUFFcEIsSUFBSSxDQUFDLElBQUksZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsS0FBSyxDQUFDLENBQUMsRUFBRTtRQUNoRCxzQkFBc0I7UUFDdEIsUUFBUTtZQUNOLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3JDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUM5RCxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzt3QkFDdEgsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQzs0QkFDeEMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQ0FDeEMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztvQ0FDeEQsQ0FBQyxDQUFDLENBQUM7UUFFakIsSUFBSSxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsa0JBQWtCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUMsRUFBRTtZQUN0RixRQUFRLEdBQUcsSUFBSSxDQUFDO1NBQ2pCO1FBQ0QsSUFBSSxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsY0FBYyxJQUFJLFFBQVEsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUM3RCxRQUFRLEdBQUcsSUFBSSxDQUFDO1NBQ2pCO1FBQ0QsSUFBSSxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsZ0JBQWdCLElBQUksUUFBUSxLQUFLLENBQUMsQ0FBQyxFQUFFO1lBQy9ELFFBQVEsR0FBRyxPQUFPLENBQUM7U0FDcEI7UUFFRCxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztLQUM3QztJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRQYXJzaW5nRmxhZ3MgfSBmcm9tICcuL3BhcnNpbmctZmxhZ3MnO1xuaW1wb3J0IHsgREFURSwgSE9VUiwgTUlMTElTRUNPTkQsIE1JTlVURSwgTU9OVEgsIFNFQ09ORCwgV0VFSywgV0VFS0RBWSwgWUVBUiB9IGZyb20gJy4uL3VuaXRzL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBkYXlzSW5Nb250aCB9IGZyb20gJy4uL3VuaXRzL21vbnRoJztcbmltcG9ydCB7IERhdGVQYXJzaW5nQ29uZmlnIH0gZnJvbSAnLi9wYXJzaW5nLnR5cGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrT3ZlcmZsb3coY29uZmlnOiBEYXRlUGFyc2luZ0NvbmZpZyk6IERhdGVQYXJzaW5nQ29uZmlnIHtcbiAgbGV0IG92ZXJmbG93O1xuICBjb25zdCBhID0gY29uZmlnLl9hO1xuXG4gIGlmIChhICYmIGdldFBhcnNpbmdGbGFncyhjb25maWcpLm92ZXJmbG93ID09PSAtMikge1xuICAgIC8vIHRvZG86IGZpeCB0aGlzIHNoKnRcbiAgICBvdmVyZmxvdyA9XG4gICAgICBhW01PTlRIXSA8IDAgfHwgYVtNT05USF0gPiAxMSA/IE1PTlRIIDpcbiAgICAgICAgYVtEQVRFXSA8IDEgfHwgYVtEQVRFXSA+IGRheXNJbk1vbnRoKGFbWUVBUl0sIGFbTU9OVEhdKSA/IERBVEUgOlxuICAgICAgICAgIGFbSE9VUl0gPCAwIHx8IGFbSE9VUl0gPiAyNCB8fCAoYVtIT1VSXSA9PT0gMjQgJiYgKGFbTUlOVVRFXSAhPT0gMCB8fCBhW1NFQ09ORF0gIT09IDAgfHwgYVtNSUxMSVNFQ09ORF0gIT09IDApKSA/IEhPVVIgOlxuICAgICAgICAgICAgYVtNSU5VVEVdIDwgMCB8fCBhW01JTlVURV0gPiA1OSA/IE1JTlVURSA6XG4gICAgICAgICAgICAgIGFbU0VDT05EXSA8IDAgfHwgYVtTRUNPTkRdID4gNTkgPyBTRUNPTkQgOlxuICAgICAgICAgICAgICAgIGFbTUlMTElTRUNPTkRdIDwgMCB8fCBhW01JTExJU0VDT05EXSA+IDk5OSA/IE1JTExJU0VDT05EIDpcbiAgICAgICAgICAgICAgICAgIC0xO1xuXG4gICAgaWYgKGdldFBhcnNpbmdGbGFncyhjb25maWcpLl9vdmVyZmxvd0RheU9mWWVhciAmJiAob3ZlcmZsb3cgPCBZRUFSIHx8IG92ZXJmbG93ID4gREFURSkpIHtcbiAgICAgIG92ZXJmbG93ID0gREFURTtcbiAgICB9XG4gICAgaWYgKGdldFBhcnNpbmdGbGFncyhjb25maWcpLl9vdmVyZmxvd1dlZWtzICYmIG92ZXJmbG93ID09PSAtMSkge1xuICAgICAgb3ZlcmZsb3cgPSBXRUVLO1xuICAgIH1cbiAgICBpZiAoZ2V0UGFyc2luZ0ZsYWdzKGNvbmZpZykuX292ZXJmbG93V2Vla2RheSAmJiBvdmVyZmxvdyA9PT0gLTEpIHtcbiAgICAgIG92ZXJmbG93ID0gV0VFS0RBWTtcbiAgICB9XG5cbiAgICBnZXRQYXJzaW5nRmxhZ3MoY29uZmlnKS5vdmVyZmxvdyA9IG92ZXJmbG93O1xuICB9XG5cbiAgcmV0dXJuIGNvbmZpZztcbn1cblxuIl19
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
// fastest way to clone date
|
|
2
|
-
// https://jsperf.com/clone-date-object2
|
|
3
|
-
export function cloneDate(date) {
|
|
4
|
-
return new Date(date.getTime());
|
|
5
|
-
}
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL3N1Yi1jb21wb25lbnRzL2Nocm9ub3MvY3JlYXRlL2Nsb25lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDRCQUE0QjtBQUM1Qix3Q0FBd0M7QUFDeEMsTUFBTSxVQUFVLFNBQVMsQ0FBQyxJQUFVO0lBQ2xDLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7QUFDbEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGZhc3Rlc3Qgd2F5IHRvIGNsb25lIGRhdGVcbi8vIGh0dHBzOi8vanNwZXJmLmNvbS9jbG9uZS1kYXRlLW9iamVjdDJcbmV4cG9ydCBmdW5jdGlvbiBjbG9uZURhdGUoZGF0ZTogRGF0ZSk6IERhdGUge1xuICByZXR1cm4gbmV3IERhdGUoZGF0ZS5nZXRUaW1lKCkpO1xufVxuIl19
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
export function createUTCDate(y, m, d) {
|
|
2
|
-
const date = new Date(Date.UTC.apply(null, arguments));
|
|
3
|
-
// the Date.UTC function remaps years 0-99 to 1900-1999
|
|
4
|
-
if (y < 100 && y >= 0 && isFinite(date.getUTCFullYear())) {
|
|
5
|
-
date.setUTCFullYear(y);
|
|
6
|
-
}
|
|
7
|
-
return date;
|
|
8
|
-
}
|
|
9
|
-
export function createDate(y, m = 0, d = 1, h = 0, M = 0, s = 0, ms = 0) {
|
|
10
|
-
const date = new Date(y, m, d, h, M, s, ms);
|
|
11
|
-
// the date constructor remaps years 0-99 to 1900-1999
|
|
12
|
-
if (y < 100 && y >= 0 && isFinite(date.getFullYear())) {
|
|
13
|
-
date.setFullYear(y);
|
|
14
|
-
}
|
|
15
|
-
return date;
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1mcm9tLWFycmF5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9zdWItY29tcG9uZW50cy9jaHJvbm9zL2NyZWF0ZS9kYXRlLWZyb20tYXJyYXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLGFBQWEsQ0FBQyxDQUFVLEVBQ1YsQ0FBVSxFQUNWLENBQVU7SUFDdEMsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFFdkQsdURBQXVEO0lBQ3ZELElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsRUFBRTtRQUN4RCxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ3hCO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQsTUFBTSxVQUFVLFVBQVUsQ0FBQyxDQUFVLEVBQ1YsQ0FBQyxHQUFHLENBQUMsRUFDTCxDQUFDLEdBQUcsQ0FBQyxFQUNMLENBQUMsR0FBRyxDQUFDLEVBQ0wsQ0FBQyxHQUFHLENBQUMsRUFDTCxDQUFDLEdBQUcsQ0FBQyxFQUNMLEVBQUUsR0FBRyxDQUFDO0lBQy9CLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRTVDLHNEQUFzRDtJQUN0RCxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLEVBQUU7UUFDckQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNyQjtJQUVELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBjcmVhdGVVVENEYXRlKHk/OiBudW1iZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtPzogbnVtYmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD86IG51bWJlcik6IERhdGUge1xuICBjb25zdCBkYXRlID0gbmV3IERhdGUoRGF0ZS5VVEMuYXBwbHkobnVsbCwgYXJndW1lbnRzKSk7XG5cbiAgLy8gdGhlIERhdGUuVVRDIGZ1bmN0aW9uIHJlbWFwcyB5ZWFycyAwLTk5IHRvIDE5MDAtMTk5OVxuICBpZiAoeSA8IDEwMCAmJiB5ID49IDAgJiYgaXNGaW5pdGUoZGF0ZS5nZXRVVENGdWxsWWVhcigpKSkge1xuICAgIGRhdGUuc2V0VVRDRnVsbFllYXIoeSk7XG4gIH1cblxuICByZXR1cm4gZGF0ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZURhdGUoeT86IG51bWJlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIG0gPSAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgZCA9IDEsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBoID0gMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIE0gPSAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgcyA9IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBtcyA9IDApOiBEYXRlIHtcbiAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKHksIG0sIGQsIGgsIE0sIHMsIG1zKTtcblxuICAvLyB0aGUgZGF0ZSBjb25zdHJ1Y3RvciByZW1hcHMgeWVhcnMgMC05OSB0byAxOTAwLTE5OTlcbiAgaWYgKHkgPCAxMDAgJiYgeSA+PSAwICYmIGlzRmluaXRlKGRhdGUuZ2V0RnVsbFllYXIoKSkpIHtcbiAgICBkYXRlLnNldEZ1bGxZZWFyKHkpO1xuICB9XG5cbiAgcmV0dXJuIGRhdGU7XG59XG4iXX0=
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
// tslint:disable:max-line-length
|
|
2
|
-
import { isArray, isDate, isNumber, isObject, isObjectEmpty, isString, isUndefined } from '../utils/type-checks';
|
|
3
|
-
import { getLocale } from '../locale/locales';
|
|
4
|
-
import { createInvalid, isValid } from './valid';
|
|
5
|
-
import { configFromStringAndArray } from './from-string-and-array';
|
|
6
|
-
import { configFromStringAndFormat } from './from-string-and-format';
|
|
7
|
-
import { cloneDate } from './clone';
|
|
8
|
-
import { configFromString } from './from-string';
|
|
9
|
-
import { configFromArray } from './from-array';
|
|
10
|
-
import { configFromObject } from './from-object';
|
|
11
|
-
import { checkOverflow } from './check-overflow';
|
|
12
|
-
function createFromConfig(config) {
|
|
13
|
-
const res = checkOverflow(prepareConfig(config));
|
|
14
|
-
// todo: remove, in moment.js it's never called cuz of moment constructor
|
|
15
|
-
res._d = new Date(res._d != null ? res._d.getTime() : NaN);
|
|
16
|
-
if (!isValid(Object.assign({}, res, { _isValid: null }))) {
|
|
17
|
-
res._d = new Date(NaN);
|
|
18
|
-
}
|
|
19
|
-
// todo: update offset
|
|
20
|
-
/*if (res._nextDay) {
|
|
21
|
-
// Adding is smart enough around DST
|
|
22
|
-
res._d = add(res._d, 1, 'day');
|
|
23
|
-
res._nextDay = undefined;
|
|
24
|
-
}*/
|
|
25
|
-
return res;
|
|
26
|
-
}
|
|
27
|
-
export function prepareConfig(config) {
|
|
28
|
-
let input = config._i;
|
|
29
|
-
const format = config._f;
|
|
30
|
-
config._locale = config._locale || getLocale(config._l);
|
|
31
|
-
if (input === null || (format === undefined && input === '')) {
|
|
32
|
-
return createInvalid(config, { nullInput: true });
|
|
33
|
-
}
|
|
34
|
-
if (isString(input)) {
|
|
35
|
-
config._i = input = config._locale.preparse(input, format);
|
|
36
|
-
}
|
|
37
|
-
if (isDate(input)) {
|
|
38
|
-
config._d = cloneDate(input);
|
|
39
|
-
return config;
|
|
40
|
-
}
|
|
41
|
-
// todo: add check for recursion
|
|
42
|
-
if (isArray(format)) {
|
|
43
|
-
configFromStringAndArray(config);
|
|
44
|
-
}
|
|
45
|
-
else if (format) {
|
|
46
|
-
configFromStringAndFormat(config);
|
|
47
|
-
}
|
|
48
|
-
else {
|
|
49
|
-
configFromInput(config);
|
|
50
|
-
}
|
|
51
|
-
if (!isValid(config)) {
|
|
52
|
-
config._d = null;
|
|
53
|
-
}
|
|
54
|
-
return config;
|
|
55
|
-
}
|
|
56
|
-
function configFromInput(config) {
|
|
57
|
-
const input = config._i;
|
|
58
|
-
if (isUndefined(input)) {
|
|
59
|
-
config._d = new Date();
|
|
60
|
-
}
|
|
61
|
-
else if (isDate(input)) {
|
|
62
|
-
config._d = cloneDate(input);
|
|
63
|
-
}
|
|
64
|
-
else if (isString(input)) {
|
|
65
|
-
configFromString(config);
|
|
66
|
-
}
|
|
67
|
-
else if (isArray(input) && input.length) {
|
|
68
|
-
const _arr = input.slice(0);
|
|
69
|
-
config._a = _arr.map(obj => isString(obj) ? parseInt(obj, 10) : obj);
|
|
70
|
-
configFromArray(config);
|
|
71
|
-
}
|
|
72
|
-
else if (isObject(input)) {
|
|
73
|
-
configFromObject(config);
|
|
74
|
-
}
|
|
75
|
-
else if (isNumber(input)) {
|
|
76
|
-
// from milliseconds
|
|
77
|
-
config._d = new Date(input);
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
80
|
-
// hooks.createFromInputFallback(config);
|
|
81
|
-
return createInvalid(config);
|
|
82
|
-
}
|
|
83
|
-
return config;
|
|
84
|
-
}
|
|
85
|
-
export function createLocalOrUTC(input, format, localeKey, strict, isUTC) {
|
|
86
|
-
const config = {};
|
|
87
|
-
let _input = input;
|
|
88
|
-
// params switch -> skip; test it well
|
|
89
|
-
// if (localeKey === true || localeKey === false) {
|
|
90
|
-
// strict = localeKey;
|
|
91
|
-
// localeKey = undefined;
|
|
92
|
-
// }
|
|
93
|
-
// todo: fail fast and return not valid date
|
|
94
|
-
if ((isObject(_input) && isObjectEmpty(_input)) || (isArray(_input) && _input.length === 0)) {
|
|
95
|
-
_input = undefined;
|
|
96
|
-
}
|
|
97
|
-
// object construction must be done this way.
|
|
98
|
-
// https://github.com/moment/moment/issues/1423
|
|
99
|
-
// config._isAMomentObject = true;
|
|
100
|
-
config._useUTC = config._isUTC = isUTC;
|
|
101
|
-
config._l = localeKey;
|
|
102
|
-
config._i = _input;
|
|
103
|
-
config._f = format;
|
|
104
|
-
config._strict = strict;
|
|
105
|
-
return createFromConfig(config);
|
|
106
|
-
}
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbS1hbnl0aGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVwaWNrZXIvc3ViLWNvbXBvbmVudHMvY2hyb25vcy9jcmVhdGUvZnJvbS1hbnl0aGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQ0FBaUM7QUFDakMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWpILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNqRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHakQsU0FBUyxnQkFBZ0IsQ0FBQyxNQUF5QjtJQUNqRCxNQUFNLEdBQUcsR0FBRyxhQUFhLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDakQseUVBQXlFO0lBQ3pFLEdBQUcsQ0FBQyxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxF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LGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ2xDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0c2xpbnQ6ZGlzYWJsZTptYXgtbGluZS1sZW5ndGhcbmltcG9ydCB7IGlzQXJyYXksIGlzRGF0ZSwgaXNOdW1iZXIsIGlzT2JqZWN0LCBpc09iamVjdEVtcHR5LCBpc1N0cmluZywgaXNVbmRlZmluZWQgfSBmcm9tICcuLi91dGlscy90eXBlLWNoZWNrcyc7XG5pbXBvcnQgeyBEYXRlUGFyc2luZ0NvbmZpZyB9IGZyb20gJy4vcGFyc2luZy50eXBlcyc7XG5pbXBvcnQgeyBnZXRMb2NhbGUgfSBmcm9tICcuLi9sb2NhbGUvbG9jYWxlcyc7XG5pbXBvcnQgeyBjcmVhdGVJbnZhbGlkLCBpc1ZhbGlkIH0gZnJvbSAnLi92YWxpZCc7XG5pbXBvcnQgeyBjb25maWdGcm9tU3RyaW5nQW5kQXJyYXkgfSBmcm9tICcuL2Zyb20tc3RyaW5nLWFuZC1hcnJheSc7XG5pbXBvcnQgeyBjb25maWdGcm9tU3RyaW5nQW5kRm9ybWF0IH0gZnJvbSAnLi9mcm9tLXN0cmluZy1hbmQtZm9ybWF0JztcbmltcG9ydCB7IGNsb25lRGF0ZSB9IGZyb20gJy4vY2xvbmUnO1xuaW1wb3J0IHsgY29uZmlnRnJvbVN0cmluZyB9IGZyb20gJy4vZnJvbS1zdHJpbmcnO1xuaW1wb3J0IHsgY29uZmlnRnJvbUFycmF5IH0gZnJvbSAnLi9mcm9tLWFycmF5JztcbmltcG9ydCB7IGNvbmZpZ0Zyb21PYmplY3QgfSBmcm9tICcuL2Zyb20tb2JqZWN0JztcbmltcG9ydCB7IGNoZWNrT3ZlcmZsb3cgfSBmcm9tICcuL2NoZWNrLW92ZXJmbG93JztcbmltcG9ydCB7IERhdGVJbnB1dCB9IGZyb20gJy4uL3Rlc3QvY2hhaW4nO1xuXG5mdW5jdGlvbiBjcmVhdGVGcm9tQ29uZmlnKGNvbmZpZzogRGF0ZVBhcnNpbmdDb25maWcpOiBEYXRlUGFyc2luZ0NvbmZpZyB7XG4gIGNvbnN0IHJlcyA9IGNoZWNrT3ZlcmZsb3cocHJlcGFyZUNvbmZpZyhjb25maWcpKTtcbiAgLy8gdG9kbzogcmVtb3ZlLCBpbiBtb21lbnQuanMgaXQncyBuZXZlciBjYWxsZWQgY3V6IG9mIG1vbWVudCBjb25zdHJ1Y3RvclxuICByZXMuX2QgPSBuZXcgRGF0ZShyZXMuX2QgIT0gbnVsbCA/IHJlcy5fZC5nZXRUaW1lKCkgOiBOYU4pO1xuICBpZiAoIWlzVmFsaWQoT2JqZWN0LmFzc2lnbih7fSwgcmVzLCB7X2lzVmFsaWQ6IG51bGx9KSkpIHtcbiAgICByZXMuX2QgPSBuZXcgRGF0ZShOYU4pO1xuICB9XG4gIC8vIHRvZG86IHVwZGF0ZSBvZmZzZXRcbiAgLyppZiAocmVzLl9uZXh0RGF5KSB7XG4gICAgLy8gQWRkaW5nIGlzIHNtYXJ0IGVub3VnaCBhcm91bmQgRFNUXG4gICAgcmVzLl9kID0gYWRkKHJlcy5fZCwgMSwgJ2RheScpO1xuICAgIHJlcy5fbmV4dERheSA9IHVuZGVmaW5lZDtcbiAgfSovXG5cbiAgcmV0dXJuIHJlcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByZXBhcmVDb25maWcoY29uZmlnOiBEYXRlUGFyc2luZ0NvbmZpZyk6IERhdGVQYXJzaW5nQ29uZmlnIHtcbiAgbGV0IGlucHV0ID0gY29uZmlnLl9pO1xuICBjb25zdCBmb3JtYXQgPSBjb25maWcuX2Y7XG5cbiAgY29uZmlnLl9sb2NhbGUgPSBjb25maWcuX2xvY2FsZSB8fCBnZXRMb2NhbGUoY29uZmlnLl9sKTtcblxuICBpZiAoaW5wdXQgPT09IG51bGwgfHwgKGZvcm1hdCA9PT0gdW5kZWZpbmVkICYmIGlucHV0ID09PSAnJykpIHtcbiAgICByZXR1cm4gY3JlYXRlSW52YWxpZChjb25maWcsIHsgbnVsbElucHV0OiB0cnVlIH0pO1xuICB9XG5cbiAgaWYgKGlzU3RyaW5nKGlucHV0KSkge1xuICAgIGNvbmZpZy5faSA9IGlucHV0ID0gY29uZmlnLl9sb2NhbGUucHJlcGFyc2UoaW5wdXQsIGZvcm1hdCk7XG4gIH1cblxuICBpZiAoaXNEYXRlKGlucHV0KSkge1xuICAgIGNvbmZpZy5fZCA9IGNsb25lRGF0ZShpbnB1dCk7XG5cbiAgICByZXR1cm4gY29uZmlnO1xuICB9XG5cbiAgLy8gdG9kbzogYWRkIGNoZWNrIGZvciByZWN1cnNpb25cblxuICBpZiAoaXNBcnJheShmb3JtYXQpKSB7XG4gICAgY29uZmlnRnJvbVN0cmluZ0FuZEFycmF5KGNvbmZpZyk7XG4gIH0gZWxzZSBpZiAoZm9ybWF0KSB7XG4gICAgY29uZmlnRnJvbVN0cmluZ0FuZEZvcm1hdChjb25maWcpO1xuICB9IGVsc2Uge1xuICAgIGNvbmZpZ0Zyb21JbnB1dChjb25maWcpO1xuICB9XG5cbiAgaWYgKCFpc1ZhbGlkKGNvbmZpZykpIHtcbiAgICBjb25maWcuX2QgPSBudWxsO1xuICB9XG5cbiAgcmV0dXJuIGNvbmZpZztcbn1cblxuZnVuY3Rpb24gY29uZmlnRnJvbUlucHV0KGNvbmZpZzogRGF0ZVBhcnNpbmdDb25maWcpOiBEYXRlUGFyc2luZ0NvbmZpZyB7XG4gIGNvbnN0IGlucHV0ID0gY29uZmlnLl9pO1xuICBpZiAoaXNVbmRlZmluZWQoaW5wdXQpKSB7XG4gICAgY29uZmlnLl9kID0gbmV3IERhdGUoKTtcbiAgfSBlbHNlIGlmIChpc0RhdGUoaW5wdXQpKSB7XG4gICAgY29uZmlnLl9kID0gY2xvbmVEYXRlKGlucHV0KTtcbiAgfSBlbHNlIGlmIChpc1N0cmluZyhpbnB1dCkpIHtcbiAgICBjb25maWdGcm9tU3RyaW5nKGNvbmZpZyk7XG4gIH0gZWxzZSBpZiAoaXNBcnJheTxzdHJpbmcgfCBudW1iZXI+KGlucHV0KSAmJiBpbnB1dC5sZW5ndGgpIHtcbiAgICBjb25zdCBfYXJyOiAoc3RyaW5nIHwgbnVtYmVyKVtdID0gaW5wdXQuc2xpY2UoMCk7XG4gICAgY29uZmlnLl9hID0gX2Fyci5tYXAob2JqID0+IGlzU3RyaW5nKG9iaikgPyBwYXJzZUludChvYmosIDEwKSA6IG9iaik7XG4gICAgY29uZmlnRnJvbUFycmF5KGNvbmZpZyk7XG4gIH0gZWxzZSBpZiAoaXNPYmplY3QoaW5wdXQpKSB7XG4gICAgY29uZmlnRnJvbU9iamVjdChjb25maWcpO1xuICB9IGVsc2UgaWYgKGlzTnVtYmVyKGlucHV0KSkge1xuICAgIC8vIGZyb20gbWlsbGlzZWNvbmRzXG4gICAgY29uZmlnLl9kID0gbmV3IERhdGUoaW5wdXQpO1xuICB9IGVsc2Uge1xuICAgIC8vICAgaG9va3MuY3JlYXRlRnJvbUlucHV0RmFsbGJhY2soY29uZmlnKTtcbiAgICByZXR1cm4gY3JlYXRlSW52YWxpZChjb25maWcpO1xuICB9XG5cbiAgcmV0dXJuIGNvbmZpZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUxvY2FsT3JVVEMoaW5wdXQ6IERhdGVJbnB1dCwgZm9ybWF0Pzogc3RyaW5nIHwgc3RyaW5nW10sIGxvY2FsZUtleT86IHN0cmluZywgc3RyaWN0PzogYm9vbGVhbiwgaXNVVEM/OiBib29sZWFuKTogRGF0ZVBhcnNpbmdDb25maWcge1xuICBjb25zdCBjb25maWc6IERhdGVQYXJzaW5nQ29uZmlnID0ge307XG4gIGxldCBfaW5wdXQgPSBpbnB1dDtcblxuICAvLyBwYXJhbXMgc3dpdGNoIC0+IHNraXA7IHRlc3QgaXQgd2VsbFxuICAvLyBpZiAobG9jYWxlS2V5ID09PSB0cnVlIHx8IGxvY2FsZUtleSA9PT0gZmFsc2UpIHtcbiAgLy8gICAgIHN0cmljdCA9IGxvY2FsZUtleTtcbiAgLy8gICAgIGxvY2FsZUtleSA9IHVuZGVmaW5lZDtcbiAgLy8gfVxuXG4gIC8vIHRvZG86IGZhaWwgZmFzdCBhbmQgcmV0dXJuIG5vdCB2YWxpZCBkYXRlXG4gIGlmICgoaXNPYmplY3QoX2lucHV0KSAmJiBpc09iamVjdEVtcHR5KF9pbnB1dCkpIHx8IChpc0FycmF5KF9pbnB1dCkgJiYgX2lucHV0Lmxlbmd0aCA9PT0gMCkpIHtcbiAgICBfaW5wdXQgPSB1bmRlZmluZWQ7XG4gIH1cbiAgLy8gb2JqZWN0IGNvbnN0cnVjdGlvbiBtdXN0IGJlIGRvbmUgdGhpcyB3YXkuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9tb21lbnQvbW9tZW50L2lzc3Vlcy8xNDIzXG4gIC8vIGNvbmZpZy5faXNBTW9tZW50T2JqZWN0ID0gdHJ1ZTtcbiAgY29uZmlnLl91c2VVVEMgPSBjb25maWcuX2lzVVRDID0gaXNVVEM7XG4gIGNvbmZpZy5fbCA9IGxvY2FsZUtleTtcbiAgY29uZmlnLl9pID0gX2lucHV0O1xuICBjb25maWcuX2YgPSBmb3JtYXQ7XG4gIGNvbmZpZy5fc3RyaWN0ID0gc3RyaWN0O1xuXG4gIHJldHVybiBjcmVhdGVGcm9tQ29uZmlnKGNvbmZpZyk7XG59XG4iXX0=
|