mis-crystal-design-system 14.0.55-test-v6 → 14.0.56-test
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/dropdown/dropdown.component.d.ts +2 -1
- package/dynamic-form/dynamic-form.component.d.ts +10 -2
- package/esm2020/async-search-dropdown/async-dropdown.component.mjs +1 -1
- package/esm2020/dropdown/dropdown.component.mjs +79 -50
- package/esm2020/dynamic-form/dynamic-form.component.mjs +471 -213
- package/fesm2015/mis-crystal-design-system-async-search-dropdown.mjs.map +1 -1
- package/fesm2015/mis-crystal-design-system-dropdown.mjs +87 -49
- package/fesm2015/mis-crystal-design-system-dropdown.mjs.map +1 -1
- package/fesm2015/mis-crystal-design-system-dynamic-form.mjs +524 -212
- package/fesm2015/mis-crystal-design-system-dynamic-form.mjs.map +1 -1
- package/fesm2020/mis-crystal-design-system-async-search-dropdown.mjs.map +1 -1
- package/fesm2020/mis-crystal-design-system-dropdown.mjs +78 -49
- package/fesm2020/mis-crystal-design-system-dropdown.mjs.map +1 -1
- package/fesm2020/mis-crystal-design-system-dynamic-form.mjs +470 -212
- package/fesm2020/mis-crystal-design-system-dynamic-form.mjs.map +1 -1
- package/package.json +1 -9
- package/datepicker/base/bs-datepicker-container.d.ts +0 -44
- package/datepicker/bs-datepicker-inline.component.d.ts +0 -64
- package/datepicker/bs-datepicker-inline.config.d.ts +0 -6
- package/datepicker/bs-datepicker-input.directive.d.ts +0 -33
- package/datepicker/bs-datepicker.component.d.ts +0 -126
- package/datepicker/bs-datepicker.config.d.ts +0 -143
- package/datepicker/bs-datepicker.module.d.ts +0 -29
- package/datepicker/bs-daterangepicker-inline.component.d.ts +0 -64
- package/datepicker/bs-daterangepicker-inline.config.d.ts +0 -9
- package/datepicker/bs-daterangepicker-input.directive.d.ts +0 -33
- package/datepicker/bs-daterangepicker.component.d.ts +0 -118
- package/datepicker/bs-daterangepicker.config.d.ts +0 -7
- package/datepicker/bs-locale.service.d.ts +0 -13
- package/datepicker/chronos/create/check-overflow.d.ts +0 -2
- package/datepicker/chronos/create/clone.d.ts +0 -1
- package/datepicker/chronos/create/date-from-array.d.ts +0 -2
- package/datepicker/chronos/create/from-anything.d.ts +0 -4
- package/datepicker/chronos/create/from-array.d.ts +0 -2
- package/datepicker/chronos/create/from-object.d.ts +0 -2
- package/datepicker/chronos/create/from-string-and-array.d.ts +0 -2
- package/datepicker/chronos/create/from-string-and-format.d.ts +0 -4
- package/datepicker/chronos/create/from-string.d.ts +0 -4
- package/datepicker/chronos/create/local.d.ts +0 -3
- package/datepicker/chronos/create/parsing-flags.d.ts +0 -2
- package/datepicker/chronos/create/parsing.types.d.ts +0 -64
- package/datepicker/chronos/create/valid.d.ts +0 -6
- package/datepicker/chronos/duration/bubble.d.ts +0 -4
- package/datepicker/chronos/duration/constructor.d.ts +0 -21
- package/datepicker/chronos/duration/create.d.ts +0 -8
- package/datepicker/chronos/duration/humanize.d.ts +0 -5
- package/datepicker/chronos/duration/valid.d.ts +0 -2
- package/datepicker/chronos/format/format.d.ts +0 -11
- package/datepicker/chronos/format.d.ts +0 -5
- package/datepicker/chronos/i18n/ar.d.ts +0 -2
- package/datepicker/chronos/i18n/bg.d.ts +0 -2
- package/datepicker/chronos/i18n/ca.d.ts +0 -2
- package/datepicker/chronos/i18n/cs.d.ts +0 -2
- package/datepicker/chronos/i18n/da.d.ts +0 -2
- package/datepicker/chronos/i18n/de.d.ts +0 -2
- package/datepicker/chronos/i18n/en-gb.d.ts +0 -2
- package/datepicker/chronos/i18n/es-do.d.ts +0 -2
- package/datepicker/chronos/i18n/es-us.d.ts +0 -2
- package/datepicker/chronos/i18n/es.d.ts +0 -2
- package/datepicker/chronos/i18n/et.d.ts +0 -2
- package/datepicker/chronos/i18n/fi.d.ts +0 -2
- package/datepicker/chronos/i18n/fr.d.ts +0 -2
- package/datepicker/chronos/i18n/gl.d.ts +0 -2
- package/datepicker/chronos/i18n/he.d.ts +0 -2
- package/datepicker/chronos/i18n/hi.d.ts +0 -2
- package/datepicker/chronos/i18n/hr.d.ts +0 -2
- package/datepicker/chronos/i18n/hu.d.ts +0 -2
- package/datepicker/chronos/i18n/id.d.ts +0 -2
- package/datepicker/chronos/i18n/it.d.ts +0 -2
- package/datepicker/chronos/i18n/ja.d.ts +0 -2
- package/datepicker/chronos/i18n/ka.d.ts +0 -2
- package/datepicker/chronos/i18n/kk.d.ts +0 -2
- package/datepicker/chronos/i18n/ko.d.ts +0 -2
- package/datepicker/chronos/i18n/lt.d.ts +0 -2
- package/datepicker/chronos/i18n/lv.d.ts +0 -2
- package/datepicker/chronos/i18n/mn.d.ts +0 -2
- package/datepicker/chronos/i18n/nb.d.ts +0 -2
- package/datepicker/chronos/i18n/nl-be.d.ts +0 -2
- package/datepicker/chronos/i18n/nl.d.ts +0 -2
- package/datepicker/chronos/i18n/pl.d.ts +0 -2
- package/datepicker/chronos/i18n/pt-br.d.ts +0 -2
- package/datepicker/chronos/i18n/ro.d.ts +0 -2
- package/datepicker/chronos/i18n/ru.d.ts +0 -2
- package/datepicker/chronos/i18n/sk.d.ts +0 -2
- package/datepicker/chronos/i18n/sl.d.ts +0 -2
- package/datepicker/chronos/i18n/sq.d.ts +0 -2
- package/datepicker/chronos/i18n/sv.d.ts +0 -2
- package/datepicker/chronos/i18n/th-be.d.ts +0 -2
- package/datepicker/chronos/i18n/th.d.ts +0 -2
- package/datepicker/chronos/i18n/tr.d.ts +0 -2
- package/datepicker/chronos/i18n/uk.d.ts +0 -2
- package/datepicker/chronos/i18n/vi.d.ts +0 -2
- package/datepicker/chronos/i18n/zh-cn.d.ts +0 -2
- package/datepicker/chronos/index.d.ts +0 -1
- package/datepicker/chronos/locale/calendar.d.ts +0 -8
- package/datepicker/chronos/locale/locale.class.d.ts +0 -143
- package/datepicker/chronos/locale/locale.defaults.d.ts +0 -11
- package/datepicker/chronos/locale/locales.d.ts +0 -7
- package/datepicker/chronos/moment/add-subtract.d.ts +0 -5
- package/datepicker/chronos/moment/calendar.d.ts +0 -15
- package/datepicker/chronos/moment/diff.d.ts +0 -3
- package/datepicker/chronos/moment/min-max.d.ts +0 -2
- package/datepicker/chronos/parse/regex.d.ts +0 -22
- package/datepicker/chronos/parse/token.d.ts +0 -5
- package/datepicker/chronos/public_api.d.ts +0 -57
- package/datepicker/chronos/test/chain.d.ts +0 -214
- package/datepicker/chronos/types.d.ts +0 -36
- package/datepicker/chronos/units/aliases.d.ts +0 -7
- package/datepicker/chronos/units/constants.d.ts +0 -9
- package/datepicker/chronos/units/day-of-month.d.ts +0 -1
- package/datepicker/chronos/units/day-of-week.d.ts +0 -20
- package/datepicker/chronos/units/day-of-year.d.ts +0 -3
- package/datepicker/chronos/units/hour.d.ts +0 -1
- package/datepicker/chronos/units/index.d.ts +0 -18
- package/datepicker/chronos/units/millisecond.d.ts +0 -1
- package/datepicker/chronos/units/minute.d.ts +0 -1
- package/datepicker/chronos/units/month.d.ts +0 -2
- package/datepicker/chronos/units/offset.d.ts +0 -10
- package/datepicker/chronos/units/priorities.d.ts +0 -1
- package/datepicker/chronos/units/quarter.d.ts +0 -3
- package/datepicker/chronos/units/second.d.ts +0 -1
- package/datepicker/chronos/units/timestamp.d.ts +0 -1
- package/datepicker/chronos/units/timezone.d.ts +0 -3
- package/datepicker/chronos/units/week-calendar-utils.d.ts +0 -9
- package/datepicker/chronos/units/week-year.d.ts +0 -8
- package/datepicker/chronos/units/week.d.ts +0 -6
- package/datepicker/chronos/units/year.d.ts +0 -4
- package/datepicker/chronos/utils/abs-ceil.d.ts +0 -1
- package/datepicker/chronos/utils/abs-round.d.ts +0 -1
- package/datepicker/chronos/utils/compare-arrays.d.ts +0 -1
- package/datepicker/chronos/utils/date-compare.d.ts +0 -9
- package/datepicker/chronos/utils/date-getters.d.ts +0 -18
- package/datepicker/chronos/utils/date-setters.d.ts +0 -12
- package/datepicker/chronos/utils/defaults.d.ts +0 -1
- package/datepicker/chronos/utils/start-end-of.d.ts +0 -3
- package/datepicker/chronos/utils/type-checks.d.ts +0 -12
- package/datepicker/chronos/utils/zero-fill.d.ts +0 -1
- package/datepicker/chronos/utils.d.ts +0 -2
- package/datepicker/component-loader/bs-component-ref.class.d.ts +0 -5
- package/datepicker/component-loader/component-loader.class.d.ts +0 -75
- package/datepicker/component-loader/component-loader.factory.d.ts +0 -21
- package/datepicker/component-loader/content-ref.class.d.ts +0 -7
- package/datepicker/component-loader/index.d.ts +0 -1
- package/datepicker/component-loader/listen-options.model.d.ts +0 -11
- package/datepicker/component-loader/public_api.d.ts +0 -4
- package/datepicker/date-formatter.d.ts +0 -3
- package/datepicker/datepicker-animations.d.ts +0 -3
- package/datepicker/datepicker-inner.component.d.ts +0 -78
- package/datepicker/datepicker.component.d.ts +0 -81
- package/datepicker/datepicker.config.d.ts +0 -22
- package/datepicker/datepicker.module.d.ts +0 -15
- package/datepicker/daypicker.component.d.ts +0 -17
- 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/index.d.ts +0 -1
- package/datepicker/mini-ngrx/index.d.ts +0 -1
- package/datepicker/mini-ngrx/public_api.d.ts +0 -7
- package/datepicker/mini-ngrx/state.class.d.ts +0 -8
- package/datepicker/mini-ngrx/store.class.d.ts +0 -16
- package/datepicker/models/index.d.ts +0 -102
- package/datepicker/monthpicker.component.d.ts +0 -14
- package/datepicker/positioning/index.d.ts +0 -1
- package/datepicker/positioning/models/index.d.ts +0 -41
- package/datepicker/positioning/modifiers/arrow.d.ts +0 -2
- package/datepicker/positioning/modifiers/flip.d.ts +0 -2
- package/datepicker/positioning/modifiers/index.d.ts +0 -5
- package/datepicker/positioning/modifiers/initData.d.ts +0 -2
- package/datepicker/positioning/modifiers/preventOverflow.d.ts +0 -2
- package/datepicker/positioning/modifiers/shift.d.ts +0 -2
- package/datepicker/positioning/ng-positioning.d.ts +0 -8
- package/datepicker/positioning/positioning.service.d.ts +0 -48
- package/datepicker/positioning/public_api.d.ts +0 -2
- package/datepicker/positioning/utils/computeAutoPlacement.d.ts +0 -2
- package/datepicker/positioning/utils/findCommonOffsetParent.d.ts +0 -1
- package/datepicker/positioning/utils/getBordersSize.d.ts +0 -4
- package/datepicker/positioning/utils/getBoundaries.d.ts +0 -1
- package/datepicker/positioning/utils/getBoundingClientRect.d.ts +0 -2
- package/datepicker/positioning/utils/getClientRect.d.ts +0 -5
- package/datepicker/positioning/utils/getFixedPositionOffsetParent.d.ts +0 -4
- package/datepicker/positioning/utils/getOffsetParent.d.ts +0 -1
- package/datepicker/positioning/utils/getOffsetRectRelativeToArbitraryNode.d.ts +0 -2
- package/datepicker/positioning/utils/getOffsets.d.ts +0 -2
- package/datepicker/positioning/utils/getOppositePlacement.d.ts +0 -4
- package/datepicker/positioning/utils/getOppositeVariation.d.ts +0 -4
- package/datepicker/positioning/utils/getOuterSizes.d.ts +0 -7
- package/datepicker/positioning/utils/getParentNode.d.ts +0 -4
- package/datepicker/positioning/utils/getReferenceOffsets.d.ts +0 -2
- package/datepicker/positioning/utils/getRoot.d.ts +0 -4
- package/datepicker/positioning/utils/getScroll.d.ts +0 -4
- package/datepicker/positioning/utils/getScrollParent.d.ts +0 -1
- package/datepicker/positioning/utils/getStyleComputedProperty.d.ts +0 -4
- package/datepicker/positioning/utils/getTargetOffsets.d.ts +0 -2
- package/datepicker/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.d.ts +0 -2
- package/datepicker/positioning/utils/getWindowSizes.d.ts +0 -4
- package/datepicker/positioning/utils/includeScroll.d.ts +0 -2
- package/datepicker/positioning/utils/index.d.ts +0 -23
- package/datepicker/positioning/utils/isBrowser.d.ts +0 -1
- package/datepicker/positioning/utils/isFixed.d.ts +0 -1
- package/datepicker/positioning/utils/isIE.d.ts +0 -1
- package/datepicker/positioning/utils/isModifierEnabled.d.ts +0 -4
- package/datepicker/positioning/utils/isNumeric.d.ts +0 -4
- package/datepicker/positioning/utils/isOffsetContainer.d.ts +0 -1
- package/datepicker/positioning/utils/setStyles.d.ts +0 -5
- package/datepicker/positioning/utils/updateContainerClass.d.ts +0 -6
- package/datepicker/public_api.d.ts +0 -25
- package/datepicker/reducer/_defaults.d.ts +0 -2
- package/datepicker/reducer/bs-datepicker.actions.d.ts +0 -46
- package/datepicker/reducer/bs-datepicker.effects.d.ts +0 -41
- 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 -8
- package/datepicker/themes/bs/bs-calendar-layout.component.d.ts +0 -5
- package/datepicker/themes/bs/bs-current-date-view.component.d.ts +0 -6
- package/datepicker/themes/bs/bs-custom-dates-view.component.d.ts +0 -17
- package/datepicker/themes/bs/bs-datepicker-container.component.d.ts +0 -36
- package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.d.ts +0 -14
- package/datepicker/themes/bs/bs-datepicker-inline-container.component.d.ts +0 -13
- package/datepicker/themes/bs/bs-datepicker-navigation-view.component.d.ts +0 -12
- package/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts +0 -40
- package/datepicker/themes/bs/bs-daterangepicker-inline-container.component.d.ts +0 -13
- package/datepicker/themes/bs/bs-days-calendar-view.component.d.ts +0 -26
- package/datepicker/themes/bs/bs-months-calendar-view.component.d.ts +0 -16
- package/datepicker/themes/bs/bs-timepicker-view.component.d.ts +0 -8
- package/datepicker/themes/bs/bs-years-calendar-view.component.d.ts +0 -16
- package/datepicker/utils/bs-calendar-utils.d.ts +0 -10
- package/datepicker/utils/matrix-utils.d.ts +0 -9
- package/datepicker/utils-v2/decorators.d.ts +0 -1
- package/datepicker/utils-v2/facade/browser.d.ts +0 -23
- package/datepicker/utils-v2/index.d.ts +0 -1
- package/datepicker/utils-v2/linked-list.class.d.ts +0 -26
- package/datepicker/utils-v2/public_api.d.ts +0 -10
- package/datepicker/utils-v2/theme-provider.d.ts +0 -2
- package/datepicker/utils-v2/trigger.class.d.ts +0 -6
- package/datepicker/utils-v2/triggers.d.ts +0 -18
- package/datepicker/utils-v2/utils.class.d.ts +0 -4
- package/datepicker/utils-v2/warn-once.d.ts +0 -1
- package/datepicker/yearpicker.component.d.ts +0 -14
- package/esm2020/datepicker/base/bs-datepicker-container.mjs +0 -47
- package/esm2020/datepicker/bs-datepicker-inline.component.mjs +0 -137
- package/esm2020/datepicker/bs-datepicker-inline.config.mjs +0 -14
- package/esm2020/datepicker/bs-datepicker-input.directive.mjs +0 -160
- package/esm2020/datepicker/bs-datepicker.component.mjs +0 -254
- package/esm2020/datepicker/bs-datepicker.config.mjs +0 -87
- package/esm2020/datepicker/bs-datepicker.module.mjs +0 -126
- package/esm2020/datepicker/bs-daterangepicker-inline.component.mjs +0 -134
- package/esm2020/datepicker/bs-daterangepicker-inline.config.mjs +0 -21
- package/esm2020/datepicker/bs-daterangepicker-input.directive.mjs +0 -192
- package/esm2020/datepicker/bs-daterangepicker.component.mjs +0 -240
- package/esm2020/datepicker/bs-daterangepicker.config.mjs +0 -19
- package/esm2020/datepicker/bs-locale.service.mjs +0 -32
- package/esm2020/datepicker/chronos/create/check-overflow.mjs +0 -30
- package/esm2020/datepicker/chronos/create/clone.mjs +0 -6
- package/esm2020/datepicker/chronos/create/date-from-array.mjs +0 -17
- package/esm2020/datepicker/chronos/create/from-anything.mjs +0 -107
- package/esm2020/datepicker/chronos/create/from-array.mjs +0 -136
- package/esm2020/datepicker/chronos/create/from-object.mjs +0 -17
- package/esm2020/datepicker/chronos/create/from-string-and-array.mjs +0 -38
- package/esm2020/datepicker/chronos/create/from-string-and-format.mjs +0 -106
- package/esm2020/datepicker/chronos/create/from-string.mjs +0 -227
- package/esm2020/datepicker/chronos/create/local.mjs +0 -16
- package/esm2020/datepicker/chronos/create/parsing-flags.mjs +0 -26
- package/esm2020/datepicker/chronos/create/parsing.types.mjs +0 -2
- package/esm2020/datepicker/chronos/create/valid.mjs +0 -42
- package/esm2020/datepicker/chronos/duration/bubble.mjs +0 -47
- package/esm2020/datepicker/chronos/duration/constructor.mjs +0 -130
- package/esm2020/datepicker/chronos/duration/create.mjs +0 -113
- package/esm2020/datepicker/chronos/duration/humanize.mjs +0 -80
- package/esm2020/datepicker/chronos/duration/valid.mjs +0 -43
- package/esm2020/datepicker/chronos/format/format.mjs +0 -51
- package/esm2020/datepicker/chronos/format.mjs +0 -46
- package/esm2020/datepicker/chronos/i18n/ar.mjs +0 -128
- package/esm2020/datepicker/chronos/i18n/bg.mjs +0 -94
- package/esm2020/datepicker/chronos/i18n/ca.mjs +0 -91
- package/esm2020/datepicker/chronos/i18n/cs.mjs +0 -179
- package/esm2020/datepicker/chronos/i18n/da.mjs +0 -50
- package/esm2020/datepicker/chronos/i18n/de.mjs +0 -72
- package/esm2020/datepicker/chronos/i18n/en-gb.mjs +0 -61
- package/esm2020/datepicker/chronos/i18n/es-do.mjs +0 -85
- package/esm2020/datepicker/chronos/i18n/es-us.mjs +0 -79
- package/esm2020/datepicker/chronos/i18n/es.mjs +0 -84
- package/esm2020/datepicker/chronos/i18n/et.mjs +0 -73
- package/esm2020/datepicker/chronos/i18n/fi.mjs +0 -100
- package/esm2020/datepicker/chronos/i18n/fr.mjs +0 -76
- package/esm2020/datepicker/chronos/i18n/gl.mjs +0 -84
- package/esm2020/datepicker/chronos/i18n/he.mjs +0 -98
- package/esm2020/datepicker/chronos/i18n/hi.mjs +0 -124
- package/esm2020/datepicker/chronos/i18n/hr.mjs +0 -62
- package/esm2020/datepicker/chronos/i18n/hu.mjs +0 -104
- package/esm2020/datepicker/chronos/i18n/id.mjs +0 -83
- package/esm2020/datepicker/chronos/i18n/it.mjs +0 -65
- package/esm2020/datepicker/chronos/i18n/ja.mjs +0 -75
- package/esm2020/datepicker/chronos/i18n/ka.mjs +0 -87
- package/esm2020/datepicker/chronos/i18n/kk.mjs +0 -76
- package/esm2020/datepicker/chronos/i18n/ko.mjs +0 -77
- package/esm2020/datepicker/chronos/i18n/lt.mjs +0 -116
- package/esm2020/datepicker/chronos/i18n/lv.mjs +0 -56
- package/esm2020/datepicker/chronos/i18n/mn.mjs +0 -99
- package/esm2020/datepicker/chronos/i18n/nb.mjs +0 -53
- package/esm2020/datepicker/chronos/i18n/nl-be.mjs +0 -81
- package/esm2020/datepicker/chronos/i18n/nl.mjs +0 -80
- package/esm2020/datepicker/chronos/i18n/pl.mjs +0 -126
- package/esm2020/datepicker/chronos/i18n/pt-br.mjs +0 -56
- package/esm2020/datepicker/chronos/i18n/ro.mjs +0 -66
- package/esm2020/datepicker/chronos/i18n/ru.mjs +0 -181
- package/esm2020/datepicker/chronos/i18n/sk.mjs +0 -157
- package/esm2020/datepicker/chronos/i18n/sl.mjs +0 -184
- package/esm2020/datepicker/chronos/i18n/sq.mjs +0 -54
- package/esm2020/datepicker/chronos/i18n/sv.mjs +0 -63
- package/esm2020/datepicker/chronos/i18n/th-be.mjs +0 -74
- package/esm2020/datepicker/chronos/i18n/th.mjs +0 -59
- package/esm2020/datepicker/chronos/i18n/tr.mjs +0 -82
- package/esm2020/datepicker/chronos/i18n/uk.mjs +0 -147
- package/esm2020/datepicker/chronos/i18n/vi.mjs +0 -74
- package/esm2020/datepicker/chronos/i18n/zh-cn.mjs +0 -114
- package/esm2020/datepicker/chronos/index.mjs +0 -2
- package/esm2020/datepicker/chronos/locale/calendar.mjs +0 -9
- package/esm2020/datepicker/chronos/locale/locale.class.mjs +0 -532
- package/esm2020/datepicker/chronos/locale/locale.defaults.mjs +0 -40
- package/esm2020/datepicker/chronos/locale/locales.mjs +0 -229
- package/esm2020/datepicker/chronos/moment/add-subtract.mjs +0 -35
- package/esm2020/datepicker/chronos/moment/calendar.mjs +0 -41
- package/esm2020/datepicker/chronos/moment/diff.mjs +0 -70
- package/esm2020/datepicker/chronos/moment/min-max.mjs +0 -38
- package/esm2020/datepicker/chronos/parse/regex.mjs +0 -49
- package/esm2020/datepicker/chronos/parse/token.mjs +0 -32
- package/esm2020/datepicker/chronos/public_api.mjs +0 -56
- package/esm2020/datepicker/chronos/test/chain.mjs +0 -711
- package/esm2020/datepicker/chronos/types.mjs +0 -2
- package/esm2020/datepicker/chronos/units/aliases.mjs +0 -35
- package/esm2020/datepicker/chronos/units/constants.mjs +0 -11
- package/esm2020/datepicker/chronos/units/day-of-month.mjs +0 -31
- package/esm2020/datepicker/chronos/units/day-of-week.mjs +0 -129
- package/esm2020/datepicker/chronos/units/day-of-year.mjs +0 -37
- package/esm2020/datepicker/chronos/units/hour.mjs +0 -127
- package/esm2020/datepicker/chronos/units/index.mjs +0 -19
- package/esm2020/datepicker/chronos/units/millisecond.mjs +0 -60
- package/esm2020/datepicker/chronos/units/minute.mjs +0 -23
- package/esm2020/datepicker/chronos/units/month.mjs +0 -63
- package/esm2020/datepicker/chronos/units/offset.mjs +0 -210
- package/esm2020/datepicker/chronos/units/priorities.mjs +0 -21
- package/esm2020/datepicker/chronos/units/quarter.mjs +0 -39
- package/esm2020/datepicker/chronos/units/second.mjs +0 -23
- package/esm2020/datepicker/chronos/units/timestamp.mjs +0 -28
- package/esm2020/datepicker/chronos/units/timezone.mjs +0 -19
- package/esm2020/datepicker/chronos/units/week-calendar-utils.mjs +0 -70
- package/esm2020/datepicker/chronos/units/week-year.mjs +0 -101
- package/esm2020/datepicker/chronos/units/week.mjs +0 -58
- package/esm2020/datepicker/chronos/units/year.mjs +0 -60
- package/esm2020/datepicker/chronos/utils/abs-ceil.mjs +0 -4
- package/esm2020/datepicker/chronos/utils/abs-round.mjs +0 -4
- package/esm2020/datepicker/chronos/utils/compare-arrays.mjs +0 -16
- package/esm2020/datepicker/chronos/utils/date-compare.mjs +0 -55
- package/esm2020/datepicker/chronos/utils/date-getters.mjs +0 -67
- package/esm2020/datepicker/chronos/utils/date-setters.mjs +0 -75
- package/esm2020/datepicker/chronos/utils/defaults.mjs +0 -11
- package/esm2020/datepicker/chronos/utils/start-end-of.mjs +0 -57
- package/esm2020/datepicker/chronos/utils/type-checks.mjs +0 -56
- package/esm2020/datepicker/chronos/utils/zero-fill.mjs +0 -10
- package/esm2020/datepicker/chronos/utils.mjs +0 -7
- package/esm2020/datepicker/component-loader/bs-component-ref.class.mjs +0 -3
- package/esm2020/datepicker/component-loader/component-loader.class.mjs +0 -272
- package/esm2020/datepicker/component-loader/component-loader.factory.mjs +0 -29
- package/esm2020/datepicker/component-loader/content-ref.class.mjs +0 -12
- package/esm2020/datepicker/component-loader/index.mjs +0 -2
- package/esm2020/datepicker/component-loader/listen-options.model.mjs +0 -2
- package/esm2020/datepicker/component-loader/public_api.mjs +0 -5
- package/esm2020/datepicker/date-formatter.mjs +0 -7
- package/esm2020/datepicker/datepicker-animations.mjs +0 -16
- package/esm2020/datepicker/datepicker-inner.component.mjs +0 -323
- package/esm2020/datepicker/datepicker.component.mjs +0 -182
- package/esm2020/datepicker/datepicker.config.mjs +0 -32
- package/esm2020/datepicker/datepicker.module.mjs +0 -49
- package/esm2020/datepicker/daypicker.component.mjs +0 -314
- package/esm2020/datepicker/engine/calc-days-calendar.mjs +0 -19
- package/esm2020/datepicker/engine/flag-days-calendar.mjs +0 -91
- package/esm2020/datepicker/engine/flag-months-calendar.mjs +0 -41
- package/esm2020/datepicker/engine/flag-years-calendar.mjs +0 -39
- package/esm2020/datepicker/engine/format-days-calendar.mjs +0 -29
- package/esm2020/datepicker/engine/format-months-calendar.mjs +0 -19
- package/esm2020/datepicker/engine/format-years-calendar.mjs +0 -35
- package/esm2020/datepicker/engine/view-mode.mjs +0 -4
- package/esm2020/datepicker/index.mjs +0 -2
- package/esm2020/datepicker/mini-ngrx/index.mjs +0 -2
- package/esm2020/datepicker/mini-ngrx/public_api.mjs +0 -3
- package/esm2020/datepicker/mini-ngrx/state.class.mjs +0 -16
- package/esm2020/datepicker/mini-ngrx/store.class.mjs +0 -43
- package/esm2020/datepicker/mis-crystal-design-system-datepicker.mjs +0 -5
- package/esm2020/datepicker/models/index.mjs +0 -9
- package/esm2020/datepicker/monthpicker.component.mjs +0 -145
- package/esm2020/datepicker/positioning/index.mjs +0 -2
- package/esm2020/datepicker/positioning/models/index.mjs +0 -2
- package/esm2020/datepicker/positioning/modifiers/arrow.mjs +0 -56
- package/esm2020/datepicker/positioning/modifiers/flip.mjs +0 -66
- package/esm2020/datepicker/positioning/modifiers/index.mjs +0 -6
- package/esm2020/datepicker/positioning/modifiers/initData.mjs +0 -42
- package/esm2020/datepicker/positioning/modifiers/preventOverflow.mjs +0 -59
- package/esm2020/datepicker/positioning/modifiers/shift.mjs +0 -24
- package/esm2020/datepicker/positioning/ng-positioning.mjs +0 -30
- package/esm2020/datepicker/positioning/positioning.service.mjs +0 -75
- package/esm2020/datepicker/positioning/public_api.mjs +0 -3
- package/esm2020/datepicker/positioning/utils/computeAutoPlacement.mjs +0 -57
- package/esm2020/datepicker/positioning/utils/findCommonOffsetParent.mjs +0 -40
- package/esm2020/datepicker/positioning/utils/getBordersSize.mjs +0 -10
- package/esm2020/datepicker/positioning/utils/getBoundaries.mjs +0 -56
- package/esm2020/datepicker/positioning/utils/getBoundingClientRect.mjs +0 -55
- package/esm2020/datepicker/positioning/utils/getClientRect.mjs +0 -8
- package/esm2020/datepicker/positioning/utils/getFixedPositionOffsetParent.mjs +0 -17
- package/esm2020/datepicker/positioning/utils/getOffsetParent.mjs +0 -32
- package/esm2020/datepicker/positioning/utils/getOffsetRectRelativeToArbitraryNode.mjs +0 -51
- package/esm2020/datepicker/positioning/utils/getOffsets.mjs +0 -11
- package/esm2020/datepicker/positioning/utils/getOppositePlacement.mjs +0 -8
- package/esm2020/datepicker/positioning/utils/getOppositeVariation.mjs +0 -13
- package/esm2020/datepicker/positioning/utils/getOuterSizes.mjs +0 -14
- package/esm2020/datepicker/positioning/utils/getParentNode.mjs +0 -10
- package/esm2020/datepicker/positioning/utils/getReferenceOffsets.mjs +0 -13
- package/esm2020/datepicker/positioning/utils/getRoot.mjs +0 -10
- package/esm2020/datepicker/positioning/utils/getScroll.mjs +0 -14
- package/esm2020/datepicker/positioning/utils/getScrollParent.mjs +0 -26
- package/esm2020/datepicker/positioning/utils/getStyleComputedProperty.mjs +0 -13
- package/esm2020/datepicker/positioning/utils/getTargetOffsets.mjs +0 -30
- package/esm2020/datepicker/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.mjs +0 -19
- package/esm2020/datepicker/positioning/utils/getWindowSizes.mjs +0 -18
- package/esm2020/datepicker/positioning/utils/includeScroll.mjs +0 -15
- package/esm2020/datepicker/positioning/utils/index.mjs +0 -24
- package/esm2020/datepicker/positioning/utils/isBrowser.mjs +0 -2
- package/esm2020/datepicker/positioning/utils/isFixed.mjs +0 -16
- package/esm2020/datepicker/positioning/utils/isIE.mjs +0 -16
- package/esm2020/datepicker/positioning/utils/isModifierEnabled.mjs +0 -10
- package/esm2020/datepicker/positioning/utils/isNumeric.mjs +0 -7
- package/esm2020/datepicker/positioning/utils/isOffsetContainer.mjs +0 -9
- package/esm2020/datepicker/positioning/utils/setStyles.mjs +0 -17
- package/esm2020/datepicker/positioning/utils/updateContainerClass.mjs +0 -22
- package/esm2020/datepicker/public_api.mjs +0 -25
- package/esm2020/datepicker/reducer/_defaults.mjs +0 -5
- package/esm2020/datepicker/reducer/bs-datepicker.actions.mjs +0 -136
- package/esm2020/datepicker/reducer/bs-datepicker.effects.mjs +0 -169
- package/esm2020/datepicker/reducer/bs-datepicker.reducer.mjs +0 -302
- package/esm2020/datepicker/reducer/bs-datepicker.state.mjs +0 -12
- package/esm2020/datepicker/reducer/bs-datepicker.store.mjs +0 -21
- package/esm2020/datepicker/themes/bs/bs-calendar-layout.component.mjs +0 -54
- package/esm2020/datepicker/themes/bs/bs-current-date-view.component.mjs +0 -23
- package/esm2020/datepicker/themes/bs/bs-custom-dates-view.component.mjs +0 -78
- package/esm2020/datepicker/themes/bs/bs-datepicker-container.component.mjs +0 -319
- package/esm2020/datepicker/themes/bs/bs-datepicker-day-decorator.directive.mjs +0 -52
- package/esm2020/datepicker/themes/bs/bs-datepicker-inline-container.component.mjs +0 -203
- package/esm2020/datepicker/themes/bs/bs-datepicker-navigation-view.component.mjs +0 -111
- package/esm2020/datepicker/themes/bs/bs-daterangepicker-container.component.mjs +0 -362
- package/esm2020/datepicker/themes/bs/bs-daterangepicker-inline-container.component.mjs +0 -203
- package/esm2020/datepicker/themes/bs/bs-days-calendar-view.component.mjs +0 -308
- package/esm2020/datepicker/themes/bs/bs-months-calendar-view.component.mjs +0 -106
- package/esm2020/datepicker/themes/bs/bs-timepicker-view.component.mjs +0 -64
- package/esm2020/datepicker/themes/bs/bs-years-calendar-view.component.mjs +0 -107
- package/esm2020/datepicker/utils/bs-calendar-utils.mjs +0 -43
- package/esm2020/datepicker/utils/matrix-utils.mjs +0 -14
- package/esm2020/datepicker/utils-v2/decorators.mjs +0 -25
- package/esm2020/datepicker/utils-v2/facade/browser.mjs +0 -24
- package/esm2020/datepicker/utils-v2/index.mjs +0 -2
- package/esm2020/datepicker/utils-v2/linked-list.class.mjs +0 -240
- package/esm2020/datepicker/utils-v2/public_api.mjs +0 -11
- package/esm2020/datepicker/utils-v2/theme-provider.mjs +0 -35
- package/esm2020/datepicker/utils-v2/trigger.class.mjs +0 -10
- package/esm2020/datepicker/utils-v2/triggers.mjs +0 -110
- package/esm2020/datepicker/utils-v2/utils.class.mjs +0 -21
- package/esm2020/datepicker/utils-v2/warn-once.mjs +0 -12
- package/esm2020/datepicker/yearpicker.component.mjs +0 -147
- package/fesm2015/mis-crystal-design-system-datepicker.mjs +0 -14950
- package/fesm2015/mis-crystal-design-system-datepicker.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-datepicker.mjs +0 -14572
- package/fesm2020/mis-crystal-design-system-datepicker.mjs.map +0 -1
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
import { DATE, HOUR, MILLISECOND, MINUTE, MONTH, SECOND, YEAR } from '../units/constants';
|
|
2
|
-
import { daysInYear } from '../units/year';
|
|
3
|
-
import { getParsingFlags } from './parsing-flags';
|
|
4
|
-
import { createUTCDate } from './date-from-array';
|
|
5
|
-
import { createDate } from './date-from-array';
|
|
6
|
-
import { dayOfYearFromWeeks, weekOfYear, weeksInYear } from '../units/week-calendar-utils';
|
|
7
|
-
import { defaults } from '../utils/defaults';
|
|
8
|
-
function currentDateArray(config) {
|
|
9
|
-
const nowValue = new Date();
|
|
10
|
-
if (config._useUTC) {
|
|
11
|
-
return [nowValue.getUTCFullYear(), nowValue.getUTCMonth(), nowValue.getUTCDate()];
|
|
12
|
-
}
|
|
13
|
-
return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()];
|
|
14
|
-
}
|
|
15
|
-
// convert an array to a date.
|
|
16
|
-
// the array should mirror the parameters below
|
|
17
|
-
// note: all values past the year are optional and will default to the lowest possible value.
|
|
18
|
-
// [year, month, day , hour, minute, second, millisecond]
|
|
19
|
-
export function configFromArray(config) {
|
|
20
|
-
const input = [];
|
|
21
|
-
let i;
|
|
22
|
-
let date;
|
|
23
|
-
let currentDate;
|
|
24
|
-
let expectedWeekday;
|
|
25
|
-
let yearToUse;
|
|
26
|
-
if (config._d) {
|
|
27
|
-
return config;
|
|
28
|
-
}
|
|
29
|
-
currentDate = currentDateArray(config);
|
|
30
|
-
// compute day of the year from weeks and weekdays
|
|
31
|
-
if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {
|
|
32
|
-
dayOfYearFromWeekInfo(config);
|
|
33
|
-
}
|
|
34
|
-
// if the day of the year is set, figure out what it is
|
|
35
|
-
if (config._dayOfYear != null) {
|
|
36
|
-
yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);
|
|
37
|
-
if (config._dayOfYear > daysInYear(yearToUse) || config._dayOfYear === 0) {
|
|
38
|
-
getParsingFlags(config)._overflowDayOfYear = true;
|
|
39
|
-
}
|
|
40
|
-
date = new Date(Date.UTC(yearToUse, 0, config._dayOfYear));
|
|
41
|
-
config._a[MONTH] = date.getUTCMonth();
|
|
42
|
-
config._a[DATE] = date.getUTCDate();
|
|
43
|
-
}
|
|
44
|
-
// Default to current date.
|
|
45
|
-
// * if no year, month, day of month are given, default to today
|
|
46
|
-
// * if day of month is given, default month and year
|
|
47
|
-
// * if month is given, default only year
|
|
48
|
-
// * if year is given, don't default anything
|
|
49
|
-
for (i = 0; i < 3 && config._a[i] == null; ++i) {
|
|
50
|
-
config._a[i] = input[i] = currentDate[i];
|
|
51
|
-
}
|
|
52
|
-
// Zero out whatever was not defaulted, including time
|
|
53
|
-
for (; i < 7; i++) {
|
|
54
|
-
config._a[i] = input[i] = (config._a[i] == null) ? (i === 2 ? 1 : 0) : config._a[i];
|
|
55
|
-
}
|
|
56
|
-
// Check for 24:00:00.000
|
|
57
|
-
if (config._a[HOUR] === 24 &&
|
|
58
|
-
config._a[MINUTE] === 0 &&
|
|
59
|
-
config._a[SECOND] === 0 &&
|
|
60
|
-
config._a[MILLISECOND] === 0) {
|
|
61
|
-
config._nextDay = true;
|
|
62
|
-
config._a[HOUR] = 0;
|
|
63
|
-
}
|
|
64
|
-
config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input);
|
|
65
|
-
expectedWeekday = config._useUTC ? config._d.getUTCDay() : config._d.getDay();
|
|
66
|
-
// Apply timezone offset from input. The actual utcOffset can be changed
|
|
67
|
-
// with parseZone.
|
|
68
|
-
if (config._tzm != null) {
|
|
69
|
-
config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);
|
|
70
|
-
}
|
|
71
|
-
if (config._nextDay) {
|
|
72
|
-
config._a[HOUR] = 24;
|
|
73
|
-
}
|
|
74
|
-
// check for mismatching day of week
|
|
75
|
-
if (config._w && typeof config._w.d !== 'undefined' && config._w.d !== expectedWeekday) {
|
|
76
|
-
getParsingFlags(config).weekdayMismatch = true;
|
|
77
|
-
}
|
|
78
|
-
return config;
|
|
79
|
-
}
|
|
80
|
-
function dayOfYearFromWeekInfo(config) {
|
|
81
|
-
let w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow;
|
|
82
|
-
w = config._w;
|
|
83
|
-
if (w.GG != null || w.W != null || w.E != null) {
|
|
84
|
-
dow = 1;
|
|
85
|
-
doy = 4;
|
|
86
|
-
// TODO: We need to take the current isoWeekYear, but that depends on
|
|
87
|
-
// how we interpret now (local, utc, fixed offset). So create
|
|
88
|
-
// a now version of current config (take local/utc/offset flags, and
|
|
89
|
-
// create now).
|
|
90
|
-
weekYear = defaults(w.GG, config._a[YEAR], weekOfYear(new Date(), 1, 4).year);
|
|
91
|
-
week = defaults(w.W, 1);
|
|
92
|
-
weekday = defaults(w.E, 1);
|
|
93
|
-
if (weekday < 1 || weekday > 7) {
|
|
94
|
-
weekdayOverflow = true;
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
dow = config._locale._week.dow;
|
|
99
|
-
doy = config._locale._week.doy;
|
|
100
|
-
const curWeek = weekOfYear(new Date(), dow, doy);
|
|
101
|
-
weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);
|
|
102
|
-
// Default to current week.
|
|
103
|
-
week = defaults(w.w, curWeek.week);
|
|
104
|
-
if (w.d != null) {
|
|
105
|
-
// weekday -- low day numbers are considered next week
|
|
106
|
-
weekday = w.d;
|
|
107
|
-
if (weekday < 0 || weekday > 6) {
|
|
108
|
-
weekdayOverflow = true;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
else if (w.e != null) {
|
|
112
|
-
// local weekday -- counting starts from begining of week
|
|
113
|
-
weekday = w.e + dow;
|
|
114
|
-
if (w.e < 0 || w.e > 6) {
|
|
115
|
-
weekdayOverflow = true;
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
else {
|
|
119
|
-
// default to begining of week
|
|
120
|
-
weekday = dow;
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
if (week < 1 || week > weeksInYear(weekYear, dow, doy)) {
|
|
124
|
-
getParsingFlags(config)._overflowWeeks = true;
|
|
125
|
-
}
|
|
126
|
-
else if (weekdayOverflow != null) {
|
|
127
|
-
getParsingFlags(config)._overflowWeekday = true;
|
|
128
|
-
}
|
|
129
|
-
else {
|
|
130
|
-
temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);
|
|
131
|
-
config._a[YEAR] = temp.year;
|
|
132
|
-
config._dayOfYear = temp.dayOfYear;
|
|
133
|
-
}
|
|
134
|
-
return config;
|
|
135
|
-
}
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbS1hcnJheS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVwaWNrZXIvY2hyb25vcy9jcmVhdGUvZnJvbS1hcnJheS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDMUYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU3QyxTQUFTLGdCQUFnQixDQUFDLE1BQXlCO0lBQ2pELE1BQU0sUUFBUSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7SUFFNUIsSUFBSSxNQUFNLENBQUMsT0FBTyxFQUFFO1FBQ2xCLE9BQU8sQ0FBQyxRQUFRLENBQUMsY0FBYyxFQUFFLEVBQUUsUUFBUSxDQUFDLFdBQVcsRUFBRSxFQUFFLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0tBQ25GO0lBRUQsT0FBTyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsRUFBRSxRQUFRLENBQUMsUUFBUSxFQUFFLEVBQUUsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7QUFDM0UsQ0FBQztBQUVELDhCQUE4QjtBQUM5QiwrQ0FBK0M7QUFDL0MsNkZBQTZGO0FB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NUIsTUFBTSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO0tBQ3BDO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVQYXJzaW5nQ29uZmlnIH0gZnJvbSAnLi9wYXJzaW5nLnR5cGVzJztcbmltcG9ydCB7IERhdGVBcnJheSB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IERBVEUsIEhPVVIsIE1JTExJU0VDT05ELCBNSU5VVEUsIE1PTlRILCBTRUNPTkQsIFlFQVIgfSBmcm9tICcuLi91bml0cy9jb25zdGFudHMnO1xuaW1wb3J0IHsgZGF5c0luWWVhciB9IGZyb20gJy4uL3VuaXRzL3llYXInO1xuaW1wb3J0IHsgZ2V0UGFyc2luZ0ZsYWdzIH0gZnJvbSAnLi9wYXJzaW5nLWZsYWdzJztcbmltcG9ydCB7IGNyZWF0ZVVUQ0RhdGUgfSBmcm9tICcuL2RhdGUtZnJvbS1hcnJheSc7XG5pbXBvcnQgeyBjcmVhdGVEYXRlIH0gZnJvbSAnLi9kYXRlLWZyb20tYXJyYXknO1xuaW1wb3J0IHsgZGF5T2ZZZWFyRnJvbVdlZWtzLCB3ZWVrT2ZZZWFyLCB3ZWVrc0luWWVhciB9IGZyb20gJy4uL3VuaXRzL3dlZWstY2FsZW5kYXItdXRpbHMnO1xuaW1wb3J0IHsgZGVmYXVsdHMgfSBmcm9tICcuLi91dGlscy9kZWZhdWx0cyc7XG5cbmZ1bmN0aW9uIGN1cnJlbnREYXRlQXJyYXkoY29uZmlnOiBEYXRlUGFyc2luZ0NvbmZpZyk6IERhdGVBcnJheSB7XG4gIGNvbnN0IG5vd1ZhbHVlID0gbmV3IERhdGUoKTtcblxuICBpZiAoY29uZmlnLl91c2VVVEMpIHtcbiAgICByZXR1cm4gW25vd1ZhbHVlLmdldFVUQ0Z1bGxZZWFyKCksIG5vd1ZhbHVlLmdldFVUQ01vbnRoKCksIG5vd1ZhbHVlLmdldFVUQ0RhdGUoKV07XG4gIH1cblxuICByZXR1cm4gW25vd1ZhbHVlLmdldEZ1bGxZZWFyKCksIG5vd1ZhbHVlLmdldE1vbnRoKCksIG5vd1ZhbHVlLmdldERhdGUoKV07XG59XG5cbi8vIGNvbnZlcnQgYW4gYXJyYXkgdG8gYSBkYXRlLlxuLy8gdGhlIGFycmF5IHNob3VsZCBtaXJyb3IgdGhlIHBhcmFtZXRlcnMgYmVsb3dcbi8vIG5vdGU6IGFsbCB2YWx1ZXMgcGFzdCB0aGUgeWVhciBhcmUgb3B0aW9uYWwgYW5kIHdpbGwgZGVmYXVsdCB0byB0aGUgbG93ZXN0IHBvc3NpYmxlIHZhbHVlLlxuLy8gW3llYXIsIG1vbnRoLCBkYXkgLCBob3VyLCBtaW51dGUsIHNlY29uZCwgbWlsbGlzZWNvbmRdXG5leHBvcnQgZnVuY3Rpb24gY29uZmlnRnJvbUFycmF5KGNvbmZpZzogRGF0ZVBhcnNpbmdDb25maWcpOiBEYXRlUGFyc2luZ0NvbmZpZyB7XG4gIGNvbnN0IGlucHV0ID0gW107XG4gIGxldCBpO1xuICBsZXQgZGF0ZTtcbiAgbGV0IGN1cnJlbnREYXRlO1xuICBsZXQgZXhwZWN0ZWRXZWVrZGF5O1xuICBsZXQgeWVhclRvVXNlO1xuXG4gIGlmIChjb25maWcuX2QpIHtcbiAgICByZXR1cm4gY29uZmlnO1xuICB9XG5cbiAgY3VycmVudERhdGUgPSBjdXJyZW50RGF0ZUFycmF5KGNvbmZpZyk7XG5cbiAgLy8gY29tcHV0ZSBkYXkgb2YgdGhlIHllYXIgZnJvbSB3ZWVrcyBhbmQgd2Vla2RheXNcbiAgaWYgKGNvbmZpZy5fdyAmJiBjb25maWcuX2FbREFURV0gPT0gbnVsbCAmJiBjb25maWcuX2FbTU9OVEhdID09IG51bGwpIHtcbiAgICBkYXlPZlllYXJGcm9tV2Vla0luZm8oY29uZmlnKTtcbiAgfVxuXG4gIC8vIGlmIHRoZSBkYXkgb2YgdGhlIHllYXIgaXMgc2V0LCBmaWd1cmUgb3V0IHdoYXQgaXQgaXNcbiAgaWYgKGNvbmZpZy5fZGF5T2ZZZWFyICE9IG51bGwpIHtcbiAgICB5ZWFyVG9Vc2UgPSBkZWZhdWx0cyhjb25maWcuX2FbWUVBUl0sIGN1cnJlbnREYXRlW1lFQVJdKTtcblxuICAgIGlmIChjb25maWcuX2RheU9mWWVhciA+IGRheXNJblllYXIoeWVhclRvVXNlKSB8fCBjb25maWcuX2RheU9mWWVhciA9PT0gMCkge1xuICAgICAgZ2V0UGFyc2luZ0ZsYWdzKGNvbmZpZykuX292ZXJmbG93RGF5T2ZZZWFyID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBkYXRlID0gbmV3IERhdGUoRGF0ZS5VVEMoeWVhclRvVXNlLCAwLCBjb25maWcuX2RheU9mWWVhcikpO1xuICAgIGNvbmZpZy5fYVtNT05USF0gPSBkYXRlLmdldFVUQ01vbnRoKCk7XG4gICAgY29uZmlnLl9hW0RBVEVdID0gZGF0ZS5nZXRVVENEYXRlKCk7XG4gIH1cblxuICAvLyBEZWZhdWx0IHRvIGN1cnJlbnQgZGF0ZS5cbiAgLy8gKiBpZiBubyB5ZWFyLCBtb250aCwgZGF5IG9mIG1vbnRoIGFyZSBnaXZlbiwgZGVmYXVsdCB0byB0b2RheVxuICAvLyAqIGlmIGRheSBvZiBtb250aCBpcyBnaXZlbiwgZGVmYXVsdCBtb250aCBhbmQgeWVhclxuICAvLyAqIGlmIG1vbnRoIGlzIGdpdmVuLCBkZWZhdWx0IG9ubHkgeWVhclxuICAvLyAqIGlmIHllYXIgaXMgZ2l2ZW4sIGRvbid0IGRlZmF1bHQgYW55dGhpbmdcbiAgZm9yIChpID0gMDsgaSA8IDMgJiYgY29uZmlnLl9hW2ldID09IG51bGw7ICsraSkge1xuICAgIGNvbmZpZy5fYVtpXSA9IGlucHV0W2ldID0gY3VycmVudERhdGVbaV07XG4gIH1cblxuICAvLyBaZXJvIG91dCB3aGF0ZXZlciB3YXMgbm90IGRlZmF1bHRlZCwgaW5jbHVkaW5nIHRpbWVcbiAgZm9yICg7IGkgPCA3OyBpKyspIHtcbiAgICBjb25maWcuX2FbaV0gPSBpbnB1dFtpXSA9IChjb25maWcuX2FbaV0gPT0gbnVsbCkgPyAoaSA9PT0gMiA/IDEgOiAwKSA6IGNvbmZpZy5fYVtpXTtcbiAgfVxuXG4gIC8vIENoZWNrIGZvciAyNDowMDowMC4wMDBcbiAgaWYgKGNvbmZpZy5fYVtIT1VSXSA9PT0gMjQgJiZcbiAgICBjb25maWcuX2FbTUlOVVRFXSA9PT0gMCAmJlxuICAgIGNvbmZpZy5fYVtTRUNPTkRdID09PSAwICYmXG4gICAgY29uZmlnLl9hW01JTExJU0VDT05EXSA9PT0gMCkge1xuICAgIGNvbmZpZy5fbmV4dERheSA9IHRydWU7XG4gICAgY29uZmlnLl9hW0hPVVJdID0gMDtcbiAgfVxuXG4gIGNvbmZpZy5fZCA9IChjb25maWcuX3VzZVVUQyA/IGNyZWF0ZVVUQ0RhdGUgOiBjcmVhdGVEYXRlKS5hcHBseShudWxsLCBpbnB1dCk7XG4gIGV4cGVjdGVkV2Vla2RheSA9IGNvbmZpZy5fdXNlVVRDID8gY29uZmlnLl9kLmdldFVUQ0RheSgpIDogY29uZmlnLl9kLmdldERheSgpO1xuXG4gIC8vIEFwcGx5IHRpbWV6b25lIG9mZnNldCBmcm9tIGlucHV0LiBUaGUgYWN0dWFsIHV0Y09mZnNldCBjYW4gYmUgY2hhbmdlZFxuICAvLyB3aXRoIHBhcnNlWm9uZS5cbiAgaWYgKGNvbmZpZy5fdHptICE9IG51bGwpIHtcbiAgICBjb25maWcuX2Quc2V0VVRDTWludXRlcyhjb25maWcuX2QuZ2V0VVRDTWludXRlcygpIC0gY29uZmlnLl90em0pO1xuICB9XG5cbiAgaWYgKGNvbmZpZy5fbmV4dERheSkge1xuICAgIGNvbmZpZy5fYVtIT1VSXSA9IDI0O1xuICB9XG5cbiAgLy8gY2hlY2sgZm9yIG1pc21hdGNoaW5nIGRheSBvZiB3ZWVrXG4gIGlmIChjb25maWcuX3cgJiYgdHlwZW9mIGNvbmZpZy5fdy5kICE9PSAndW5kZWZpbmVkJyAmJiBjb25maWcuX3cuZCAhPT0gZXhwZWN0ZWRXZWVrZGF5KSB7XG4gICAgZ2V0UGFyc2luZ0ZsYWdzKGNvbmZpZykud2Vla2RheU1pc21hdGNoID0gdHJ1ZTtcbiAgfVxuXG4gIHJldHVybiBjb25maWc7XG59XG5cbmZ1bmN0aW9uIGRheU9mWWVhckZyb21XZWVrSW5mbyhjb25maWc6IERhdGVQYXJzaW5nQ29uZmlnKTogRGF0ZVBhcnNpbmdDb25maWcge1xuICBsZXQgdywgd2Vla1llYXIsIHdlZWssIHdlZWtkYXksIGRvdywgZG95LCB0ZW1wLCB3ZWVrZGF5T3ZlcmZsb3c7XG5cbiAgdyA9IGNvbmZpZy5fdztcbiAgaWYgKHcuR0cgIT0gbnVsbCB8fCB3LlcgIT0gbnVsbCB8fCB3LkUgIT0gbnVsbCkge1xuICAgIGRvdyA9IDE7XG4gICAgZG95ID0gNDtcblxuICAgIC8vIFRPRE86IFdlIG5lZWQgdG8gdGFrZSB0aGUgY3VycmVudCBpc29XZWVrWWVhciwgYnV0IHRoYXQgZGVwZW5kcyBvblxuICAgIC8vIGhvdyB3ZSBpbnRlcnByZXQgbm93IChsb2NhbCwgdXRjLCBmaXhlZCBvZmZzZXQpLiBTbyBjcmVhdGVcbiAgICAvLyBhIG5vdyB2ZXJzaW9uIG9mIGN1cnJlbnQgY29uZmlnICh0YWtlIGxvY2FsL3V0Yy9vZmZzZXQgZmxhZ3MsIGFuZFxuICAgIC8vIGNyZWF0ZSBub3cpLlxuICAgIHdlZWtZZWFyID0gZGVmYXVsdHMody5HRywgY29uZmlnLl9hW1lFQVJdLCB3ZWVrT2ZZZWFyKG5ldyBEYXRlKCksIDEsIDQpLnllYXIpO1xuICAgIHdlZWsgPSBkZWZhdWx0cyh3LlcsIDEpO1xuICAgIHdlZWtkYXkgPSBkZWZhdWx0cyh3LkUsIDEpO1xuICAgIGlmICh3ZWVrZGF5IDwgMSB8fCB3ZWVrZGF5ID4gNykge1xuICAgICAgd2Vla2RheU92ZXJmbG93ID0gdHJ1ZTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgZG93ID0gY29uZmlnLl9sb2NhbGUuX3dlZWsuZG93O1xuICAgIGRveSA9IGNvbmZpZy5fbG9jYWxlLl93ZWVrLmRveTtcblxuICAgIGNvbnN0IGN1cldlZWsgPSB3ZWVrT2ZZZWFyKG5ldyBEYXRlKCksIGRvdywgZG95KTtcblxuICAgIHdlZWtZZWFyID0gZGVmYXVsdHMody5nZywgY29uZmlnLl9hW1lFQVJdLCBjdXJXZWVrLnllYXIpO1xuXG4gICAgLy8gRGVmYXVsdCB0byBjdXJyZW50IHdlZWsuXG4gICAgd2VlayA9IGRlZmF1bHRzKHcudywgY3VyV2Vlay53ZWVrKTtcblxuICAgIGlmICh3LmQgIT0gbnVsbCkge1xuICAgICAgLy8gd2Vla2RheSAtLSBsb3cgZGF5IG51bWJlcnMgYXJlIGNvbnNpZGVyZWQgbmV4dCB3ZWVrXG4gICAgICB3ZWVrZGF5ID0gdy5kO1xuICAgICAgaWYgKHdlZWtkYXkgPCAwIHx8IHdlZWtkYXkgPiA2KSB7XG4gICAgICAgIHdlZWtkYXlPdmVyZmxvdyA9IHRydWU7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh3LmUgIT0gbnVsbCkge1xuICAgICAgLy8gbG9jYWwgd2Vla2RheSAtLSBjb3VudGluZyBzdGFydHMgZnJvbSBiZWdpbmluZyBvZiB3ZWVrXG4gICAgICB3ZWVrZGF5ID0gdy5lICsgZG93O1xuICAgICAgaWYgKHcuZSA8IDAgfHwgdy5lID4gNikge1xuICAgICAgICB3ZWVrZGF5T3ZlcmZsb3cgPSB0cnVlO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBkZWZhdWx0IHRvIGJlZ2luaW5nIG9mIHdlZWtcbiAgICAgIHdlZWtkYXkgPSBkb3c7XG4gICAgfVxuICB9XG4gIGlmICh3ZWVrIDwgMSB8fCB3ZWVrID4gd2Vla3NJblllYXIod2Vla1llYXIsIGRvdywgZG95KSkge1xuICAgIGdldFBhcnNpbmdGbGFncyhjb25maWcpLl9vdmVyZmxvd1dlZWtzID0gdHJ1ZTtcbiAgfSBlbHNlIGlmICh3ZWVrZGF5T3ZlcmZsb3cgIT0gbnVsbCkge1xuICAgIGdldFBhcnNpbmdGbGFncyhjb25maWcpLl9vdmVyZmxvd1dlZWtkYXkgPSB0cnVlO1xuICB9IGVsc2Uge1xuICAgIHRlbXAgPSBkYXlPZlllYXJGcm9tV2Vla3Mod2Vla1llYXIsIHdlZWssIHdlZWtkYXksIGRvdywgZG95KTtcbiAgICBjb25maWcuX2FbWUVBUl0gPSB0ZW1wLnllYXI7XG4gICAgY29uZmlnLl9kYXlPZlllYXIgPSB0ZW1wLmRheU9mWWVhcjtcbiAgfVxuXG4gIHJldHVybiBjb25maWc7XG59XG4iXX0=
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { normalizeObjectUnits } from '../units/aliases';
|
|
2
|
-
import { configFromArray } from './from-array';
|
|
3
|
-
import { isObject, isString } from '../utils/type-checks';
|
|
4
|
-
export function configFromObject(config) {
|
|
5
|
-
if (config._d) {
|
|
6
|
-
return config;
|
|
7
|
-
}
|
|
8
|
-
const input = config._i;
|
|
9
|
-
if (isObject(input)) {
|
|
10
|
-
const i = normalizeObjectUnits(input);
|
|
11
|
-
config._a = [i.year, i.month, i.day, i.hours, i.minutes, i.seconds, i.milliseconds]
|
|
12
|
-
// todo: obsolete -> remove it
|
|
13
|
-
.map(obj => isString(obj) ? parseInt(obj, 10) : obj);
|
|
14
|
-
}
|
|
15
|
-
return configFromArray(config);
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbS1vYmplY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2Nocm9ub3MvY3JlYXRlL2Zyb20tb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUUxRCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsTUFBeUI7SUFDeEQsSUFBSSxNQUFNLENBQUMsRUFBRSxFQUFFO1FBQ2IsT0FBTyxNQUFNLENBQUM7S0FDZjtJQUVELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7SUFDeEIsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDbkIsTUFBTSxDQUFDLEdBQUcsb0JBQW9CLENBQUMsS0FBWSxDQUFDLENBQUM7UUFDN0MsTUFBTSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxZQUFZLENBQUM7WUFDbkYsOEJBQThCO2FBQzNCLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDeEQ7SUFFRCxPQUFPLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUNqQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbm9ybWFsaXplT2JqZWN0VW5pdHMgfSBmcm9tICcuLi91bml0cy9hbGlhc2VzJztcbmltcG9ydCB7IGNvbmZpZ0Zyb21BcnJheSB9IGZyb20gJy4vZnJvbS1hcnJheSc7XG5pbXBvcnQgeyBEYXRlUGFyc2luZ0NvbmZpZyB9IGZyb20gJy4vcGFyc2luZy50eXBlcyc7XG5pbXBvcnQgeyBpc09iamVjdCwgaXNTdHJpbmcgfSBmcm9tICcuLi91dGlscy90eXBlLWNoZWNrcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBjb25maWdGcm9tT2JqZWN0KGNvbmZpZzogRGF0ZVBhcnNpbmdDb25maWcpOiBEYXRlUGFyc2luZ0NvbmZpZyB7XG4gIGlmIChjb25maWcuX2QpIHtcbiAgICByZXR1cm4gY29uZmlnO1xuICB9XG5cbiAgY29uc3QgaW5wdXQgPSBjb25maWcuX2k7XG4gIGlmIChpc09iamVjdChpbnB1dCkpIHtcbiAgICBjb25zdCBpID0gbm9ybWFsaXplT2JqZWN0VW5pdHMoaW5wdXQgYXMgYW55KTtcbiAgICBjb25maWcuX2EgPSBbaS55ZWFyLCBpLm1vbnRoLCBpLmRheSwgaS5ob3VycywgaS5taW51dGVzLCBpLnNlY29uZHMsIGkubWlsbGlzZWNvbmRzXVxuICAgIC8vIHRvZG86IG9ic29sZXRlIC0+IHJlbW92ZSBpdFxuICAgICAgLm1hcChvYmogPT4gaXNTdHJpbmcob2JqKSA/IHBhcnNlSW50KG9iaiwgMTApIDogb2JqKTtcbiAgfVxuXG4gIHJldHVybiBjb25maWdGcm9tQXJyYXkoY29uZmlnKTtcbn1cbiJdfQ==
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { createInvalid, isValid } from './valid';
|
|
2
|
-
import { getParsingFlags } from './parsing-flags';
|
|
3
|
-
import { configFromStringAndFormat } from './from-string-and-format';
|
|
4
|
-
// date from string and array of format strings
|
|
5
|
-
export function configFromStringAndArray(config) {
|
|
6
|
-
let tempConfig;
|
|
7
|
-
let bestMoment;
|
|
8
|
-
let scoreToBeat;
|
|
9
|
-
let currentScore;
|
|
10
|
-
if (!config._f || config._f.length === 0) {
|
|
11
|
-
getParsingFlags(config).invalidFormat = true;
|
|
12
|
-
return createInvalid(config);
|
|
13
|
-
}
|
|
14
|
-
let i;
|
|
15
|
-
for (i = 0; i < config._f.length; i++) {
|
|
16
|
-
currentScore = 0;
|
|
17
|
-
tempConfig = Object.assign({}, config);
|
|
18
|
-
if (config._useUTC != null) {
|
|
19
|
-
tempConfig._useUTC = config._useUTC;
|
|
20
|
-
}
|
|
21
|
-
tempConfig._f = config._f[i];
|
|
22
|
-
configFromStringAndFormat(tempConfig);
|
|
23
|
-
if (!isValid(tempConfig)) {
|
|
24
|
-
continue;
|
|
25
|
-
}
|
|
26
|
-
// if there is any input that was not parsed add a penalty for that format
|
|
27
|
-
currentScore += getParsingFlags(tempConfig).charsLeftOver;
|
|
28
|
-
// or tokens
|
|
29
|
-
currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;
|
|
30
|
-
getParsingFlags(tempConfig).score = currentScore;
|
|
31
|
-
if (scoreToBeat == null || currentScore < scoreToBeat) {
|
|
32
|
-
scoreToBeat = currentScore;
|
|
33
|
-
bestMoment = tempConfig;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
return Object.assign(config, bestMoment || tempConfig);
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbS1zdHJpbmctYW5kLWFycmF5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9jaHJvbm9zL2NyZWF0ZS9mcm9tLXN0cmluZy1hbmQtYXJyYXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXJFLCtDQUErQztBQUMvQyxNQUFNLFVBQVUsd0JBQXdCLENBQUMsTUFBeUI7SUFDaEUsSUFBSSxVQUFVLENBQUM7SUFDZixJQUFJLFVBQVUsQ0FBQztJQUNmLElBQUksV0FBVyxDQUFDO0lBQ2hCLElBQUksWUFBWSxDQUFDO0lBRWpCLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtRQUN4QyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUU3QyxPQUFPLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztLQUM5QjtJQUVELElBQUksQ0FBQyxDQUFDO0lBQ04sS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUNyQyxZQUFZLEdBQUcsQ0FBQyxDQUFDO1FBQ2pCLFVBQVUsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN2QyxJQUFJLE1BQU0sQ0FBQyxPQUFPLElBQUksSUFBSSxFQUFFO1lBQzFCLFVBQVUsQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztTQUNyQztRQUNELFVBQVUsQ0FBQyxFQUFFLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM3Qix5QkFBeUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUV0QyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ3hCLFNBQVM7U0FDVjtRQUVELDBFQUEwRTtRQUMxRSxZQUFZLElBQUksZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUUxRCxZQUFZO1FBQ1osWUFBWSxJQUFJLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUVyRSxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSyxHQUFHLFlBQVksQ0FBQztRQUVqRCxJQUFJLFdBQVcsSUFBSSxJQUFJLElBQUksWUFBWSxHQUFHLFdBQVcsRUFBRTtZQUNyRCxXQUFXLEdBQUcsWUFBWSxDQUFDO1lBQzNCLFVBQVUsR0FBRyxVQUFVLENBQUM7U0FDekI7S0FDRjtJQUVELE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsVUFBVSxJQUFJLFVBQVUsQ0FBQyxDQUFDO0FBQ3pELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlUGFyc2luZ0NvbmZpZyB9IGZyb20gJy4vcGFyc2luZy50eXBlcyc7XG5pbXBvcnQgeyBjcmVhdGVJbnZhbGlkLCBpc1ZhbGlkIH0gZnJvbSAnLi92YWxpZCc7XG5pbXBvcnQgeyBnZXRQYXJzaW5nRmxhZ3MgfSBmcm9tICcuL3BhcnNpbmctZmxhZ3MnO1xuaW1wb3J0IHsgY29uZmlnRnJvbVN0cmluZ0FuZEZvcm1hdCB9IGZyb20gJy4vZnJvbS1zdHJpbmctYW5kLWZvcm1hdCc7XG5cbi8vIGRhdGUgZnJvbSBzdHJpbmcgYW5kIGFycmF5IG9mIGZvcm1hdCBzdHJpbmdzXG5leHBvcnQgZnVuY3Rpb24gY29uZmlnRnJvbVN0cmluZ0FuZEFycmF5KGNvbmZpZzogRGF0ZVBhcnNpbmdDb25maWcpOiBEYXRlUGFyc2luZ0NvbmZpZyB7XG4gIGxldCB0ZW1wQ29uZmlnO1xuICBsZXQgYmVzdE1vbWVudDtcbiAgbGV0IHNjb3JlVG9CZWF0O1xuICBsZXQgY3VycmVudFNjb3JlO1xuXG4gIGlmICghY29uZmlnLl9mIHx8IGNvbmZpZy5fZi5sZW5ndGggPT09IDApIHtcbiAgICBnZXRQYXJzaW5nRmxhZ3MoY29uZmlnKS5pbnZhbGlkRm9ybWF0ID0gdHJ1ZTtcblxuICAgIHJldHVybiBjcmVhdGVJbnZhbGlkKGNvbmZpZyk7XG4gIH1cblxuICBsZXQgaTtcbiAgZm9yIChpID0gMDsgaSA8IGNvbmZpZy5fZi5sZW5ndGg7IGkrKykge1xuICAgIGN1cnJlbnRTY29yZSA9IDA7XG4gICAgdGVtcENvbmZpZyA9IE9iamVjdC5hc3NpZ24oe30sIGNvbmZpZyk7XG4gICAgaWYgKGNvbmZpZy5fdXNlVVRDICE9IG51bGwpIHtcbiAgICAgIHRlbXBDb25maWcuX3VzZVVUQyA9IGNvbmZpZy5fdXNlVVRDO1xuICAgIH1cbiAgICB0ZW1wQ29uZmlnLl9mID0gY29uZmlnLl9mW2ldO1xuICAgIGNvbmZpZ0Zyb21TdHJpbmdBbmRGb3JtYXQodGVtcENvbmZpZyk7XG5cbiAgICBpZiAoIWlzVmFsaWQodGVtcENvbmZpZykpIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIC8vIGlmIHRoZXJlIGlzIGFueSBpbnB1dCB0aGF0IHdhcyBub3QgcGFyc2VkIGFkZCBhIHBlbmFsdHkgZm9yIHRoYXQgZm9ybWF0XG4gICAgY3VycmVudFNjb3JlICs9IGdldFBhcnNpbmdGbGFncyh0ZW1wQ29uZmlnKS5jaGFyc0xlZnRPdmVyO1xuXG4gICAgLy8gb3IgdG9rZW5zXG4gICAgY3VycmVudFNjb3JlICs9IGdldFBhcnNpbmdGbGFncyh0ZW1wQ29uZmlnKS51bnVzZWRUb2tlbnMubGVuZ3RoICogMTA7XG5cbiAgICBnZXRQYXJzaW5nRmxhZ3ModGVtcENvbmZpZykuc2NvcmUgPSBjdXJyZW50U2NvcmU7XG5cbiAgICBpZiAoc2NvcmVUb0JlYXQgPT0gbnVsbCB8fCBjdXJyZW50U2NvcmUgPCBzY29yZVRvQmVhdCkge1xuICAgICAgc2NvcmVUb0JlYXQgPSBjdXJyZW50U2NvcmU7XG4gICAgICBiZXN0TW9tZW50ID0gdGVtcENvbmZpZztcbiAgICB9XG4gIH1cblxuICByZXR1cm4gT2JqZWN0LmFzc2lnbihjb25maWcsIGJlc3RNb21lbnQgfHwgdGVtcENvbmZpZyk7XG59XG4iXX0=
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import { configFromISO, configFromRFC2822 } from './from-string';
|
|
2
|
-
import { expandFormat } from '../format';
|
|
3
|
-
import { formattingTokens, formatTokenFunctions } from '../format/format';
|
|
4
|
-
import { isArray } from '../utils/type-checks';
|
|
5
|
-
import { getParseRegexForToken } from '../parse/regex';
|
|
6
|
-
import { addTimeToArrayFromToken } from '../parse/token';
|
|
7
|
-
import { HOUR } from '../units/constants';
|
|
8
|
-
import { configFromArray } from './from-array';
|
|
9
|
-
import { getParsingFlags } from './parsing-flags';
|
|
10
|
-
import { checkOverflow } from './check-overflow';
|
|
11
|
-
// constant that refers to the ISO standard
|
|
12
|
-
// hooks.ISO_8601 = function () {};
|
|
13
|
-
export const ISO_8601 = 'ISO_8601';
|
|
14
|
-
// constant that refers to the RFC 2822 form
|
|
15
|
-
// hooks.RFC_2822 = function () {};
|
|
16
|
-
export const RFC_2822 = 'RFC_2822';
|
|
17
|
-
// date from string and format string
|
|
18
|
-
export function configFromStringAndFormat(config) {
|
|
19
|
-
// TODO: Move this to another part of the creation flow to prevent circular deps
|
|
20
|
-
if (config._f === ISO_8601) {
|
|
21
|
-
return configFromISO(config);
|
|
22
|
-
}
|
|
23
|
-
if (config._f === RFC_2822) {
|
|
24
|
-
return configFromRFC2822(config);
|
|
25
|
-
}
|
|
26
|
-
config._a = [];
|
|
27
|
-
getParsingFlags(config).empty = true;
|
|
28
|
-
if (isArray(config._f) || (!config._i && config._i !== 0)) {
|
|
29
|
-
return config;
|
|
30
|
-
}
|
|
31
|
-
// This array is used to make a Date, either with `new Date` or `Date.UTC`
|
|
32
|
-
let input = config._i.toString();
|
|
33
|
-
let totalParsedInputLength = 0;
|
|
34
|
-
const inputLength = input.length;
|
|
35
|
-
const tokens = expandFormat(config._f, config._locale).match(formattingTokens) || [];
|
|
36
|
-
let i;
|
|
37
|
-
let token;
|
|
38
|
-
let parsedInput;
|
|
39
|
-
let skipped;
|
|
40
|
-
for (i = 0; i < tokens.length; i++) {
|
|
41
|
-
token = tokens[i];
|
|
42
|
-
parsedInput = (input.match(getParseRegexForToken(token, config._locale)) || [])[0];
|
|
43
|
-
if (parsedInput) {
|
|
44
|
-
skipped = input.substr(0, input.indexOf(parsedInput));
|
|
45
|
-
if (skipped.length > 0) {
|
|
46
|
-
getParsingFlags(config).unusedInput.push(skipped);
|
|
47
|
-
}
|
|
48
|
-
input = input.slice(input.indexOf(parsedInput) + parsedInput.length);
|
|
49
|
-
totalParsedInputLength += parsedInput.length;
|
|
50
|
-
}
|
|
51
|
-
// don't parse if it's not a known token
|
|
52
|
-
if (formatTokenFunctions[token]) {
|
|
53
|
-
if (parsedInput) {
|
|
54
|
-
getParsingFlags(config).empty = false;
|
|
55
|
-
}
|
|
56
|
-
else {
|
|
57
|
-
getParsingFlags(config).unusedTokens.push(token);
|
|
58
|
-
}
|
|
59
|
-
addTimeToArrayFromToken(token, parsedInput, config);
|
|
60
|
-
}
|
|
61
|
-
else if (config._strict && !parsedInput) {
|
|
62
|
-
getParsingFlags(config).unusedTokens.push(token);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
// add remaining unparsed input length to the string
|
|
66
|
-
getParsingFlags(config).charsLeftOver = inputLength - totalParsedInputLength;
|
|
67
|
-
if (input.length > 0) {
|
|
68
|
-
getParsingFlags(config).unusedInput.push(input);
|
|
69
|
-
}
|
|
70
|
-
// clear _12h flag if hour is <= 12
|
|
71
|
-
if (config._a[HOUR] <= 12 &&
|
|
72
|
-
getParsingFlags(config).bigHour === true &&
|
|
73
|
-
config._a[HOUR] > 0) {
|
|
74
|
-
getParsingFlags(config).bigHour = void 0;
|
|
75
|
-
}
|
|
76
|
-
getParsingFlags(config).parsedDateParts = config._a.slice(0);
|
|
77
|
-
getParsingFlags(config).meridiem = config._meridiem;
|
|
78
|
-
// handle meridiem
|
|
79
|
-
config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR], config._meridiem);
|
|
80
|
-
configFromArray(config);
|
|
81
|
-
return checkOverflow(config);
|
|
82
|
-
}
|
|
83
|
-
function meridiemFixWrap(locale, _hour, meridiem) {
|
|
84
|
-
let hour = _hour;
|
|
85
|
-
if (meridiem == null) {
|
|
86
|
-
// nothing to do
|
|
87
|
-
return hour;
|
|
88
|
-
}
|
|
89
|
-
if (locale.meridiemHour != null) {
|
|
90
|
-
return locale.meridiemHour(hour, meridiem);
|
|
91
|
-
}
|
|
92
|
-
if (locale.isPM == null) {
|
|
93
|
-
// this is not supposed to happen
|
|
94
|
-
return hour;
|
|
95
|
-
}
|
|
96
|
-
// Fallback
|
|
97
|
-
const isPm = locale.isPM(meridiem);
|
|
98
|
-
if (isPm && hour < 12) {
|
|
99
|
-
hour += 12;
|
|
100
|
-
}
|
|
101
|
-
if (!isPm && hour === 12) {
|
|
102
|
-
hour = 0;
|
|
103
|
-
}
|
|
104
|
-
return hour;
|
|
105
|
-
}
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbS1zdHJpbmctYW5kLWZvcm1hdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVwaWNrZXIvY2hyb25vcy9jcmVhdGUvZnJvbS1zdHJpbmctYW5kLWZvcm1hdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDMUUsT0FBTyxFQUFFLE9BQU8sRUFBWSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHakQsMkNBQTJDO0FBQzNDLG1DQUFtQztBQUNuQyxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDO0FBRW5DLDRDQUE0QztBQUM1QyxtQ0FBbUM7QUFDbkMsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQztBQUVuQyxxQ0FBcUM7QUFDckMsTUFBTSxVQUFVLHlCQUF5QixDQUFDLE1BQXlCO0lBQ2pFLGdGQUFnRjtJQUNoRixJQUFJLE1BQU0sQ0FBQyxFQUFFLEtBQUssUUFBUSxFQUFFO1FBQzFCLE9BQU8sYUFBYSxD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QUFJLElBQUksSUFBSSxFQUFFO1FBQ3ZCLGlDQUFpQztRQUNqQyxPQUFPLElBQUksQ0FBQztLQUNiO0lBQ0QsV0FBVztJQUNYLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbkMsSUFBSSxJQUFJLElBQUksSUFBSSxHQUFHLEVBQUUsRUFBRTtRQUNyQixJQUFJLElBQUksRUFBRSxDQUFDO0tBQ1o7SUFFRCxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksS0FBSyxFQUFFLEVBQUU7UUFDeEIsSUFBSSxHQUFHLENBQUMsQ0FBQztLQUNWO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0ZVBhcnNpbmdDb25maWcgfSBmcm9tICcuL3BhcnNpbmcudHlwZXMnO1xuaW1wb3J0IHsgY29uZmlnRnJvbUlTTywgY29uZmlnRnJvbVJGQzI4MjIgfSBmcm9tICcuL2Zyb20tc3RyaW5nJztcbmltcG9ydCB7IGV4cGFuZEZvcm1hdCB9IGZyb20gJy4uL2Zvcm1hdCc7XG5pbXBvcnQgeyBmb3JtYXR0aW5nVG9rZW5zLCBmb3JtYXRUb2tlbkZ1bmN0aW9ucyB9IGZyb20gJy4uL2Zvcm1hdC9mb3JtYXQnO1xuaW1wb3J0IHsgaXNBcnJheSwgaXNTdHJpbmcgfSBmcm9tICcuLi91dGlscy90eXBlLWNoZWNrcyc7XG5pbXBvcnQgeyBnZXRQYXJzZVJlZ2V4Rm9yVG9rZW4gfSBmcm9tICcuLi9wYXJzZS9yZWdleCc7XG5pbXBvcnQgeyBhZGRUaW1lVG9BcnJheUZyb21Ub2tlbiB9IGZyb20gJy4uL3BhcnNlL3Rva2VuJztcbmltcG9ydCB7IEhPVVIgfSBmcm9tICcuLi91bml0cy9jb25zdGFudHMnO1xuaW1wb3J0IHsgY29uZmlnRnJvbUFycmF5IH0gZnJvbSAnLi9mcm9tLWFycmF5JztcbmltcG9ydCB7IGdldFBhcnNpbmdGbGFncyB9IGZyb20gJy4vcGFyc2luZy1mbGFncyc7XG5pbXBvcnQgeyBjaGVja092ZXJmbG93IH0gZnJvbSAnLi9jaGVjay1vdmVyZmxvdyc7XG5pbXBvcnQgeyBMb2NhbGUgfSBmcm9tICcuLi9sb2NhbGUvbG9jYWxlLmNsYXNzJztcblxuLy8gY29uc3RhbnQgdGhhdCByZWZlcnMgdG8gdGhlIElTTyBzdGFuZGFyZFxuLy8gaG9va3MuSVNPXzg2MDEgPSBmdW5jdGlvbiAoKSB7fTtcbmV4cG9ydCBjb25zdCBJU09fODYwMSA9ICdJU09fODYwMSc7XG5cbi8vIGNvbnN0YW50IHRoYXQgcmVmZXJzIHRvIHRoZSBSRkMgMjgyMiBmb3JtXG4vLyBob29rcy5SRkNfMjgyMiA9IGZ1bmN0aW9uICgpIHt9O1xuZXhwb3J0IGNvbnN0IFJGQ18yODIyID0gJ1JGQ18yODIyJztcblxuLy8gZGF0ZSBmcm9tIHN0cmluZyBhbmQgZm9ybWF0IHN0cmluZ1xuZXhwb3J0IGZ1bmN0aW9uIGNvbmZpZ0Zyb21TdHJpbmdBbmRGb3JtYXQoY29uZmlnOiBEYXRlUGFyc2luZ0NvbmZpZyk6IERhdGVQYXJzaW5nQ29uZmlnIHtcbiAgLy8gVE9ETzogTW92ZSB0aGlzIHRvIGFub3RoZXIgcGFydCBvZiB0aGUgY3JlYXRpb24gZmxvdyB0byBwcmV2ZW50IGNpcmN1bGFyIGRlcHNcbiAgaWYgKGNvbmZpZy5fZiA9PT0gSVNPXzg2MDEpIHtcbiAgICByZXR1cm4gY29uZmlnRnJvbUlTTyhjb25maWcpO1xuICB9XG4gIGlmIChjb25maWcuX2YgPT09IFJGQ18yODIyKSB7XG4gICAgcmV0dXJuIGNvbmZpZ0Zyb21SRkMyODIyKGNvbmZpZyk7XG4gIH1cbiAgY29uZmlnLl9hID0gW107XG4gIGdldFBhcnNpbmdGbGFncyhjb25maWcpLmVtcHR5ID0gdHJ1ZTtcblxuICBpZiAoaXNBcnJheShjb25maWcuX2YpIHx8ICghY29uZmlnLl9pICYmIGNvbmZpZy5faSAhPT0gMCkpIHtcbiAgICByZXR1cm4gY29uZmlnO1xuICB9XG5cbiAgLy8gVGhpcyBhcnJheSBpcyB1c2VkIHRvIG1ha2UgYSBEYXRlLCBlaXRoZXIgd2l0aCBgbmV3IERhdGVgIG9yIGBEYXRlLlVUQ2BcblxuICBsZXQgaW5wdXQgPSBjb25maWcuX2kudG9TdHJpbmcoKTtcbiAgbGV0IHRvdGFsUGFyc2VkSW5wdXRMZW5ndGggPSAwO1xuICBjb25zdCBpbnB1dExlbmd0aCA9IGlucHV0Lmxlbmd0aDtcbiAgY29uc3QgdG9rZW5zID0gZXhwYW5kRm9ybWF0KGNvbmZpZy5fZiwgY29uZmlnLl9sb2NhbGUpLm1hdGNoKGZvcm1hdHRpbmdUb2tlbnMpIHx8IFtdO1xuXG4gIGxldCBpO1xuICBsZXQgdG9rZW47XG4gIGxldCBwYXJzZWRJbnB1dDtcbiAgbGV0IHNraXBwZWQ7XG4gIGZvciAoaSA9IDA7IGkgPCB0b2tlbnMubGVuZ3RoOyBpKyspIHtcbiAgICB0b2tlbiA9IHRva2Vuc1tpXTtcbiAgICBwYXJzZWRJbnB1dCA9IChpbnB1dC5tYXRjaChnZXRQYXJzZVJlZ2V4Rm9yVG9rZW4odG9rZW4sIGNvbmZpZy5fbG9jYWxlKSkgfHwgW10pWzBdO1xuICAgIGlmIChwYXJzZWRJbnB1dCkge1xuICAgICAgc2tpcHBlZCA9IGlucHV0LnN1YnN0cigwLCBpbnB1dC5pbmRleE9mKHBhcnNlZElucHV0KSk7XG4gICAgICBpZiAoc2tpcHBlZC5sZW5ndGggPiAwKSB7XG4gICAgICAgIGdldFBhcnNpbmdGbGFncyhjb25maWcpLnVudXNlZElucHV0LnB1c2goc2tpcHBlZCk7XG4gICAgICB9XG4gICAgICBpbnB1dCA9IGlucHV0LnNsaWNlKGlucHV0LmluZGV4T2YocGFyc2VkSW5wdXQpICsgcGFyc2VkSW5wdXQubGVuZ3RoKTtcbiAgICAgIHRvdGFsUGFyc2VkSW5wdXRMZW5ndGggKz0gcGFyc2VkSW5wdXQubGVuZ3RoO1xuICAgIH1cbiAgICAvLyBkb24ndCBwYXJzZSBpZiBpdCdzIG5vdCBhIGtub3duIHRva2VuXG4gICAgaWYgKGZvcm1hdFRva2VuRnVuY3Rpb25zW3Rva2VuXSkge1xuICAgICAgaWYgKHBhcnNlZElucHV0KSB7XG4gICAgICAgIGdldFBhcnNpbmdGbGFncyhjb25maWcpLmVtcHR5ID0gZmFsc2U7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBnZXRQYXJzaW5nRmxhZ3MoY29uZmlnKS51bnVzZWRUb2tlbnMucHVzaCh0b2tlbik7XG4gICAgICB9XG5cbiAgICAgIGFkZFRpbWVUb0FycmF5RnJvbVRva2VuKHRva2VuLCBwYXJzZWRJbnB1dCwgY29uZmlnKTtcbiAgICB9IGVsc2UgaWYgKGNvbmZpZy5fc3RyaWN0ICYmICFwYXJzZWRJbnB1dCkge1xuICAgICAgZ2V0UGFyc2luZ0ZsYWdzKGNvbmZpZykudW51c2VkVG9rZW5zLnB1c2godG9rZW4pO1xuICAgIH1cbiAgfVxuXG4gIC8vIGFkZCByZW1haW5pbmcgdW5wYXJzZWQgaW5wdXQgbGVuZ3RoIHRvIHRoZSBzdHJpbmdcbiAgZ2V0UGFyc2luZ0ZsYWdzKGNvbmZpZykuY2hhcnNMZWZ0T3ZlciA9IGlucHV0TGVuZ3RoIC0gdG90YWxQYXJzZWRJbnB1dExlbmd0aDtcbiAgaWYgKGlucHV0Lmxlbmd0aCA+IDApIHtcbiAgICBnZXRQYXJzaW5nRmxhZ3MoY29uZmlnKS51bnVzZWRJbnB1dC5wdXNoKGlucHV0KTtcbiAgfVxuXG4gIC8vIGNsZWFyIF8xMmggZmxhZyBpZiBob3VyIGlzIDw9IDEyXG4gIGlmIChjb25maWcuX2FbSE9VUl0gPD0gMTIgJiZcbiAgICBnZXRQYXJzaW5nRmxhZ3MoY29uZmlnKS5iaWdIb3VyID09PSB0cnVlICYmXG4gICAgY29uZmlnLl9hW0hPVVJdID4gMCkge1xuICAgIGdldFBhcnNpbmdGbGFncyhjb25maWcpLmJpZ0hvdXIgPSB2b2lkIDA7XG4gIH1cblxuICBnZXRQYXJzaW5nRmxhZ3MoY29uZmlnKS5wYXJzZWREYXRlUGFydHMgPSBjb25maWcuX2Euc2xpY2UoMCk7XG4gIGdldFBhcnNpbmdGbGFncyhjb25maWcpLm1lcmlkaWVtID0gY29uZmlnLl9tZXJpZGllbTtcbiAgLy8gaGFuZGxlIG1lcmlkaWVtXG4gIGNvbmZpZy5fYVtIT1VSXSA9IG1lcmlkaWVtRml4V3JhcChjb25maWcuX2xvY2FsZSwgY29uZmlnLl9hW0hPVVJdLCBjb25maWcuX21lcmlkaWVtKTtcblxuICBjb25maWdGcm9tQXJyYXkoY29uZmlnKTtcblxuICByZXR1cm4gY2hlY2tPdmVyZmxvdyhjb25maWcpO1xufVxuXG5cbmZ1bmN0aW9uIG1lcmlkaWVtRml4V3JhcChsb2NhbGU6IExvY2FsZSwgX2hvdXI6IG51bWJlciwgbWVyaWRpZW06IHN0cmluZyk6IG51bWJlciB7XG4gIGxldCBob3VyID0gX2hvdXI7XG5cbiAgaWYgKG1lcmlkaWVtID09IG51bGwpIHtcbiAgICAvLyBub3RoaW5nIHRvIGRvXG4gICAgcmV0dXJuIGhvdXI7XG4gIH1cblxuICBpZiAobG9jYWxlLm1lcmlkaWVtSG91ciAhPSBudWxsKSB7XG4gICAgcmV0dXJuIGxvY2FsZS5tZXJpZGllbUhvdXIoaG91ciwgbWVyaWRpZW0pO1xuICB9XG5cbiAgaWYgKGxvY2FsZS5pc1BNID09IG51bGwpIHtcbiAgICAvLyB0aGlzIGlzIG5vdCBzdXBwb3NlZCB0byBoYXBwZW5cbiAgICByZXR1cm4gaG91cjtcbiAgfVxuICAvLyBGYWxsYmFja1xuICBjb25zdCBpc1BtID0gbG9jYWxlLmlzUE0obWVyaWRpZW0pO1xuICBpZiAoaXNQbSAmJiBob3VyIDwgMTIpIHtcbiAgICBob3VyICs9IDEyO1xuICB9XG5cbiAgaWYgKCFpc1BtICYmIGhvdXIgPT09IDEyKSB7XG4gICAgaG91ciA9IDA7XG4gIH1cblxuICByZXR1cm4gaG91cjtcbn1cbiJdfQ==
|
|
@@ -1,227 +0,0 @@
|
|
|
1
|
-
// tslint:disable-next-line
|
|
2
|
-
import { defaultLocaleMonthsShort, defaultLocaleWeekdaysShort } from '../locale/locale.class';
|
|
3
|
-
import { isString } from '../utils/type-checks';
|
|
4
|
-
import { configFromStringAndFormat } from './from-string-and-format';
|
|
5
|
-
import { createUTCDate } from './date-from-array';
|
|
6
|
-
import { createInvalid, markInvalid } from './valid';
|
|
7
|
-
import { getParsingFlags } from './parsing-flags';
|
|
8
|
-
// iso 8601 regex
|
|
9
|
-
// 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)
|
|
10
|
-
// tslint:disable-next-line
|
|
11
|
-
const extendedIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/;
|
|
12
|
-
// tslint:disable-next-line
|
|
13
|
-
const basicIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/;
|
|
14
|
-
const tzRegex = /Z|[+-]\d\d(?::?\d\d)?/;
|
|
15
|
-
const isoDates = [
|
|
16
|
-
['YYYYYY-MM-DD', /[+-]\d{6}-\d\d-\d\d/, true],
|
|
17
|
-
['YYYY-MM-DD', /\d{4}-\d\d-\d\d/, true],
|
|
18
|
-
['GGGG-[W]WW-E', /\d{4}-W\d\d-\d/, true],
|
|
19
|
-
['GGGG-[W]WW', /\d{4}-W\d\d/, false],
|
|
20
|
-
['YYYY-DDD', /\d{4}-\d{3}/, true],
|
|
21
|
-
['YYYY-MM', /\d{4}-\d\d/, false],
|
|
22
|
-
['YYYYYYMMDD', /[+-]\d{10}/, true],
|
|
23
|
-
['YYYYMMDD', /\d{8}/, true],
|
|
24
|
-
// YYYYMM is NOT allowed by the standard
|
|
25
|
-
['GGGG[W]WWE', /\d{4}W\d{3}/, true],
|
|
26
|
-
['GGGG[W]WW', /\d{4}W\d{2}/, false],
|
|
27
|
-
['YYYYDDD', /\d{7}/, true]
|
|
28
|
-
];
|
|
29
|
-
// iso time formats and regexes
|
|
30
|
-
const isoTimes = [
|
|
31
|
-
['HH:mm:ss.SSSS', /\d\d:\d\d:\d\d\.\d+/],
|
|
32
|
-
['HH:mm:ss,SSSS', /\d\d:\d\d:\d\d,\d+/],
|
|
33
|
-
['HH:mm:ss', /\d\d:\d\d:\d\d/],
|
|
34
|
-
['HH:mm', /\d\d:\d\d/],
|
|
35
|
-
['HHmmss.SSSS', /\d\d\d\d\d\d\.\d+/],
|
|
36
|
-
['HHmmss,SSSS', /\d\d\d\d\d\d,\d+/],
|
|
37
|
-
['HHmmss', /\d\d\d\d\d\d/],
|
|
38
|
-
['HHmm', /\d\d\d\d/],
|
|
39
|
-
['HH', /\d\d/]
|
|
40
|
-
];
|
|
41
|
-
const aspNetJsonRegex = /^\/?Date\((\-?\d+)/i;
|
|
42
|
-
const obsOffsets = {
|
|
43
|
-
UT: 0,
|
|
44
|
-
GMT: 0,
|
|
45
|
-
EDT: -4 * 60,
|
|
46
|
-
EST: -5 * 60,
|
|
47
|
-
CDT: -5 * 60,
|
|
48
|
-
CST: -6 * 60,
|
|
49
|
-
MDT: -6 * 60,
|
|
50
|
-
MST: -7 * 60,
|
|
51
|
-
PDT: -7 * 60,
|
|
52
|
-
PST: -8 * 60
|
|
53
|
-
};
|
|
54
|
-
// RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3
|
|
55
|
-
// tslint:disable-next-line
|
|
56
|
-
const rfc2822 = /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/;
|
|
57
|
-
// date from iso format
|
|
58
|
-
export function configFromISO(config) {
|
|
59
|
-
if (!isString(config._i)) {
|
|
60
|
-
return config;
|
|
61
|
-
}
|
|
62
|
-
const input = config._i;
|
|
63
|
-
const match = extendedIsoRegex.exec(input) || basicIsoRegex.exec(input);
|
|
64
|
-
let allowTime;
|
|
65
|
-
let dateFormat;
|
|
66
|
-
let timeFormat;
|
|
67
|
-
let tzFormat;
|
|
68
|
-
if (!match) {
|
|
69
|
-
config._isValid = false;
|
|
70
|
-
return config;
|
|
71
|
-
}
|
|
72
|
-
// getParsingFlags(config).iso = true;
|
|
73
|
-
let i;
|
|
74
|
-
let l;
|
|
75
|
-
for (i = 0, l = isoDates.length; i < l; i++) {
|
|
76
|
-
if (isoDates[i][1].exec(match[1])) {
|
|
77
|
-
dateFormat = isoDates[i][0];
|
|
78
|
-
allowTime = isoDates[i][2] !== false;
|
|
79
|
-
break;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
if (dateFormat == null) {
|
|
83
|
-
config._isValid = false;
|
|
84
|
-
return config;
|
|
85
|
-
}
|
|
86
|
-
if (match[3]) {
|
|
87
|
-
for (i = 0, l = isoTimes.length; i < l; i++) {
|
|
88
|
-
if (isoTimes[i][1].exec(match[3])) {
|
|
89
|
-
// match[2] should be 'T' or space
|
|
90
|
-
timeFormat = (match[2] || ' ') + isoTimes[i][0];
|
|
91
|
-
break;
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
if (timeFormat == null) {
|
|
95
|
-
config._isValid = false;
|
|
96
|
-
return config;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
if (!allowTime && timeFormat != null) {
|
|
100
|
-
config._isValid = false;
|
|
101
|
-
return config;
|
|
102
|
-
}
|
|
103
|
-
if (match[4]) {
|
|
104
|
-
if (tzRegex.exec(match[4])) {
|
|
105
|
-
tzFormat = 'Z';
|
|
106
|
-
}
|
|
107
|
-
else {
|
|
108
|
-
config._isValid = false;
|
|
109
|
-
return config;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
config._f = dateFormat + (timeFormat || '') + (tzFormat || '');
|
|
113
|
-
return configFromStringAndFormat(config);
|
|
114
|
-
}
|
|
115
|
-
// tslint:disable-next-line
|
|
116
|
-
function extractFromRFC2822Strings(yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr) {
|
|
117
|
-
const result = [
|
|
118
|
-
untruncateYear(yearStr),
|
|
119
|
-
defaultLocaleMonthsShort.indexOf(monthStr),
|
|
120
|
-
parseInt(dayStr, 10),
|
|
121
|
-
parseInt(hourStr, 10),
|
|
122
|
-
parseInt(minuteStr, 10)
|
|
123
|
-
];
|
|
124
|
-
if (secondStr) {
|
|
125
|
-
result.push(parseInt(secondStr, 10));
|
|
126
|
-
}
|
|
127
|
-
return result;
|
|
128
|
-
}
|
|
129
|
-
function untruncateYear(yearStr) {
|
|
130
|
-
const year = parseInt(yearStr, 10);
|
|
131
|
-
return year <= 49 ? year + 2000 : year;
|
|
132
|
-
}
|
|
133
|
-
function preprocessRFC2822(str) {
|
|
134
|
-
// Remove comments and folding whitespace and replace multiple-spaces with a single space
|
|
135
|
-
return str
|
|
136
|
-
.replace(/\([^)]*\)|[\n\t]/g, ' ')
|
|
137
|
-
.replace(/(\s\s+)/g, ' ').trim();
|
|
138
|
-
}
|
|
139
|
-
function checkWeekday(weekdayStr, parsedInput, config) {
|
|
140
|
-
if (weekdayStr) {
|
|
141
|
-
// TODO: Replace the vanilla JS Date object with an indepentent day-of-week check.
|
|
142
|
-
const weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr);
|
|
143
|
-
const weekdayActual = new Date(parsedInput[0], parsedInput[1], parsedInput[2]).getDay();
|
|
144
|
-
if (weekdayProvided !== weekdayActual) {
|
|
145
|
-
getParsingFlags(config).weekdayMismatch = true;
|
|
146
|
-
config._isValid = false;
|
|
147
|
-
return false;
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
return true;
|
|
151
|
-
}
|
|
152
|
-
function calculateOffset(obsOffset, militaryOffset, numOffset) {
|
|
153
|
-
if (obsOffset) {
|
|
154
|
-
return obsOffsets[obsOffset];
|
|
155
|
-
}
|
|
156
|
-
else if (militaryOffset) {
|
|
157
|
-
// the only allowed military tz is Z
|
|
158
|
-
return 0;
|
|
159
|
-
}
|
|
160
|
-
else {
|
|
161
|
-
const hm = parseInt(numOffset, 10);
|
|
162
|
-
const m = hm % 100;
|
|
163
|
-
const h = (hm - m) / 100;
|
|
164
|
-
return h * 60 + m;
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
// date and time from ref 2822 format
|
|
168
|
-
export function configFromRFC2822(config) {
|
|
169
|
-
if (!isString(config._i)) {
|
|
170
|
-
return config;
|
|
171
|
-
}
|
|
172
|
-
const match = rfc2822.exec(preprocessRFC2822(config._i));
|
|
173
|
-
if (!match) {
|
|
174
|
-
return markInvalid(config);
|
|
175
|
-
}
|
|
176
|
-
const parsedArray = extractFromRFC2822Strings(match[4], match[3], match[2], match[5], match[6], match[7]);
|
|
177
|
-
if (!checkWeekday(match[1], parsedArray, config)) {
|
|
178
|
-
return config;
|
|
179
|
-
}
|
|
180
|
-
config._a = parsedArray;
|
|
181
|
-
config._tzm = calculateOffset(match[8], match[9], match[10]);
|
|
182
|
-
config._d = createUTCDate.apply(null, config._a);
|
|
183
|
-
config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);
|
|
184
|
-
getParsingFlags(config).rfc2822 = true;
|
|
185
|
-
return config;
|
|
186
|
-
}
|
|
187
|
-
// date from iso format or fallback
|
|
188
|
-
export function configFromString(config) {
|
|
189
|
-
if (!isString(config._i)) {
|
|
190
|
-
return config;
|
|
191
|
-
}
|
|
192
|
-
const matched = aspNetJsonRegex.exec(config._i);
|
|
193
|
-
if (matched !== null) {
|
|
194
|
-
config._d = new Date(+matched[1]);
|
|
195
|
-
return config;
|
|
196
|
-
}
|
|
197
|
-
// todo: update logic processing
|
|
198
|
-
// isISO -> configFromISO
|
|
199
|
-
// isRFC -> configFromRFC
|
|
200
|
-
configFromISO(config);
|
|
201
|
-
if (config._isValid === false) {
|
|
202
|
-
delete config._isValid;
|
|
203
|
-
}
|
|
204
|
-
else {
|
|
205
|
-
return config;
|
|
206
|
-
}
|
|
207
|
-
configFromRFC2822(config);
|
|
208
|
-
if (config._isValid === false) {
|
|
209
|
-
delete config._isValid;
|
|
210
|
-
}
|
|
211
|
-
else {
|
|
212
|
-
return config;
|
|
213
|
-
}
|
|
214
|
-
// Final attempt, use Input Fallback
|
|
215
|
-
// hooks.createFromInputFallback(config);
|
|
216
|
-
return createInvalid(config);
|
|
217
|
-
}
|
|
218
|
-
// hooks.createFromInputFallback = deprecate(
|
|
219
|
-
// 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' +
|
|
220
|
-
// 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' +
|
|
221
|
-
// 'discouraged and will be removed in an upcoming major release. Please refer to ' +
|
|
222
|
-
// 'http://momentjs.com/guides/#/warnings/js-date/ for more info.',
|
|
223
|
-
// function (config) {
|
|
224
|
-
// config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));
|
|
225
|
-
// }
|
|
226
|
-
// );
|
|
227
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbS1zdHJpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2Nocm9ub3MvY3JlYXRlL2Zyb20tc3RyaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJCQUEyQjtBQUMzQixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUc5RixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVsRCxpQkFBaUI7QUFDakIsNEdBQTRHO0FBQzVHLDJCQUEyQjtBQUMzQixNQUFNLGdCQUFnQixHQUFHLGtKQUFrSixDQUFDO0FBQzVLLDJCQUEyQjtBQUMzQixNQUFNLGFBQWEsR0FBRyw2SUFBNkksQ0FBQztBQUVwSyxNQUFNLE9BQU8sR0FBRyx1QkFBdUIsQ0FBQztBQUV4QyxNQUFNLFFBQVEsR0FBZ0M7SUFDNUMsQ0FBQyxjQUFjLEVBQUUscUJBQXFCLEVBQUUsSUFBSSxDQUFDO0lBQzdDLENBQUMsWUFBWSxFQUFFLGlCQUFpQixFQUFFLElBQUksQ0FBQztJQUN2QyxDQUFDLGNBQWMsRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLENBQUM7SUFDeEMsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLEtBQUssQ0FBQztJQUNwQyxDQUFDLFVBQVUsRUFBRSxhQUFhLEVBQUUsSUFBSSxDQUFDO0lBQ2pDLENBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLENBQUM7SUFDaEMsQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQztJQUNsQyxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDO0lBQzNCLHdDQUF3QztJQUN4QyxDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsSUFBSSxDQUFDO0lBQ25DLENBQUMsV0FBVyxFQUFFLGFBQWEsRUFBRSxLQUFLLENBQUM7SUFDbkMsQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQztDQUMzQixDQUFDO0FBRUYsK0JBQStCO0FBQy9CLE1BQU0sUUFBUSxHQUF1QjtJQUNuQyxDQUFDLGVBQWUsRUFBRSxxQkFBcUIsQ0FBQztJQUN4QyxDQUFDLGVBQWUsRUFBRSxvQkFBb0IsQ0FBQztJQUN2QyxDQUFDLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQztJQUM5QixDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUM7SUFDdEIsQ0FBQyxhQUFhLEVBQUUsbUJBQW1CLENBQUM7SUFDcEMsQ0FBQyxhQUFhLEVBQUUsa0JBQWtCLENBQUM7SUFDbkMsQ0FBQyxRQUFRLEVBQUUsY0FBYyxDQUFDO0lBQzFCLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQztJQUNwQixDQUFDLElBQUksRUFBRSxNQUFNLENBQUM7Q0FDZixDQUFDO0FBRUYsTUFBTSxlQUFlLEdBQUcscUJBQXFCLENBQUM7QUFFOUMsTUFBTSxVQUFVLEdBQThCO0lBQzVDLEVBQUUsRUFBRSxDQUFDO0lBQ0wsR0FBRyxFQUFFLENBQUM7SUFDTixHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRTtJQUNaLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFO0lBQ1osR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUU7SUFDWixHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRTtJQUNaLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFO0lBQ1osR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUU7SUFDWixHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRTtJQUNaLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFO0NBQ2IsQ0FBQztBQUVGLGtGQUFrRjtBQUNsRiwyQkFBMkI7QUFDM0IsTUFBTSxPQUFPLEdBQUcseUxBQXlMLENBQUM7QUFFMU0sdUJBQXVCO0FBQ3ZCLE1BQU0sVUFBVSxhQUFhLENBQUMsTUFBeUI7SUFDckQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUU7UUFDeEIsT0FBTyxNQUFNLENBQUM7S0FDZjtJQUVELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7SUFDeEIsTUFBTSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFHeEUsSUFBSSxTQUFTLENBQUM7SUFDZCxJQUFJLFVBQVUsQ0FBQztJQUNmLElBQUksVUFBVSxDQUFDO0lBQ2YsSUFBSSxRQUFRLENBQUM7SUFFYixJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ1YsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFFeEIsT0FBTyxNQUFNLENBQUM7S0FDZjtJQUVELHNDQUFzQztJQUN0QyxJQUFJLENBQUMsQ0FBQztJQUNOLElBQUksQ0FBQyxDQUFDO0lBQ04sS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDM0MsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2pDLFVBQVUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDNUIsU0FBUyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLENBQUM7WUFDckMsTUFBTTtTQUNQO0tBQ0Y7SUFFRCxJQUFJLFVBQVUsSUFBSSxJQUFJLEVBQUU7UUFDdEIsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFFeEIsT0FBTyxNQUFNLENBQUM7S0FDZjtJQUVELElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFO1FBQ1osS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDM0MsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNqQyxrQ0FBa0M7Z0JBQ2xDLFVBQVUsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hELE1BQU07YUFDUDtTQUNGO1FBRUQsSUFBSSxVQUFVLElBQUksSUFBSSxFQUFFO1lBQ3RCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1lBRXhCLE9BQU8sTUFBTSxDQUFDO1NBQ2Y7S0FFRjtJQUNELElBQUksQ0FBQyxTQUFTLElBQUksVUFBVSxJQUFJLElBQUksRUFBRTtRQUNwQyxNQUFNLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUV4QixPQUFPLE1BQU0sQ0FBQztLQUNmO0lBRUQsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUU7UUFDWixJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDMUIsUUFBUSxHQUFHLEdBQUcsQ0FBQztTQUNoQjthQUFNO1lBQ0wsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFFeEIsT0FBTyxNQUFNLENBQUM7U0FDZjtLQUNGO0lBRUQsTUFBTSxDQUFDLEVBQUUsR0FBRyxVQUFVLEdBQUcsQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUM7SUFFL0QsT0FBTyx5QkFBeUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUMzQyxDQUFDO0FBRUQsMkJBQTJCO0FBQzNCLFNBQVMseUJBQXlCLENBQUMsT0FBZSxFQUFFLFFBQWdCLEVBQUUsTUFBYyxFQUFFLE9BQWUsRUFBRSxTQUFpQixFQUFFLFNBQWlCO0lBQ3pJLE1BQU0sTUFBTSxHQUFHO1FBQ2IsY0FBYyxDQUFDLE9BQU8sQ0FBQztRQUN2Qix3QkFBd0IsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBQzFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO1FBQ3BCLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO1FBQ3JCLFFBQVEsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDO0tBQ3hCLENBQUM7SUFFRixJQUFJLFNBQVMsRUFBRTtRQUNiLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0tBQ3RDO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVELFNBQVMsY0FBYyxDQUFDLE9BQWU7SUFDckMsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUVuQyxPQUFPLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUN6QyxDQUFDO0FBRUQsU0FBUyxpQkFBaUIsQ0FBQyxHQUFXO0lBQ3BDLHlGQUF5RjtJQUN6RixPQUFPLEdBQUc7U0FDUCxPQUFPLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxDQUFDO1NBQ2pDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7QUFDckMsQ0FBQztBQUVELFNBQVMsWUFBWSxDQUFDLFVBQWtCLEVBQUUsV0FBc0IsRUFBRSxNQUF5QjtJQUN6RixJQUFJLFVBQVUsRUFBRTtRQUNkLGtGQUFrRjtRQUNsRixNQUFNLGVBQWUsR0FBRywwQkFBMEIsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdkUsTUFBTSxhQUFhLEdBQUcsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN4RixJQUFJLGVBQWUsS0FBSyxhQUFhLEVBQUU7WUFDckMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7WUFDL0MsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFFeEIsT0FBTyxLQUFLLENBQUM7U0FDZDtLQUNGO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQsU0FBUyxlQUFlLENBQUMsU0FBaUIsRUFBRSxjQUFzQixFQUFFLFNBQWlCO0lBQ25GLElBQUksU0FBUyxFQUFFO1FBQ2IsT0FBTyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7S0FDOUI7U0FBTSxJQUFJLGNBQWMsRUFBRTtRQUN6QixvQ0FBb0M7UUFDcEMsT0FBTyxDQUFDLENBQUM7S0FDVjtTQUFNO1FBQ0wsTUFBTSxFQUFFLEdBQUcsUUFBUSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNuQyxNQUFNLENBQUMsR0FBRyxFQUFFLEdBQUcsR0FBRyxDQUFDO1FBQ25CLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztRQUV6QixPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0tBQ25CO0FBQ0gsQ0FBQztBQUVELHFDQUFxQztBQUNyQyxNQUFNLFVBQVUsaUJBQWlCLENBQUMsTUFBeUI7SUFDekQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUU7UUFDeEIsT0FBTyxNQUFNLENBQUM7S0FDZjtJQUVELE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFekQsSUFBSSxDQUFDLEtBQUssRUFBRTtRQUNWLE9BQU8sV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0tBQzVCO0lBRUQsTUFBTSxXQUFXLEdBQUcseUJBQXlCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsTUFBTSxDQUFDLEVBQUU7UUFDaEQsT0FBTyxNQUFNLENBQUM7S0FDZjtJQUVELE1BQU0sQ0FBQyxFQUFFLEdBQUcsV0FBVyxDQUFDO0lBQ3hCLE1BQU0sQ0FBQyxJQUFJLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFN0QsTUFBTSxDQUFDLEVBQUUsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDakQsTUFBTSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFakUsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7SUFFdkMsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVELG1DQUFtQztBQUNuQyxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsTUFBeUI7SUFDeEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUU7UUFDeEIsT0FBTyxNQUFNLENBQUM7S0FDZjtJQUVELE1BQU0sT0FBTyxHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRWhELElBQUksT0FBTyxLQUFLLElBQUksRUFBRTtRQUNwQixNQUFNLENBQUMsRUFBRSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFbEMsT0FBTyxNQUFNLENBQUM7S0FDZjtJQUVELGdDQUFnQztJQUNoQyx5QkFBeUI7SUFDekIseUJBQXlCO0lBRXpCLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0QixJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssS0FBSyxFQUFFO1FBQzdCLE9BQU8sTUFBTSxDQUFDLFFBQVEsQ0FBQztLQUN4QjtTQUFNO1FBQ0wsT0FBTyxNQUFNLENBQUM7S0FDZjtJQUVELGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFCLElBQUksTUFBTSxDQUFDLFFBQVEsS0FBSyxLQUFLLEVBQUU7UUFDN0IsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDO0tBQ3hCO1NBQU07UUFDTCxPQUFPLE1BQU0sQ0FBQztLQUNmO0lBRUQsb0NBQW9DO0lBQ3BDLHlDQUF5QztJQUN6QyxPQUFPLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUMvQixDQUFDO0FBRUQsNkNBQTZDO0FBQzdDLHFIQUFxSDtBQUNySCxvR0FBb0c7QUFDcEcseUZBQXlGO0FBQ3pGLHVFQUF1RTtBQUN2RSwwQkFBMEI7QUFDMUIsNEVBQTRFO0FBQzVFLFFBQVE7QUFDUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lXG5pbXBvcnQgeyBkZWZhdWx0TG9jYWxlTW9udGhzU2hvcnQsIGRlZmF1bHRMb2NhbGVXZWVrZGF5c1Nob3J0IH0gZnJvbSAnLi4vbG9jYWxlL2xvY2FsZS5jbGFzcyc7XG5pbXBvcnQgeyBEYXRlQXJyYXkgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBEYXRlUGFyc2luZ0NvbmZpZyB9IGZyb20gJy4vcGFyc2luZy50eXBlcyc7XG5pbXBvcnQgeyBpc1N0cmluZyB9IGZyb20gJy4uL3V0aWxzL3R5cGUtY2hlY2tzJztcbmltcG9ydCB7IGNvbmZpZ0Zyb21TdHJpbmdBbmRGb3JtYXQgfSBmcm9tICcuL2Zyb20tc3RyaW5nLWFuZC1mb3JtYXQnO1xuaW1wb3J0IHsgY3JlYXRlVVRDRGF0ZSB9IGZyb20gJy4vZGF0ZS1mcm9tLWFycmF5JztcbmltcG9ydCB7IGNyZWF0ZUludmFsaWQsIG1hcmtJbnZhbGlkIH0gZnJvbSAnLi92YWxpZCc7XG5pbXBvcnQgeyBnZXRQYXJzaW5nRmxhZ3MgfSBmcm9tICcuL3BhcnNpbmctZmxhZ3MnO1xuXG4vLyBpc28gODYwMSByZWdleFxuLy8gMDAwMC0wMC0wMCAwMDAwLVcwMCBvciAwMDAwLVcwMC0wICsgVCArIDAwIG9yIDAwOjAwIG9yIDAwOjAwOjAwIG9yIDAwOjAwOjAwLjAwMCArICswMDowMCBvciArMDAwMCBvciArMDApXG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmVcbmNvbnN0IGV4dGVuZGVkSXNvUmVnZXggPSAvXlxccyooKD86WystXVxcZHs2fXxcXGR7NH0pLSg/OlxcZFxcZC1cXGRcXGR8V1xcZFxcZC1cXGR8V1xcZFxcZHxcXGRcXGRcXGR8XFxkXFxkKSkoPzooVHwgKShcXGRcXGQoPzo6XFxkXFxkKD86OlxcZFxcZCg/OlsuLF1cXGQrKT8pPyk/KShbXFwrXFwtXVxcZFxcZCg/Ojo/XFxkXFxkKT98XFxzKlopPyk/JC87XG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmVcbmNvbnN0IGJhc2ljSXNvUmVnZXggPSAvXlxccyooKD86WystXVxcZHs2fXxcXGR7NH0pKD86XFxkXFxkXFxkXFxkfFdcXGRcXGRcXGR8V1xcZFxcZHxcXGRcXGRcXGR8XFxkXFxkKSkoPzooVHwgKShcXGRcXGQoPzpcXGRcXGQoPzpcXGRcXGQoPzpbLixdXFxkKyk/KT8pPykoW1xcK1xcLV1cXGRcXGQoPzo6P1xcZFxcZCk/fFxccypaKT8pPyQvO1xuXG5jb25zdCB0elJlZ2V4ID0gL1p8WystXVxcZFxcZCg/Ojo/XFxkXFxkKT8vO1xuXG5jb25zdCBpc29EYXRlczogW3N0cmluZywgUmVnRXhwLCBib29sZWFuXVtdID0gW1xuICBbJ1lZWVlZWS1NTS1ERCcsIC9bKy1dXFxkezZ9LVxcZFxcZC1cXGRcXGQvLCB0cnVlXSxcbiAgWydZWVlZLU1NLUREJywgL1xcZHs0fS1cXGRcXGQtXFxkXFxkLywgdHJ1ZV0sXG4gIFsnR0dHRy1bV11XVy1FJywgL1xcZHs0fS1XXFxkXFxkLVxcZC8sIHRydWVdLFxuICBbJ0dHR0ctW1ddV1cnLCAvXFxkezR9LVdcXGRcXGQvLCBmYWxzZV0sXG4gIFsnWVlZWS1EREQnLCAvXFxkezR9LVxcZHszfS8sIHRydWVdLFxuICBbJ1lZWVktTU0nLCAvXFxkezR9LVxcZFxcZC8sIGZhbHNlXSxcbiAgWydZWVlZWVlNTUREJywgL1srLV1cXGR7MTB9LywgdHJ1ZV0sXG4gIFsnWVlZWU1NREQnLCAvXFxkezh9LywgdHJ1ZV0sXG4gIC8vIFlZWVlNTSBpcyBOT1QgYWxsb3dlZCBieSB0aGUgc3RhbmRhcmRcbiAgWydHR0dHW1ddV1dFJywgL1xcZHs0fVdcXGR7M30vLCB0cnVlXSxcbiAgWydHR0dHW1ddV1cnLCAvXFxkezR9V1xcZHsyfS8sIGZhbHNlXSxcbiAgWydZWVlZREREJywgL1xcZHs3fS8sIHRydWVdXG5dO1xuXG4vLyBpc28gdGltZSBmb3JtYXRzIGFuZCByZWdleGVzXG5jb25zdCBpc29UaW1lczogW3N0cmluZywgUmVnRXhwXVtdID0gW1xuICBbJ0hIOm1tOnNzLlNTU1MnLCAvXFxkXFxkOlxcZFxcZDpcXGRcXGRcXC5cXGQrL10sXG4gIFsnSEg6bW06c3MsU1NTUycsIC9cXGRcXGQ6XFxkXFxkOlxcZFxcZCxcXGQrL10sXG4gIFsnSEg6bW06c3MnLCAvXFxkXFxkOlxcZFxcZDpcXGRcXGQvXSxcbiAgWydISDptbScsIC9cXGRcXGQ6XFxkXFxkL10sXG4gIFsnSEhtbXNzLlNTU1MnLCAvXFxkXFxkXFxkXFxkXFxkXFxkXFwuXFxkKy9dLFxuICBbJ0hIbW1zcyxTU1NTJywgL1xcZFxcZFxcZFxcZFxcZFxcZCxcXGQrL10sXG4gIFsnSEhtbXNzJywgL1xcZFxcZFxcZFxcZFxcZFxcZC9dLFxuICBbJ0hIbW0nLCAvXFxkXFxkXFxkXFxkL10sXG4gIFsnSEgnLCAvXFxkXFxkL11cbl07XG5cbmNvbnN0IGFzcE5ldEpzb25SZWdleCA9IC9eXFwvP0RhdGVcXCgoXFwtP1xcZCspL2k7XG5cbmNvbnN0IG9ic09mZnNldHM6IHsgW2tleTogc3RyaW5nXTogbnVtYmVyIH0gPSB7XG4gIFVUOiAwLFxuICBHTVQ6IDAsXG4gIEVEVDogLTQgKiA2MCxcbiAgRVNUOiAtNSAqIDYwLFxuICBDRFQ6IC01ICogNjAsXG4gIENTVDogLTYgKiA2MCxcbiAgTURUOiAtNiAqIDYwLFxuICBNU1Q6IC03ICogNjAsXG4gIFBEVDogLTcgKiA2MCxcbiAgUFNUOiAtOCAqIDYwXG59O1xuXG4vLyBSRkMgMjgyMiByZWdleDogRm9yIGRldGFpbHMgc2VlIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMyODIyI3NlY3Rpb24tMy4zXG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmVcbmNvbnN0IHJmYzI4MjIgPSAvXig/OihNb258VHVlfFdlZHxUaHV8RnJpfFNhdHxTdW4pLD9cXHMpPyhcXGR7MSwyfSlcXHMoSmFufEZlYnxNYXJ8QXByfE1heXxKdW58SnVsfEF1Z3xTZXB8T2N0fE5vdnxEZWMpXFxzKFxcZHsyLDR9KVxccyhcXGRcXGQpOihcXGRcXGQpKD86OihcXGRcXGQpKT9cXHMoPzooVVR8R01UfFtFQ01QXVtTRF1UKXwoW1p6XSl8KFsrLV1cXGR7NH0pKSQvO1xuXG4vLyBkYXRlIGZyb20gaXNvIGZvcm1hdFxuZXhwb3J0IGZ1bmN0aW9uIGNvbmZpZ0Zyb21JU08oY29uZmlnOiBEYXRlUGFyc2luZ0NvbmZpZyk6IERhdGVQYXJzaW5nQ29uZmlnIHtcbiAgaWYgKCFpc1N0cmluZyhjb25maWcuX2kpKSB7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfVxuXG4gIGNvbnN0IGlucHV0ID0gY29uZmlnLl9pO1xuICBjb25zdCBtYXRjaCA9IGV4dGVuZGVkSXNvUmVnZXguZXhlYyhpbnB1dCkgfHwgYmFzaWNJc29SZWdleC5leGVjKGlucHV0KTtcblxuXG4gIGxldCBhbGxvd1RpbWU7XG4gIGxldCBkYXRlRm9ybWF0O1xuICBsZXQgdGltZUZvcm1hdDtcbiAgbGV0IHR6Rm9ybWF0O1xuXG4gIGlmICghbWF0Y2gpIHtcbiAgICBjb25maWcuX2lzVmFsaWQgPSBmYWxzZTtcblxuICAgIHJldHVybiBjb25maWc7XG4gIH1cblxuICAvLyBnZXRQYXJzaW5nRmxhZ3MoY29uZmlnKS5pc28gPSB0cnVlO1xuICBsZXQgaTtcbiAgbGV0IGw7XG4gIGZvciAoaSA9IDAsIGwgPSBpc29EYXRlcy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICBpZiAoaXNvRGF0ZXNbaV1bMV0uZXhlYyhtYXRjaFsxXSkpIHtcbiAgICAgIGRhdGVGb3JtYXQgPSBpc29EYXRlc1tpXVswXTtcbiAgICAgIGFsbG93VGltZSA9IGlzb0RhdGVzW2ldWzJdICE9PSBmYWxzZTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIGlmIChkYXRlRm9ybWF0ID09IG51bGwpIHtcbiAgICBjb25maWcuX2lzVmFsaWQgPSBmYWxzZTtcblxuICAgIHJldHVybiBjb25maWc7XG4gIH1cblxuICBpZiAobWF0Y2hbM10pIHtcbiAgICBmb3IgKGkgPSAwLCBsID0gaXNvVGltZXMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICBpZiAoaXNvVGltZXNbaV1bMV0uZXhlYyhtYXRjaFszXSkpIHtcbiAgICAgICAgLy8gbWF0Y2hbMl0gc2hvdWxkIGJlICdUJyBvciBzcGFjZVxuICAgICAgICB0aW1lRm9ybWF0ID0gKG1hdGNoWzJdIHx8ICcgJykgKyBpc29UaW1lc1tpXVswXTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRpbWVGb3JtYXQgPT0gbnVsbCkge1xuICAgICAgY29uZmlnLl9pc1ZhbGlkID0gZmFsc2U7XG5cbiAgICAgIHJldHVybiBjb25maWc7XG4gICAgfVxuXG4gIH1cbiAgaWYgKCFhbGxvd1RpbWUgJiYgdGltZUZvcm1hdCAhPSBudWxsKSB7XG4gICAgY29uZmlnLl9pc1ZhbGlkID0gZmFsc2U7XG5cbiAgICByZXR1cm4gY29uZmlnO1xuICB9XG5cbiAgaWYgKG1hdGNoWzRdKSB7XG4gICAgaWYgKHR6UmVnZXguZXhlYyhtYXRjaFs0XSkpIHtcbiAgICAgIHR6Rm9ybWF0ID0gJ1onO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25maWcuX2lzVmFsaWQgPSBmYWxzZTtcblxuICAgICAgcmV0dXJuIGNvbmZpZztcbiAgICB9XG4gIH1cblxuICBjb25maWcuX2YgPSBkYXRlRm9ybWF0ICsgKHRpbWVGb3JtYXQgfHwgJycpICsgKHR6Rm9ybWF0IHx8ICcnKTtcblxuICByZXR1cm4gY29uZmlnRnJvbVN0cmluZ0FuZEZvcm1hdChjb25maWcpO1xufVxuXG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmVcbmZ1bmN0aW9uIGV4dHJhY3RGcm9tUkZDMjgyMlN0cmluZ3MoeWVhclN0cjogc3RyaW5nLCBtb250aFN0cjogc3RyaW5nLCBkYXlTdHI6IHN0cmluZywgaG91clN0cjogc3RyaW5nLCBtaW51dGVTdHI6IHN0cmluZywgc2Vjb25kU3RyOiBzdHJpbmcpOiBEYXRlQXJyYXkge1xuICBjb25zdCByZXN1bHQgPSBbXG4gICAgdW50cnVuY2F0ZVllYXIoeWVhclN0ciksXG4gICAgZGVmYXVsdExvY2FsZU1vbnRoc1Nob3J0LmluZGV4T2YobW9udGhTdHIpLFxuICAgIHBhcnNlSW50KGRheVN0ciwgMTApLFxuICAgIHBhcnNlSW50KGhvdXJTdHIsIDEwKSxcbiAgICBwYXJzZUludChtaW51dGVTdHIsIDEwKVxuICBdO1xuXG4gIGlmIChzZWNvbmRTdHIpIHtcbiAgICByZXN1bHQucHVzaChwYXJzZUludChzZWNvbmRTdHIsIDEwKSk7XG4gIH1cblxuICByZXR1cm4gcmVzdWx0O1xufVxuXG5mdW5jdGlvbiB1bnRydW5jYXRlWWVhcih5ZWFyU3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICBjb25zdCB5ZWFyID0gcGFyc2VJbnQoeWVhclN0ciwgMTApO1xuXG4gIHJldHVybiB5ZWFyIDw9IDQ5ID8geWVhciArIDIwMDAgOiB5ZWFyO1xufVxuXG5mdW5jdGlvbiBwcmVwcm9jZXNzUkZDMjgyMihzdHI6IHN0cmluZyk6IHN0cmluZyB7XG4gIC8vIFJlbW92ZSBjb21tZW50cyBhbmQgZm9sZGluZyB3aGl0ZXNwYWNlIGFuZCByZXBsYWNlIG11bHRpcGxlLXNwYWNlcyB3aXRoIGEgc2luZ2xlIHNwYWNlXG4gIHJldHVybiBzdHJcbiAgICAucmVwbGFjZSgvXFwoW14pXSpcXCl8W1xcblxcdF0vZywgJyAnKVxuICAgIC5yZXBsYWNlKC8oXFxzXFxzKykvZywgJyAnKS50cmltKCk7XG59XG5cbmZ1bmN0aW9uIGNoZWNrV2Vla2RheSh3ZWVrZGF5U3RyOiBzdHJpbmcsIHBhcnNlZElucHV0OiBEYXRlQXJyYXksIGNvbmZpZzogRGF0ZVBhcnNpbmdDb25maWcpOiBib29sZWFuIHtcbiAgaWYgKHdlZWtkYXlTdHIpIHtcbiAgICAvLyBUT0RPOiBSZXBsYWNlIHRoZSB2YW5pbGxhIEpTIERhdGUgb2JqZWN0IHdpdGggYW4gaW5kZXBlbnRlbnQgZGF5LW9mLXdlZWsgY2hlY2suXG4gICAgY29uc3Qgd2Vla2RheVByb3ZpZGVkID0gZGVmYXVsdExvY2FsZVdlZWtkYXlzU2hvcnQuaW5kZXhPZih3ZWVrZGF5U3RyKTtcbiAgICBjb25zdCB3ZWVrZGF5QWN0dWFsID0gbmV3IERhdGUocGFyc2VkSW5wdXRbMF0sIHBhcnNlZElucHV0WzFdLCBwYXJzZWRJbnB1dFsyXSkuZ2V0RGF5KCk7XG4gICAgaWYgKHdlZWtkYXlQcm92aWRlZCAhPT0gd2Vla2RheUFjdHVhbCkge1xuICAgICAgZ2V0UGFyc2luZ0ZsYWdzKGNvbmZpZykud2Vla2RheU1pc21hdGNoID0gdHJ1ZTtcbiAgICAgIGNvbmZpZy5faXNWYWxpZCA9IGZhbHNlO1xuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRydWU7XG59XG5cbmZ1bmN0aW9uIGNhbGN1bGF0ZU9mZnNldChvYnNPZmZzZXQ6IHN0cmluZywgbWlsaXRhcnlPZmZzZXQ6IHN0cmluZywgbnVtT2Zmc2V0OiBzdHJpbmcpIHtcbiAgaWYgKG9ic09mZnNldCkge1xuICAgIHJldHVybiBvYnNPZmZzZXRzW29ic09mZnNldF07XG4gIH0gZWxzZSBpZiAobWlsaXRhcnlPZmZzZXQpIHtcbiAgICAvLyB0aGUgb25seSBhbGxvd2VkIG1pbGl0YXJ5IHR6IGlzIFpcbiAgICByZXR1cm4gMDtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBobSA9IHBhcnNlSW50KG51bU9mZnNldCwgMTApO1xuICAgIGNvbnN0IG0gPSBobSAlIDEwMDtcbiAgICBjb25zdCBoID0gKGhtIC0gbSkgLyAxMDA7XG5cbiAgICByZXR1cm4gaCAqIDYwICsgbTtcbiAgfVxufVxuXG4vLyBkYXRlIGFuZCB0aW1lIGZyb20gcmVmIDI4MjIgZm9ybWF0XG5leHBvcnQgZnVuY3Rpb24gY29uZmlnRnJvbVJGQzI4MjIoY29uZmlnOiBEYXRlUGFyc2luZ0NvbmZpZyk6IERhdGVQYXJzaW5nQ29uZmlnIHtcbiAgaWYgKCFpc1N0cmluZyhjb25maWcuX2kpKSB7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfVxuXG4gIGNvbnN0IG1hdGNoID0gcmZjMjgyMi5leGVjKHByZXByb2Nlc3NSRkMyODIyKGNvbmZpZy5faSkpO1xuXG4gIGlmICghbWF0Y2gpIHtcbiAgICByZXR1cm4gbWFya0ludmFsaWQoY29uZmlnKTtcbiAgfVxuXG4gIGNvbnN0IHBhcnNlZEFycmF5ID0gZXh0cmFjdEZyb21SRkMyODIyU3RyaW5ncyhtYXRjaFs0XSwgbWF0Y2hbM10sIG1hdGNoWzJdLCBtYXRjaFs1XSwgbWF0Y2hbNl0sIG1hdGNoWzddKTtcbiAgaWYgKCFjaGVja1dlZWtkYXkobWF0Y2hbMV0sIHBhcnNlZEFycmF5LCBjb25maWcpKSB7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfVxuXG4gIGNvbmZpZy5fYSA9IHBhcnNlZEFycmF5O1xuICBjb25maWcuX3R6bSA9IGNhbGN1bGF0ZU9mZnNldChtYXRjaFs4XSwgbWF0Y2hbOV0sIG1hdGNoWzEwXSk7XG5cbiAgY29uZmlnLl9kID0gY3JlYXRlVVRDRGF0ZS5hcHBseShudWxsLCBjb25maWcuX2EpO1xuICBjb25maWcuX2Quc2V0VVRDTWludXRlcyhjb25maWcuX2QuZ2V0VVRDTWludXRlcygpIC0gY29uZmlnLl90em0pO1xuXG4gIGdldFBhcnNpbmdGbGFncyhjb25maWcpLnJmYzI4MjIgPSB0cnVlO1xuXG4gIHJldHVybiBjb25maWc7XG59XG5cbi8vIGRhdGUgZnJvbSBpc28gZm9ybWF0IG9yIGZhbGxiYWNrXG5leHBvcnQgZnVuY3Rpb24gY29uZmlnRnJvbVN0cmluZyhjb25maWc6IERhdGVQYXJzaW5nQ29uZmlnKTogRGF0ZVBhcnNpbmdDb25maWcge1xuICBpZiAoIWlzU3RyaW5nKGNvbmZpZy5faSkpIHtcbiAgICByZXR1cm4gY29uZmlnO1xuICB9XG5cbiAgY29uc3QgbWF0Y2hlZCA9IGFzcE5ldEpzb25SZWdleC5leGVjKGNvbmZpZy5faSk7XG5cbiAgaWYgKG1hdGNoZWQgIT09IG51bGwpIHtcbiAgICBjb25maWcuX2QgPSBuZXcgRGF0ZSgrbWF0Y2hlZFsxXSk7XG5cbiAgICByZXR1cm4gY29uZmlnO1xuICB9XG5cbiAgLy8gdG9kbzogdXBkYXRlIGxvZ2ljIHByb2Nlc3NpbmdcbiAgLy8gaXNJU08gLT4gY29uZmlnRnJvbUlTT1xuICAvLyBpc1JGQyAtPiBjb25maWdGcm9tUkZDXG5cbiAgY29uZmlnRnJvbUlTTyhjb25maWcpO1xuICBpZiAoY29uZmlnLl9pc1ZhbGlkID09PSBmYWxzZSkge1xuICAgIGRlbGV0ZSBjb25maWcuX2lzVmFsaWQ7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfVxuXG4gIGNvbmZpZ0Zyb21SRkMyODIyKGNvbmZpZyk7XG4gIGlmIChjb25maWcuX2lzVmFsaWQgPT09IGZhbHNlKSB7XG4gICAgZGVsZXRlIGNvbmZpZy5faXNWYWxpZDtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gY29uZmlnO1xuICB9XG5cbiAgLy8gRmluYWwgYXR0ZW1wdCwgdXNlIElucHV0IEZhbGxiYWNrXG4gIC8vIGhvb2tzLmNyZWF0ZUZyb21JbnB1dEZhbGxiYWNrKGNvbmZpZyk7XG4gIHJldHVybiBjcmVhdGVJbnZhbGlkKGNvbmZpZyk7XG59XG5cbi8vIGhvb2tzLmNyZWF0ZUZyb21JbnB1dEZhbGxiYWNrID0gZGVwcmVjYXRlKFxuLy8gICAgICd2YWx1ZSBwcm92aWRlZCBpcyBub3QgaW4gYSByZWNvZ25pemVkIFJGQzI4MjIgb3IgSVNPIGZvcm1hdC4gbW9tZW50IGNvbnN0cnVjdGlvbiBmYWxscyBiYWNrIHRvIGpzIERhdGUoKSwgJyArXG4vLyAgICAgJ3doaWNoIGlzIG5vdCByZWxpYWJsZSBhY3Jvc3MgYWxsIGJyb3dzZXJzIGFuZCB2ZXJzaW9ucy4gTm9uIFJGQzI4MjIvSVNPIGRhdGUgZm9ybWF0cyBhcmUgJyArXG4vLyAgICAgJ2Rpc2NvdXJhZ2VkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gYW4gdXBjb21pbmcgbWFqb3IgcmVsZWFzZS4gUGxlYXNlIHJlZmVyIHRvICcgK1xuLy8gICAgICdodHRwOi8vbW9tZW50anMuY29tL2d1aWRlcy8jL3dhcm5pbmdzL2pzLWRhdGUvIGZvciBtb3JlIGluZm8uJyxcbi8vICAgICBmdW5jdGlvbiAoY29uZmlnKSB7XG4vLyAgICAgICAgIGNvbmZpZy5fZCA9IG5ldyBEYXRlKGNvbmZpZy5faSArIChjb25maWcuX3VzZVVUQyA/ICcgVVRDJyA6ICcnKSk7XG4vLyAgICAgfVxuLy8gKTtcbiJdfQ==
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { createLocalOrUTC } from './from-anything';
|
|
2
|
-
import { isDate } from '../utils/type-checks';
|
|
3
|
-
export function parseDate(input, format, localeKey, strict, isUTC) {
|
|
4
|
-
if (isDate(input)) {
|
|
5
|
-
return input;
|
|
6
|
-
}
|
|
7
|
-
const config = createLocalOrUTC(input, format, localeKey, strict, isUTC);
|
|
8
|
-
return config._d;
|
|
9
|
-
}
|
|
10
|
-
export function utcAsLocal(date) {
|
|
11
|
-
if (!(date instanceof Date)) {
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
return new Date(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate(), date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds(), date.getUTCMilliseconds());
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2Nocm9ub3MvY3JlYXRlL2xvY2FsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUU5QyxNQUFNLFVBQVUsU0FBUyxDQUFDLEtBQWdCLEVBQUUsTUFBMEIsRUFDNUMsU0FBa0IsRUFBRSxNQUFnQixFQUFFLEtBQWU7SUFDN0UsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDakIsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUVELE1BQU0sTUFBTSxHQUFHLGdCQUFnQixDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUV6RSxPQUFPLE1BQU0sQ0FBQyxFQUFFLENBQUM7QUFDbkIsQ0FBQztBQUVELE1BQU0sVUFBVSxVQUFVLENBQUMsSUFBSTtJQUM3QixJQUFJLENBQUMsQ0FBQyxJQUFJLFlBQVksSUFBSSxDQUFDLEVBQUU7UUFDM0IsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUVELE9BQU8sSUFBSSxJQUFJLENBQ2IsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUNyQixJQUFJLENBQUMsV0FBVyxFQUFFLEVBQ2xCLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFDakIsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUNsQixJQUFJLENBQUMsYUFBYSxFQUFFLEVBQ3BCLElBQUksQ0FBQyxhQUFhLEVBQUUsRUFDcEIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQzFCLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlTG9jYWxPclVUQyB9IGZyb20gJy4vZnJvbS1hbnl0aGluZyc7XG5pbXBvcnQgeyBEYXRlSW5wdXQgfSBmcm9tICcuLi90ZXN0L2NoYWluJztcbmltcG9ydCB7IGlzRGF0ZSB9IGZyb20gJy4uL3V0aWxzL3R5cGUtY2hlY2tzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlRGF0ZShpbnB1dDogRGF0ZUlucHV0LCBmb3JtYXQ/OiBzdHJpbmcgfCBzdHJpbmdbXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxlS2V5Pzogc3RyaW5nLCBzdHJpY3Q/OiBib29sZWFuLCBpc1VUQz86IGJvb2xlYW4pOiBEYXRlIHtcbiAgaWYgKGlzRGF0ZShpbnB1dCkpIHtcbiAgICByZXR1cm4gaW5wdXQ7XG4gIH1cblxuICBjb25zdCBjb25maWcgPSBjcmVhdGVMb2NhbE9yVVRDKGlucHV0LCBmb3JtYXQsIGxvY2FsZUtleSwgc3RyaWN0LCBpc1VUQyk7XG5cbiAgcmV0dXJuIGNvbmZpZy5fZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHV0Y0FzTG9jYWwoZGF0ZSkge1xuICBpZiAoIShkYXRlIGluc3RhbmNlb2YgRGF0ZSkpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiBuZXcgRGF0ZShcbiAgICBkYXRlLmdldFVUQ0Z1bGxZZWFyKCksXG4gICAgZGF0ZS5nZXRVVENNb250aCgpLFxuICAgIGRhdGUuZ2V0VVRDRGF0ZSgpLFxuICAgIGRhdGUuZ2V0VVRDSG91cnMoKSxcbiAgICBkYXRlLmdldFVUQ01pbnV0ZXMoKSxcbiAgICBkYXRlLmdldFVUQ1NlY29uZHMoKSxcbiAgICBkYXRlLmdldFVUQ01pbGxpc2Vjb25kcygpXG4gICk7XG59XG4iXX0=
|