mis-crystal-design-system 14.0.55-test-v6 → 14.0.56
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/dynamic-form/dynamic-form.component.d.ts +10 -2
- package/esm2020/dynamic-form/dynamic-form.component.mjs +471 -213
- package/esm2020/table/table.component.mjs +2 -2
- package/fesm2015/mis-crystal-design-system-dynamic-form.mjs +524 -212
- package/fesm2015/mis-crystal-design-system-dynamic-form.mjs.map +1 -1
- package/fesm2015/mis-crystal-design-system-table.mjs +2 -2
- package/fesm2015/mis-crystal-design-system-table.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/fesm2020/mis-crystal-design-system-table.mjs +2 -2
- package/fesm2020/mis-crystal-design-system-table.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,40 +0,0 @@
|
|
|
1
|
-
import { defaultDayOfMonthOrdinalParse, defaultLocaleMonths, defaultLocaleMonthsShort, defaultLocaleWeekdays, defaultLocaleWeekdaysMin, defaultLocaleWeekdaysShort, defaultLongDateFormat, defaultOrdinal } from './locale.class';
|
|
2
|
-
import { defaultCalendar } from './calendar';
|
|
3
|
-
export const defaultInvalidDate = 'Invalid date';
|
|
4
|
-
export const defaultLocaleWeek = {
|
|
5
|
-
dow: 0,
|
|
6
|
-
doy: 6 // The week that contains Jan 1st is the first week of the year.
|
|
7
|
-
};
|
|
8
|
-
export const defaultLocaleMeridiemParse = /[ap]\.?m?\.?/i;
|
|
9
|
-
export const defaultRelativeTime = {
|
|
10
|
-
future: 'in %s',
|
|
11
|
-
past: '%s ago',
|
|
12
|
-
s: 'a few seconds',
|
|
13
|
-
ss: '%d seconds',
|
|
14
|
-
m: 'a minute',
|
|
15
|
-
mm: '%d minutes',
|
|
16
|
-
h: 'an hour',
|
|
17
|
-
hh: '%d hours',
|
|
18
|
-
d: 'a day',
|
|
19
|
-
dd: '%d days',
|
|
20
|
-
M: 'a month',
|
|
21
|
-
MM: '%d months',
|
|
22
|
-
y: 'a year',
|
|
23
|
-
yy: '%d years'
|
|
24
|
-
};
|
|
25
|
-
export const baseConfig = {
|
|
26
|
-
calendar: defaultCalendar,
|
|
27
|
-
longDateFormat: defaultLongDateFormat,
|
|
28
|
-
invalidDate: defaultInvalidDate,
|
|
29
|
-
ordinal: defaultOrdinal,
|
|
30
|
-
dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,
|
|
31
|
-
relativeTime: defaultRelativeTime,
|
|
32
|
-
months: defaultLocaleMonths,
|
|
33
|
-
monthsShort: defaultLocaleMonthsShort,
|
|
34
|
-
week: defaultLocaleWeek,
|
|
35
|
-
weekdays: defaultLocaleWeekdays,
|
|
36
|
-
weekdaysMin: defaultLocaleWeekdaysMin,
|
|
37
|
-
weekdaysShort: defaultLocaleWeekdaysShort,
|
|
38
|
-
meridiemParse: defaultLocaleMeridiemParse
|
|
39
|
-
};
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxlLmRlZmF1bHRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9jaHJvbm9zL2xvY2FsZS9sb2NhbGUuZGVmYXVsdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLDZCQUE2QixFQUM3QixtQkFBbUIsRUFDbkIsd0JBQXdCLEVBQ3hCLHFCQUFxQixFQUNyQix3QkFBd0IsRUFDeEIsMEJBQTBCLEVBQUUscUJBQXFCLEVBQUUsY0FBYyxFQUVsRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFN0MsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsY0FBYyxDQUFDO0FBRWpELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHO0lBQy9CLEdBQUcsRUFBRSxDQUFDO0lBQ04sR0FBRyxFQUFFLENBQUMsQ0FBQyxnRUFBZ0U7Q0FDeEUsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLGVBQWUsQ0FBQztBQUUxRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBNEI7SUFDMUQsTUFBTSxFQUFHLE9BQU87SUFDaEIsSUFBSSxFQUFLLFFBQVE7SUFDakIsQ0FBQyxFQUFJLGVBQWU7SUFDcEIsRUFBRSxFQUFHLFlBQVk7SUFDakIsQ0FBQyxFQUFJLFVBQVU7SUFDZixFQUFFLEVBQUcsWUFBWTtJQUNqQixDQUFDLEVBQUksU0FBUztJQUNkLEVBQUUsRUFBRyxVQUFVO0lBQ2YsQ0FBQyxFQUFJLE9BQU87SUFDWixFQUFFLEVBQUcsU0FBUztJQUNkLENBQUMsRUFBSSxTQUFTO0lBQ2QsRUFBRSxFQUFHLFdBQVc7SUFDaEIsQ0FBQyxFQUFJLFFBQVE7SUFDYixFQUFFLEVBQUcsVUFBVTtDQUNoQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFlO0lBQ3BDLFFBQVEsRUFBRSxlQUFlO0lBQ3pCLGNBQWMsRUFBRSxxQkFBcUI7SUFDckMsV0FBVyxFQUFFLGtCQUFrQjtJQUMvQixPQUFPLEVBQUUsY0FBYztJQUN2QixzQkFBc0IsRUFBRSw2QkFBNkI7SUFDckQsWUFBWSxFQUFFLG1CQUFtQjtJQUVqQyxNQUFNLEVBQUUsbUJBQW1CO0lBQzNCLFdBQVcsRUFBRSx3QkFBd0I7SUFFckMsSUFBSSxFQUFFLGlCQUFpQjtJQUV2QixRQUFRLEVBQUUscUJBQXFCO0lBQy9CLFdBQVcsRUFBRSx3QkFBd0I7SUFDckMsYUFBYSxFQUFFLDBCQUEwQjtJQUV6QyxhQUFhLEVBQUUsMEJBQTBCO0NBQzFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBkZWZhdWx0RGF5T2ZNb250aE9yZGluYWxQYXJzZSxcbiAgZGVmYXVsdExvY2FsZU1vbnRocyxcbiAgZGVmYXVsdExvY2FsZU1vbnRoc1Nob3J0LFxuICBkZWZhdWx0TG9jYWxlV2Vla2RheXMsXG4gIGRlZmF1bHRMb2NhbGVXZWVrZGF5c01pbixcbiAgZGVmYXVsdExvY2FsZVdlZWtkYXlzU2hvcnQsIGRlZmF1bHRMb25nRGF0ZUZvcm1hdCwgZGVmYXVsdE9yZGluYWwsXG4gIExvY2FsZURhdGFcbn0gZnJvbSAnLi9sb2NhbGUuY2xhc3MnO1xuaW1wb3J0IHsgZGVmYXVsdENhbGVuZGFyIH0gZnJvbSAnLi9jYWxlbmRhcic7XG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0SW52YWxpZERhdGUgPSAnSW52YWxpZCBkYXRlJztcblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRMb2NhbGVXZWVrID0ge1xuICBkb3c6IDAsIC8vIFN1bmRheSBpcyB0aGUgZmlyc3QgZGF5IG9mIHRoZSB3ZWVrLlxuICBkb3k6IDYgLy8gVGhlIHdlZWsgdGhhdCBjb250YWlucyBKYW4gMXN0IGlzIHRoZSBmaXJzdCB3ZWVrIG9mIHRoZSB5ZWFyLlxufTtcblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRMb2NhbGVNZXJpZGllbVBhcnNlID0gL1thcF1cXC4/bT9cXC4/L2k7XG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0UmVsYXRpdmVUaW1lOiB7W2tleTogc3RyaW5nXTogc3RyaW5nfSA9IHtcbiAgZnV0dXJlIDogJ2luICVzJyxcbiAgcGFzdCAgIDogJyVzIGFnbycsXG4gIHMgIDogJ2EgZmV3IHNlY29uZHMnLFxuICBzcyA6ICclZCBzZWNvbmRzJyxcbiAgbSAgOiAnYSBtaW51dGUnLFxuICBtbSA6ICclZCBtaW51dGVzJyxcbiAgaCAgOiAnYW4gaG91cicsXG4gIGhoIDogJyVkIGhvdXJzJyxcbiAgZCAgOiAnYSBkYXknLFxuICBkZCA6ICclZCBkYXlzJyxcbiAgTSAgOiAnYSBtb250aCcsXG4gIE1NIDogJyVkIG1vbnRocycsXG4gIHkgIDogJ2EgeWVhcicsXG4gIHl5IDogJyVkIHllYXJzJ1xufTtcblxuZXhwb3J0IGNvbnN0IGJhc2VDb25maWc6IExvY2FsZURhdGEgPSB7XG4gIGNhbGVuZGFyOiBkZWZhdWx0Q2FsZW5kYXIsXG4gIGxvbmdEYXRlRm9ybWF0OiBkZWZhdWx0TG9uZ0RhdGVGb3JtYXQsXG4gIGludmFsaWREYXRlOiBkZWZhdWx0SW52YWxpZERhdGUsXG4gIG9yZGluYWw6IGRlZmF1bHRPcmRpbmFsLFxuICBkYXlPZk1vbnRoT3JkaW5hbFBhcnNlOiBkZWZhdWx0RGF5T2ZNb250aE9yZGluYWxQYXJzZSxcbiAgcmVsYXRpdmVUaW1lOiBkZWZhdWx0UmVsYXRpdmVUaW1lLFxuXG4gIG1vbnRoczogZGVmYXVsdExvY2FsZU1vbnRocyxcbiAgbW9udGhzU2hvcnQ6IGRlZmF1bHRMb2NhbGVNb250aHNTaG9ydCxcblxuICB3ZWVrOiBkZWZhdWx0TG9jYWxlV2VlayxcblxuICB3ZWVrZGF5czogZGVmYXVsdExvY2FsZVdlZWtkYXlzLFxuICB3ZWVrZGF5c01pbjogZGVmYXVsdExvY2FsZVdlZWtkYXlzTWluLFxuICB3ZWVrZGF5c1Nob3J0OiBkZWZhdWx0TG9jYWxlV2Vla2RheXNTaG9ydCxcblxuICBtZXJpZGllbVBhcnNlOiBkZWZhdWx0TG9jYWxlTWVyaWRpZW1QYXJzZVxufTtcbiJdfQ==
|
|
@@ -1,229 +0,0 @@
|
|
|
1
|
-
// internal storage for locale config files
|
|
2
|
-
import { Locale } from './locale.class';
|
|
3
|
-
import { baseConfig } from './locale.defaults';
|
|
4
|
-
import { hasOwnProp, isArray, isObject, isString, isUndefined, toInt } from '../utils/type-checks';
|
|
5
|
-
import { compareArrays } from '../utils/compare-arrays';
|
|
6
|
-
import { initWeek } from '../units/week';
|
|
7
|
-
import { initWeekYear } from '../units/week-year';
|
|
8
|
-
import { initYear } from '../units/year';
|
|
9
|
-
import { initTimezone } from '../units/timezone';
|
|
10
|
-
import { initTimestamp } from '../units/timestamp';
|
|
11
|
-
import { initSecond } from '../units/second';
|
|
12
|
-
import { initQuarter } from '../units/quarter';
|
|
13
|
-
import { initOffset } from '../units/offset';
|
|
14
|
-
import { initMinute } from '../units/minute';
|
|
15
|
-
import { initMillisecond } from '../units/millisecond';
|
|
16
|
-
import { initMonth } from '../units/month';
|
|
17
|
-
import { initHour } from '../units/hour';
|
|
18
|
-
import { initDayOfYear } from '../units/day-of-year';
|
|
19
|
-
import { initDayOfWeek } from '../units/day-of-week';
|
|
20
|
-
import { initDayOfMonth } from '../units/day-of-month';
|
|
21
|
-
const locales = {};
|
|
22
|
-
const localeFamilies = {};
|
|
23
|
-
let globalLocale;
|
|
24
|
-
function normalizeLocale(key) {
|
|
25
|
-
return key ? key.toLowerCase().replace('_', '-') : key;
|
|
26
|
-
}
|
|
27
|
-
// pick the locale from the array
|
|
28
|
-
// try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each
|
|
29
|
-
// substring from most specific to least,
|
|
30
|
-
// but move to the next array item if it's a more specific variant than the current root
|
|
31
|
-
function chooseLocale(names) {
|
|
32
|
-
let next;
|
|
33
|
-
let locale;
|
|
34
|
-
let i = 0;
|
|
35
|
-
while (i < names.length) {
|
|
36
|
-
const split = normalizeLocale(names[i]).split('-');
|
|
37
|
-
let j = split.length;
|
|
38
|
-
next = normalizeLocale(names[i + 1]);
|
|
39
|
-
next = next ? next.split('-') : null;
|
|
40
|
-
while (j > 0) {
|
|
41
|
-
locale = loadLocale(split.slice(0, j).join('-'));
|
|
42
|
-
if (locale) {
|
|
43
|
-
return locale;
|
|
44
|
-
}
|
|
45
|
-
if (next && next.length >= j && compareArrays(split, next, true) >= j - 1) {
|
|
46
|
-
// the next array item is better than a shallower substring of this one
|
|
47
|
-
break;
|
|
48
|
-
}
|
|
49
|
-
j--;
|
|
50
|
-
}
|
|
51
|
-
i++;
|
|
52
|
-
}
|
|
53
|
-
return null;
|
|
54
|
-
}
|
|
55
|
-
export function mergeConfigs(parentConfig, childConfig) {
|
|
56
|
-
const res = Object.assign({}, parentConfig);
|
|
57
|
-
for (const childProp in childConfig) {
|
|
58
|
-
if (!hasOwnProp(childConfig, childProp)) {
|
|
59
|
-
continue;
|
|
60
|
-
}
|
|
61
|
-
if (isObject(parentConfig[childProp]) && isObject(childConfig[childProp])) {
|
|
62
|
-
res[childProp] = {};
|
|
63
|
-
Object.assign(res[childProp], parentConfig[childProp]);
|
|
64
|
-
Object.assign(res[childProp], childConfig[childProp]);
|
|
65
|
-
}
|
|
66
|
-
else if (childConfig[childProp] != null) {
|
|
67
|
-
res[childProp] = childConfig[childProp];
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
delete res[childProp];
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
for (const parentProp in parentConfig) {
|
|
74
|
-
if (hasOwnProp(parentConfig, parentProp) &&
|
|
75
|
-
!hasOwnProp(childConfig, parentProp) &&
|
|
76
|
-
isObject(parentConfig[parentProp])) {
|
|
77
|
-
// make sure changes to properties don't modify parent config
|
|
78
|
-
res[parentProp] = Object.assign({}, res[parentProp]);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
return res;
|
|
82
|
-
}
|
|
83
|
-
function loadLocale(name) {
|
|
84
|
-
// no way!
|
|
85
|
-
/* var oldLocale = null;
|
|
86
|
-
// TODO: Find a better way to register and load all the locales in Node
|
|
87
|
-
if (!locales[name] && (typeof module !== 'undefined') &&
|
|
88
|
-
module && module.exports) {
|
|
89
|
-
try {
|
|
90
|
-
oldLocale = globalLocale._abbr;
|
|
91
|
-
var aliasedRequire = require;
|
|
92
|
-
aliasedRequire('./locale/' + name);
|
|
93
|
-
getSetGlobalLocale(oldLocale);
|
|
94
|
-
} catch (e) {}
|
|
95
|
-
}*/
|
|
96
|
-
if (!locales[name]) {
|
|
97
|
-
// tslint:disable-next-line
|
|
98
|
-
console.error(`Khronos locale error: please load locale "${name}" before using it`);
|
|
99
|
-
// throw new Error(`Khronos locale error: please load locale "${name}" before using it`);
|
|
100
|
-
}
|
|
101
|
-
return locales[name];
|
|
102
|
-
}
|
|
103
|
-
// This function will load locale and then set the global locale. If
|
|
104
|
-
// no arguments are passed in, it will simply return the current global
|
|
105
|
-
// locale key.
|
|
106
|
-
export function getSetGlobalLocale(key, values) {
|
|
107
|
-
let data;
|
|
108
|
-
if (key) {
|
|
109
|
-
if (isUndefined(values)) {
|
|
110
|
-
data = getLocale(key);
|
|
111
|
-
}
|
|
112
|
-
else if (isString(key)) {
|
|
113
|
-
data = defineLocale(key, values);
|
|
114
|
-
}
|
|
115
|
-
if (data) {
|
|
116
|
-
globalLocale = data;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
return globalLocale && globalLocale._abbr;
|
|
120
|
-
}
|
|
121
|
-
export function defineLocale(name, config) {
|
|
122
|
-
if (config === null) {
|
|
123
|
-
// useful for testing
|
|
124
|
-
delete locales[name];
|
|
125
|
-
globalLocale = getLocale('en');
|
|
126
|
-
return null;
|
|
127
|
-
}
|
|
128
|
-
if (!config) {
|
|
129
|
-
return;
|
|
130
|
-
}
|
|
131
|
-
let parentConfig = baseConfig;
|
|
132
|
-
config.abbr = name;
|
|
133
|
-
if (config.parentLocale != null) {
|
|
134
|
-
if (locales[config.parentLocale] != null) {
|
|
135
|
-
parentConfig = locales[config.parentLocale]._config;
|
|
136
|
-
}
|
|
137
|
-
else {
|
|
138
|
-
if (!localeFamilies[config.parentLocale]) {
|
|
139
|
-
localeFamilies[config.parentLocale] = [];
|
|
140
|
-
}
|
|
141
|
-
localeFamilies[config.parentLocale].push({ name, config });
|
|
142
|
-
return null;
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
locales[name] = new Locale(mergeConfigs(parentConfig, config));
|
|
146
|
-
if (localeFamilies[name]) {
|
|
147
|
-
localeFamilies[name].forEach(function (x) {
|
|
148
|
-
defineLocale(x.name, x.config);
|
|
149
|
-
});
|
|
150
|
-
}
|
|
151
|
-
// backwards compat for now: also set the locale
|
|
152
|
-
// make sure we set the locale AFTER all child locales have been
|
|
153
|
-
// created, so we won't end up with the child locale set.
|
|
154
|
-
getSetGlobalLocale(name);
|
|
155
|
-
return locales[name];
|
|
156
|
-
}
|
|
157
|
-
export function updateLocale(name, config) {
|
|
158
|
-
let _config = config;
|
|
159
|
-
if (_config != null) {
|
|
160
|
-
let parentConfig = baseConfig;
|
|
161
|
-
// MERGE
|
|
162
|
-
const tmpLocale = loadLocale(name);
|
|
163
|
-
if (tmpLocale != null) {
|
|
164
|
-
parentConfig = tmpLocale._config;
|
|
165
|
-
}
|
|
166
|
-
_config = mergeConfigs(parentConfig, _config);
|
|
167
|
-
const locale = new Locale(_config);
|
|
168
|
-
locale.parentLocale = locales[name];
|
|
169
|
-
locales[name] = locale;
|
|
170
|
-
// backwards compat for now: also set the locale
|
|
171
|
-
getSetGlobalLocale(name);
|
|
172
|
-
}
|
|
173
|
-
else {
|
|
174
|
-
// pass null for config to unupdate, useful for tests
|
|
175
|
-
if (locales[name] != null) {
|
|
176
|
-
if (locales[name].parentLocale != null) {
|
|
177
|
-
locales[name] = locales[name].parentLocale;
|
|
178
|
-
}
|
|
179
|
-
else if (locales[name] != null) {
|
|
180
|
-
delete locales[name];
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
return locales[name];
|
|
185
|
-
}
|
|
186
|
-
// returns locale data
|
|
187
|
-
export function getLocale(key) {
|
|
188
|
-
setDefaultLocale();
|
|
189
|
-
if (!key) {
|
|
190
|
-
return globalLocale;
|
|
191
|
-
}
|
|
192
|
-
// let locale;
|
|
193
|
-
const _key = isArray(key) ? key : [key];
|
|
194
|
-
return chooseLocale(_key);
|
|
195
|
-
}
|
|
196
|
-
export function listLocales() {
|
|
197
|
-
return Object.keys(locales);
|
|
198
|
-
}
|
|
199
|
-
function setDefaultLocale() {
|
|
200
|
-
if (locales[`en`]) {
|
|
201
|
-
return undefined;
|
|
202
|
-
}
|
|
203
|
-
getSetGlobalLocale('en', {
|
|
204
|
-
dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/,
|
|
205
|
-
ordinal(num) {
|
|
206
|
-
const b = num % 10;
|
|
207
|
-
const output = toInt((num % 100) / 10) === 1
|
|
208
|
-
? 'th'
|
|
209
|
-
: b === 1 ? 'st' : b === 2 ? 'nd' : b === 3 ? 'rd' : 'th';
|
|
210
|
-
return num + output;
|
|
211
|
-
}
|
|
212
|
-
});
|
|
213
|
-
initWeek();
|
|
214
|
-
initWeekYear();
|
|
215
|
-
initYear();
|
|
216
|
-
initTimezone();
|
|
217
|
-
initTimestamp();
|
|
218
|
-
initSecond();
|
|
219
|
-
initQuarter();
|
|
220
|
-
initOffset();
|
|
221
|
-
initMonth();
|
|
222
|
-
initMinute();
|
|
223
|
-
initMillisecond();
|
|
224
|
-
initHour();
|
|
225
|
-
initDayOfYear();
|
|
226
|
-
initDayOfWeek();
|
|
227
|
-
initDayOfMonth();
|
|
228
|
-
}
|
|
229
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVwaWNrZXIvY2hyb25vcy9sb2NhbGUvbG9jYWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQ0FBMkM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBYyxNQUFNLGdCQUFnQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxl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LENBQUMsQ0FBQyxJQUFJO2dCQUNOLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFFOUQsT0FBTyxHQUFHLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLENBQUM7S0FDRixDQUFDLENBQUM7SUFFSCxRQUFRLEVBQUUsQ0FBQztJQUNYLFlBQVksRUFBRSxDQUFDO0lBQ2YsUUFBUSxFQUFFLENBQUM7SUFDWCxZQUFZLEVBQUUsQ0FBQztJQUNmLGFBQWEsRUFBRSxDQUFDO0lBQ2hCLFVBQVUsRUFBRSxDQUFDO0lBQ2IsV0FBVyxFQUFFLENBQUM7SUFDZCxVQUFVLEVBQUUsQ0FBQztJQUNiLFNBQVMsRUFBRSxDQUFDO0lBQ1osVUFBVSxFQUFFLENBQUM7SUFDYixlQUFlLEVBQUUsQ0FBQztJQUNsQixRQUFRLEVBQUUsQ0FBQztJQUNYLGFBQWEsRUFBRSxDQUFDO0lBQ2hCLGFBQWEsRUFBRSxDQUFDO0lBQ2hCLGNBQWMsRUFBRSxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbnRlcm5hbCBzdG9yYWdlIGZvciBsb2NhbGUgY29uZmlnIGZpbGVzXG5pbXBvcnQgeyBMb2NhbGUsIExvY2FsZURhdGEgfSBmcm9tICcuL2xvY2FsZS5jbGFzcyc7XG5pbXBvcnQgeyBiYXNlQ29uZmlnIH0gZnJvbSAnLi9sb2NhbGUuZGVmYXVsdHMnO1xuaW1wb3J0IHsgaGFzT3duUHJvcCwgaXNBcnJheSwgaXNPYmplY3QsIGlzU3RyaW5nLCBpc1VuZGVmaW5lZCwgdG9JbnQgfSBmcm9tICcuLi91dGlscy90eXBlLWNoZWNrcyc7XG5pbXBvcnQgeyBjb21wYXJlQXJyYXlzIH0gZnJvbSAnLi4vdXRpbHMvY29tcGFyZS1hcnJheXMnO1xuXG5pbXBvcnQgeyBpbml0V2VlayB9IGZyb20gJy4uL3VuaXRzL3dlZWsnO1xuaW1wb3J0IHsgaW5pdFdlZWtZZWFyIH0gZnJvbSAnLi4vdW5pdHMvd2Vlay15ZWFyJztcbmltcG9ydCB7IGluaXRZZWFyIH0gZnJvbSAnLi4vdW5pdHMveWVhcic7XG5pbXBvcnQgeyBpbml0VGltZXpvbmUgfSBmcm9tICcuLi91bml0cy90aW1lem9uZSc7XG5pbXBvcnQgeyBpbml0VGltZXN0YW1wIH0gZnJvbSAnLi4vdW5pdHMvdGltZXN0YW1wJztcbmltcG9ydCB7IGluaXRTZWNvbmQgfSBmcm9tICcuLi91bml0cy9zZWNvbmQnO1xuaW1wb3J0IHsgaW5pdFF1YXJ0ZXIgfSBmcm9tICcuLi91bml0cy9xdWFydGVyJztcbmltcG9ydCB7IGluaXRPZmZzZXQgfSBmcm9tICcuLi91bml0cy9vZmZzZXQnO1xuaW1wb3J0IHsgaW5pdE1pbnV0ZSB9IGZyb20gJy4uL3VuaXRzL21pbnV0ZSc7XG5pbXBvcnQgeyBpbml0TWlsbGlzZWNvbmQgfSBmcm9tICcuLi91bml0cy9taWxsaXNlY29uZCc7XG5pbXBvcnQgeyBpbml0TW9udGggfSBmcm9tICcuLi91bml0cy9tb250aCc7XG5pbXBvcnQgeyBpbml0SG91ciB9IGZyb20gJy4uL3VuaXRzL2hvdXInO1xuaW1wb3J0IHsgaW5pdERheU9mWWVhciB9IGZyb20gJy4uL3VuaXRzL2RheS1vZi15ZWFyJztcbmltcG9ydCB7IGluaXREYXlPZldlZWsgfSBmcm9tICcuLi91bml0cy9kYXktb2Ytd2Vlayc7XG5pbXBvcnQgeyBpbml0RGF5T2ZNb250aCB9IGZyb20gJy4uL3VuaXRzL2RheS1vZi1tb250aCc7XG5cbmNvbnN0IGxvY2FsZXM6IHsgW2tleTogc3RyaW5nXTogTG9jYWxlIH0gPSB7fTtcbmNvbnN0IGxvY2FsZUZhbWlsaWVzOiB7IFtrZXk6IHN0cmluZ106IHtuYW1lOiBzdHJpbmc7IGNvbmZpZzogTG9jYWxlRGF0YX1bXSB9ID0ge307XG5sZXQgZ2xvYmFsTG9jYWxlOiBMb2NhbGU7XG5cbmZ1bmN0aW9uIG5vcm1hbGl6ZUxvY2FsZShrZXk6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBrZXkgPyBrZXkudG9Mb3dlckNhc2UoKS5yZXBsYWNlKCdfJywgJy0nKSA6IGtleTtcbn1cblxuLy8gcGljayB0aGUgbG9jYWxlIGZyb20gdGhlIGFycmF5XG4vLyB0cnkgWydlbi1hdScsICdlbi1nYiddIGFzICdlbi1hdScsICdlbi1nYicsICdlbicsIGFzIGluIG1vdmUgdGhyb3VnaCB0aGUgbGlzdCB0cnlpbmcgZWFjaFxuLy8gc3Vic3RyaW5nIGZyb20gbW9zdCBzcGVjaWZpYyB0byBsZWFzdCxcbi8vIGJ1dCBtb3ZlIHRvIHRoZSBuZXh0IGFycmF5IGl0ZW0gaWYgaXQncyBhIG1vcmUgc3BlY2lmaWMgdmFyaWFudCB0aGFuIHRoZSBjdXJyZW50IHJvb3RcbmZ1bmN0aW9uIGNob29zZUxvY2FsZShuYW1lczogc3RyaW5nW10pOiBMb2NhbGUge1xuICBsZXQgbmV4dDtcbiAgbGV0IGxvY2FsZTtcbiAgbGV0IGkgPSAwO1xuXG4gIHdoaWxlIChpIDwgbmFtZXMubGVuZ3RoKSB7XG4gICAgY29uc3Qgc3BsaXQgPSBub3JtYWxpemVMb2NhbGUobmFtZXNbaV0pLnNwbGl0KCctJyk7XG4gICAgbGV0IGogPSBzcGxpdC5sZW5ndGg7XG4gICAgbmV4dCA9IG5vcm1hbGl6ZUxvY2FsZShuYW1lc1tpICsgMV0pO1xuICAgIG5leHQgPSBuZXh0ID8gbmV4dC5zcGxpdCgnLScpIDogbnVsbDtcbiAgICB3aGlsZSAoaiA+IDApIHtcbiAgICAgIGxvY2FsZSA9IGxvYWRMb2NhbGUoc3BsaXQuc2xpY2UoMCwgaikuam9pbignLScpKTtcbiAgICAgIGlmIChsb2NhbGUpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsZTtcbiAgICAgIH1cbiAgICAgIGlmIChuZXh0ICYmIG5leHQubGVuZ3RoID49IGogJiYgY29tcGFyZUFycmF5cyhzcGxpdCwgbmV4dCwgdHJ1ZSkgPj0gaiAtIDEpIHtcbiAgICAgICAgLy8gdGhlIG5leHQgYXJyYXkgaXRlbSBpcyBiZXR0ZXIgdGhhbiBhIHNoYWxsb3dlciBzdWJzdHJpbmcgb2YgdGhpcyBvbmVcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBqLS07XG4gICAgfVxuICAgIGkrKztcbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWVyZ2VDb25maWdzKHBhcmVudENvbmZpZzogTG9jYWxlRGF0YSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGRDb25maWc6IExvY2FsZURhdGEpIHtcbiAgY29uc3QgcmVzOiBMb2NhbGVEYXRhID0gT2JqZWN0LmFzc2lnbih7fSwgcGFyZW50Q29uZmlnKTtcblxuICBmb3IgKGNvbnN0IGNoaWxkUHJvcCBpbiBjaGlsZENvbmZpZykge1xuICAgIGlmICghaGFzT3duUHJvcChjaGlsZENvbmZpZywgY2hpbGRQcm9wKSkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgaWYgKGlzT2JqZWN0KHBhcmVudENvbmZpZ1tjaGlsZFByb3BdKSAmJiBpc09iamVjdChjaGlsZENvbmZpZ1tjaGlsZFByb3BdKSkge1xuICAgICAgcmVzW2NoaWxkUHJvcCBhcyBhbnldID0ge307XG4gICAgICBPYmplY3QuYXNzaWduKHJlc1tjaGlsZFByb3BdLCBwYXJlbnRDb25maWdbY2hpbGRQcm9wXSk7XG4gICAgICBPYmplY3QuYXNzaWduKHJlc1tjaGlsZFByb3BdLCBjaGlsZENvbmZpZ1tjaGlsZFByb3BdKTtcbiAgICB9IGVsc2UgaWYgKGNoaWxkQ29uZmlnW2NoaWxkUHJvcF0gIT0gbnVsbCkge1xuICAgICAgcmVzW2NoaWxkUHJvcCBhcyBhbnldID0gY2hpbGRDb25maWdbY2hpbGRQcm9wXTtcbiAgICB9IGVsc2Uge1xuICAgICAgZGVsZXRlIHJlc1tjaGlsZFByb3AgYXMgYW55XTtcbiAgICB9XG4gIH1cbiAgZm9yIChjb25zdCBwYXJlbnRQcm9wIGluIHBhcmVudENvbmZpZykge1xuICAgIGlmIChcbiAgICAgIGhhc093blByb3AocGFyZW50Q29uZmlnLCBwYXJlbnRQcm9wKSAmJlxuICAgICAgIWhhc093blByb3AoY2hpbGRDb25maWcsIHBhcmVudFByb3ApICYmXG4gICAgICBpc09iamVjdChwYXJlbnRDb25maWdbcGFyZW50UHJvcCBhcyBrZXlvZiBMb2NhbGVEYXRhXSlcbiAgICApIHtcbiAgICAgIC8vIG1ha2Ugc3VyZSBjaGFuZ2VzIHRvIHByb3BlcnRpZXMgZG9uJ3QgbW9kaWZ5IHBhcmVudCBjb25maWdcbiAgICAgIHJlc1twYXJlbnRQcm9wIGFzIGFueV0gPSBPYmplY3QuYXNzaWduKHt9LCByZXNbcGFyZW50UHJvcCBhcyBrZXlvZiBMb2NhbGVEYXRhXSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHJlcztcbn1cblxuXG5mdW5jdGlvbiBsb2FkTG9jYWxlKG5hbWU6IHN0cmluZyk6IExvY2FsZSB7XG4gIC8vIG5vIHdheSFcbiAgLyogdmFyIG9sZExvY2FsZSA9IG51bGw7XG4gICAvLyBUT0RPOiBGaW5kIGEgYmV0dGVyIHdheSB0byByZWdpc3RlciBhbmQgbG9hZCBhbGwgdGhlIGxvY2FsZXMgaW4gTm9kZVxuICAgaWYgKCFsb2NhbGVzW25hbWVdICYmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJykgJiZcbiAgICAgbW9kdWxlICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgIHRyeSB7XG4gICAgICAgb2xkTG9jYWxlID0gZ2xvYmFsTG9jYWxlLl9hYmJyO1xuICAgICAgIHZhciBhbGlhc2VkUmVxdWlyZSA9IHJlcXVpcmU7XG4gICAgICAgYWxpYXNlZFJlcXVpcmUoJy4vbG9jYWxlLycgKyBuYW1lKTtcbiAgICAgICBnZXRTZXRHbG9iYWxMb2NhbGUob2xkTG9jYWxlKTtcbiAgICAgfSBjYXRjaCAoZSkge31cbiAgIH0qL1xuICBpZiAoIWxvY2FsZXNbbmFtZV0pIHtcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBjb25zb2xlLmVycm9yKGBLaHJvbm9zIGxvY2FsZSBlcnJvcjogcGxlYXNlIGxvYWQgbG9jYWxlIFwiJHtuYW1lfVwiIGJlZm9yZSB1c2luZyBpdGApO1xuICAgIC8vIHRocm93IG5ldyBFcnJvcihgS2hyb25vcyBsb2NhbGUgZXJyb3I6IHBsZWFzZSBsb2FkIGxvY2FsZSBcIiR7bmFtZX1cIiBiZWZvcmUgdXNpbmcgaXRgKTtcbiAgfVxuXG4gIHJldHVybiBsb2NhbGVzW25hbWVdO1xufVxuXG4vLyBUaGlzIGZ1bmN0aW9uIHdpbGwgbG9hZCBsb2NhbGUgYW5kIHRoZW4gc2V0IHRoZSBnbG9iYWwgbG9jYWxlLiAgSWZcbi8vIG5vIGFyZ3VtZW50cyBhcmUgcGFzc2VkIGluLCBpdCB3aWxsIHNpbXBseSByZXR1cm4gdGhlIGN1cnJlbnQgZ2xvYmFsXG4vLyBsb2NhbGUga2V5LlxuZXhwb3J0IGZ1bmN0aW9uIGdldFNldEdsb2JhbExvY2FsZShrZXk/OiBzdHJpbmcgfCBzdHJpbmdbXSwgdmFsdWVzPzogTG9jYWxlRGF0YSk6IHN0cmluZyB7XG4gIGxldCBkYXRhOiBMb2NhbGU7XG5cbiAgaWYgKGtleSkge1xuICAgIGlmIChpc1VuZGVmaW5lZCh2YWx1ZXMpKSB7XG4gICAgICBkYXRhID0gZ2V0TG9jYWxlKGtleSk7XG4gICAgfSBlbHNlIGlmIChpc1N0cmluZyhrZXkpKSB7XG4gICAgICBkYXRhID0gZGVmaW5lTG9jYWxlKGtleSwgdmFsdWVzKTtcbiAgICB9XG5cbiAgICBpZiAoZGF0YSkge1xuICAgICAgZ2xvYmFsTG9jYWxlID0gZGF0YTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZ2xvYmFsTG9jYWxlICYmIGdsb2JhbExvY2FsZS5fYWJicjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlZmluZUxvY2FsZShuYW1lOiBzdHJpbmcsIGNvbmZpZz86IExvY2FsZURhdGEpOiBMb2NhbGUge1xuICBpZiAoY29uZmlnID09PSBudWxsKSB7XG4gICAgLy8gdXNlZnVsIGZvciB0ZXN0aW5nXG4gICAgZGVsZXRlIGxvY2FsZXNbbmFtZV07XG4gICAgZ2xvYmFsTG9jYWxlID0gZ2V0TG9jYWxlKCdlbicpO1xuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBpZiAoIWNvbmZpZykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGxldCBwYXJlbnRDb25maWcgPSBiYXNlQ29uZmlnO1xuICBjb25maWcuYWJiciA9IG5hbWU7XG4gIGlmIChjb25maWcucGFyZW50TG9jYWxlICE9IG51bGwpIHtcbiAgICBpZiAobG9jYWxlc1tjb25maWcucGFyZW50TG9jYWxlXSAhPSBudWxsKSB7XG4gICAgICBwYXJlbnRDb25maWcgPSBsb2NhbGVzW2NvbmZpZy5wYXJlbnRMb2NhbGVdLl9jb25maWc7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghbG9jYWxlRmFtaWxpZXNbY29uZmlnLnBhcmVudExvY2FsZV0pIHtcbiAgICAgICAgbG9jYWxlRmFtaWxpZXNbY29uZmlnLnBhcmVudExvY2FsZV0gPSBbXTtcbiAgICAgIH1cbiAgICAgIGxvY2FsZUZhbWlsaWVzW2NvbmZpZy5wYXJlbnRMb2NhbGVdLnB1c2goeyBuYW1lLCBjb25maWcgfSk7XG5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuXG4gIGxvY2FsZXNbbmFtZV0gPSBuZXcgTG9jYWxlKG1lcmdlQ29uZmlncyhwYXJlbnRDb25maWcsIGNvbmZpZykpO1xuXG4gIGlmIChsb2NhbGVGYW1pbGllc1tuYW1lXSkge1xuICAgIGxvY2FsZUZhbWlsaWVzW25hbWVdLmZvckVhY2goZnVuY3Rpb24gKHgpIHtcbiAgICAgIGRlZmluZUxvY2FsZSh4Lm5hbWUsIHguY29uZmlnKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8vIGJhY2t3YXJkcyBjb21wYXQgZm9yIG5vdzogYWxzbyBzZXQgdGhlIGxvY2FsZVxuICAvLyBtYWtlIHN1cmUgd2Ugc2V0IHRoZSBsb2NhbGUgQUZURVIgYWxsIGNoaWxkIGxvY2FsZXMgaGF2ZSBiZWVuXG4gIC8vIGNyZWF0ZWQsIHNvIHdlIHdvbid0IGVuZCB1cCB3aXRoIHRoZSBjaGlsZCBsb2NhbGUgc2V0LlxuICBnZXRTZXRHbG9iYWxMb2NhbGUobmFtZSk7XG5cblxuICByZXR1cm4gbG9jYWxlc1tuYW1lXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVwZGF0ZUxvY2FsZShuYW1lOiBzdHJpbmcsIGNvbmZpZz86IExvY2FsZURhdGEpOiBMb2NhbGUge1xuICBsZXQgX2NvbmZpZyA9IGNvbmZpZztcblxuICBpZiAoX2NvbmZpZyAhPSBudWxsKSB7XG4gICAgbGV0IHBhcmVudENvbmZpZyA9IGJhc2VDb25maWc7XG4gICAgLy8gTUVSR0VcbiAgICBjb25zdCB0bXBMb2NhbGUgPSBsb2FkTG9jYWxlKG5hbWUpO1xuICAgIGlmICh0bXBMb2NhbGUgIT0gbnVsbCkge1xuICAgICAgcGFyZW50Q29uZmlnID0gdG1wTG9jYWxlLl9jb25maWc7XG4gICAgfVxuICAgIF9jb25maWcgPSBtZXJnZUNvbmZpZ3MocGFyZW50Q29uZmlnLCBfY29uZmlnKTtcbiAgICBjb25zdCBsb2NhbGUgPSBuZXcgTG9jYWxlKF9jb25maWcpO1xuICAgIGxvY2FsZS5wYXJlbnRMb2NhbGUgPSBsb2NhbGVzW25hbWVdO1xuICAgIGxvY2FsZXNbbmFtZV0gPSBsb2NhbGU7XG5cbiAgICAvLyBiYWNrd2FyZHMgY29tcGF0IGZvciBub3c6IGFsc28gc2V0IHRoZSBsb2NhbGVcbiAgICBnZXRTZXRHbG9iYWxMb2NhbGUobmFtZSk7XG4gIH0gZWxzZSB7XG4gICAgLy8gcGFzcyBudWxsIGZvciBjb25maWcgdG8gdW51cGRhdGUsIHVzZWZ1bCBmb3IgdGVzdHNcbiAgICBpZiAobG9jYWxlc1tuYW1lXSAhPSBudWxsKSB7XG4gICAgICBpZiAobG9jYWxlc1tuYW1lXS5wYXJlbnRMb2NhbGUgIT0gbnVsbCkge1xuICAgICAgICBsb2NhbGVzW25hbWVdID0gbG9jYWxlc1tuYW1lXS5wYXJlbnRMb2NhbGU7XG4gICAgICB9IGVsc2UgaWYgKGxvY2FsZXNbbmFtZV0gIT0gbnVsbCkge1xuICAgICAgICBkZWxldGUgbG9jYWxlc1tuYW1lXTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gbG9jYWxlc1tuYW1lXTtcbn1cblxuLy8gcmV0dXJucyBsb2NhbGUgZGF0YVxuZXhwb3J0IGZ1bmN0aW9uIGdldExvY2FsZShrZXk/OiBzdHJpbmcgfCBzdHJpbmdbXSk6IExvY2FsZSB7XG4gIHNldERlZmF1bHRMb2NhbGUoKTtcblxuICBpZiAoIWtleSkge1xuICAgIHJldHVybiBnbG9iYWxMb2NhbGU7XG4gIH1cbiAgLy8gbGV0IGxvY2FsZTtcbiAgY29uc3QgX2tleSA9IGlzQXJyYXkoa2V5KSA/IGtleSA6IFtrZXldO1xuXG4gIHJldHVybiBjaG9vc2VMb2NhbGUoX2tleSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsaXN0TG9jYWxlcygpOiBzdHJpbmdbXSB7XG4gIHJldHVybiBPYmplY3Qua2V5cyhsb2NhbGVzKTtcbn1cblxuZnVuY3Rpb24gc2V0RGVmYXVsdExvY2FsZSgpOiB2b2lkIHtcbiAgaWYgKGxvY2FsZXNbYGVuYF0pIHtcblxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXRTZXRHbG9iYWxMb2NhbGUoJ2VuJywge1xuICAgIGRheU9mTW9udGhPcmRpbmFsUGFyc2U6IC9cXGR7MSwyfSh0aHxzdHxuZHxyZCkvLFxuICAgIG9yZGluYWwobnVtOiBudW1iZXIpOiBzdHJpbmcge1xuICAgICAgY29uc3QgYiA9IG51bSAlIDEwO1xuICAgICAgY29uc3Qgb3V0cHV0ID1cbiAgICAgICAgdG9JbnQoKG51bSAlIDEwMCkgLyAxMCkgPT09IDFcbiAgICAgICAgICA/ICd0aCdcbiAgICAgICAgICA6IGIgPT09IDEgPyAnc3QnIDogYiA9PT0gMiA/ICduZCcgOiBiID09PSAzID8gJ3JkJyA6ICd0aCc7XG5cbiAgICAgIHJldHVybiBudW0gKyBvdXRwdXQ7XG4gICAgfVxuICB9KTtcblxuICBpbml0V2VlaygpO1xuICBpbml0V2Vla1llYXIoKTtcbiAgaW5pdFllYXIoKTtcbiAgaW5pdFRpbWV6b25lKCk7XG4gIGluaXRUaW1lc3RhbXAoKTtcbiAgaW5pdFNlY29uZCgpO1xuICBpbml0UXVhcnRlcigpO1xuICBpbml0T2Zmc2V0KCk7XG4gIGluaXRNb250aCgpO1xuICBpbml0TWludXRlKCk7XG4gIGluaXRNaWxsaXNlY29uZCgpO1xuICBpbml0SG91cigpO1xuICBpbml0RGF5T2ZZZWFyKCk7XG4gIGluaXREYXlPZldlZWsoKTtcbiAgaW5pdERheU9mTW9udGgoKTtcbn1cbiJdfQ==
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { createDuration } from '../duration/create';
|
|
2
|
-
import { absRound } from '../utils/abs-round';
|
|
3
|
-
import { getDate, getMonth, getTime } from '../utils/date-getters';
|
|
4
|
-
import { setDate, setMonth, setTime } from '../utils/date-setters';
|
|
5
|
-
import { cloneDate } from '../create/clone';
|
|
6
|
-
export function add(date, val, period, isUTC) {
|
|
7
|
-
const dur = createDuration(val, period);
|
|
8
|
-
return addSubtract(date, dur, 1, isUTC);
|
|
9
|
-
}
|
|
10
|
-
export function subtract(date, val, period, isUTC) {
|
|
11
|
-
const dur = createDuration(val, period);
|
|
12
|
-
return addSubtract(date, dur, -1, isUTC);
|
|
13
|
-
}
|
|
14
|
-
export function addSubtract(date, duration, isAdding, isUTC) {
|
|
15
|
-
const milliseconds = duration._milliseconds;
|
|
16
|
-
const days = absRound(duration._days);
|
|
17
|
-
const months = absRound(duration._months);
|
|
18
|
-
// todo: add timezones support
|
|
19
|
-
// const _updateOffset = updateOffset == null ? true : updateOffset;
|
|
20
|
-
if (months) {
|
|
21
|
-
setMonth(date, getMonth(date, isUTC) + months * isAdding, isUTC);
|
|
22
|
-
}
|
|
23
|
-
if (days) {
|
|
24
|
-
setDate(date, getDate(date, isUTC) + days * isAdding, isUTC);
|
|
25
|
-
}
|
|
26
|
-
if (milliseconds) {
|
|
27
|
-
setTime(date, getTime(date) + milliseconds * isAdding);
|
|
28
|
-
}
|
|
29
|
-
return cloneDate(date);
|
|
30
|
-
// todo: add timezones support
|
|
31
|
-
// if (_updateOffset) {
|
|
32
|
-
// hooks.updateOffset(date, days || months);
|
|
33
|
-
// }
|
|
34
|
-
}
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXN1YnRyYWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9jaHJvbm9zL21vbWVudC9hZGQtc3VidHJhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU5QyxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHNUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxJQUFVLEVBQUUsR0FBVyxFQUFFLE1BQWtCLEVBQUUsS0FBZTtJQUM5RSxNQUFNLEdBQUcsR0FBRyxjQUFjLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBRXhDLE9BQU8sV0FBVyxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQzFDLENBQUM7QUFFRCxNQUFNLFVBQVUsUUFBUSxDQUFDLElBQVUsRUFBRSxHQUFXLEVBQUUsTUFBa0IsRUFBRSxLQUFlO0lBQ25GLE1BQU0sR0FBRyxHQUFHLGNBQWMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFFeEMsT0FBTyxXQUFXLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUMzQyxDQUFDO0FBRUQsTUFBTSxVQUFVLFdBQVcsQ0FBQyxJQUFVLEVBQUUsUUFBa0IsRUFBRSxRQUFnQixFQUFFLEtBQWU7SUFDM0YsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQztJQUM1QyxNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFMUMsOEJBQThCO0lBQzlCLG9FQUFvRTtJQUVwRSxJQUFJLE1BQU0sRUFBRTtRQUNWLFFBQVEsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsR0FBRyxNQUFNLEdBQUcsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO0tBQ2xFO0lBQ0QsSUFBSSxJQUFJLEVBQUU7UUFDUixPQUFPLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEdBQUcsSUFBSSxHQUFHLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztLQUM5RDtJQUNELElBQUksWUFBWSxFQUFFO1FBQ2hCLE9BQU8sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLFlBQVksR0FBRyxRQUFRLENBQUMsQ0FBQztLQUN4RDtJQUVELE9BQU8sU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZCLDhCQUE4QjtJQUM5Qix1QkFBdUI7SUFDdkIsOENBQThDO0lBQzlDLElBQUk7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlRHVyYXRpb24gfSBmcm9tICcuLi9kdXJhdGlvbi9jcmVhdGUnO1xuaW1wb3J0IHsgYWJzUm91bmQgfSBmcm9tICcuLi91dGlscy9hYnMtcm91bmQnO1xuaW1wb3J0IHsgRHVyYXRpb24gfSBmcm9tICcuLi9kdXJhdGlvbi9jb25zdHJ1Y3Rvcic7XG5pbXBvcnQgeyBnZXREYXRlLCBnZXRNb250aCwgZ2V0VGltZSB9IGZyb20gJy4uL3V0aWxzL2RhdGUtZ2V0dGVycyc7XG5pbXBvcnQgeyBzZXREYXRlLCBzZXRNb250aCwgc2V0VGltZSB9IGZyb20gJy4uL3V0aWxzL2RhdGUtc2V0dGVycyc7XG5pbXBvcnQgeyBjbG9uZURhdGUgfSBmcm9tICcuLi9jcmVhdGUvY2xvbmUnO1xuaW1wb3J0IHsgVW5pdE9mVGltZSB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGFkZChkYXRlOiBEYXRlLCB2YWw6IG51bWJlciwgcGVyaW9kOiBVbml0T2ZUaW1lLCBpc1VUQz86IGJvb2xlYW4pOiBEYXRlIHtcbiAgY29uc3QgZHVyID0gY3JlYXRlRHVyYXRpb24odmFsLCBwZXJpb2QpO1xuXG4gIHJldHVybiBhZGRTdWJ0cmFjdChkYXRlLCBkdXIsIDEsIGlzVVRDKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN1YnRyYWN0KGRhdGU6IERhdGUsIHZhbDogbnVtYmVyLCBwZXJpb2Q6IFVuaXRPZlRpbWUsIGlzVVRDPzogYm9vbGVhbik6IERhdGUge1xuICBjb25zdCBkdXIgPSBjcmVhdGVEdXJhdGlvbih2YWwsIHBlcmlvZCk7XG5cbiAgcmV0dXJuIGFkZFN1YnRyYWN0KGRhdGUsIGR1ciwgLTEsIGlzVVRDKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFkZFN1YnRyYWN0KGRhdGU6IERhdGUsIGR1cmF0aW9uOiBEdXJhdGlvbiwgaXNBZGRpbmc6IG51bWJlciwgaXNVVEM/OiBib29sZWFuKTogRGF0ZSB7XG4gIGNvbnN0IG1pbGxpc2Vjb25kcyA9IGR1cmF0aW9uLl9taWxsaXNlY29uZHM7XG4gIGNvbnN0IGRheXMgPSBhYnNSb3VuZChkdXJhdGlvbi5fZGF5cyk7XG4gIGNvbnN0IG1vbnRocyA9IGFic1JvdW5kKGR1cmF0aW9uLl9tb250aHMpO1xuXG4gIC8vIHRvZG86IGFkZCB0aW1lem9uZXMgc3VwcG9ydFxuICAvLyBjb25zdCBfdXBkYXRlT2Zmc2V0ID0gdXBkYXRlT2Zmc2V0ID09IG51bGwgPyB0cnVlIDogdXBkYXRlT2Zmc2V0O1xuXG4gIGlmIChtb250aHMpIHtcbiAgICBzZXRNb250aChkYXRlLCBnZXRNb250aChkYXRlLCBpc1VUQykgKyBtb250aHMgKiBpc0FkZGluZywgaXNVVEMpO1xuICB9XG4gIGlmIChkYXlzKSB7XG4gICAgc2V0RGF0ZShkYXRlLCBnZXREYXRlKGRhdGUsIGlzVVRDKSArIGRheXMgKiBpc0FkZGluZywgaXNVVEMpO1xuICB9XG4gIGlmIChtaWxsaXNlY29uZHMpIHtcbiAgICBzZXRUaW1lKGRhdGUsIGdldFRpbWUoZGF0ZSkgKyBtaWxsaXNlY29uZHMgKiBpc0FkZGluZyk7XG4gIH1cblxuICByZXR1cm4gY2xvbmVEYXRlKGRhdGUpO1xuICAvLyB0b2RvOiBhZGQgdGltZXpvbmVzIHN1cHBvcnRcbiAgLy8gaWYgKF91cGRhdGVPZmZzZXQpIHtcbiAgLy8gICBob29rcy51cGRhdGVPZmZzZXQoZGF0ZSwgZGF5cyB8fCBtb250aHMpO1xuICAvLyB9XG59XG4iXX0=
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { diff } from './diff';
|
|
2
|
-
import { cloneWithOffset } from '../units/offset';
|
|
3
|
-
import { isFunction, isString } from '../utils/type-checks';
|
|
4
|
-
import { cloneDate } from '../create/clone';
|
|
5
|
-
import { startOf } from '../utils/start-end-of';
|
|
6
|
-
import { formatDate } from '../format';
|
|
7
|
-
import { getLocale } from '../locale/locales';
|
|
8
|
-
export function getCalendarFormat(date, now, config) {
|
|
9
|
-
const _diff = diff(date, now, 'day', true, config);
|
|
10
|
-
switch (true) {
|
|
11
|
-
case _diff < -6: return 'sameElse';
|
|
12
|
-
case _diff < -1: return 'lastWeek';
|
|
13
|
-
case _diff < 0: return 'lastDay';
|
|
14
|
-
case _diff < 1: return 'sameDay';
|
|
15
|
-
case _diff < 2: return 'nextDay';
|
|
16
|
-
case _diff < 7: return 'nextWeek';
|
|
17
|
-
default: return 'sameElse';
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
export function calendar(date, time, formats, locale = getLocale(), config = {}) {
|
|
21
|
-
// We want to compare the start of today, vs this.
|
|
22
|
-
// Getting start-of-today depends on whether we're local/utc/offset or not.
|
|
23
|
-
const now = time;
|
|
24
|
-
const sod = startOf(cloneWithOffset(now, date, config), 'day', config._isUTC);
|
|
25
|
-
const format = getCalendarFormat(date, sod, { _isUTC: true, _offset: 0 }) || 'sameElse';
|
|
26
|
-
let output;
|
|
27
|
-
if (formats) {
|
|
28
|
-
const _format = formats[format];
|
|
29
|
-
if (isString(_format)) {
|
|
30
|
-
output = _format;
|
|
31
|
-
}
|
|
32
|
-
if (isFunction(_format)) {
|
|
33
|
-
output = _format.call(null, date, now);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
if (!output) {
|
|
37
|
-
output = locale.calendar(format, date, cloneDate(now));
|
|
38
|
-
}
|
|
39
|
-
return formatDate(date, output, config._locale._abbr, config._isUTC, config._offset);
|
|
40
|
-
}
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2Nocm9ub3MvbW9tZW50L2NhbGVuZGFyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDOUIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQWtCOUMsTUFBTSxVQUFVLGlCQUFpQixDQUFDLElBQVUsRUFBRSxHQUFTLEVBQUUsTUFBeUI7SUFDaEYsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUVuRCxRQUFRLElBQUksRUFBRTtRQUNaLEtBQUssS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxVQUFVLENBQUM7UUFDbkMsS0FBSyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLFVBQVUsQ0FBQztRQUNuQyxLQUFLLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLFNBQVMsQ0FBQztRQUNqQyxLQUFLLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLFNBQVMsQ0FBQztRQUNqQyxLQUFLLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLFNBQVMsQ0FBQztRQUNqQyxLQUFLLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLFVBQVUsQ0FBQztRQUNsQyxPQUFPLENBQUMsQ0FBQyxPQUFPLFVBQVUsQ0FBQztLQUM1QjtBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUsUUFBUSxDQUFDLElBQVUsRUFDVixJQUFVLEVBQ1YsT0FBcUIsRUFDckIsU0FBaUIsU0FBUyxFQUFFLEVBQzVCLFNBQTRCLEVBQUU7SUFDckQsa0RBQWtEO0lBQ2xELDJFQUEyRTtJQUMzRSxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUM7SUFDakIsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFHLE1BQU0sQ0FBQyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDL0UsTUFBTSxNQUFNLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBQyxDQUFDLElBQUksVUFBVSxDQUFDO0lBRXRGLElBQUksTUFBTSxDQUFDO0lBQ1gsSUFBSSxPQUFPLEVBQUU7UUFDWCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEMsSUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDckIsTUFBTSxHQUFHLE9BQU8sQ0FBQztTQUNsQjtRQUNELElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3ZCLE1BQU0sR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDeEM7S0FDRjtJQUVELElBQUksQ0FBQyxNQUFNLEVBQUU7UUFDWCxNQUFNLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0tBQ3hEO0lBRUQsT0FBTyxVQUFVLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUN2RixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGlmZiB9IGZyb20gJy4vZGlmZic7XG5pbXBvcnQgeyBjbG9uZVdpdGhPZmZzZXQgfSBmcm9tICcuLi91bml0cy9vZmZzZXQnO1xuaW1wb3J0IHsgaXNGdW5jdGlvbiwgaXNTdHJpbmcgfSBmcm9tICcuLi91dGlscy90eXBlLWNoZWNrcyc7XG5pbXBvcnQgeyBjbG9uZURhdGUgfSBmcm9tICcuLi9jcmVhdGUvY2xvbmUnO1xuaW1wb3J0IHsgc3RhcnRPZiB9IGZyb20gJy4uL3V0aWxzL3N0YXJ0LWVuZC1vZic7XG5pbXBvcnQgeyBmb3JtYXREYXRlIH0gZnJvbSAnLi4vZm9ybWF0JztcbmltcG9ydCB7IGdldExvY2FsZSB9IGZyb20gJy4uL2xvY2FsZS9sb2NhbGVzJztcbmltcG9ydCB7IExvY2FsZSB9IGZyb20gJy4uL2xvY2FsZS9sb2NhbGUuY2xhc3MnO1xuaW1wb3J0IHsgRGF0ZUlucHV0IH0gZnJvbSAnLi4vdGVzdC9jaGFpbic7XG5pbXBvcnQgeyBEYXRlUGFyc2luZ0NvbmZpZyB9IGZyb20gJy4uL2NyZWF0ZS9wYXJzaW5nLnR5cGVzJztcblxuZXhwb3J0IHR5cGUgQ2FsZW5kYXJTcGVjVmFsID0gc3RyaW5nIHwgKChtPzogRGF0ZUlucHV0LCBub3c/OiBEYXRlKSA9PiBzdHJpbmcpO1xuZXhwb3J0IGludGVyZmFjZSBDYWxlbmRhclNwZWMge1xuICBzYW1lRGF5PzogQ2FsZW5kYXJTcGVjVmFsO1xuICBuZXh0RGF5PzogQ2FsZW5kYXJTcGVjVmFsO1xuICBsYXN0RGF5PzogQ2FsZW5kYXJTcGVjVmFsO1xuICBuZXh0V2Vlaz86IENhbGVuZGFyU3BlY1ZhbDtcbiAgbGFzdFdlZWs/OiBDYWxlbmRhclNwZWNWYWw7XG4gIHNhbWVFbHNlPzogQ2FsZW5kYXJTcGVjVmFsO1xuXG4gIC8vIGFueSBhZGRpdGlvbmFsIHByb3BlcnRpZXMgbWlnaHQgYmUgdXNlZCB3aXRoIG1vbWVudC5jYWxlbmRhckZvcm1hdFxuICBbeDogc3RyaW5nXTogQ2FsZW5kYXJTcGVjVmFsIHwgdm9pZDsgLy8gdW5kZWZpbmVkXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDYWxlbmRhckZvcm1hdChkYXRlOiBEYXRlLCBub3c6IERhdGUsIGNvbmZpZzogRGF0ZVBhcnNpbmdDb25maWcpIHtcbiAgY29uc3QgX2RpZmYgPSBkaWZmKGRhdGUsIG5vdywgJ2RheScsIHRydWUsIGNvbmZpZyk7XG5cbiAgc3dpdGNoICh0cnVlKSB7XG4gICAgY2FzZSBfZGlmZiA8IC02OiByZXR1cm4gJ3NhbWVFbHNlJztcbiAgICBjYXNlIF9kaWZmIDwgLTE6IHJldHVybiAnbGFzdFdlZWsnO1xuICAgIGNhc2UgX2RpZmYgPCAwOiByZXR1cm4gJ2xhc3REYXknO1xuICAgIGNhc2UgX2RpZmYgPCAxOiByZXR1cm4gJ3NhbWVEYXknO1xuICAgIGNhc2UgX2RpZmYgPCAyOiByZXR1cm4gJ25leHREYXknO1xuICAgIGNhc2UgX2RpZmYgPCA3OiByZXR1cm4gJ25leHRXZWVrJztcbiAgICBkZWZhdWx0OiByZXR1cm4gJ3NhbWVFbHNlJztcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY2FsZW5kYXIoZGF0ZTogRGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lOiBEYXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdHM6IENhbGVuZGFyU3BlYyxcbiAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhbGU6IExvY2FsZSA9IGdldExvY2FsZSgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZzogRGF0ZVBhcnNpbmdDb25maWcgPSB7fSk6IHN0cmluZyB7XG4gIC8vIFdlIHdhbnQgdG8gY29tcGFyZSB0aGUgc3RhcnQgb2YgdG9kYXksIHZzIHRoaXMuXG4gIC8vIEdldHRpbmcgc3RhcnQtb2YtdG9kYXkgZGVwZW5kcyBvbiB3aGV0aGVyIHdlJ3JlIGxvY2FsL3V0Yy9vZmZzZXQgb3Igbm90LlxuICBjb25zdCBub3cgPSB0aW1lO1xuICBjb25zdCBzb2QgPSBzdGFydE9mKGNsb25lV2l0aE9mZnNldChub3csIGRhdGUsICBjb25maWcpLCAnZGF5JywgY29uZmlnLl9pc1VUQyk7XG4gIGNvbnN0IGZvcm1hdCA9IGdldENhbGVuZGFyRm9ybWF0KGRhdGUsIHNvZCwge19pc1VUQzogdHJ1ZSwgX29mZnNldDogMH0pIHx8ICdzYW1lRWxzZSc7XG5cbiAgbGV0IG91dHB1dDtcbiAgaWYgKGZvcm1hdHMpIHtcbiAgICBjb25zdCBfZm9ybWF0ID0gZm9ybWF0c1tmb3JtYXRdO1xuICAgIGlmIChpc1N0cmluZyhfZm9ybWF0KSkge1xuICAgICAgb3V0cHV0ID0gX2Zvcm1hdDtcbiAgICB9XG4gICAgaWYgKGlzRnVuY3Rpb24oX2Zvcm1hdCkpIHtcbiAgICAgIG91dHB1dCA9IF9mb3JtYXQuY2FsbChudWxsLCBkYXRlLCBub3cpO1xuICAgIH1cbiAgfVxuXG4gIGlmICghb3V0cHV0KSB7XG4gICAgb3V0cHV0ID0gbG9jYWxlLmNhbGVuZGFyKGZvcm1hdCwgZGF0ZSwgY2xvbmVEYXRlKG5vdykpO1xuICB9XG5cbiAgcmV0dXJuIGZvcm1hdERhdGUoZGF0ZSwgb3V0cHV0LCBjb25maWcuX2xvY2FsZS5fYWJiciwgY29uZmlnLl9pc1VUQywgY29uZmlnLl9vZmZzZXQpO1xufVxuIl19
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { cloneWithOffset, getDateOffset, getUTCOffset } from '../units/offset';
|
|
2
|
-
import { absFloor } from '../utils';
|
|
3
|
-
import { isDateValid, isNumber } from '../utils/type-checks';
|
|
4
|
-
import { getFullYear, getMonth } from '../utils/date-getters';
|
|
5
|
-
import { add } from './add-subtract';
|
|
6
|
-
import { cloneDate } from '../create/clone';
|
|
7
|
-
export function diff(date, input, units, asFloat, config = {}) {
|
|
8
|
-
if (!isDateValid(date)) {
|
|
9
|
-
return NaN;
|
|
10
|
-
}
|
|
11
|
-
const that = cloneWithOffset(input, date, config);
|
|
12
|
-
if (!isDateValid(that)) {
|
|
13
|
-
return NaN;
|
|
14
|
-
}
|
|
15
|
-
const zoneOffset = (getDateOffset(input) - getDateOffset(date)) * 6e4;
|
|
16
|
-
const zoneDelta = isNumber(config._zoneDelta)
|
|
17
|
-
? config._zoneDelta * 6e4
|
|
18
|
-
: (getUTCOffset(input, config) - getUTCOffset(date, config)) * 6e4;
|
|
19
|
-
let output;
|
|
20
|
-
switch (units) {
|
|
21
|
-
case 'year':
|
|
22
|
-
output = monthDiff(date, that) / 12;
|
|
23
|
-
break;
|
|
24
|
-
case 'month':
|
|
25
|
-
output = monthDiff(date, that);
|
|
26
|
-
break;
|
|
27
|
-
case 'quarter':
|
|
28
|
-
output = monthDiff(date, that) / 3;
|
|
29
|
-
break;
|
|
30
|
-
case 'seconds':
|
|
31
|
-
output = (date.valueOf() - that.valueOf()) / 1e3;
|
|
32
|
-
break; // 1000
|
|
33
|
-
case 'minutes':
|
|
34
|
-
output = (date.valueOf() - that.valueOf()) / 6e4;
|
|
35
|
-
break; // 1000 * 60
|
|
36
|
-
case 'hours':
|
|
37
|
-
output = (date.valueOf() - that.valueOf()) / 36e5;
|
|
38
|
-
break; // 1000 * 60 * 60
|
|
39
|
-
case 'day':
|
|
40
|
-
output = (date.valueOf() - that.valueOf() - (zoneDelta === 0 ? zoneOffset : zoneDelta)) / 864e5;
|
|
41
|
-
break; // 1000 * 60 * 60 * 24, negate dst
|
|
42
|
-
case 'week':
|
|
43
|
-
output = (date.valueOf() - that.valueOf() - zoneDelta) / 6048e5;
|
|
44
|
-
break; // 1000 * 60 * 60 * 24 * 7, negate dst
|
|
45
|
-
default:
|
|
46
|
-
output = date.valueOf() - that.valueOf();
|
|
47
|
-
}
|
|
48
|
-
return asFloat ? output : absFloor(output);
|
|
49
|
-
}
|
|
50
|
-
function monthDiff(a, b) {
|
|
51
|
-
// difference in months
|
|
52
|
-
const wholeMonthDiff = ((getFullYear(b) - getFullYear(a)) * 12) + (getMonth(b) - getMonth(a));
|
|
53
|
-
// b is in (anchor - 1 month, anchor + 1 month)
|
|
54
|
-
const anchor = add(cloneDate(a), wholeMonthDiff, 'month');
|
|
55
|
-
let anchor2;
|
|
56
|
-
let adjust;
|
|
57
|
-
if (b.valueOf() - anchor.valueOf() < 0) {
|
|
58
|
-
anchor2 = add(cloneDate(a), wholeMonthDiff - 1, 'month');
|
|
59
|
-
// linear across the month
|
|
60
|
-
adjust = (b.valueOf() - anchor.valueOf()) / (anchor.valueOf() - anchor2.valueOf());
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
anchor2 = add(cloneDate(a), wholeMonthDiff + 1, 'month');
|
|
64
|
-
// linear across the month
|
|
65
|
-
adjust = (b.valueOf() - anchor.valueOf()) / (anchor2.valueOf() - anchor.valueOf());
|
|
66
|
-
}
|
|
67
|
-
// check for negative zero, return zero if negative zero
|
|
68
|
-
return -(wholeMonthDiff + adjust) || 0;
|
|
69
|
-
}
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlmZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVwaWNrZXIvY2hyb25vcy9tb21lbnQvZGlmZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUcvRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTVDLE1BQU0sVUFBVSxJQUFJLENBQUMsSUFBVSxFQUFFLEtBQVcsRUFDdkIsS0FBaUIsRUFBRSxPQUFnQixFQUNuQyxTQUE0QixFQUFFO0lBRWpELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDdEIsT0FBTyxHQUFHLENBQUM7S0FDWjtJQUVELE1BQU0sSUFBSSxHQUFHLGVBQWUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBRWxELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDdEIsT0FBTyxHQUFHLENBQUM7S0FDWjtJQUVELE1BQU0sVUFBVSxHQUFHLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUN0RSxNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUMzQyxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsR0FBRyxHQUFHO1FBQ3pCLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLEdBQUcsWUFBWSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUVyRSxJQUFJLE1BQU0sQ0FBQztJQUNYLFFBQVEsS0FBSyxFQUFFO1FBQ2IsS0FBSyxNQUFNO1lBQ1QsTUFBTSxHQUFHLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ3BDLE1BQU07UUFDUixLQUFLLE9BQU87WUFDVixNQUFNLEdBQUcsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztZQUMvQixNQUFNO1FBQ1IsS0FBSyxTQUFTO1lBQ1osTUFBTSxHQUFHLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ25DLE1BQU07UUFDUixLQUFLLFNBQVM7WUFDWixNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO1lBQ2pELE1BQU0sQ0FBQyxPQUFPO1FBQ2hCLEtBQUssU0FBUztZQUNaLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUM7WUFDakQsTUFBTSxDQUFDLFlBQVk7UUFDckIsS0FBSyxPQUFPO1lBQ1YsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQztZQUNsRCxNQUFNLENBQUMsaUJBQWlCO1FBQzFCLEtBQUssS0FBSztZQUNSLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxTQUFTLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDO1lBQ2hHLE1BQU0sQ0FBQyxrQ0FBa0M7UUFDM0MsS0FBSyxNQUFNO1lBQ1QsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxTQUFTLENBQUMsR0FBRyxNQUFNLENBQUM7WUFDaEUsTUFBTSxDQUFDLHNDQUFzQztRQUMvQztZQUNFLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0tBQzVDO0lBRUQsT0FBTyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQzdDLENBQUM7QUFFRCxTQUFTLFNBQVMsQ0FBQyxDQUFPLEVBQUUsQ0FBTztJQUNqQyx1QkFBdUI7SUFDdkIsTUFBTSxjQUFjLEdBQUcsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoRywrQ0FBK0M7SUFDN0MsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxjQUFjLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDMUQsSUFBSSxPQUFPLENBQUM7SUFDWixJQUFJLE1BQU0sQ0FBQztJQUdYLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxHQUFHLE1BQU0sQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLEVBQUU7UUFDdEMsT0FBTyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsY0FBYyxHQUFHLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN6RCwwQkFBMEI7UUFDMUIsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxHQUFHLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxHQUFHLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0tBQ3BGO1NBQU07UUFDTCxPQUFPLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxjQUFjLEdBQUcsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3pELDBCQUEwQjtRQUMxQixNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLEdBQUcsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEdBQUcsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7S0FDcEY7SUFFRCx3REFBd0Q7SUFDeEQsT0FBTyxDQUFDLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN6QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xvbmVXaXRoT2Zmc2V0LCBnZXREYXRlT2Zmc2V0LCBnZXRVVENPZmZzZXQgfSBmcm9tICcuLi91bml0cy9vZmZzZXQnO1xuaW1wb3J0IHsgRGF0ZVBhcnNpbmdDb25maWcgfSBmcm9tICcuLi9jcmVhdGUvcGFyc2luZy50eXBlcyc7XG5pbXBvcnQgeyBVbml0T2ZUaW1lIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgYWJzRmxvb3IgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBpc0RhdGVWYWxpZCwgaXNOdW1iZXIgfSBmcm9tICcuLi91dGlscy90eXBlLWNoZWNrcyc7XG5pbXBvcnQgeyBnZXRGdWxsWWVhciwgZ2V0TW9udGggfSBmcm9tICcuLi91dGlscy9kYXRlLWdldHRlcnMnO1xuaW1wb3J0IHsgYWRkIH0gZnJvbSAnLi9hZGQtc3VidHJhY3QnO1xuaW1wb3J0IHsgY2xvbmVEYXRlIH0gZnJvbSAnLi4vY3JlYXRlL2Nsb25lJztcblxuZXhwb3J0IGZ1bmN0aW9uIGRpZmYoZGF0ZTogRGF0ZSwgaW5wdXQ6IERhdGUsXG4gICAgICAgICAgICAgICAgICAgICB1bml0czogVW5pdE9mVGltZSwgYXNGbG9hdDogYm9vbGVhbixcbiAgICAgICAgICAgICAgICAgICAgIGNvbmZpZzogRGF0ZVBhcnNpbmdDb25maWcgPSB7fVxuICAgICAgICAgICAgICAgICAgICAgKTogbnVtYmVyIHtcbiAgaWYgKCFpc0RhdGVWYWxpZChkYXRlKSkge1xuICAgIHJldHVybiBOYU47XG4gIH1cblxuICBjb25zdCB0aGF0ID0gY2xvbmVXaXRoT2Zmc2V0KGlucHV0LCBkYXRlLCBjb25maWcpO1xuXG4gIGlmICghaXNEYXRlVmFsaWQodGhhdCkpIHtcbiAgICByZXR1cm4gTmFOO1xuICB9XG5cbiAgY29uc3Qgem9uZU9mZnNldCA9IChnZXREYXRlT2Zmc2V0KGlucHV0KSAtIGdldERhdGVPZmZzZXQoZGF0ZSkpICogNmU0O1xuICBjb25zdCB6b25lRGVsdGEgPSBpc051bWJlcihjb25maWcuX3pvbmVEZWx0YSlcbiAgICA/IGNvbmZpZy5fem9uZURlbHRhICogNmU0XG4gICAgOiAoZ2V0VVRDT2Zmc2V0KGlucHV0LCBjb25maWcpIC0gZ2V0VVRDT2Zmc2V0KGRhdGUsIGNvbmZpZykpICogNmU0O1xuXG4gIGxldCBvdXRwdXQ7XG4gIHN3aXRjaCAodW5pdHMpIHtcbiAgICBjYXNlICd5ZWFyJzpcbiAgICAgIG91dHB1dCA9IG1vbnRoRGlmZihkYXRlLCB0aGF0KSAvIDEyO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnbW9udGgnOlxuICAgICAgb3V0cHV0ID0gbW9udGhEaWZmKGRhdGUsIHRoYXQpO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAncXVhcnRlcic6XG4gICAgICBvdXRwdXQgPSBtb250aERpZmYoZGF0ZSwgdGhhdCkgLyAzO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnc2Vjb25kcyc6XG4gICAgICBvdXRwdXQgPSAoZGF0ZS52YWx1ZU9mKCkgLSB0aGF0LnZhbHVlT2YoKSkgLyAxZTM7XG4gICAgICBicmVhazsgLy8gMTAwMFxuICAgIGNhc2UgJ21pbnV0ZXMnOlxuICAgICAgb3V0cHV0ID0gKGRhdGUudmFsdWVPZigpIC0gdGhhdC52YWx1ZU9mKCkpIC8gNmU0O1xuICAgICAgYnJlYWs7IC8vIDEwMDAgKiA2MFxuICAgIGNhc2UgJ2hvdXJzJzpcbiAgICAgIG91dHB1dCA9IChkYXRlLnZhbHVlT2YoKSAtIHRoYXQudmFsdWVPZigpKSAvIDM2ZTU7XG4gICAgICBicmVhazsgLy8gMTAwMCAqIDYwICogNjBcbiAgICBjYXNlICdkYXknOlxuICAgICAgb3V0cHV0ID0gKGRhdGUudmFsdWVPZigpIC0gdGhhdC52YWx1ZU9mKCkgLSAoem9uZURlbHRhID09PSAwID8gem9uZU9mZnNldCA6IHpvbmVEZWx0YSkpIC8gODY0ZTU7XG4gICAgICBicmVhazsgLy8gMTAwMCAqIDYwICogNjAgKiAyNCwgbmVnYXRlIGRzdFxuICAgIGNhc2UgJ3dlZWsnOlxuICAgICAgb3V0cHV0ID0gKGRhdGUudmFsdWVPZigpIC0gdGhhdC52YWx1ZU9mKCkgLSB6b25lRGVsdGEpIC8gNjA0OGU1O1xuICAgICAgYnJlYWs7IC8vIDEwMDAgKiA2MCAqIDYwICogMjQgKiA3LCBuZWdhdGUgZHN0XG4gICAgZGVmYXVsdDpcbiAgICAgIG91dHB1dCA9IGRhdGUudmFsdWVPZigpIC0gdGhhdC52YWx1ZU9mKCk7XG4gIH1cblxuICByZXR1cm4gYXNGbG9hdCA/IG91dHB1dCA6IGFic0Zsb29yKG91dHB1dCk7XG59XG5cbmZ1bmN0aW9uIG1vbnRoRGlmZihhOiBEYXRlLCBiOiBEYXRlKTogbnVtYmVyIHtcbiAgLy8gZGlmZmVyZW5jZSBpbiBtb250aHNcbiAgY29uc3Qgd2hvbGVNb250aERpZmYgPSAoKGdldEZ1bGxZZWFyKGIpIC0gZ2V0RnVsbFllYXIoYSkpICogMTIpICsgKGdldE1vbnRoKGIpIC0gZ2V0TW9udGgoYSkpO1xuLy8gYiBpcyBpbiAoYW5jaG9yIC0gMSBtb250aCwgYW5jaG9yICsgMSBtb250aClcbiAgY29uc3QgYW5jaG9yID0gYWRkKGNsb25lRGF0ZShhKSwgd2hvbGVNb250aERpZmYsICdtb250aCcpO1xuICBsZXQgYW5jaG9yMjtcbiAgbGV0IGFkanVzdDtcblxuXG4gIGlmIChiLnZhbHVlT2YoKSAtIGFuY2hvci52YWx1ZU9mKCkgPCAwKSB7XG4gICAgYW5jaG9yMiA9IGFkZChjbG9uZURhdGUoYSksIHdob2xlTW9udGhEaWZmIC0gMSwgJ21vbnRoJyk7XG4gICAgLy8gbGluZWFyIGFjcm9zcyB0aGUgbW9udGhcbiAgICBhZGp1c3QgPSAoYi52YWx1ZU9mKCkgLSBhbmNob3IudmFsdWVPZigpKSAvIChhbmNob3IudmFsdWVPZigpIC0gYW5jaG9yMi52YWx1ZU9mKCkpO1xuICB9IGVsc2Uge1xuICAgIGFuY2hvcjIgPSBhZGQoY2xvbmVEYXRlKGEpLCB3aG9sZU1vbnRoRGlmZiArIDEsICdtb250aCcpO1xuICAgIC8vIGxpbmVhciBhY3Jvc3MgdGhlIG1vbnRoXG4gICAgYWRqdXN0ID0gKGIudmFsdWVPZigpIC0gYW5jaG9yLnZhbHVlT2YoKSkgLyAoYW5jaG9yMi52YWx1ZU9mKCkgLSBhbmNob3IudmFsdWVPZigpKTtcbiAgfVxuXG4gIC8vIGNoZWNrIGZvciBuZWdhdGl2ZSB6ZXJvLCByZXR1cm4gemVybyBpZiBuZWdhdGl2ZSB6ZXJvXG4gIHJldHVybiAtKHdob2xlTW9udGhEaWZmICsgYWRqdXN0KSB8fCAwO1xufVxuIl19
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
// Pick a moment m from moments so that m[fn](other) is true for all
|
|
2
|
-
// other. This relies on the function fn to be transitive.
|
|
3
|
-
//
|
|
4
|
-
// moments should either be an array of moment objects or an array, whose
|
|
5
|
-
// first element is an array of moment objects.
|
|
6
|
-
import { isArray, isDateValid } from '../utils/type-checks';
|
|
7
|
-
import { isAfter, isBefore } from '../utils/date-compare';
|
|
8
|
-
function pickBy(fn, dates) {
|
|
9
|
-
let _dates;
|
|
10
|
-
const _firstArg = dates[0];
|
|
11
|
-
if (isArray(_firstArg) && dates.length === 1) {
|
|
12
|
-
_dates = _firstArg;
|
|
13
|
-
}
|
|
14
|
-
else if (isArray(dates)) {
|
|
15
|
-
_dates = dates;
|
|
16
|
-
}
|
|
17
|
-
if (!_dates || !_dates.length) {
|
|
18
|
-
return new Date();
|
|
19
|
-
}
|
|
20
|
-
let res = _dates[0];
|
|
21
|
-
for (let i = 1; i < _dates.length; ++i) {
|
|
22
|
-
// if (!moments[i].isValid() || moments[i][fn](res)) {
|
|
23
|
-
if (!isDateValid(_dates[i]) || fn.call(null, _dates[i], res)) {
|
|
24
|
-
res = _dates[i];
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
return res;
|
|
28
|
-
}
|
|
29
|
-
// TODO: Use [].sort instead?
|
|
30
|
-
export function min(...args) {
|
|
31
|
-
// const args = [].slice.call(arguments, 0);
|
|
32
|
-
return pickBy(isBefore, args);
|
|
33
|
-
}
|
|
34
|
-
export function max(...args) {
|
|
35
|
-
// const args = [].slice.call(arguments, 0);
|
|
36
|
-
return pickBy(isAfter, args);
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluLW1heC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVwaWNrZXIvY2hyb25vcy9tb21lbnQvbWluLW1heC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvRUFBb0U7QUFDcEUsMERBQTBEO0FBQzFELEVBQUU7QUFDRix5RUFBeUU7QUFDekUsK0NBQStDO0FBQy9DLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDNUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRCxTQUFTLE1BQU0sQ0FBQyxFQUFZLEVBQUUsS0FBd0I7SUFDcEQsSUFBSSxNQUFjLENBQUM7SUFDbkIsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNCLElBQUksT0FBTyxDQUFPLFNBQVMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQ2xELE1BQU0sR0FBRyxTQUFTLENBQUM7S0FDcEI7U0FBTSxJQUFJLE9BQU8sQ0FBTyxLQUFLLENBQUMsRUFBRTtRQUMvQixNQUFNLEdBQUcsS0FBSyxDQUFDO0tBQ2hCO0lBRUQsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDN0IsT0FBTyxJQUFJLElBQUksRUFBRSxDQUFDO0tBQ25CO0lBQ0QsSUFBSSxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFO1FBQ3RDLHNEQUFzRDtRQUN0RCxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRTtZQUM1RCxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2pCO0tBQ0Y7SUFFRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUM7QUFFRCw2QkFBNkI7QUFDN0IsTUFBTSxVQUFVLEdBQUcsQ0FBQyxHQUFHLElBQVk7SUFDakMsNENBQTRDO0lBRTVDLE9BQU8sTUFBTSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUNoQyxDQUFDO0FBRUQsTUFBTSxVQUFVLEdBQUcsQ0FBQyxHQUFHLElBQVk7SUFDakMsNENBQTRDO0lBRTVDLE9BQU8sTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztBQUMvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gUGljayBhIG1vbWVudCBtIGZyb20gbW9tZW50cyBzbyB0aGF0IG1bZm5dKG90aGVyKSBpcyB0cnVlIGZvciBhbGxcbi8vIG90aGVyLiBUaGlzIHJlbGllcyBvbiB0aGUgZnVuY3Rpb24gZm4gdG8gYmUgdHJhbnNpdGl2ZS5cbi8vXG4vLyBtb21lbnRzIHNob3VsZCBlaXRoZXIgYmUgYW4gYXJyYXkgb2YgbW9tZW50IG9iamVjdHMgb3IgYW4gYXJyYXksIHdob3NlXG4vLyBmaXJzdCBlbGVtZW50IGlzIGFuIGFycmF5IG9mIG1vbWVudCBvYmplY3RzLlxuaW1wb3J0IHsgaXNBcnJheSwgaXNEYXRlVmFsaWQgfSBmcm9tICcuLi91dGlscy90eXBlLWNoZWNrcyc7XG5pbXBvcnQgeyBpc0FmdGVyLCBpc0JlZm9yZSB9IGZyb20gJy4uL3V0aWxzL2RhdGUtY29tcGFyZSc7XG5cbmZ1bmN0aW9uIHBpY2tCeShmbjogRnVuY3Rpb24sIGRhdGVzOiBEYXRlW10gfCBEYXRlW11bXSk6IERhdGUge1xuICBsZXQgX2RhdGVzOiBEYXRlW107XG4gIGNvbnN0IF9maXJzdEFyZyA9IGRhdGVzWzBdO1xuICBpZiAoaXNBcnJheTxEYXRlPihfZmlyc3RBcmcpICYmIGRhdGVzLmxlbmd0aCA9PT0gMSkge1xuICAgIF9kYXRlcyA9IF9maXJzdEFyZztcbiAgfSBlbHNlIGlmIChpc0FycmF5PERhdGU+KGRhdGVzKSkge1xuICAgIF9kYXRlcyA9IGRhdGVzO1xuICB9XG5cbiAgaWYgKCFfZGF0ZXMgfHwgIV9kYXRlcy5sZW5ndGgpIHtcbiAgICByZXR1cm4gbmV3IERhdGUoKTtcbiAgfVxuICBsZXQgcmVzID0gX2RhdGVzWzBdO1xuICBmb3IgKGxldCBpID0gMTsgaSA8IF9kYXRlcy5sZW5ndGg7ICsraSkge1xuICAgIC8vIGlmICghbW9tZW50c1tpXS5pc1ZhbGlkKCkgfHwgbW9tZW50c1tpXVtmbl0ocmVzKSkge1xuICAgIGlmICghaXNEYXRlVmFsaWQoX2RhdGVzW2ldKSB8fCBmbi5jYWxsKG51bGwsIF9kYXRlc1tpXSwgcmVzKSkge1xuICAgICAgcmVzID0gX2RhdGVzW2ldO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiByZXM7XG59XG5cbi8vIFRPRE86IFVzZSBbXS5zb3J0IGluc3RlYWQ/XG5leHBvcnQgZnVuY3Rpb24gbWluKC4uLmFyZ3M6IERhdGVbXSk6IERhdGUge1xuICAvLyBjb25zdCBhcmdzID0gW10uc2xpY2UuY2FsbChhcmd1bWVudHMsIDApO1xuXG4gIHJldHVybiBwaWNrQnkoaXNCZWZvcmUsIGFyZ3MpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWF4KC4uLmFyZ3M6IERhdGVbXSk6IERhdGUge1xuICAvLyBjb25zdCBhcmdzID0gW10uc2xpY2UuY2FsbChhcmd1bWVudHMsIDApO1xuXG4gIHJldHVybiBwaWNrQnkoaXNBZnRlciwgYXJncyk7XG59XG4iXX0=
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { hasOwnProp, isFunction } from '../utils/type-checks';
|
|
2
|
-
export const match1 = /\d/; // 0 - 9
|
|
3
|
-
export const match2 = /\d\d/; // 00 - 99
|
|
4
|
-
export const match3 = /\d{3}/; // 000 - 999
|
|
5
|
-
export const match4 = /\d{4}/; // 0000 - 9999
|
|
6
|
-
export const match6 = /[+-]?\d{6}/; // -999999 - 999999
|
|
7
|
-
export const match1to2 = /\d\d?/; // 0 - 99
|
|
8
|
-
export const match3to4 = /\d\d\d\d?/; // 999 - 9999
|
|
9
|
-
export const match5to6 = /\d\d\d\d\d\d?/; // 99999 - 999999
|
|
10
|
-
export const match1to3 = /\d{1,3}/; // 0 - 999
|
|
11
|
-
export const match1to4 = /\d{1,4}/; // 0 - 9999
|
|
12
|
-
export const match1to6 = /[+-]?\d{1,6}/; // -999999 - 999999
|
|
13
|
-
export const matchUnsigned = /\d+/; // 0 - inf
|
|
14
|
-
export const matchSigned = /[+-]?\d+/; // -inf - inf
|
|
15
|
-
export const matchOffset = /Z|[+-]\d\d:?\d\d/gi; // +00:00 -00:00 +0000 -0000 or Z
|
|
16
|
-
export const matchShortOffset = /Z|[+-]\d\d(?::?\d\d)?/gi; // +00 -00 +00:00 -00:00 +0000 -0000 or Z
|
|
17
|
-
export const matchTimestamp = /[+-]?\d+(\.\d{1,3})?/; // 123456789 123456789.123
|
|
18
|
-
// any word (or two) characters or numbers including two/three word month in arabic.
|
|
19
|
-
// includes scottish gaelic two word and hyphenated months
|
|
20
|
-
// tslint:disable-next-line
|
|
21
|
-
export const matchWord = /[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i;
|
|
22
|
-
const regexes = {};
|
|
23
|
-
export function addRegexToken(token, regex, strictRegex) {
|
|
24
|
-
if (isFunction(regex)) {
|
|
25
|
-
regexes[token] = regex;
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
regexes[token] = function (isStrict, locale) {
|
|
29
|
-
return (isStrict && strictRegex) ? strictRegex : regex;
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
export function getParseRegexForToken(token, locale) {
|
|
33
|
-
const _strict = false;
|
|
34
|
-
if (!hasOwnProp(regexes, token)) {
|
|
35
|
-
return new RegExp(unescapeFormat(token));
|
|
36
|
-
}
|
|
37
|
-
return regexes[token](_strict, locale);
|
|
38
|
-
}
|
|
39
|
-
// Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript
|
|
40
|
-
function unescapeFormat(str) {
|
|
41
|
-
// tslint:disable-next-line
|
|
42
|
-
return regexEscape(str
|
|
43
|
-
.replace('\\', '')
|
|
44
|
-
.replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, (matched, p1, p2, p3, p4) => p1 || p2 || p3 || p4));
|
|
45
|
-
}
|
|
46
|
-
export function regexEscape(str) {
|
|
47
|
-
return str.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
|
|
48
|
-
}
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2Nocm9ub3MvcGFyc2UvcmVnZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUc5RCxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLENBQVksY0FBYztBQUNyRCxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLENBQVUsZUFBZTtBQUN0RCxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLENBQVMsZ0JBQWdCO0FBQ3ZELE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsQ0FBUyxpQkFBaUI7QUFDeEQsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxDQUFJLG1CQUFtQjtBQUMxRCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLENBQVMsZUFBZTtBQUN6RCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsV0FBVyxDQUFDLENBQUssaUJBQWlCO0FBQzNELE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxlQUFlLENBQUMsQ0FBQyxtQkFBbUI7QUFDN0QsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxDQUFPLGdCQUFnQjtBQUMxRCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFDLENBQU8saUJBQWlCO0FBQzNELE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxjQUFjLENBQUMsQ0FBRSxtQkFBbUI7QUFFN0QsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxDQUFXLGdCQUFnQjtBQUM5RCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsVUFBVSxDQUFDLENBQU0sZ0JBQWdCO0FBRTVELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxvQkFBb0IsQ0FBQyxDQUFDLGlDQUFpQztBQUNsRixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyx5QkFBeUIsQ0FBQyxDQUFDLHlDQUF5QztBQUVwRyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsc0JBQXNCLENBQUMsQ0FBQywwQkFBMEI7QUFFaEYsb0ZBQW9GO0FBQ3BGLDBEQUEwRDtBQUMxRCwyQkFBMkI7QUFDM0IsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLDBJQUEwSSxDQUFDO0FBR3BLLE1BQU0sT0FBTyxHQUFtQyxFQUFFLENBQUM7QUFHbkQsTUFBTSxVQUFVLGFBQWEsQ0FBQyxLQUFhLEVBQUUsS0FBNkIsRUFBRSxXQUFvQjtJQUM5RixJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUNyQixPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBRXZCLE9BQU87S0FDUjtJQUVELE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxVQUFVLFFBQWlCLEVBQUUsTUFBYztRQUMxRCxPQUFPLENBQUMsUUFBUSxJQUFJLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUN6RCxDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLHFCQUFxQixDQUFDLEtBQWEsRUFBRSxNQUFjO0lBQ2pFLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQztJQUN0QixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRTtRQUMvQixPQUFPLElBQUksTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0tBQzFDO0lBRUQsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFFRCx1R0FBdUc7QUFDdkcsU0FBUyxjQUFjLENBQUMsR0FBVztJQUNqQywyQkFBMkI7SUFDM0IsT0FBTyxXQUFXLENBQUMsR0FBRztTQUNuQixPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztTQUNqQixPQUFPLENBQUMscUNBQXFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FDbkcsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsV0FBVyxDQUFDLEdBQVc7SUFDckMsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLHdCQUF3QixFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ3ZELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBoYXNPd25Qcm9wLCBpc0Z1bmN0aW9uIH0gZnJvbSAnLi4vdXRpbHMvdHlwZS1jaGVja3MnO1xuaW1wb3J0IHsgTG9jYWxlIH0gZnJvbSAnLi4vbG9jYWxlL2xvY2FsZS5jbGFzcyc7XG5cbmV4cG9ydCBjb25zdCBtYXRjaDEgPSAvXFxkLzsgICAgICAgICAgICAvLyAgICAgICAwIC0gOVxuZXhwb3J0IGNvbnN0IG1hdGNoMiA9IC9cXGRcXGQvOyAgICAgICAgICAvLyAgICAgIDAwIC0gOTlcbmV4cG9ydCBjb25zdCBtYXRjaDMgPSAvXFxkezN9LzsgICAgICAgICAvLyAgICAgMDAwIC0gOTk5XG5leHBvcnQgY29uc3QgbWF0Y2g0ID0gL1xcZHs0fS87ICAgICAgICAgLy8gICAgMDAwMCAtIDk5OTlcbmV4cG9ydCBjb25zdCBtYXRjaDYgPSAvWystXT9cXGR7Nn0vOyAgICAvLyAtOTk5OTk5IC0gOTk5OTk5XG5leHBvcnQgY29uc3QgbWF0Y2gxdG8yID0gL1xcZFxcZD8vOyAgICAgICAgIC8vICAgICAgIDAgLSA5OVxuZXhwb3J0IGNvbnN0IG1hdGNoM3RvNCA9IC9cXGRcXGRcXGRcXGQ/LzsgICAgIC8vICAgICA5OTkgLSA5OTk5XG5leHBvcnQgY29uc3QgbWF0Y2g1dG82ID0gL1xcZFxcZFxcZFxcZFxcZFxcZD8vOyAvLyAgIDk5OTk5IC0gOTk5OTk5XG5leHBvcnQgY29uc3QgbWF0Y2gxdG8zID0gL1xcZHsxLDN9LzsgICAgICAgLy8gICAgICAgMCAtIDk5OVxuZXhwb3J0IGNvbnN0IG1hdGNoMXRvNCA9IC9cXGR7MSw0fS87ICAgICAgIC8vICAgICAgIDAgLSA5OTk5XG5leHBvcnQgY29uc3QgbWF0Y2gxdG82ID0gL1srLV0/XFxkezEsNn0vOyAgLy8gLTk5OTk5OSAtIDk5OTk5OVxuXG5leHBvcnQgY29uc3QgbWF0Y2hVbnNpZ25lZCA9IC9cXGQrLzsgICAgICAgICAgIC8vICAgICAgIDAgLSBpbmZcbmV4cG9ydCBjb25zdCBtYXRjaFNpZ25lZCA9IC9bKy1dP1xcZCsvOyAgICAgIC8vICAgIC1pbmYgLSBpbmZcblxuZXhwb3J0IGNvbnN0IG1hdGNoT2Zmc2V0ID0gL1p8WystXVxcZFxcZDo/XFxkXFxkL2dpOyAvLyArMDA6MDAgLTAwOjAwICswMDAwIC0wMDAwIG9yIFpcbmV4cG9ydCBjb25zdCBtYXRjaFNob3J0T2Zmc2V0ID0gL1p8WystXVxcZFxcZCg/Ojo/XFxkXFxkKT8vZ2k7IC8vICswMCAtMDAgKzAwOjAwIC0wMDowMCArMDAwMCAtMDAwMCBvciBaXG5cbmV4cG9ydCBjb25zdCBtYXRjaFRpbWVzdGFtcCA9IC9bKy1dP1xcZCsoXFwuXFxkezEsM30pPy87IC8vIDEyMzQ1Njc4OSAxMjM0NTY3ODkuMTIzXG5cbi8vIGFueSB3b3JkIChvciB0d28pIGNoYXJhY3RlcnMgb3IgbnVtYmVycyBpbmNsdWRpbmcgdHdvL3RocmVlIHdvcmQgbW9udGggaW4gYXJhYmljLlxuLy8gaW5jbHVkZXMgc2NvdHRpc2ggZ2FlbGljIHR3byB3b3JkIGFuZCBoeXBoZW5hdGVkIG1vbnRoc1xuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lXG5leHBvcnQgY29uc3QgbWF0Y2hXb3JkID0gL1swLTldezAsMjU2fVsnYS16XFx1MDBBMC1cXHUwNUZGXFx1MDcwMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXXsxLDI1Nn18W1xcdTA2MDAtXFx1MDZGRlxcL117MSwyNTZ9KFxccyo/W1xcdTA2MDAtXFx1MDZGRl17MSwyNTZ9KXsxLDJ9L2k7XG5cbmV4cG9ydCB0eXBlIFJlZ0V4cFRva2VuRm4gPSAoaXNTdHJpY3Q6IGJvb2xlYW4sIGxvY2FsZTogTG9jYWxlKSA9PiBSZWdFeHA7XG5jb25zdCByZWdleGVzOiB7W2tleTogc3RyaW5nXTogUmVnRXhwVG9rZW5Gbn0gPSB7fTtcblxuXG5leHBvcnQgZnVuY3Rpb24gYWRkUmVnZXhUb2tlbih0b2tlbjogc3RyaW5nLCByZWdleDogUmVnRXhwIHwgUmVnRXhwVG9rZW5Gbiwgc3RyaWN0UmVnZXg/OiBSZWdFeHApOiB2b2lkIHtcbiAgaWYgKGlzRnVuY3Rpb24ocmVnZXgpKSB7XG4gICAgcmVnZXhlc1t0b2tlbl0gPSByZWdleDtcblxuICAgIHJldHVybjtcbiAgfVxuXG4gIHJlZ2V4ZXNbdG9rZW5dID0gZnVuY3Rpb24gKGlzU3RyaWN0OiBib29sZWFuLCBsb2NhbGU6IExvY2FsZSkge1xuICAgIHJldHVybiAoaXNTdHJpY3QgJiYgc3RyaWN0UmVnZXgpID8gc3RyaWN0UmVnZXggOiByZWdleDtcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFBhcnNlUmVnZXhGb3JUb2tlbih0b2tlbjogc3RyaW5nLCBsb2NhbGU6IExvY2FsZSk6IFJlZ0V4cCB7XG4gIGNvbnN0IF9zdHJpY3QgPSBmYWxzZTtcbiAgaWYgKCFoYXNPd25Qcm9wKHJlZ2V4ZXMsIHRva2VuKSkge1xuICAgIHJldHVybiBuZXcgUmVnRXhwKHVuZXNjYXBlRm9ybWF0KHRva2VuKSk7XG4gIH1cblxuICByZXR1cm4gcmVnZXhlc1t0b2tlbl0oX3N0cmljdCwgbG9jYWxlKTtcbn1cblxuLy8gQ29kZSBmcm9tIGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzU2MTQ5My9pcy10aGVyZS1hLXJlZ2V4cC1lc2NhcGUtZnVuY3Rpb24taW4tamF2YXNjcmlwdFxuZnVuY3Rpb24gdW5lc2NhcGVGb3JtYXQoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmVcbiAgcmV0dXJuIHJlZ2V4RXNjYXBlKHN0clxuICAgIC5yZXBsYWNlKCdcXFxcJywgJycpXG4gICAgLnJlcGxhY2UoL1xcXFwoXFxbKXxcXFxcKFxcXSl8XFxbKFteXFxdXFxbXSopXFxdfFxcXFwoLikvZywgKG1hdGNoZWQsIHAxLCBwMiwgcDMsIHA0KSA9PiBwMSB8fCBwMiB8fCBwMyB8fCBwNClcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2V4RXNjYXBlKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHN0ci5yZXBsYWNlKC9bLVxcL1xcXFxeJCorPy4oKXxbXFxde31dL2csICdcXFxcJCYnKTtcbn1cbiJdfQ==
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
// tslint:disable:max-line-length
|
|
2
|
-
import { hasOwnProp, isArray, isFunction, isNumber, isString, toInt } from '../utils/type-checks';
|
|
3
|
-
const tokens = {};
|
|
4
|
-
export function addParseToken(token, callback) {
|
|
5
|
-
const _token = isString(token) ? [token] : token;
|
|
6
|
-
let func = callback;
|
|
7
|
-
if (isNumber(callback)) {
|
|
8
|
-
func = function (input, array, config) {
|
|
9
|
-
array[callback] = toInt(input);
|
|
10
|
-
return config;
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
if (isArray(_token) && isFunction(func)) {
|
|
14
|
-
let i;
|
|
15
|
-
for (i = 0; i < _token.length; i++) {
|
|
16
|
-
tokens[_token[i]] = func;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
export function addWeekParseToken(token, callback) {
|
|
21
|
-
addParseToken(token, function (input, array, config, _token) {
|
|
22
|
-
config._w = config._w || {};
|
|
23
|
-
return callback(input, config._w, config, _token);
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
export function addTimeToArrayFromToken(token, input, config) {
|
|
27
|
-
if (input != null && hasOwnProp(tokens, token)) {
|
|
28
|
-
tokens[token](input, config._a, config, token);
|
|
29
|
-
}
|
|
30
|
-
return config;
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2Nocm9ub3MvcGFyc2UvdG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUNBQWlDO0FBQ2pDLE9BQU8sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBSWxHLE1BQU0sTUFBTSxHQUFzQyxFQUFFLENBQUM7QUFFckQsTUFBTSxVQUFVLGFBQWEsQ0FBQyxLQUF3QixFQUFFLFFBQW1DO0lBQ3pGLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ2pELElBQUksSUFBSSxHQUFHLFFBQVEsQ0FBQztJQUVwQixJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUN0QixJQUFJLEdBQUcsVUFBVSxLQUFhLEVBQUUsS0FBZ0IsRUFBRSxNQUF5QjtZQUN6RSxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRS9CLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUMsQ0FBQztLQUNIO0lBRUQsSUFBSSxPQUFPLENBQVMsTUFBTSxDQUFDLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQy9DLElBQUksQ0FBQyxDQUFDO1FBQ04sS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ2xDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7U0FDMUI7S0FDRjtBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsS0FBZSxFQUFFLFFBQTBCO0lBQzNFLGFBQWEsQ0FBQyxLQUFLLEVBQUUsVUFBVSxLQUFhLEVBQUUsS0FBZ0IsRUFBRSxNQUF5QixFQUFFLE1BQWM7UUFDdkcsTUFBTSxDQUFDLEVBQUUsR0FBRyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUU1QixPQUFPLFFBQVEsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDcEQsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBR0QsTUFBTSxVQUFVLHVCQUF1QixDQUFDLEtBQWEsRUFBRSxLQUFhLEVBQUUsTUFBeUI7SUFDN0YsSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUU7UUFDOUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztLQUNoRDtJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0c2xpbnQ6ZGlzYWJsZTptYXgtbGluZS1sZW5ndGhcbmltcG9ydCB7IGhhc093blByb3AsIGlzQXJyYXksIGlzRnVuY3Rpb24sIGlzTnVtYmVyLCBpc1N0cmluZywgdG9JbnQgfSBmcm9tICcuLi91dGlscy90eXBlLWNoZWNrcyc7XG5pbXBvcnQgeyBEYXRlUGFyc2luZ0NvbmZpZyB9IGZyb20gJy4uL2NyZWF0ZS9wYXJzaW5nLnR5cGVzJztcbmltcG9ydCB7IERhdGVBcnJheSwgRGF0ZVBhcnNlVG9rZW5GbiB9IGZyb20gJy4uL3R5cGVzJztcblxuY29uc3QgdG9rZW5zOiB7W2tleTogc3RyaW5nXTogRGF0ZVBhcnNlVG9rZW5Gbn0gPSB7fTtcblxuZXhwb3J0IGZ1bmN0aW9uIGFkZFBhcnNlVG9rZW4odG9rZW46IHN0cmluZyB8IHN0cmluZ1tdLCBjYWxsYmFjazogRGF0ZVBhcnNlVG9rZW5GbiB8IG51bWJlcikge1xuICBjb25zdCBfdG9rZW4gPSBpc1N0cmluZyh0b2tlbikgPyBbdG9rZW5dIDogdG9rZW47XG4gIGxldCBmdW5jID0gY2FsbGJhY2s7XG5cbiAgaWYgKGlzTnVtYmVyKGNhbGxiYWNrKSkge1xuICAgIGZ1bmMgPSBmdW5jdGlvbiAoaW5wdXQ6IHN0cmluZywgYXJyYXk6IERhdGVBcnJheSwgY29uZmlnOiBEYXRlUGFyc2luZ0NvbmZpZyk6IERhdGVQYXJzaW5nQ29uZmlnIHtcbiAgICAgIGFycmF5W2NhbGxiYWNrXSA9IHRvSW50KGlucHV0KTtcblxuICAgICAgcmV0dXJuIGNvbmZpZztcbiAgICB9O1xuICB9XG5cbiAgaWYgKGlzQXJyYXk8c3RyaW5nPihfdG9rZW4pICYmIGlzRnVuY3Rpb24oZnVuYykpIHtcbiAgICBsZXQgaTtcbiAgICBmb3IgKGkgPSAwOyBpIDwgX3Rva2VuLmxlbmd0aDsgaSsrKSB7XG4gICAgICB0b2tlbnNbX3Rva2VuW2ldXSA9IGZ1bmM7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhZGRXZWVrUGFyc2VUb2tlbih0b2tlbjogc3RyaW5nW10sIGNhbGxiYWNrOiBEYXRlUGFyc2VUb2tlbkZuKTogdm9pZCB7XG4gIGFkZFBhcnNlVG9rZW4odG9rZW4sIGZ1bmN0aW9uIChpbnB1dDogc3RyaW5nLCBhcnJheTogRGF0ZUFycmF5LCBjb25maWc6IERhdGVQYXJzaW5nQ29uZmlnLCBfdG9rZW46IHN0cmluZyk6IERhdGVQYXJzaW5nQ29uZmlnIHtcbiAgICBjb25maWcuX3cgPSBjb25maWcuX3cgfHwge307XG5cbiAgICByZXR1cm4gY2FsbGJhY2soaW5wdXQsIGNvbmZpZy5fdywgY29uZmlnLCBfdG9rZW4pO1xuICB9KTtcbn1cblxuXG5leHBvcnQgZnVuY3Rpb24gYWRkVGltZVRvQXJyYXlGcm9tVG9rZW4odG9rZW46IHN0cmluZywgaW5wdXQ6IHN0cmluZywgY29uZmlnOiBEYXRlUGFyc2luZ0NvbmZpZyk6IERhdGVQYXJzaW5nQ29uZmlnIHtcbiAgaWYgKGlucHV0ICE9IG51bGwgJiYgaGFzT3duUHJvcCh0b2tlbnMsIHRva2VuKSkge1xuICAgIHRva2Vuc1t0b2tlbl0oaW5wdXQsIGNvbmZpZy5fYSwgY29uZmlnLCB0b2tlbik7XG4gIH1cblxuICByZXR1cm4gY29uZmlnO1xufVxuIl19
|