mis-crystal-design-system 14.0.55-test-v6 → 14.0.56-test

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (475) hide show
  1. package/dropdown/dropdown.component.d.ts +2 -1
  2. package/dynamic-form/dynamic-form.component.d.ts +10 -2
  3. package/esm2020/async-search-dropdown/async-dropdown.component.mjs +1 -1
  4. package/esm2020/dropdown/dropdown.component.mjs +79 -50
  5. package/esm2020/dynamic-form/dynamic-form.component.mjs +471 -213
  6. package/fesm2015/mis-crystal-design-system-async-search-dropdown.mjs.map +1 -1
  7. package/fesm2015/mis-crystal-design-system-dropdown.mjs +87 -49
  8. package/fesm2015/mis-crystal-design-system-dropdown.mjs.map +1 -1
  9. package/fesm2015/mis-crystal-design-system-dynamic-form.mjs +524 -212
  10. package/fesm2015/mis-crystal-design-system-dynamic-form.mjs.map +1 -1
  11. package/fesm2020/mis-crystal-design-system-async-search-dropdown.mjs.map +1 -1
  12. package/fesm2020/mis-crystal-design-system-dropdown.mjs +78 -49
  13. package/fesm2020/mis-crystal-design-system-dropdown.mjs.map +1 -1
  14. package/fesm2020/mis-crystal-design-system-dynamic-form.mjs +470 -212
  15. package/fesm2020/mis-crystal-design-system-dynamic-form.mjs.map +1 -1
  16. package/package.json +1 -9
  17. package/datepicker/base/bs-datepicker-container.d.ts +0 -44
  18. package/datepicker/bs-datepicker-inline.component.d.ts +0 -64
  19. package/datepicker/bs-datepicker-inline.config.d.ts +0 -6
  20. package/datepicker/bs-datepicker-input.directive.d.ts +0 -33
  21. package/datepicker/bs-datepicker.component.d.ts +0 -126
  22. package/datepicker/bs-datepicker.config.d.ts +0 -143
  23. package/datepicker/bs-datepicker.module.d.ts +0 -29
  24. package/datepicker/bs-daterangepicker-inline.component.d.ts +0 -64
  25. package/datepicker/bs-daterangepicker-inline.config.d.ts +0 -9
  26. package/datepicker/bs-daterangepicker-input.directive.d.ts +0 -33
  27. package/datepicker/bs-daterangepicker.component.d.ts +0 -118
  28. package/datepicker/bs-daterangepicker.config.d.ts +0 -7
  29. package/datepicker/bs-locale.service.d.ts +0 -13
  30. package/datepicker/chronos/create/check-overflow.d.ts +0 -2
  31. package/datepicker/chronos/create/clone.d.ts +0 -1
  32. package/datepicker/chronos/create/date-from-array.d.ts +0 -2
  33. package/datepicker/chronos/create/from-anything.d.ts +0 -4
  34. package/datepicker/chronos/create/from-array.d.ts +0 -2
  35. package/datepicker/chronos/create/from-object.d.ts +0 -2
  36. package/datepicker/chronos/create/from-string-and-array.d.ts +0 -2
  37. package/datepicker/chronos/create/from-string-and-format.d.ts +0 -4
  38. package/datepicker/chronos/create/from-string.d.ts +0 -4
  39. package/datepicker/chronos/create/local.d.ts +0 -3
  40. package/datepicker/chronos/create/parsing-flags.d.ts +0 -2
  41. package/datepicker/chronos/create/parsing.types.d.ts +0 -64
  42. package/datepicker/chronos/create/valid.d.ts +0 -6
  43. package/datepicker/chronos/duration/bubble.d.ts +0 -4
  44. package/datepicker/chronos/duration/constructor.d.ts +0 -21
  45. package/datepicker/chronos/duration/create.d.ts +0 -8
  46. package/datepicker/chronos/duration/humanize.d.ts +0 -5
  47. package/datepicker/chronos/duration/valid.d.ts +0 -2
  48. package/datepicker/chronos/format/format.d.ts +0 -11
  49. package/datepicker/chronos/format.d.ts +0 -5
  50. package/datepicker/chronos/i18n/ar.d.ts +0 -2
  51. package/datepicker/chronos/i18n/bg.d.ts +0 -2
  52. package/datepicker/chronos/i18n/ca.d.ts +0 -2
  53. package/datepicker/chronos/i18n/cs.d.ts +0 -2
  54. package/datepicker/chronos/i18n/da.d.ts +0 -2
  55. package/datepicker/chronos/i18n/de.d.ts +0 -2
  56. package/datepicker/chronos/i18n/en-gb.d.ts +0 -2
  57. package/datepicker/chronos/i18n/es-do.d.ts +0 -2
  58. package/datepicker/chronos/i18n/es-us.d.ts +0 -2
  59. package/datepicker/chronos/i18n/es.d.ts +0 -2
  60. package/datepicker/chronos/i18n/et.d.ts +0 -2
  61. package/datepicker/chronos/i18n/fi.d.ts +0 -2
  62. package/datepicker/chronos/i18n/fr.d.ts +0 -2
  63. package/datepicker/chronos/i18n/gl.d.ts +0 -2
  64. package/datepicker/chronos/i18n/he.d.ts +0 -2
  65. package/datepicker/chronos/i18n/hi.d.ts +0 -2
  66. package/datepicker/chronos/i18n/hr.d.ts +0 -2
  67. package/datepicker/chronos/i18n/hu.d.ts +0 -2
  68. package/datepicker/chronos/i18n/id.d.ts +0 -2
  69. package/datepicker/chronos/i18n/it.d.ts +0 -2
  70. package/datepicker/chronos/i18n/ja.d.ts +0 -2
  71. package/datepicker/chronos/i18n/ka.d.ts +0 -2
  72. package/datepicker/chronos/i18n/kk.d.ts +0 -2
  73. package/datepicker/chronos/i18n/ko.d.ts +0 -2
  74. package/datepicker/chronos/i18n/lt.d.ts +0 -2
  75. package/datepicker/chronos/i18n/lv.d.ts +0 -2
  76. package/datepicker/chronos/i18n/mn.d.ts +0 -2
  77. package/datepicker/chronos/i18n/nb.d.ts +0 -2
  78. package/datepicker/chronos/i18n/nl-be.d.ts +0 -2
  79. package/datepicker/chronos/i18n/nl.d.ts +0 -2
  80. package/datepicker/chronos/i18n/pl.d.ts +0 -2
  81. package/datepicker/chronos/i18n/pt-br.d.ts +0 -2
  82. package/datepicker/chronos/i18n/ro.d.ts +0 -2
  83. package/datepicker/chronos/i18n/ru.d.ts +0 -2
  84. package/datepicker/chronos/i18n/sk.d.ts +0 -2
  85. package/datepicker/chronos/i18n/sl.d.ts +0 -2
  86. package/datepicker/chronos/i18n/sq.d.ts +0 -2
  87. package/datepicker/chronos/i18n/sv.d.ts +0 -2
  88. package/datepicker/chronos/i18n/th-be.d.ts +0 -2
  89. package/datepicker/chronos/i18n/th.d.ts +0 -2
  90. package/datepicker/chronos/i18n/tr.d.ts +0 -2
  91. package/datepicker/chronos/i18n/uk.d.ts +0 -2
  92. package/datepicker/chronos/i18n/vi.d.ts +0 -2
  93. package/datepicker/chronos/i18n/zh-cn.d.ts +0 -2
  94. package/datepicker/chronos/index.d.ts +0 -1
  95. package/datepicker/chronos/locale/calendar.d.ts +0 -8
  96. package/datepicker/chronos/locale/locale.class.d.ts +0 -143
  97. package/datepicker/chronos/locale/locale.defaults.d.ts +0 -11
  98. package/datepicker/chronos/locale/locales.d.ts +0 -7
  99. package/datepicker/chronos/moment/add-subtract.d.ts +0 -5
  100. package/datepicker/chronos/moment/calendar.d.ts +0 -15
  101. package/datepicker/chronos/moment/diff.d.ts +0 -3
  102. package/datepicker/chronos/moment/min-max.d.ts +0 -2
  103. package/datepicker/chronos/parse/regex.d.ts +0 -22
  104. package/datepicker/chronos/parse/token.d.ts +0 -5
  105. package/datepicker/chronos/public_api.d.ts +0 -57
  106. package/datepicker/chronos/test/chain.d.ts +0 -214
  107. package/datepicker/chronos/types.d.ts +0 -36
  108. package/datepicker/chronos/units/aliases.d.ts +0 -7
  109. package/datepicker/chronos/units/constants.d.ts +0 -9
  110. package/datepicker/chronos/units/day-of-month.d.ts +0 -1
  111. package/datepicker/chronos/units/day-of-week.d.ts +0 -20
  112. package/datepicker/chronos/units/day-of-year.d.ts +0 -3
  113. package/datepicker/chronos/units/hour.d.ts +0 -1
  114. package/datepicker/chronos/units/index.d.ts +0 -18
  115. package/datepicker/chronos/units/millisecond.d.ts +0 -1
  116. package/datepicker/chronos/units/minute.d.ts +0 -1
  117. package/datepicker/chronos/units/month.d.ts +0 -2
  118. package/datepicker/chronos/units/offset.d.ts +0 -10
  119. package/datepicker/chronos/units/priorities.d.ts +0 -1
  120. package/datepicker/chronos/units/quarter.d.ts +0 -3
  121. package/datepicker/chronos/units/second.d.ts +0 -1
  122. package/datepicker/chronos/units/timestamp.d.ts +0 -1
  123. package/datepicker/chronos/units/timezone.d.ts +0 -3
  124. package/datepicker/chronos/units/week-calendar-utils.d.ts +0 -9
  125. package/datepicker/chronos/units/week-year.d.ts +0 -8
  126. package/datepicker/chronos/units/week.d.ts +0 -6
  127. package/datepicker/chronos/units/year.d.ts +0 -4
  128. package/datepicker/chronos/utils/abs-ceil.d.ts +0 -1
  129. package/datepicker/chronos/utils/abs-round.d.ts +0 -1
  130. package/datepicker/chronos/utils/compare-arrays.d.ts +0 -1
  131. package/datepicker/chronos/utils/date-compare.d.ts +0 -9
  132. package/datepicker/chronos/utils/date-getters.d.ts +0 -18
  133. package/datepicker/chronos/utils/date-setters.d.ts +0 -12
  134. package/datepicker/chronos/utils/defaults.d.ts +0 -1
  135. package/datepicker/chronos/utils/start-end-of.d.ts +0 -3
  136. package/datepicker/chronos/utils/type-checks.d.ts +0 -12
  137. package/datepicker/chronos/utils/zero-fill.d.ts +0 -1
  138. package/datepicker/chronos/utils.d.ts +0 -2
  139. package/datepicker/component-loader/bs-component-ref.class.d.ts +0 -5
  140. package/datepicker/component-loader/component-loader.class.d.ts +0 -75
  141. package/datepicker/component-loader/component-loader.factory.d.ts +0 -21
  142. package/datepicker/component-loader/content-ref.class.d.ts +0 -7
  143. package/datepicker/component-loader/index.d.ts +0 -1
  144. package/datepicker/component-loader/listen-options.model.d.ts +0 -11
  145. package/datepicker/component-loader/public_api.d.ts +0 -4
  146. package/datepicker/date-formatter.d.ts +0 -3
  147. package/datepicker/datepicker-animations.d.ts +0 -3
  148. package/datepicker/datepicker-inner.component.d.ts +0 -78
  149. package/datepicker/datepicker.component.d.ts +0 -81
  150. package/datepicker/datepicker.config.d.ts +0 -22
  151. package/datepicker/datepicker.module.d.ts +0 -15
  152. package/datepicker/daypicker.component.d.ts +0 -17
  153. package/datepicker/engine/calc-days-calendar.d.ts +0 -2
  154. package/datepicker/engine/flag-days-calendar.d.ts +0 -17
  155. package/datepicker/engine/flag-months-calendar.d.ts +0 -12
  156. package/datepicker/engine/flag-years-calendar.d.ts +0 -12
  157. package/datepicker/engine/format-days-calendar.d.ts +0 -4
  158. package/datepicker/engine/format-months-calendar.d.ts +0 -2
  159. package/datepicker/engine/format-years-calendar.d.ts +0 -4
  160. package/datepicker/engine/view-mode.d.ts +0 -2
  161. package/datepicker/index.d.ts +0 -1
  162. package/datepicker/mini-ngrx/index.d.ts +0 -1
  163. package/datepicker/mini-ngrx/public_api.d.ts +0 -7
  164. package/datepicker/mini-ngrx/state.class.d.ts +0 -8
  165. package/datepicker/mini-ngrx/store.class.d.ts +0 -16
  166. package/datepicker/models/index.d.ts +0 -102
  167. package/datepicker/monthpicker.component.d.ts +0 -14
  168. package/datepicker/positioning/index.d.ts +0 -1
  169. package/datepicker/positioning/models/index.d.ts +0 -41
  170. package/datepicker/positioning/modifiers/arrow.d.ts +0 -2
  171. package/datepicker/positioning/modifiers/flip.d.ts +0 -2
  172. package/datepicker/positioning/modifiers/index.d.ts +0 -5
  173. package/datepicker/positioning/modifiers/initData.d.ts +0 -2
  174. package/datepicker/positioning/modifiers/preventOverflow.d.ts +0 -2
  175. package/datepicker/positioning/modifiers/shift.d.ts +0 -2
  176. package/datepicker/positioning/ng-positioning.d.ts +0 -8
  177. package/datepicker/positioning/positioning.service.d.ts +0 -48
  178. package/datepicker/positioning/public_api.d.ts +0 -2
  179. package/datepicker/positioning/utils/computeAutoPlacement.d.ts +0 -2
  180. package/datepicker/positioning/utils/findCommonOffsetParent.d.ts +0 -1
  181. package/datepicker/positioning/utils/getBordersSize.d.ts +0 -4
  182. package/datepicker/positioning/utils/getBoundaries.d.ts +0 -1
  183. package/datepicker/positioning/utils/getBoundingClientRect.d.ts +0 -2
  184. package/datepicker/positioning/utils/getClientRect.d.ts +0 -5
  185. package/datepicker/positioning/utils/getFixedPositionOffsetParent.d.ts +0 -4
  186. package/datepicker/positioning/utils/getOffsetParent.d.ts +0 -1
  187. package/datepicker/positioning/utils/getOffsetRectRelativeToArbitraryNode.d.ts +0 -2
  188. package/datepicker/positioning/utils/getOffsets.d.ts +0 -2
  189. package/datepicker/positioning/utils/getOppositePlacement.d.ts +0 -4
  190. package/datepicker/positioning/utils/getOppositeVariation.d.ts +0 -4
  191. package/datepicker/positioning/utils/getOuterSizes.d.ts +0 -7
  192. package/datepicker/positioning/utils/getParentNode.d.ts +0 -4
  193. package/datepicker/positioning/utils/getReferenceOffsets.d.ts +0 -2
  194. package/datepicker/positioning/utils/getRoot.d.ts +0 -4
  195. package/datepicker/positioning/utils/getScroll.d.ts +0 -4
  196. package/datepicker/positioning/utils/getScrollParent.d.ts +0 -1
  197. package/datepicker/positioning/utils/getStyleComputedProperty.d.ts +0 -4
  198. package/datepicker/positioning/utils/getTargetOffsets.d.ts +0 -2
  199. package/datepicker/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.d.ts +0 -2
  200. package/datepicker/positioning/utils/getWindowSizes.d.ts +0 -4
  201. package/datepicker/positioning/utils/includeScroll.d.ts +0 -2
  202. package/datepicker/positioning/utils/index.d.ts +0 -23
  203. package/datepicker/positioning/utils/isBrowser.d.ts +0 -1
  204. package/datepicker/positioning/utils/isFixed.d.ts +0 -1
  205. package/datepicker/positioning/utils/isIE.d.ts +0 -1
  206. package/datepicker/positioning/utils/isModifierEnabled.d.ts +0 -4
  207. package/datepicker/positioning/utils/isNumeric.d.ts +0 -4
  208. package/datepicker/positioning/utils/isOffsetContainer.d.ts +0 -1
  209. package/datepicker/positioning/utils/setStyles.d.ts +0 -5
  210. package/datepicker/positioning/utils/updateContainerClass.d.ts +0 -6
  211. package/datepicker/public_api.d.ts +0 -25
  212. package/datepicker/reducer/_defaults.d.ts +0 -2
  213. package/datepicker/reducer/bs-datepicker.actions.d.ts +0 -46
  214. package/datepicker/reducer/bs-datepicker.effects.d.ts +0 -41
  215. package/datepicker/reducer/bs-datepicker.reducer.d.ts +0 -3
  216. package/datepicker/reducer/bs-datepicker.state.d.ts +0 -43
  217. package/datepicker/reducer/bs-datepicker.store.d.ts +0 -8
  218. package/datepicker/themes/bs/bs-calendar-layout.component.d.ts +0 -5
  219. package/datepicker/themes/bs/bs-current-date-view.component.d.ts +0 -6
  220. package/datepicker/themes/bs/bs-custom-dates-view.component.d.ts +0 -17
  221. package/datepicker/themes/bs/bs-datepicker-container.component.d.ts +0 -36
  222. package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.d.ts +0 -14
  223. package/datepicker/themes/bs/bs-datepicker-inline-container.component.d.ts +0 -13
  224. package/datepicker/themes/bs/bs-datepicker-navigation-view.component.d.ts +0 -12
  225. package/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts +0 -40
  226. package/datepicker/themes/bs/bs-daterangepicker-inline-container.component.d.ts +0 -13
  227. package/datepicker/themes/bs/bs-days-calendar-view.component.d.ts +0 -26
  228. package/datepicker/themes/bs/bs-months-calendar-view.component.d.ts +0 -16
  229. package/datepicker/themes/bs/bs-timepicker-view.component.d.ts +0 -8
  230. package/datepicker/themes/bs/bs-years-calendar-view.component.d.ts +0 -16
  231. package/datepicker/utils/bs-calendar-utils.d.ts +0 -10
  232. package/datepicker/utils/matrix-utils.d.ts +0 -9
  233. package/datepicker/utils-v2/decorators.d.ts +0 -1
  234. package/datepicker/utils-v2/facade/browser.d.ts +0 -23
  235. package/datepicker/utils-v2/index.d.ts +0 -1
  236. package/datepicker/utils-v2/linked-list.class.d.ts +0 -26
  237. package/datepicker/utils-v2/public_api.d.ts +0 -10
  238. package/datepicker/utils-v2/theme-provider.d.ts +0 -2
  239. package/datepicker/utils-v2/trigger.class.d.ts +0 -6
  240. package/datepicker/utils-v2/triggers.d.ts +0 -18
  241. package/datepicker/utils-v2/utils.class.d.ts +0 -4
  242. package/datepicker/utils-v2/warn-once.d.ts +0 -1
  243. package/datepicker/yearpicker.component.d.ts +0 -14
  244. package/esm2020/datepicker/base/bs-datepicker-container.mjs +0 -47
  245. package/esm2020/datepicker/bs-datepicker-inline.component.mjs +0 -137
  246. package/esm2020/datepicker/bs-datepicker-inline.config.mjs +0 -14
  247. package/esm2020/datepicker/bs-datepicker-input.directive.mjs +0 -160
  248. package/esm2020/datepicker/bs-datepicker.component.mjs +0 -254
  249. package/esm2020/datepicker/bs-datepicker.config.mjs +0 -87
  250. package/esm2020/datepicker/bs-datepicker.module.mjs +0 -126
  251. package/esm2020/datepicker/bs-daterangepicker-inline.component.mjs +0 -134
  252. package/esm2020/datepicker/bs-daterangepicker-inline.config.mjs +0 -21
  253. package/esm2020/datepicker/bs-daterangepicker-input.directive.mjs +0 -192
  254. package/esm2020/datepicker/bs-daterangepicker.component.mjs +0 -240
  255. package/esm2020/datepicker/bs-daterangepicker.config.mjs +0 -19
  256. package/esm2020/datepicker/bs-locale.service.mjs +0 -32
  257. package/esm2020/datepicker/chronos/create/check-overflow.mjs +0 -30
  258. package/esm2020/datepicker/chronos/create/clone.mjs +0 -6
  259. package/esm2020/datepicker/chronos/create/date-from-array.mjs +0 -17
  260. package/esm2020/datepicker/chronos/create/from-anything.mjs +0 -107
  261. package/esm2020/datepicker/chronos/create/from-array.mjs +0 -136
  262. package/esm2020/datepicker/chronos/create/from-object.mjs +0 -17
  263. package/esm2020/datepicker/chronos/create/from-string-and-array.mjs +0 -38
  264. package/esm2020/datepicker/chronos/create/from-string-and-format.mjs +0 -106
  265. package/esm2020/datepicker/chronos/create/from-string.mjs +0 -227
  266. package/esm2020/datepicker/chronos/create/local.mjs +0 -16
  267. package/esm2020/datepicker/chronos/create/parsing-flags.mjs +0 -26
  268. package/esm2020/datepicker/chronos/create/parsing.types.mjs +0 -2
  269. package/esm2020/datepicker/chronos/create/valid.mjs +0 -42
  270. package/esm2020/datepicker/chronos/duration/bubble.mjs +0 -47
  271. package/esm2020/datepicker/chronos/duration/constructor.mjs +0 -130
  272. package/esm2020/datepicker/chronos/duration/create.mjs +0 -113
  273. package/esm2020/datepicker/chronos/duration/humanize.mjs +0 -80
  274. package/esm2020/datepicker/chronos/duration/valid.mjs +0 -43
  275. package/esm2020/datepicker/chronos/format/format.mjs +0 -51
  276. package/esm2020/datepicker/chronos/format.mjs +0 -46
  277. package/esm2020/datepicker/chronos/i18n/ar.mjs +0 -128
  278. package/esm2020/datepicker/chronos/i18n/bg.mjs +0 -94
  279. package/esm2020/datepicker/chronos/i18n/ca.mjs +0 -91
  280. package/esm2020/datepicker/chronos/i18n/cs.mjs +0 -179
  281. package/esm2020/datepicker/chronos/i18n/da.mjs +0 -50
  282. package/esm2020/datepicker/chronos/i18n/de.mjs +0 -72
  283. package/esm2020/datepicker/chronos/i18n/en-gb.mjs +0 -61
  284. package/esm2020/datepicker/chronos/i18n/es-do.mjs +0 -85
  285. package/esm2020/datepicker/chronos/i18n/es-us.mjs +0 -79
  286. package/esm2020/datepicker/chronos/i18n/es.mjs +0 -84
  287. package/esm2020/datepicker/chronos/i18n/et.mjs +0 -73
  288. package/esm2020/datepicker/chronos/i18n/fi.mjs +0 -100
  289. package/esm2020/datepicker/chronos/i18n/fr.mjs +0 -76
  290. package/esm2020/datepicker/chronos/i18n/gl.mjs +0 -84
  291. package/esm2020/datepicker/chronos/i18n/he.mjs +0 -98
  292. package/esm2020/datepicker/chronos/i18n/hi.mjs +0 -124
  293. package/esm2020/datepicker/chronos/i18n/hr.mjs +0 -62
  294. package/esm2020/datepicker/chronos/i18n/hu.mjs +0 -104
  295. package/esm2020/datepicker/chronos/i18n/id.mjs +0 -83
  296. package/esm2020/datepicker/chronos/i18n/it.mjs +0 -65
  297. package/esm2020/datepicker/chronos/i18n/ja.mjs +0 -75
  298. package/esm2020/datepicker/chronos/i18n/ka.mjs +0 -87
  299. package/esm2020/datepicker/chronos/i18n/kk.mjs +0 -76
  300. package/esm2020/datepicker/chronos/i18n/ko.mjs +0 -77
  301. package/esm2020/datepicker/chronos/i18n/lt.mjs +0 -116
  302. package/esm2020/datepicker/chronos/i18n/lv.mjs +0 -56
  303. package/esm2020/datepicker/chronos/i18n/mn.mjs +0 -99
  304. package/esm2020/datepicker/chronos/i18n/nb.mjs +0 -53
  305. package/esm2020/datepicker/chronos/i18n/nl-be.mjs +0 -81
  306. package/esm2020/datepicker/chronos/i18n/nl.mjs +0 -80
  307. package/esm2020/datepicker/chronos/i18n/pl.mjs +0 -126
  308. package/esm2020/datepicker/chronos/i18n/pt-br.mjs +0 -56
  309. package/esm2020/datepicker/chronos/i18n/ro.mjs +0 -66
  310. package/esm2020/datepicker/chronos/i18n/ru.mjs +0 -181
  311. package/esm2020/datepicker/chronos/i18n/sk.mjs +0 -157
  312. package/esm2020/datepicker/chronos/i18n/sl.mjs +0 -184
  313. package/esm2020/datepicker/chronos/i18n/sq.mjs +0 -54
  314. package/esm2020/datepicker/chronos/i18n/sv.mjs +0 -63
  315. package/esm2020/datepicker/chronos/i18n/th-be.mjs +0 -74
  316. package/esm2020/datepicker/chronos/i18n/th.mjs +0 -59
  317. package/esm2020/datepicker/chronos/i18n/tr.mjs +0 -82
  318. package/esm2020/datepicker/chronos/i18n/uk.mjs +0 -147
  319. package/esm2020/datepicker/chronos/i18n/vi.mjs +0 -74
  320. package/esm2020/datepicker/chronos/i18n/zh-cn.mjs +0 -114
  321. package/esm2020/datepicker/chronos/index.mjs +0 -2
  322. package/esm2020/datepicker/chronos/locale/calendar.mjs +0 -9
  323. package/esm2020/datepicker/chronos/locale/locale.class.mjs +0 -532
  324. package/esm2020/datepicker/chronos/locale/locale.defaults.mjs +0 -40
  325. package/esm2020/datepicker/chronos/locale/locales.mjs +0 -229
  326. package/esm2020/datepicker/chronos/moment/add-subtract.mjs +0 -35
  327. package/esm2020/datepicker/chronos/moment/calendar.mjs +0 -41
  328. package/esm2020/datepicker/chronos/moment/diff.mjs +0 -70
  329. package/esm2020/datepicker/chronos/moment/min-max.mjs +0 -38
  330. package/esm2020/datepicker/chronos/parse/regex.mjs +0 -49
  331. package/esm2020/datepicker/chronos/parse/token.mjs +0 -32
  332. package/esm2020/datepicker/chronos/public_api.mjs +0 -56
  333. package/esm2020/datepicker/chronos/test/chain.mjs +0 -711
  334. package/esm2020/datepicker/chronos/types.mjs +0 -2
  335. package/esm2020/datepicker/chronos/units/aliases.mjs +0 -35
  336. package/esm2020/datepicker/chronos/units/constants.mjs +0 -11
  337. package/esm2020/datepicker/chronos/units/day-of-month.mjs +0 -31
  338. package/esm2020/datepicker/chronos/units/day-of-week.mjs +0 -129
  339. package/esm2020/datepicker/chronos/units/day-of-year.mjs +0 -37
  340. package/esm2020/datepicker/chronos/units/hour.mjs +0 -127
  341. package/esm2020/datepicker/chronos/units/index.mjs +0 -19
  342. package/esm2020/datepicker/chronos/units/millisecond.mjs +0 -60
  343. package/esm2020/datepicker/chronos/units/minute.mjs +0 -23
  344. package/esm2020/datepicker/chronos/units/month.mjs +0 -63
  345. package/esm2020/datepicker/chronos/units/offset.mjs +0 -210
  346. package/esm2020/datepicker/chronos/units/priorities.mjs +0 -21
  347. package/esm2020/datepicker/chronos/units/quarter.mjs +0 -39
  348. package/esm2020/datepicker/chronos/units/second.mjs +0 -23
  349. package/esm2020/datepicker/chronos/units/timestamp.mjs +0 -28
  350. package/esm2020/datepicker/chronos/units/timezone.mjs +0 -19
  351. package/esm2020/datepicker/chronos/units/week-calendar-utils.mjs +0 -70
  352. package/esm2020/datepicker/chronos/units/week-year.mjs +0 -101
  353. package/esm2020/datepicker/chronos/units/week.mjs +0 -58
  354. package/esm2020/datepicker/chronos/units/year.mjs +0 -60
  355. package/esm2020/datepicker/chronos/utils/abs-ceil.mjs +0 -4
  356. package/esm2020/datepicker/chronos/utils/abs-round.mjs +0 -4
  357. package/esm2020/datepicker/chronos/utils/compare-arrays.mjs +0 -16
  358. package/esm2020/datepicker/chronos/utils/date-compare.mjs +0 -55
  359. package/esm2020/datepicker/chronos/utils/date-getters.mjs +0 -67
  360. package/esm2020/datepicker/chronos/utils/date-setters.mjs +0 -75
  361. package/esm2020/datepicker/chronos/utils/defaults.mjs +0 -11
  362. package/esm2020/datepicker/chronos/utils/start-end-of.mjs +0 -57
  363. package/esm2020/datepicker/chronos/utils/type-checks.mjs +0 -56
  364. package/esm2020/datepicker/chronos/utils/zero-fill.mjs +0 -10
  365. package/esm2020/datepicker/chronos/utils.mjs +0 -7
  366. package/esm2020/datepicker/component-loader/bs-component-ref.class.mjs +0 -3
  367. package/esm2020/datepicker/component-loader/component-loader.class.mjs +0 -272
  368. package/esm2020/datepicker/component-loader/component-loader.factory.mjs +0 -29
  369. package/esm2020/datepicker/component-loader/content-ref.class.mjs +0 -12
  370. package/esm2020/datepicker/component-loader/index.mjs +0 -2
  371. package/esm2020/datepicker/component-loader/listen-options.model.mjs +0 -2
  372. package/esm2020/datepicker/component-loader/public_api.mjs +0 -5
  373. package/esm2020/datepicker/date-formatter.mjs +0 -7
  374. package/esm2020/datepicker/datepicker-animations.mjs +0 -16
  375. package/esm2020/datepicker/datepicker-inner.component.mjs +0 -323
  376. package/esm2020/datepicker/datepicker.component.mjs +0 -182
  377. package/esm2020/datepicker/datepicker.config.mjs +0 -32
  378. package/esm2020/datepicker/datepicker.module.mjs +0 -49
  379. package/esm2020/datepicker/daypicker.component.mjs +0 -314
  380. package/esm2020/datepicker/engine/calc-days-calendar.mjs +0 -19
  381. package/esm2020/datepicker/engine/flag-days-calendar.mjs +0 -91
  382. package/esm2020/datepicker/engine/flag-months-calendar.mjs +0 -41
  383. package/esm2020/datepicker/engine/flag-years-calendar.mjs +0 -39
  384. package/esm2020/datepicker/engine/format-days-calendar.mjs +0 -29
  385. package/esm2020/datepicker/engine/format-months-calendar.mjs +0 -19
  386. package/esm2020/datepicker/engine/format-years-calendar.mjs +0 -35
  387. package/esm2020/datepicker/engine/view-mode.mjs +0 -4
  388. package/esm2020/datepicker/index.mjs +0 -2
  389. package/esm2020/datepicker/mini-ngrx/index.mjs +0 -2
  390. package/esm2020/datepicker/mini-ngrx/public_api.mjs +0 -3
  391. package/esm2020/datepicker/mini-ngrx/state.class.mjs +0 -16
  392. package/esm2020/datepicker/mini-ngrx/store.class.mjs +0 -43
  393. package/esm2020/datepicker/mis-crystal-design-system-datepicker.mjs +0 -5
  394. package/esm2020/datepicker/models/index.mjs +0 -9
  395. package/esm2020/datepicker/monthpicker.component.mjs +0 -145
  396. package/esm2020/datepicker/positioning/index.mjs +0 -2
  397. package/esm2020/datepicker/positioning/models/index.mjs +0 -2
  398. package/esm2020/datepicker/positioning/modifiers/arrow.mjs +0 -56
  399. package/esm2020/datepicker/positioning/modifiers/flip.mjs +0 -66
  400. package/esm2020/datepicker/positioning/modifiers/index.mjs +0 -6
  401. package/esm2020/datepicker/positioning/modifiers/initData.mjs +0 -42
  402. package/esm2020/datepicker/positioning/modifiers/preventOverflow.mjs +0 -59
  403. package/esm2020/datepicker/positioning/modifiers/shift.mjs +0 -24
  404. package/esm2020/datepicker/positioning/ng-positioning.mjs +0 -30
  405. package/esm2020/datepicker/positioning/positioning.service.mjs +0 -75
  406. package/esm2020/datepicker/positioning/public_api.mjs +0 -3
  407. package/esm2020/datepicker/positioning/utils/computeAutoPlacement.mjs +0 -57
  408. package/esm2020/datepicker/positioning/utils/findCommonOffsetParent.mjs +0 -40
  409. package/esm2020/datepicker/positioning/utils/getBordersSize.mjs +0 -10
  410. package/esm2020/datepicker/positioning/utils/getBoundaries.mjs +0 -56
  411. package/esm2020/datepicker/positioning/utils/getBoundingClientRect.mjs +0 -55
  412. package/esm2020/datepicker/positioning/utils/getClientRect.mjs +0 -8
  413. package/esm2020/datepicker/positioning/utils/getFixedPositionOffsetParent.mjs +0 -17
  414. package/esm2020/datepicker/positioning/utils/getOffsetParent.mjs +0 -32
  415. package/esm2020/datepicker/positioning/utils/getOffsetRectRelativeToArbitraryNode.mjs +0 -51
  416. package/esm2020/datepicker/positioning/utils/getOffsets.mjs +0 -11
  417. package/esm2020/datepicker/positioning/utils/getOppositePlacement.mjs +0 -8
  418. package/esm2020/datepicker/positioning/utils/getOppositeVariation.mjs +0 -13
  419. package/esm2020/datepicker/positioning/utils/getOuterSizes.mjs +0 -14
  420. package/esm2020/datepicker/positioning/utils/getParentNode.mjs +0 -10
  421. package/esm2020/datepicker/positioning/utils/getReferenceOffsets.mjs +0 -13
  422. package/esm2020/datepicker/positioning/utils/getRoot.mjs +0 -10
  423. package/esm2020/datepicker/positioning/utils/getScroll.mjs +0 -14
  424. package/esm2020/datepicker/positioning/utils/getScrollParent.mjs +0 -26
  425. package/esm2020/datepicker/positioning/utils/getStyleComputedProperty.mjs +0 -13
  426. package/esm2020/datepicker/positioning/utils/getTargetOffsets.mjs +0 -30
  427. package/esm2020/datepicker/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.mjs +0 -19
  428. package/esm2020/datepicker/positioning/utils/getWindowSizes.mjs +0 -18
  429. package/esm2020/datepicker/positioning/utils/includeScroll.mjs +0 -15
  430. package/esm2020/datepicker/positioning/utils/index.mjs +0 -24
  431. package/esm2020/datepicker/positioning/utils/isBrowser.mjs +0 -2
  432. package/esm2020/datepicker/positioning/utils/isFixed.mjs +0 -16
  433. package/esm2020/datepicker/positioning/utils/isIE.mjs +0 -16
  434. package/esm2020/datepicker/positioning/utils/isModifierEnabled.mjs +0 -10
  435. package/esm2020/datepicker/positioning/utils/isNumeric.mjs +0 -7
  436. package/esm2020/datepicker/positioning/utils/isOffsetContainer.mjs +0 -9
  437. package/esm2020/datepicker/positioning/utils/setStyles.mjs +0 -17
  438. package/esm2020/datepicker/positioning/utils/updateContainerClass.mjs +0 -22
  439. package/esm2020/datepicker/public_api.mjs +0 -25
  440. package/esm2020/datepicker/reducer/_defaults.mjs +0 -5
  441. package/esm2020/datepicker/reducer/bs-datepicker.actions.mjs +0 -136
  442. package/esm2020/datepicker/reducer/bs-datepicker.effects.mjs +0 -169
  443. package/esm2020/datepicker/reducer/bs-datepicker.reducer.mjs +0 -302
  444. package/esm2020/datepicker/reducer/bs-datepicker.state.mjs +0 -12
  445. package/esm2020/datepicker/reducer/bs-datepicker.store.mjs +0 -21
  446. package/esm2020/datepicker/themes/bs/bs-calendar-layout.component.mjs +0 -54
  447. package/esm2020/datepicker/themes/bs/bs-current-date-view.component.mjs +0 -23
  448. package/esm2020/datepicker/themes/bs/bs-custom-dates-view.component.mjs +0 -78
  449. package/esm2020/datepicker/themes/bs/bs-datepicker-container.component.mjs +0 -319
  450. package/esm2020/datepicker/themes/bs/bs-datepicker-day-decorator.directive.mjs +0 -52
  451. package/esm2020/datepicker/themes/bs/bs-datepicker-inline-container.component.mjs +0 -203
  452. package/esm2020/datepicker/themes/bs/bs-datepicker-navigation-view.component.mjs +0 -111
  453. package/esm2020/datepicker/themes/bs/bs-daterangepicker-container.component.mjs +0 -362
  454. package/esm2020/datepicker/themes/bs/bs-daterangepicker-inline-container.component.mjs +0 -203
  455. package/esm2020/datepicker/themes/bs/bs-days-calendar-view.component.mjs +0 -308
  456. package/esm2020/datepicker/themes/bs/bs-months-calendar-view.component.mjs +0 -106
  457. package/esm2020/datepicker/themes/bs/bs-timepicker-view.component.mjs +0 -64
  458. package/esm2020/datepicker/themes/bs/bs-years-calendar-view.component.mjs +0 -107
  459. package/esm2020/datepicker/utils/bs-calendar-utils.mjs +0 -43
  460. package/esm2020/datepicker/utils/matrix-utils.mjs +0 -14
  461. package/esm2020/datepicker/utils-v2/decorators.mjs +0 -25
  462. package/esm2020/datepicker/utils-v2/facade/browser.mjs +0 -24
  463. package/esm2020/datepicker/utils-v2/index.mjs +0 -2
  464. package/esm2020/datepicker/utils-v2/linked-list.class.mjs +0 -240
  465. package/esm2020/datepicker/utils-v2/public_api.mjs +0 -11
  466. package/esm2020/datepicker/utils-v2/theme-provider.mjs +0 -35
  467. package/esm2020/datepicker/utils-v2/trigger.class.mjs +0 -10
  468. package/esm2020/datepicker/utils-v2/triggers.mjs +0 -110
  469. package/esm2020/datepicker/utils-v2/utils.class.mjs +0 -21
  470. package/esm2020/datepicker/utils-v2/warn-once.mjs +0 -12
  471. package/esm2020/datepicker/yearpicker.component.mjs +0 -147
  472. package/fesm2015/mis-crystal-design-system-datepicker.mjs +0 -14950
  473. package/fesm2015/mis-crystal-design-system-datepicker.mjs.map +0 -1
  474. package/fesm2020/mis-crystal-design-system-datepicker.mjs +0 -14572
  475. package/fesm2020/mis-crystal-design-system-datepicker.mjs.map +0 -1
@@ -1,63 +0,0 @@
1
- import { addFormatToken } from '../format/format';
2
- import { isLeapYear } from './year';
3
- import { mod } from '../utils';
4
- import { getMonth } from '../utils/date-getters';
5
- import { addRegexToken, match1to2, match2 } from '../parse/regex';
6
- import { addParseToken } from '../parse/token';
7
- import { MONTH } from './constants';
8
- import { toInt } from '../utils/type-checks';
9
- import { addUnitPriority } from './priorities';
10
- import { addUnitAlias } from './aliases';
11
- import { getParsingFlags } from '../create/parsing-flags';
12
- // todo: this is duplicate, source in date-getters.ts
13
- export function daysInMonth(year, month) {
14
- if (isNaN(year) || isNaN(month)) {
15
- return NaN;
16
- }
17
- const modMonth = mod(month, 12);
18
- const _year = year + (month - modMonth) / 12;
19
- return modMonth === 1
20
- ? isLeapYear(_year) ? 29 : 28
21
- : (31 - modMonth % 7 % 2);
22
- }
23
- export function initMonth() {
24
- // FORMATTING
25
- addFormatToken('M', ['MM', 2, false], 'Mo', function (date, opts) {
26
- return (getMonth(date, opts.isUTC) + 1).toString(10);
27
- });
28
- addFormatToken('MMM', null, null, function (date, opts) {
29
- return opts.locale.monthsShort(date, opts.format, opts.isUTC);
30
- });
31
- addFormatToken('MMMM', null, null, function (date, opts) {
32
- return opts.locale.months(date, opts.format, opts.isUTC);
33
- });
34
- // ALIASES
35
- addUnitAlias('month', 'M');
36
- // PRIORITY
37
- addUnitPriority('month', 8);
38
- // PARSING
39
- addRegexToken('M', match1to2);
40
- addRegexToken('MM', match1to2, match2);
41
- addRegexToken('MMM', function (isStrict, locale) {
42
- return locale.monthsShortRegex(isStrict);
43
- });
44
- addRegexToken('MMMM', function (isStrict, locale) {
45
- return locale.monthsRegex(isStrict);
46
- });
47
- addParseToken(['M', 'MM'], function (input, array, config) {
48
- array[MONTH] = toInt(input) - 1;
49
- return config;
50
- });
51
- addParseToken(['MMM', 'MMMM'], function (input, array, config, token) {
52
- const month = config._locale.monthsParse(input, token, config._strict);
53
- // if we didn't find a month name, mark the date as invalid.
54
- if (month != null) {
55
- array[MONTH] = month;
56
- }
57
- else {
58
- getParsingFlags(config).invalidMonth = !!input;
59
- }
60
- return config;
61
- });
62
- }
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2Nocm9ub3MvdW5pdHMvbW9udGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDcEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUMvQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJMUQscURBQXFEO0FBQ3JELE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBWSxFQUFFLEtBQWE7SUFDckQsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQy9CLE9BQU8sR0FBRyxDQUFDO0tBQ1o7SUFDRCxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2hDLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsR0FBRyxF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RixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFkZEZvcm1hdFRva2VuIH0gZnJvbSAnLi4vZm9ybWF0L2Zvcm1hdCc7XG5pbXBvcnQgeyBpc0xlYXBZZWFyIH0gZnJvbSAnLi95ZWFyJztcbmltcG9ydCB7IG1vZCB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IGdldE1vbnRoIH0gZnJvbSAnLi4vdXRpbHMvZGF0ZS1nZXR0ZXJzJztcbmltcG9ydCB7IGFkZFJlZ2V4VG9rZW4sIG1hdGNoMXRvMiwgbWF0Y2gyIH0gZnJvbSAnLi4vcGFyc2UvcmVnZXgnO1xuaW1wb3J0IHsgYWRkUGFyc2VUb2tlbiB9IGZyb20gJy4uL3BhcnNlL3Rva2VuJztcbmltcG9ydCB7IE1PTlRIIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgdG9JbnQgfSBmcm9tICcuLi91dGlscy90eXBlLWNoZWNrcyc7XG5pbXBvcnQgeyBhZGRVbml0UHJpb3JpdHkgfSBmcm9tICcuL3ByaW9yaXRpZXMnO1xuaW1wb3J0IHsgYWRkVW5pdEFsaWFzIH0gZnJvbSAnLi9hbGlhc2VzJztcbmltcG9ydCB7IGdldFBhcnNpbmdGbGFncyB9IGZyb20gJy4uL2NyZWF0ZS9wYXJzaW5nLWZsYWdzJztcbmltcG9ydCB7IERhdGVQYXJzaW5nQ29uZmlnIH0gZnJvbSAnLi4vY3JlYXRlL3BhcnNpbmcudHlwZXMnO1xuaW1wb3J0IHsgRGF0ZUFycmF5LCBEYXRlRm9ybWF0dGVyT3B0aW9ucyB9IGZyb20gJy4uL3R5cGVzJztcblxuLy8gdG9kbzogdGhpcyBpcyBkdXBsaWNhdGUsIHNvdXJjZSBpbiBkYXRlLWdldHRlcnMudHNcbmV4cG9ydCBmdW5jdGlvbiBkYXlzSW5Nb250aCh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIpOiBudW1iZXIge1xuICBpZiAoaXNOYU4oeWVhcikgfHwgaXNOYU4obW9udGgpKSB7XG4gICAgcmV0dXJuIE5hTjtcbiAgfVxuICBjb25zdCBtb2RNb250aCA9IG1vZChtb250aCwgMTIpO1xuICBjb25zdCBfeWVhciA9IHllYXIgKyAobW9udGggLSBtb2RNb250aCkgLyAxMjtcblxuICByZXR1cm4gbW9kTW9udGggPT09IDFcbiAgICA/IGlzTGVhcFllYXIoX3llYXIpID8gMjkgOiAyOFxuICAgIDogKDMxIC0gbW9kTW9udGggJSA3ICUgMik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0TW9udGgoKSB7XG4vLyBGT1JNQVRUSU5HXG5cbiAgYWRkRm9ybWF0VG9rZW4oJ00nLCBbJ01NJywgMiwgZmFsc2VdLCAnTW8nLFxuICAgIGZ1bmN0aW9uKGRhdGU6IERhdGUsIG9wdHM6IERhdGVGb3JtYXR0ZXJPcHRpb25zKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiAoZ2V0TW9udGgoZGF0ZSwgb3B0cy5pc1VUQykgKyAxKS50b1N0cmluZygxMCk7XG4gICAgfVxuICApO1xuXG4gIGFkZEZvcm1hdFRva2VuKCdNTU0nLCBudWxsLCBudWxsLFxuICAgIGZ1bmN0aW9uKGRhdGU6IERhdGUsIG9wdHM6IERhdGVGb3JtYXR0ZXJPcHRpb25zKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiBvcHRzLmxvY2FsZS5tb250aHNTaG9ydChkYXRlLCBvcHRzLmZvcm1hdCwgb3B0cy5pc1VUQyk7XG4gICAgfVxuICApO1xuXG4gIGFkZEZvcm1hdFRva2VuKCdNTU1NJywgbnVsbCwgbnVsbCxcbiAgICBmdW5jdGlvbihkYXRlOiBEYXRlLCBvcHRzOiBEYXRlRm9ybWF0dGVyT3B0aW9ucyk6IHN0cmluZyB7XG4gICAgICByZXR1cm4gb3B0cy5sb2NhbGUubW9udGhzKGRhdGUsIG9wdHMuZm9ybWF0LCBvcHRzLmlzVVRDKTtcbiAgICB9XG4gICk7XG5cblxuLy8gQUxJQVNFU1xuXG4gIGFkZFVuaXRBbGlhcygnbW9udGgnLCAnTScpO1xuXG4vLyBQUklPUklUWVxuXG4gIGFkZFVuaXRQcmlvcml0eSgnbW9udGgnLCA4KTtcblxuLy8gUEFSU0lOR1xuXG4gIGFkZFJlZ2V4VG9rZW4oJ00nLCBtYXRjaDF0bzIpO1xuICBhZGRSZWdleFRva2VuKCdNTScsIG1hdGNoMXRvMiwgbWF0Y2gyKTtcbiAgYWRkUmVnZXhUb2tlbignTU1NJywgZnVuY3Rpb24oaXNTdHJpY3QsIGxvY2FsZSkge1xuICAgIHJldHVybiBsb2NhbGUubW9udGhzU2hvcnRSZWdleChpc1N0cmljdCk7XG4gIH0pO1xuICBhZGRSZWdleFRva2VuKCdNTU1NJywgZnVuY3Rpb24oaXNTdHJpY3QsIGxvY2FsZSkge1xuICAgIHJldHVybiBsb2NhbGUubW9udGhzUmVnZXgoaXNTdHJpY3QpO1xuICB9KTtcblxuICBhZGRQYXJzZVRva2VuKFsnTScsICdNTSddLCBmdW5jdGlvbihpbnB1dDogc3RyaW5nLCBhcnJheTogRGF0ZUFycmF5LCBjb25maWc6IERhdGVQYXJzaW5nQ29uZmlnKTogRGF0ZVBhcnNpbmdDb25maWcge1xuICAgIGFycmF5W01PTlRIXSA9IHRvSW50KGlucHV0KSAtIDE7XG5cbiAgICByZXR1cm4gY29uZmlnO1xuICB9KTtcblxuICBhZGRQYXJzZVRva2VuKFxuICAgIFsnTU1NJywgJ01NTU0nXSxcbiAgICBmdW5jdGlvbihpbnB1dDogc3RyaW5nLCBhcnJheTogRGF0ZUFycmF5LCBjb25maWc6IERhdGVQYXJzaW5nQ29uZmlnLCB0b2tlbjogc3RyaW5nKTogRGF0ZVBhcnNpbmdDb25maWcge1xuICAgICAgY29uc3QgbW9udGggPSBjb25maWcuX2xvY2FsZS5tb250aHNQYXJzZShpbnB1dCwgdG9rZW4sIGNvbmZpZy5fc3RyaWN0KTtcbiAgICAgIC8vIGlmIHdlIGRpZG4ndCBmaW5kIGEgbW9udGggbmFtZSwgbWFyayB0aGUgZGF0ZSBhcyBpbnZhbGlkLlxuICAgICAgaWYgKG1vbnRoICE9IG51bGwpIHtcbiAgICAgICAgYXJyYXlbTU9OVEhdID0gbW9udGg7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBnZXRQYXJzaW5nRmxhZ3MoY29uZmlnKS5pbnZhbGlkTW9udGggPSAhIWlucHV0O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gY29uZmlnO1xuICAgIH1cbiAgKTtcbn1cbiJdfQ==
@@ -1,210 +0,0 @@
1
- // tslint:disable:no-bitwise max-line-length
2
- // FORMATTING
3
- import { addFormatToken } from '../format/format';
4
- import { zeroFill } from '../utils/zero-fill';
5
- import { isNumber, isString, toInt } from '../utils/type-checks';
6
- import { addRegexToken, matchOffset, matchShortOffset } from '../parse/regex';
7
- import { add } from '../moment/add-subtract';
8
- import { addParseToken } from '../parse/token';
9
- import { cloneDate } from '../create/clone';
10
- import { setMonth } from '../utils/date-setters';
11
- function addOffsetFormatToken(token, separator) {
12
- addFormatToken(token, null, null, function (date, config) {
13
- let offset = getUTCOffset(date, { _isUTC: config.isUTC, _offset: config.offset });
14
- let sign = '+';
15
- if (offset < 0) {
16
- offset = -offset;
17
- sign = '-';
18
- }
19
- return sign + zeroFill(~~(offset / 60), 2) + separator + zeroFill(~~(offset) % 60, 2);
20
- });
21
- }
22
- export function initOffset() {
23
- addOffsetFormatToken('Z', ':');
24
- addOffsetFormatToken('ZZ', '');
25
- // PARSING
26
- addRegexToken('Z', matchShortOffset);
27
- addRegexToken('ZZ', matchShortOffset);
28
- addParseToken(['Z', 'ZZ'], function (input, array, config) {
29
- config._useUTC = true;
30
- config._tzm = offsetFromString(matchShortOffset, input);
31
- return config;
32
- });
33
- }
34
- // HELPERS
35
- // timezone chunker
36
- // '+10:00' > ['10', '00']
37
- // '-1530' > ['-15', '30']
38
- const chunkOffset = /([\+\-]|\d\d)/gi;
39
- function offsetFromString(matcher, str) {
40
- const matches = (str || '').match(matcher);
41
- if (matches === null) {
42
- return null;
43
- }
44
- const chunk = matches[matches.length - 1];
45
- const parts = chunk.match(chunkOffset) || ['-', '0', '0'];
46
- const minutes = parseInt(parts[1], 10) * 60 + toInt(parts[2]);
47
- const _min = parts[0] === '+' ? minutes : -minutes;
48
- return minutes === 0 ? 0 : _min;
49
- }
50
- // Return a moment from input, that is local/utc/zone equivalent to model.
51
- export function cloneWithOffset(input, date, config = {}) {
52
- if (!config._isUTC) {
53
- return input;
54
- }
55
- const res = cloneDate(date);
56
- // todo: input._d - res._d + ((res._offset || 0) - (input._offset || 0))*60000
57
- const offsetDiff = (config._offset || 0) * 60000;
58
- const diff = input.valueOf() - res.valueOf() + offsetDiff;
59
- // Use low-level api, because this fn is low-level api.
60
- res.setTime(res.valueOf() + diff);
61
- // todo: add timezone handling
62
- // hooks.updateOffset(res, false);
63
- return res;
64
- }
65
- export function getDateOffset(date) {
66
- // On Firefox.24 Date#getTimezoneOffset returns a floating point.
67
- // https://github.com/moment/moment/pull/1871
68
- return -Math.round(date.getTimezoneOffset() / 15) * 15;
69
- }
70
- // HOOKS
71
- // This function will be called whenever a moment is mutated.
72
- // It is intended to keep the offset in sync with the timezone.
73
- // todo: it's from moment timezones
74
- // hooks.updateOffset = function () {
75
- // };
76
- // MOMENTS
77
- // keepLocalTime = true means only change the timezone, without
78
- // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->
79
- // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset
80
- // +0200, so we adjust the time as needed, to be valid.
81
- //
82
- // Keeping the time actually adds/subtracts (one hour)
83
- // from the actual represented time. That is why we call updateOffset
84
- // a second time. In case it wants us to change the offset again
85
- // _changeInProgress == true case, then we have to adjust, because
86
- // there is no such time in the given timezone.
87
- export function getUTCOffset(date, config = {}) {
88
- const _offset = config._offset || 0;
89
- return config._isUTC ? _offset : getDateOffset(date);
90
- }
91
- export function setUTCOffset(date, input, keepLocalTime, keepMinutes, config = {}) {
92
- const offset = config._offset || 0;
93
- let localAdjust;
94
- let _input = input;
95
- let _date = date;
96
- if (isString(_input)) {
97
- _input = offsetFromString(matchShortOffset, _input);
98
- if (_input === null) {
99
- return _date;
100
- }
101
- }
102
- else if (isNumber(_input) && Math.abs(_input) < 16 && !keepMinutes) {
103
- _input = _input * 60;
104
- }
105
- if (!config._isUTC && keepLocalTime) {
106
- localAdjust = getDateOffset(_date);
107
- }
108
- config._offset = _input;
109
- config._isUTC = true;
110
- if (localAdjust != null) {
111
- _date = add(_date, localAdjust, 'minutes');
112
- }
113
- if (offset !== _input) {
114
- if (!keepLocalTime || config._changeInProgress) {
115
- _date = add(_date, _input - offset, 'minutes', config._isUTC);
116
- // addSubtract(this, createDuration(_input - offset, 'm'), 1, false);
117
- }
118
- else if (!config._changeInProgress) {
119
- config._changeInProgress = true;
120
- // todo: add timezone handling
121
- // hooks.updateOffset(this, true);
122
- config._changeInProgress = null;
123
- }
124
- }
125
- return _date;
126
- }
127
- /*
128
- export function getSetZone(input, keepLocalTime) {
129
- if (input != null) {
130
- if (typeof input !== 'string') {
131
- input = -input;
132
- }
133
-
134
- this.utcOffset(input, keepLocalTime);
135
-
136
- return this;
137
- } else {
138
- return -this.utcOffset();
139
- }
140
- }
141
- */
142
- export function setOffsetToUTC(date, keepLocalTime) {
143
- return setUTCOffset(date, 0, keepLocalTime);
144
- }
145
- export function isDaylightSavingTime(date) {
146
- return (getUTCOffset(date) > getUTCOffset(setMonth(cloneDate(date), 0))
147
- || getUTCOffset(date) > getUTCOffset(setMonth(cloneDate(date), 5)));
148
- }
149
- /*export function setOffsetToLocal(date: Date, isUTC?: boolean, keepLocalTime?: boolean) {
150
- if (this._isUTC) {
151
- this.utcOffset(0, keepLocalTime);
152
- this._isUTC = false;
153
-
154
- if (keepLocalTime) {
155
- this.subtract(getDateOffset(this), 'm');
156
- }
157
- }
158
- return this;
159
- }*/
160
- export function setOffsetToParsedOffset(date, input, config = {}) {
161
- if (config._tzm != null) {
162
- return setUTCOffset(date, config._tzm, false, true, config);
163
- }
164
- if (isString(input)) {
165
- const tZone = offsetFromString(matchOffset, input);
166
- if (tZone != null) {
167
- return setUTCOffset(date, tZone, false, false, config);
168
- }
169
- return setUTCOffset(date, 0, true, false, config);
170
- }
171
- return date;
172
- }
173
- export function hasAlignedHourOffset(date, input) {
174
- const _input = input ? getUTCOffset(input, { _isUTC: false }) : 0;
175
- return (getUTCOffset(date) - _input) % 60 === 0;
176
- }
177
- // DEPRECATED
178
- /*export function isDaylightSavingTimeShifted() {
179
- if (!isUndefined(this._isDSTShifted)) {
180
- return this._isDSTShifted;
181
- }
182
-
183
- const c = {};
184
-
185
- copyConfig(c, this);
186
- c = prepareConfig(c);
187
-
188
- if (c._a) {
189
- const other = c._isUTC ? createUTC(c._a) : createLocal(c._a);
190
- this._isDSTShifted = this.isValid() &&
191
- compareArrays(c._a, other.toArray()) > 0;
192
- } else {
193
- this._isDSTShifted = false;
194
- }
195
-
196
- return this._isDSTShifted;
197
- }*/
198
- // in Khronos
199
- /*export function isLocal() {
200
- return this.isValid() ? !this._isUTC : false;
201
- }
202
-
203
- export function isUtcOffset() {
204
- return this.isValid() ? this._isUTC : false;
205
- }
206
-
207
- export function isUtc() {
208
- return this.isValid() ? this._isUTC && this._offset === 0 : false;
209
- }*/
210
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2Zmc2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9jaHJvbm9zL3VuaXRzL29mZnNldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw0Q0FBNEM7QUFDNUMsYUFBYTtBQUViLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFOUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFakQsU0FBUyxvQkFBb0IsQ0FBQyxLQUFhLEVBQUUsU0FBaUI7SUFDNUQsY0FBYyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFVBQVUsSUFBVSxFQUFFLE1BQU07UUFDNUQsSUFBSSxNQUFNLEdBQUcsWUFBWSxDQUFDLElBQUksRUFBRSxFQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFDLENBQUMsQ0FBQztRQUNoRixJQUFJLElBQUksR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDZCxNQUFNLEdBQUcsQ0FBQyxNQUFNLENBQUM7WUFDakIsSUFBSSxHQUFHLEdB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QUMsQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVsRSxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7QUFDbEQsQ0FBQztBQUdELGFBQWE7QUFDYjs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1CRztBQUVILGFBQWE7QUFDYjs7Ozs7Ozs7OztHQVVHIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdHNsaW50OmRpc2FibGU6bm8tYml0d2lzZSBtYXgtbGluZS1sZW5ndGhcbi8vIEZPUk1BVFRJTkdcblxuaW1wb3J0IHsgYWRkRm9ybWF0VG9rZW4gfSBmcm9tICcuLi9mb3JtYXQvZm9ybWF0JztcbmltcG9ydCB7IHplcm9GaWxsIH0gZnJvbSAnLi4vdXRpbHMvemVyby1maWxsJztcbmltcG9ydCB7IERhdGVQYXJzaW5nQ29uZmlnIH0gZnJvbSAnLi4vY3JlYXRlL3BhcnNpbmcudHlwZXMnO1xuaW1wb3J0IHsgaXNOdW1iZXIsIGlzU3RyaW5nLCB0b0ludCB9IGZyb20gJy4uL3V0aWxzL3R5cGUtY2hlY2tzJztcbmltcG9ydCB7IGFkZFJlZ2V4VG9rZW4sIG1hdGNoT2Zmc2V0LCBtYXRjaFNob3J0T2Zmc2V0IH0gZnJvbSAnLi4vcGFyc2UvcmVnZXgnO1xuaW1wb3J0IHsgYWRkIH0gZnJvbSAnLi4vbW9tZW50L2FkZC1zdWJ0cmFjdCc7XG5pbXBvcnQgeyBhZGRQYXJzZVRva2VuIH0gZnJvbSAnLi4vcGFyc2UvdG9rZW4nO1xuaW1wb3J0IHsgRGF0ZUFycmF5IH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgY2xvbmVEYXRlIH0gZnJvbSAnLi4vY3JlYXRlL2Nsb25lJztcbmltcG9ydCB7IHNldE1vbnRoIH0gZnJvbSAnLi4vdXRpbHMvZGF0ZS1zZXR0ZXJzJztcblxuZnVuY3Rpb24gYWRkT2Zmc2V0Rm9ybWF0VG9rZW4odG9rZW46IHN0cmluZywgc2VwYXJhdG9yOiBzdHJpbmcpOiB2b2lkIHtcbiAgYWRkRm9ybWF0VG9rZW4odG9rZW4sIG51bGwsIG51bGwsIGZ1bmN0aW9uIChkYXRlOiBEYXRlLCBjb25maWcpOiBzdHJpbmcge1xuICAgIGxldCBvZmZzZXQgPSBnZXRVVENPZmZzZXQoZGF0ZSwge19pc1VUQzogY29uZmlnLmlzVVRDLCBfb2Zmc2V0OiBjb25maWcub2Zmc2V0fSk7XG4gICAgbGV0IHNpZ24gPSAnKyc7XG4gICAgaWYgKG9mZnNldCA8IDApIHtcbiAgICAgIG9mZnNldCA9IC1vZmZzZXQ7XG4gICAgICBzaWduID0gJy0nO1xuICAgIH1cblxuICAgIHJldHVybiBzaWduICsgemVyb0ZpbGwofn4ob2Zmc2V0IC8gNjApLCAyKSArIHNlcGFyYXRvciArIHplcm9GaWxsKH5+KG9mZnNldCkgJSA2MCwgMik7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW5pdE9mZnNldCgpIHtcbiAgYWRkT2Zmc2V0Rm9ybWF0VG9rZW4oJ1onLCAnOicpO1xuICBhZGRPZmZzZXRGb3JtYXRUb2tlbignWlonLCAnJyk7XG5cbi8vIFBBUlNJTkdcblxuICBhZGRSZWdleFRva2VuKCdaJywgbWF0Y2hTaG9ydE9mZnNldCk7XG4gIGFkZFJlZ2V4VG9rZW4oJ1paJywgbWF0Y2hTaG9ydE9mZnNldCk7XG4gIGFkZFBhcnNlVG9rZW4oWydaJywgJ1paJ10sIGZ1bmN0aW9uKGlucHV0OiBzdHJpbmcsIGFycmF5OiBEYXRlQXJyYXksIGNvbmZpZzogRGF0ZVBhcnNpbmdDb25maWcpOiBEYXRlUGFyc2luZ0NvbmZpZyB7XG4gICAgY29uZmlnLl91c2VVVEMgPSB0cnVlO1xuICAgIGNvbmZpZy5fdHptID0gb2Zmc2V0RnJvbVN0cmluZyhtYXRjaFNob3J0T2Zmc2V0LCBpbnB1dCk7XG5cbiAgICByZXR1cm4gY29uZmlnO1xuICB9KTtcbn1cblxuLy8gSEVMUEVSU1xuXG4vLyB0aW1lem9uZSBjaHVua2VyXG4vLyAnKzEwOjAwJyA+IFsnMTAnLCAgJzAwJ11cbi8vICctMTUzMCcgID4gWyctMTUnLCAnMzAnXVxuY29uc3QgY2h1bmtPZmZzZXQgPSAvKFtcXCtcXC1dfFxcZFxcZCkvZ2k7XG5cbmZ1bmN0aW9uIG9mZnNldEZyb21TdHJpbmcobWF0Y2hlcjogUmVnRXhwLCBzdHI6IHN0cmluZyk6IG51bWJlciB7XG4gIGNvbnN0IG1hdGNoZXMgPSAoc3RyIHx8ICcnKS5tYXRjaChtYXRjaGVyKTtcblxuICBpZiAobWF0Y2hlcyA9PT0gbnVsbCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgY2h1bmsgPSBtYXRjaGVzW21hdGNoZXMubGVuZ3RoIC0gMV07XG4gIGNvbnN0IHBhcnRzID0gY2h1bmsubWF0Y2goY2h1bmtPZmZzZXQpIHx8IFsnLScsICcwJywgJzAnXTtcbiAgY29uc3QgbWludXRlcyA9IHBhcnNlSW50KHBhcnRzWzFdLCAxMCkgKiA2MCArIHRvSW50KHBhcnRzWzJdKTtcbiAgY29uc3QgX21pbiA9IHBhcnRzWzBdID09PSAnKycgPyBtaW51dGVzIDogLW1pbnV0ZXM7XG5cbiAgcmV0dXJuIG1pbnV0ZXMgPT09IDAgPyAwIDogX21pbjtcbn1cblxuLy8gUmV0dXJuIGEgbW9tZW50IGZyb20gaW5wdXQsIHRoYXQgaXMgbG9jYWwvdXRjL3pvbmUgZXF1aXZhbGVudCB0byBtb2RlbC5cbmV4cG9ydCBmdW5jdGlvbiBjbG9uZVdpdGhPZmZzZXQoaW5wdXQ6IERhdGUsIGRhdGU6IERhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZzogRGF0ZVBhcnNpbmdDb25maWcgPSB7fSk6IERhdGUge1xuICBpZiAoIWNvbmZpZy5faXNVVEMpIHtcbiAgICByZXR1cm4gaW5wdXQ7XG4gIH1cblxuICBjb25zdCByZXMgPSBjbG9uZURhdGUoZGF0ZSk7XG4gIC8vIHRvZG86IGlucHV0Ll9kIC0gcmVzLl9kICsgKChyZXMuX29mZnNldCB8fCAwKSAtIChpbnB1dC5fb2Zmc2V0IHx8IDApKSo2MDAwMFxuICBjb25zdCBvZmZzZXREaWZmID0gKGNvbmZpZy5fb2Zmc2V0IHx8IDApICogNjAwMDA7XG4gIGNvbnN0IGRpZmYgPSBpbnB1dC52YWx1ZU9mKCkgLSByZXMudmFsdWVPZigpICsgb2Zmc2V0RGlmZjtcbiAgLy8gVXNlIGxvdy1sZXZlbCBhcGksIGJlY2F1c2UgdGhpcyBmbiBpcyBsb3ctbGV2ZWwgYXBpLlxuICByZXMuc2V0VGltZShyZXMudmFsdWVPZigpICsgZGlmZik7XG4gIC8vIHRvZG86IGFkZCB0aW1lem9uZSBoYW5kbGluZ1xuICAvLyBob29rcy51cGRhdGVPZmZzZXQocmVzLCBmYWxzZSk7XG5cbiAgcmV0dXJuIHJlcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldERhdGVPZmZzZXQoZGF0ZTogRGF0ZSk6IG51bWJlciB7XG4gIC8vIE9uIEZpcmVmb3guMjQgRGF0ZSNnZXRUaW1lem9uZU9mZnNldCByZXR1cm5zIGEgZmxvYXRpbmcgcG9pbnQuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9tb21lbnQvbW9tZW50L3B1bGwvMTg3MVxuICByZXR1cm4gLU1hdGgucm91bmQoZGF0ZS5nZXRUaW1lem9uZU9mZnNldCgpIC8gMTUpICogMTU7XG59XG5cbi8vIEhPT0tTXG5cbi8vIFRoaXMgZnVuY3Rpb24gd2lsbCBiZSBjYWxsZWQgd2hlbmV2ZXIgYSBtb21lbnQgaXMgbXV0YXRlZC5cbi8vIEl0IGlzIGludGVuZGVkIHRvIGtlZXAgdGhlIG9mZnNldCBpbiBzeW5jIHdpdGggdGhlIHRpbWV6b25lLlxuLy8gdG9kbzogaXQncyBmcm9tIG1vbWVudCB0aW1lem9uZXNcbi8vIGhvb2tzLnVwZGF0ZU9mZnNldCA9IGZ1bmN0aW9uICgpIHtcbi8vIH07XG5cbi8vIE1PTUVOVFNcblxuLy8ga2VlcExvY2FsVGltZSA9IHRydWUgbWVhbnMgb25seSBjaGFuZ2UgdGhlIHRpbWV6b25lLCB3aXRob3V0XG4vLyBhZmZlY3RpbmcgdGhlIGxvY2FsIGhvdXIuIFNvIDU6MzE6MjYgKzAzMDAgLS1bdXRjT2Zmc2V0KDIsIHRydWUpXS0tPlxuLy8gNTozMToyNiArMDIwMCBJdCBpcyBwb3NzaWJsZSB0aGF0IDU6MzE6MjYgZG9lc24ndCBleGlzdCB3aXRoIG9mZnNldFxuLy8gKzAyMDAsIHNvIHdlIGFkanVzdCB0aGUgdGltZSBhcyBuZWVkZWQsIHRvIGJlIHZhbGlkLlxuLy9cbi8vIEtlZXBpbmcgdGhlIHRpbWUgYWN0dWFsbHkgYWRkcy9zdWJ0cmFjdHMgKG9uZSBob3VyKVxuLy8gZnJvbSB0aGUgYWN0dWFsIHJlcHJlc2VudGVkIHRpbWUuIFRoYXQgaXMgd2h5IHdlIGNhbGwgdXBkYXRlT2Zmc2V0XG4vLyBhIHNlY29uZCB0aW1lLiBJbiBjYXNlIGl0IHdhbnRzIHVzIHRvIGNoYW5nZSB0aGUgb2Zmc2V0IGFnYWluXG4vLyBfY2hhbmdlSW5Qcm9ncmVzcyA9PSB0cnVlIGNhc2UsIHRoZW4gd2UgaGF2ZSB0byBhZGp1c3QsIGJlY2F1c2Vcbi8vIHRoZXJlIGlzIG5vIHN1Y2ggdGltZSBpbiB0aGUgZ2l2ZW4gdGltZXpvbmUuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VVRDT2Zmc2V0KGRhdGU6IERhdGUsIGNvbmZpZzogRGF0ZVBhcnNpbmdDb25maWcgPSB7fSk6IG51bWJlciB7XG4gIGNvbnN0IF9vZmZzZXQgPSBjb25maWcuX29mZnNldCB8fCAwO1xuXG4gIHJldHVybiBjb25maWcuX2lzVVRDID8gX29mZnNldCA6IGdldERhdGVPZmZzZXQoZGF0ZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRVVENPZmZzZXQoZGF0ZTogRGF0ZSwgaW5wdXQ6IG51bWJlciB8IHN0cmluZywga2VlcExvY2FsVGltZT86IGJvb2xlYW4sIGtlZXBNaW51dGVzPzogYm9vbGVhbiwgY29uZmlnOiBEYXRlUGFyc2luZ0NvbmZpZyA9IHt9KTogRGF0ZSB7XG4gIGNvbnN0IG9mZnNldCA9IGNvbmZpZy5fb2Zmc2V0IHx8IDA7XG4gIGxldCBsb2NhbEFkanVzdDtcbiAgbGV0IF9pbnB1dCA9IGlucHV0O1xuICBsZXQgX2RhdGUgPSBkYXRlO1xuXG4gIGlmIChpc1N0cmluZyhfaW5wdXQpKSB7XG4gICAgX2lucHV0ID0gb2Zmc2V0RnJvbVN0cmluZyhtYXRjaFNob3J0T2Zmc2V0LCBfaW5wdXQpO1xuICAgIGlmIChfaW5wdXQgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBfZGF0ZTtcbiAgICB9XG4gIH0gZWxzZSBpZiAoaXNOdW1iZXIoX2lucHV0KSAmJiBNYXRoLmFicyhfaW5wdXQpIDwgMTYgJiYgIWtlZXBNaW51dGVzKSB7XG4gICAgX2lucHV0ID0gX2lucHV0ICogNjA7XG4gIH1cblxuICBpZiAoIWNvbmZpZy5faXNVVEMgJiYga2VlcExvY2FsVGltZSkge1xuICAgIGxvY2FsQWRqdXN0ID0gZ2V0RGF0ZU9mZnNldChfZGF0ZSk7XG4gIH1cbiAgY29uZmlnLl9vZmZzZXQgPSBfaW5wdXQ7XG4gIGNvbmZpZy5faXNVVEMgPSB0cnVlO1xuICBpZiAobG9jYWxBZGp1c3QgIT0gbnVsbCkge1xuICAgIF9kYXRlID0gYWRkKF9kYXRlLCBsb2NhbEFkanVzdCwgJ21pbnV0ZXMnKTtcbiAgfVxuICBpZiAob2Zmc2V0ICE9PSBfaW5wdXQpIHtcbiAgICBpZiAoIWtlZXBMb2NhbFRpbWUgfHwgY29uZmlnLl9jaGFuZ2VJblByb2dyZXNzKSB7XG4gICAgICBfZGF0ZSA9IGFkZChfZGF0ZSwgX2lucHV0IC0gb2Zmc2V0LCAnbWludXRlcycsIGNvbmZpZy5faXNVVEMpO1xuICAgICAgLy8gYWRkU3VidHJhY3QodGhpcywgY3JlYXRlRHVyYXRpb24oX2lucHV0IC0gb2Zmc2V0LCAnbScpLCAxLCBmYWxzZSk7XG4gICAgfSBlbHNlIGlmICghY29uZmlnLl9jaGFuZ2VJblByb2dyZXNzKSB7XG4gICAgICBjb25maWcuX2NoYW5nZUluUHJvZ3Jlc3MgPSB0cnVlO1xuICAgICAgLy8gdG9kbzogYWRkIHRpbWV6b25lIGhhbmRsaW5nXG4gICAgICAvLyBob29rcy51cGRhdGVPZmZzZXQodGhpcywgdHJ1ZSk7XG4gICAgICBjb25maWcuX2NoYW5nZUluUHJvZ3Jlc3MgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBfZGF0ZTtcbn1cblxuLypcbmV4cG9ydCBmdW5jdGlvbiBnZXRTZXRab25lKGlucHV0LCBrZWVwTG9jYWxUaW1lKSB7XG4gIGlmIChpbnB1dCAhPSBudWxsKSB7XG4gICAgaWYgKHR5cGVvZiBpbnB1dCAhPT0gJ3N0cmluZycpIHtcbiAgICAgIGlucHV0ID0gLWlucHV0O1xuICAgIH1cblxuICAgIHRoaXMudXRjT2Zmc2V0KGlucHV0LCBrZWVwTG9jYWxUaW1lKTtcblxuICAgIHJldHVybiB0aGlzO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiAtdGhpcy51dGNPZmZzZXQoKTtcbiAgfVxufVxuKi9cblxuZXhwb3J0IGZ1bmN0aW9uIHNldE9mZnNldFRvVVRDKGRhdGU6IERhdGUsIGtlZXBMb2NhbFRpbWU/OiBib29sZWFuKTogRGF0ZSB7XG4gIHJldHVybiBzZXRVVENPZmZzZXQoZGF0ZSwgMCwga2VlcExvY2FsVGltZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0RheWxpZ2h0U2F2aW5nVGltZShkYXRlOiBEYXRlKTogYm9vbGVhbiB7XG5cbiAgcmV0dXJuIChnZXRVVENPZmZzZXQoZGF0ZSkgPiBnZXRVVENPZmZzZXQoc2V0TW9udGgoY2xvbmVEYXRlKGRhdGUpLCAwKSlcbiAgICB8fCBnZXRVVENPZmZzZXQoZGF0ZSkgPiBnZXRVVENPZmZzZXQoc2V0TW9udGgoY2xvbmVEYXRlKGRhdGUpLCA1KSkpO1xufVxuXG4vKmV4cG9ydCBmdW5jdGlvbiBzZXRPZmZzZXRUb0xvY2FsKGRhdGU6IERhdGUsIGlzVVRDPzogYm9vbGVhbiwga2VlcExvY2FsVGltZT86IGJvb2xlYW4pIHtcbiAgaWYgKHRoaXMuX2lzVVRDKSB7XG4gICAgdGhpcy51dGNPZmZzZXQoMCwga2VlcExvY2FsVGltZSk7XG4gICAgdGhpcy5faXNVVEMgPSBmYWxzZTtcblxuICAgIGlmIChrZWVwTG9jYWxUaW1lKSB7XG4gICAgICB0aGlzLnN1YnRyYWN0KGdldERhdGVPZmZzZXQodGhpcyksICdtJyk7XG4gICAgfVxuICB9XG4gIHJldHVybiB0aGlzO1xufSovXG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRPZmZzZXRUb1BhcnNlZE9mZnNldChkYXRlOiBEYXRlLCBpbnB1dDogc3RyaW5nLCBjb25maWc6IERhdGVQYXJzaW5nQ29uZmlnID0ge30pOiBEYXRlIHtcbiAgaWYgKGNvbmZpZy5fdHptICE9IG51bGwpIHtcbiAgICByZXR1cm4gc2V0VVRDT2Zmc2V0KGRhdGUsIGNvbmZpZy5fdHptLCBmYWxzZSwgdHJ1ZSwgY29uZmlnKTtcbiAgfVxuXG4gIGlmIChpc1N0cmluZyhpbnB1dCkpIHtcbiAgICBjb25zdCB0Wm9uZSA9IG9mZnNldEZyb21TdHJpbmcobWF0Y2hPZmZzZXQsIGlucHV0KTtcbiAgICBpZiAodFpvbmUgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHNldFVUQ09mZnNldChkYXRlLCB0Wm9uZSwgZmFsc2UsIGZhbHNlLCBjb25maWcpO1xuICAgIH1cblxuICAgIHJldHVybiBzZXRVVENPZmZzZXQoZGF0ZSwgMCwgdHJ1ZSwgZmFsc2UsIGNvbmZpZyk7XG4gIH1cblxuICByZXR1cm4gZGF0ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGhhc0FsaWduZWRIb3VyT2Zmc2V0KGRhdGU6IERhdGUsIGlucHV0PzogRGF0ZSkge1xuICBjb25zdCBfaW5wdXQgPSBpbnB1dCA/IGdldFVUQ09mZnNldChpbnB1dCwgeyBfaXNVVEM6IGZhbHNlIH0pIDogMDtcblxuICByZXR1cm4gKGdldFVUQ09mZnNldChkYXRlKSAtIF9pbnB1dCkgJSA2MCA9PT0gMDtcbn1cblxuXG4vLyBERVBSRUNBVEVEXG4vKmV4cG9ydCBmdW5jdGlvbiBpc0RheWxpZ2h0U2F2aW5nVGltZVNoaWZ0ZWQoKSB7XG4gIGlmICghaXNVbmRlZmluZWQodGhpcy5faXNEU1RTaGlmdGVkKSkge1xuICAgIHJldHVybiB0aGlzLl9pc0RTVFNoaWZ0ZWQ7XG4gIH1cblxuICBjb25zdCBjID0ge307XG5cbiAgY29weUNvbmZpZyhjLCB0aGlzKTtcbiAgYyA9IHByZXBhcmVDb25maWcoYyk7XG5cbiAgaWYgKGMuX2EpIHtcbiAgICBjb25zdCBvdGhlciA9IGMuX2lzVVRDID8gY3JlYXRlVVRDKGMuX2EpIDogY3JlYXRlTG9jYWwoYy5fYSk7XG4gICAgdGhpcy5faXNEU1RTaGlmdGVkID0gdGhpcy5pc1ZhbGlkKCkgJiZcbiAgICAgIGNvbXBhcmVBcnJheXMoYy5fYSwgb3RoZXIudG9BcnJheSgpKSA+IDA7XG4gIH0gZWxzZSB7XG4gICAgdGhpcy5faXNEU1RTaGlmdGVkID0gZmFsc2U7XG4gIH1cblxuICByZXR1cm4gdGhpcy5faXNEU1RTaGlmdGVkO1xufSovXG5cbi8vIGluIEtocm9ub3Ncbi8qZXhwb3J0IGZ1bmN0aW9uIGlzTG9jYWwoKSB7XG4gIHJldHVybiB0aGlzLmlzVmFsaWQoKSA/ICF0aGlzLl9pc1VUQyA6IGZhbHNlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNVdGNPZmZzZXQoKSB7XG4gIHJldHVybiB0aGlzLmlzVmFsaWQoKSA/IHRoaXMuX2lzVVRDIDogZmFsc2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1V0YygpIHtcbiAgcmV0dXJuIHRoaXMuaXNWYWxpZCgpID8gdGhpcy5faXNVVEMgJiYgdGhpcy5fb2Zmc2V0ID09PSAwIDogZmFsc2U7XG59Ki9cbiJdfQ==
@@ -1,21 +0,0 @@
1
- const priorities = {};
2
- export function addUnitPriority(unit, priority) {
3
- priorities[unit] = priority;
4
- }
5
- /*
6
- export function getPrioritizedUnits(unitsObj) {
7
- const units = [];
8
- let unit;
9
- for (unit in unitsObj) {
10
- if (unitsObj.hasOwnProperty(unit)) {
11
- units.push({ unit, priority: priorities[unit] });
12
- }
13
- }
14
- units.sort(function (a, b) {
15
- return a.priority - b.priority;
16
- });
17
-
18
- return units;
19
- }
20
- */
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpb3JpdGllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVwaWNrZXIvY2hyb25vcy91bml0cy9wcmlvcml0aWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxHQUE0QixFQUFFLENBQUM7QUFFL0MsTUFBTSxVQUFVLGVBQWUsQ0FBQyxJQUFZLEVBQUUsUUFBZ0I7SUFDNUQsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBQztBQUM5QixDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7OztFQWVFIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgcHJpb3JpdGllczoge1trZXk6IHN0cmluZ106IG51bWJlcn0gPSB7fTtcblxuZXhwb3J0IGZ1bmN0aW9uIGFkZFVuaXRQcmlvcml0eSh1bml0OiBzdHJpbmcsIHByaW9yaXR5OiBudW1iZXIpOiB2b2lkIHtcbiAgcHJpb3JpdGllc1t1bml0XSA9IHByaW9yaXR5O1xufVxuXG4vKlxuZXhwb3J0IGZ1bmN0aW9uIGdldFByaW9yaXRpemVkVW5pdHModW5pdHNPYmopIHtcbiAgY29uc3QgdW5pdHMgPSBbXTtcbiAgbGV0IHVuaXQ7XG4gIGZvciAodW5pdCBpbiB1bml0c09iaikge1xuICAgIGlmICh1bml0c09iai5oYXNPd25Qcm9wZXJ0eSh1bml0KSkge1xuICAgICAgdW5pdHMucHVzaCh7IHVuaXQsIHByaW9yaXR5OiBwcmlvcml0aWVzW3VuaXRdIH0pO1xuICAgIH1cbiAgfVxuICB1bml0cy5zb3J0KGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgcmV0dXJuIGEucHJpb3JpdHkgLSBiLnByaW9yaXR5O1xuICB9KTtcblxuICByZXR1cm4gdW5pdHM7XG59XG4qL1xuIl19
@@ -1,39 +0,0 @@
1
- import { addFormatToken } from '../format/format';
2
- import { addRegexToken, match1 } from '../parse/regex';
3
- import { addParseToken } from '../parse/token';
4
- import { MONTH } from './constants';
5
- import { toInt } from '../utils/type-checks';
6
- import { getMonth } from '../utils/date-getters';
7
- import { addUnitPriority } from './priorities';
8
- import { addUnitAlias } from './aliases';
9
- import { setMonth } from '../utils/date-setters';
10
- export function initQuarter() {
11
- // FORMATTING
12
- addFormatToken('Q', null, 'Qo', function (date, opts) {
13
- return getQuarter(date, opts.isUTC)
14
- .toString(10);
15
- });
16
- // ALIASES
17
- addUnitAlias('quarter', 'Q');
18
- // PRIORITY
19
- addUnitPriority('quarter', 7);
20
- // PARSING
21
- addRegexToken('Q', match1);
22
- addParseToken('Q', function (input, array, config) {
23
- array[MONTH] = (toInt(input) - 1) * 3;
24
- return config;
25
- });
26
- }
27
- // MOMENTS
28
- export function getQuarter(date, isUTC = false) {
29
- return Math.ceil((getMonth(date, isUTC) + 1) / 3);
30
- }
31
- export function setQuarter(date, quarter, isUTC) {
32
- return setMonth(date, (quarter - 1) * 3 + getMonth(date, isUTC) % 3, isUTC);
33
- }
34
- // export function getSetQuarter(input) {
35
- // return input == null
36
- // ? Math.ceil((this.month() + 1) / 3)
37
- // : this.month((input - 1) * 3 + this.month() % 3);
38
- // }
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVhcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVwaWNrZXIvY2hyb25vcy91bml0cy9xdWFydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXpDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUdqRCxNQUFNLFVBQVUsV0FBVztJQUMzQixhQUFhO0lBRVgsY0FBYyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUM1QixVQUFTLElBQVUsRUFBRSxJQUEwQjtRQUM3QyxPQUFPLFVBQVUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQzthQUNoQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEIsQ0FBQyxDQUNGLENBQUM7SUFFSixVQUFVO0lBRVIsWUFBWSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUUvQixXQUFXO0lBRVQsZUFBZSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVoQyxVQUFVO0lBRVIsYUFBYSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzQixhQUFhLENBQUMsR0FBRyxFQUFFLFVBQVMsS0FBYSxFQUFFLEtBQWdCLEVBQUUsTUFBeUI7UUFDcEYsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV0QyxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxVQUFVO0FBRVYsTUFBTSxVQUFVLFVBQVUsQ0FBQyxJQUFVLEVBQUUsS0FBSyxHQUFHLEtBQUs7SUFDbEQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUNwRCxDQUFDO0FBRUQsTUFBTSxVQUFVLFVBQVUsQ0FBQyxJQUFVLEVBQUUsT0FBZSxFQUFFLEtBQWU7SUFDckUsT0FBTyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUM5RSxDQUFDO0FBRUQseUNBQXlDO0FBQ3pDLHlCQUF5QjtBQUN6QiwwQ0FBMEM7QUFDMUMsd0RBQXdEO0FBQ3hELElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhZGRGb3JtYXRUb2tlbiB9IGZyb20gJy4uL2Zvcm1hdC9mb3JtYXQnO1xuaW1wb3J0IHsgYWRkUmVnZXhUb2tlbiwgbWF0Y2gxIH0gZnJvbSAnLi4vcGFyc2UvcmVnZXgnO1xuaW1wb3J0IHsgYWRkUGFyc2VUb2tlbiB9IGZyb20gJy4uL3BhcnNlL3Rva2VuJztcbmltcG9ydCB7IE1PTlRIIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgdG9JbnQgfSBmcm9tICcuLi91dGlscy90eXBlLWNoZWNrcyc7XG5pbXBvcnQgeyBnZXRNb250aCB9IGZyb20gJy4uL3V0aWxzL2RhdGUtZ2V0dGVycyc7XG5pbXBvcnQgeyBEYXRlQXJyYXksIERhdGVGb3JtYXR0ZXJPcHRpb25zIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgYWRkVW5pdFByaW9yaXR5IH0gZnJvbSAnLi9wcmlvcml0aWVzJztcbmltcG9ydCB7IGFkZFVuaXRBbGlhcyB9IGZyb20gJy4vYWxpYXNlcyc7XG5pbXBvcnQgeyBEYXRlUGFyc2luZ0NvbmZpZyB9IGZyb20gJy4uL2NyZWF0ZS9wYXJzaW5nLnR5cGVzJztcbmltcG9ydCB7IHNldE1vbnRoIH0gZnJvbSAnLi4vdXRpbHMvZGF0ZS1zZXR0ZXJzJztcblxuXG5leHBvcnQgZnVuY3Rpb24gaW5pdFF1YXJ0ZXIoKSB7XG4vLyBGT1JNQVRUSU5HXG5cbiAgYWRkRm9ybWF0VG9rZW4oJ1EnLCBudWxsLCAnUW8nLFxuICAgIGZ1bmN0aW9uKGRhdGU6IERhdGUsIG9wdHM6IERhdGVGb3JtYXR0ZXJPcHRpb25zKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiBnZXRRdWFydGVyKGRhdGUsIG9wdHMuaXNVVEMpXG4gICAgICAgIC50b1N0cmluZygxMCk7XG4gICAgfVxuICApO1xuXG4vLyBBTElBU0VTXG5cbiAgYWRkVW5pdEFsaWFzKCdxdWFydGVyJywgJ1EnKTtcblxuLy8gUFJJT1JJVFlcblxuICBhZGRVbml0UHJpb3JpdHkoJ3F1YXJ0ZXInLCA3KTtcblxuLy8gUEFSU0lOR1xuXG4gIGFkZFJlZ2V4VG9rZW4oJ1EnLCBtYXRjaDEpO1xuICBhZGRQYXJzZVRva2VuKCdRJywgZnVuY3Rpb24oaW5wdXQ6IHN0cmluZywgYXJyYXk6IERhdGVBcnJheSwgY29uZmlnOiBEYXRlUGFyc2luZ0NvbmZpZyk6IERhdGVQYXJzaW5nQ29uZmlnIHtcbiAgICBhcnJheVtNT05USF0gPSAodG9JbnQoaW5wdXQpIC0gMSkgKiAzO1xuXG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfSk7XG59XG5cbi8vIE1PTUVOVFNcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFF1YXJ0ZXIoZGF0ZTogRGF0ZSwgaXNVVEMgPSBmYWxzZSk6IG51bWJlciB7XG4gIHJldHVybiBNYXRoLmNlaWwoKGdldE1vbnRoKGRhdGUsIGlzVVRDKSArIDEpIC8gMyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRRdWFydGVyKGRhdGU6IERhdGUsIHF1YXJ0ZXI6IG51bWJlciwgaXNVVEM/OiBib29sZWFuKTogRGF0ZSB7XG4gIHJldHVybiBzZXRNb250aChkYXRlLCAocXVhcnRlciAtIDEpICogMyArIGdldE1vbnRoKGRhdGUsIGlzVVRDKSAlIDMsIGlzVVRDKTtcbn1cblxuLy8gZXhwb3J0IGZ1bmN0aW9uIGdldFNldFF1YXJ0ZXIoaW5wdXQpIHtcbi8vICAgcmV0dXJuIGlucHV0ID09IG51bGxcbi8vICAgICA/IE1hdGguY2VpbCgodGhpcy5tb250aCgpICsgMSkgLyAzKVxuLy8gICAgIDogdGhpcy5tb250aCgoaW5wdXQgLSAxKSAqIDMgKyB0aGlzLm1vbnRoKCkgJSAzKTtcbi8vIH1cbiJdfQ==
@@ -1,23 +0,0 @@
1
- import { addFormatToken } from '../format/format';
2
- import { getSeconds } from '../utils/date-getters';
3
- import { addRegexToken, match1to2, match2 } from '../parse/regex';
4
- import { addParseToken } from '../parse/token';
5
- import { SECOND } from './constants';
6
- import { addUnitAlias } from './aliases';
7
- import { addUnitPriority } from './priorities';
8
- export function initSecond() {
9
- // FORMATTING
10
- addFormatToken('s', ['ss', 2, false], null, function (date, opts) {
11
- return getSeconds(date, opts.isUTC)
12
- .toString(10);
13
- });
14
- // ALIASES
15
- addUnitAlias('second', 's');
16
- // PRIORITY
17
- addUnitPriority('second', 15);
18
- // PARSING
19
- addRegexToken('s', match1to2);
20
- addRegexToken('ss', match1to2, match2);
21
- addParseToken(['s', 'ss'], SECOND);
22
- }
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vjb25kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9jaHJvbm9zL3VuaXRzL3NlY29uZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUkvQyxNQUFNLFVBQVUsVUFBVTtJQUMxQixhQUFhO0lBRVgsY0FBYyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsSUFBSSxFQUN4QyxVQUFTLElBQVUsRUFBRSxJQUEwQjtRQUM3QyxPQUFPLFVBQVUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQzthQUNoQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEIsQ0FBQyxDQUNGLENBQUM7SUFFSixVQUFVO0lBRVIsWUFBWSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUU5QixXQUFXO0lBRVQsZUFBZSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUVoQyxVQUFVO0lBRVIsYUFBYSxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUM5QixhQUFhLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN2QyxhQUFhLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDckMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFkZEZvcm1hdFRva2VuIH0gZnJvbSAnLi4vZm9ybWF0L2Zvcm1hdCc7XG5pbXBvcnQgeyBnZXRTZWNvbmRzIH0gZnJvbSAnLi4vdXRpbHMvZGF0ZS1nZXR0ZXJzJztcbmltcG9ydCB7IGFkZFJlZ2V4VG9rZW4sIG1hdGNoMXRvMiwgbWF0Y2gyIH0gZnJvbSAnLi4vcGFyc2UvcmVnZXgnO1xuaW1wb3J0IHsgYWRkUGFyc2VUb2tlbiB9IGZyb20gJy4uL3BhcnNlL3Rva2VuJztcbmltcG9ydCB7IFNFQ09ORCB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IGFkZFVuaXRBbGlhcyB9IGZyb20gJy4vYWxpYXNlcyc7XG5pbXBvcnQgeyBhZGRVbml0UHJpb3JpdHkgfSBmcm9tICcuL3ByaW9yaXRpZXMnO1xuaW1wb3J0IHsgRGF0ZUZvcm1hdHRlck9wdGlvbnMgfSBmcm9tICcuLi90eXBlcyc7XG5cblxuZXhwb3J0IGZ1bmN0aW9uIGluaXRTZWNvbmQoKSB7XG4vLyBGT1JNQVRUSU5HXG5cbiAgYWRkRm9ybWF0VG9rZW4oJ3MnLCBbJ3NzJywgMiwgZmFsc2VdLCBudWxsLFxuICAgIGZ1bmN0aW9uKGRhdGU6IERhdGUsIG9wdHM6IERhdGVGb3JtYXR0ZXJPcHRpb25zKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiBnZXRTZWNvbmRzKGRhdGUsIG9wdHMuaXNVVEMpXG4gICAgICAgIC50b1N0cmluZygxMCk7XG4gICAgfVxuICApO1xuXG4vLyBBTElBU0VTXG5cbiAgYWRkVW5pdEFsaWFzKCdzZWNvbmQnLCAncycpO1xuXG4vLyBQUklPUklUWVxuXG4gIGFkZFVuaXRQcmlvcml0eSgnc2Vjb25kJywgMTUpO1xuXG4vLyBQQVJTSU5HXG5cbiAgYWRkUmVnZXhUb2tlbigncycsIG1hdGNoMXRvMik7XG4gIGFkZFJlZ2V4VG9rZW4oJ3NzJywgbWF0Y2gxdG8yLCBtYXRjaDIpO1xuICBhZGRQYXJzZVRva2VuKFsncycsICdzcyddLCBTRUNPTkQpO1xufVxuIl19
@@ -1,28 +0,0 @@
1
- import { addFormatToken } from '../format/format';
2
- import { unix } from '../utils/date-getters';
3
- import { addRegexToken, matchSigned, matchTimestamp } from '../parse/regex';
4
- import { addParseToken } from '../parse/token';
5
- import { toInt } from '../utils/type-checks';
6
- export function initTimestamp() {
7
- // FORMATTING
8
- addFormatToken('X', null, null, function (date) {
9
- return unix(date)
10
- .toString(10);
11
- });
12
- addFormatToken('x', null, null, function (date) {
13
- return date.valueOf()
14
- .toString(10);
15
- });
16
- // PARSING
17
- addRegexToken('x', matchSigned);
18
- addRegexToken('X', matchTimestamp);
19
- addParseToken('X', function (input, array, config) {
20
- config._d = new Date(parseFloat(input) * 1000);
21
- return config;
22
- });
23
- addParseToken('x', function (input, array, config) {
24
- config._d = new Date(toInt(input));
25
- return config;
26
- });
27
- }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXN0YW1wLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9jaHJvbm9zL3VuaXRzL3RpbWVzdGFtcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVFLE9BQU8sRUFBRSxhQUFhLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFLN0MsTUFBTSxVQUFVLGFBQWE7SUFDN0IsYUFBYTtJQUVYLGNBQWMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxVQUFTLElBQVU7UUFDakQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO2FBQ2QsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBQ0gsY0FBYyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFVBQVMsSUFBVTtRQUNqRCxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUU7YUFDbEIsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBRUwsVUFBVTtJQUVSLGFBQWEsQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDaEMsYUFBYSxDQUFDLEdBQUcsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUVuQyxhQUFhLENBQUMsR0FBRyxFQUFFLFVBQVMsS0FBYSxFQUFFLEtBQWdCLEVBQUUsTUFBeUI7UUFDcEYsTUFBTSxDQUFDLEVBQUUsR0FBRyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFFL0MsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQyxDQUFDLENBQUM7SUFDSCxhQUFhLENBQUMsR0FBRyxFQUFFLFVBQVMsS0FBYSxFQUFFLEtBQWdCLEVBQUUsTUFBeUI7UUFDcEYsTUFBTSxDQUFDLEVBQUUsR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUVuQyxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhZGRGb3JtYXRUb2tlbiB9IGZyb20gJy4uL2Zvcm1hdC9mb3JtYXQnO1xuaW1wb3J0IHsgdW5peCB9IGZyb20gJy4uL3V0aWxzL2RhdGUtZ2V0dGVycyc7XG5pbXBvcnQgeyBhZGRSZWdleFRva2VuLCBtYXRjaFNpZ25lZCwgbWF0Y2hUaW1lc3RhbXAgfSBmcm9tICcuLi9wYXJzZS9yZWdleCc7XG5pbXBvcnQgeyBhZGRQYXJzZVRva2VufSBmcm9tICcuLi9wYXJzZS90b2tlbic7XG5pbXBvcnQgeyB0b0ludCB9IGZyb20gJy4uL3V0aWxzL3R5cGUtY2hlY2tzJztcbmltcG9ydCB7IERhdGVBcnJheSB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IERhdGVQYXJzaW5nQ29uZmlnIH0gZnJvbSAnLi4vY3JlYXRlL3BhcnNpbmcudHlwZXMnO1xuXG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0VGltZXN0YW1wKCkge1xuLy8gRk9STUFUVElOR1xuXG4gIGFkZEZvcm1hdFRva2VuKCdYJywgbnVsbCwgbnVsbCwgZnVuY3Rpb24oZGF0ZTogRGF0ZSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHVuaXgoZGF0ZSlcbiAgICAgIC50b1N0cmluZygxMCk7XG4gIH0pO1xuICBhZGRGb3JtYXRUb2tlbigneCcsIG51bGwsIG51bGwsIGZ1bmN0aW9uKGRhdGU6IERhdGUpOiBzdHJpbmcge1xuICAgIHJldHVybiBkYXRlLnZhbHVlT2YoKVxuICAgICAgLnRvU3RyaW5nKDEwKTtcbiAgfSk7XG5cbi8vIFBBUlNJTkdcblxuICBhZGRSZWdleFRva2VuKCd4JywgbWF0Y2hTaWduZWQpO1xuICBhZGRSZWdleFRva2VuKCdYJywgbWF0Y2hUaW1lc3RhbXApO1xuXG4gIGFkZFBhcnNlVG9rZW4oJ1gnLCBmdW5jdGlvbihpbnB1dDogc3RyaW5nLCBhcnJheTogRGF0ZUFycmF5LCBjb25maWc6IERhdGVQYXJzaW5nQ29uZmlnKTogRGF0ZVBhcnNpbmdDb25maWcge1xuICAgIGNvbmZpZy5fZCA9IG5ldyBEYXRlKHBhcnNlRmxvYXQoaW5wdXQpICogMTAwMCk7XG5cbiAgICByZXR1cm4gY29uZmlnO1xuICB9KTtcbiAgYWRkUGFyc2VUb2tlbigneCcsIGZ1bmN0aW9uKGlucHV0OiBzdHJpbmcsIGFycmF5OiBEYXRlQXJyYXksIGNvbmZpZzogRGF0ZVBhcnNpbmdDb25maWcpOiBEYXRlUGFyc2luZ0NvbmZpZyB7XG4gICAgY29uZmlnLl9kID0gbmV3IERhdGUodG9JbnQoaW5wdXQpKTtcblxuICAgIHJldHVybiBjb25maWc7XG4gIH0pO1xufVxuIl19
@@ -1,19 +0,0 @@
1
- import { addFormatToken } from '../format/format';
2
- // todo: add support for timezones
3
- export function initTimezone() {
4
- // FORMATTING
5
- addFormatToken('z', null, null, function (date, opts) {
6
- return opts.isUTC ? 'UTC' : '';
7
- });
8
- addFormatToken('zz', null, null, function (date, opts) {
9
- return opts.isUTC ? 'Coordinated Universal Time' : '';
10
- });
11
- }
12
- // MOMENTS
13
- export function getZoneAbbr(isUTC) {
14
- return isUTC ? 'UTC' : '';
15
- }
16
- export function getZoneName(isUTC) {
17
- return isUTC ? 'Coordinated Universal Time' : '';
18
- }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXpvbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2Nocm9ub3MvdW5pdHMvdGltZXpvbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBR2xELGtDQUFrQztBQUVsQyxNQUFNLFVBQVUsWUFBWTtJQUMxQixhQUFhO0lBQ2IsY0FBYyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUM1QixVQUFTLElBQVUsRUFBRSxJQUEwQjtRQUM3QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ2pDLENBQUMsQ0FDRixDQUFDO0lBQ0YsY0FBYyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUM3QixVQUFTLElBQVUsRUFBRSxJQUEwQjtRQUM3QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLDRCQUE0QixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDeEQsQ0FBQyxDQUNGLENBQUM7QUFDSixDQUFDO0FBRUQsVUFBVTtBQUVWLE1BQU0sVUFBVSxXQUFXLENBQUMsS0FBYztJQUN4QyxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFDNUIsQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQUMsS0FBYztJQUN4QyxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsNEJBQTRCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUNuRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWRkRm9ybWF0VG9rZW4gfSBmcm9tICcuLi9mb3JtYXQvZm9ybWF0JztcbmltcG9ydCB7IERhdGVGb3JtYXR0ZXJPcHRpb25zIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG4vLyB0b2RvOiBhZGQgc3VwcG9ydCBmb3IgdGltZXpvbmVzXG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0VGltZXpvbmUoKSB7XG4gIC8vIEZPUk1BVFRJTkdcbiAgYWRkRm9ybWF0VG9rZW4oJ3onLCBudWxsLCBudWxsLFxuICAgIGZ1bmN0aW9uKGRhdGU6IERhdGUsIG9wdHM6IERhdGVGb3JtYXR0ZXJPcHRpb25zKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiBvcHRzLmlzVVRDID8gJ1VUQycgOiAnJztcbiAgICB9XG4gICk7XG4gIGFkZEZvcm1hdFRva2VuKCd6eicsIG51bGwsIG51bGwsXG4gICAgZnVuY3Rpb24oZGF0ZTogRGF0ZSwgb3B0czogRGF0ZUZvcm1hdHRlck9wdGlvbnMpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIG9wdHMuaXNVVEMgPyAnQ29vcmRpbmF0ZWQgVW5pdmVyc2FsIFRpbWUnIDogJyc7XG4gICAgfVxuICApO1xufVxuXG4vLyBNT01FTlRTXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRab25lQWJicihpc1VUQzogYm9vbGVhbikge1xuICByZXR1cm4gaXNVVEMgPyAnVVRDJyA6ICcnO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Wm9uZU5hbWUoaXNVVEM6IGJvb2xlYW4pIHtcbiAgcmV0dXJuIGlzVVRDID8gJ0Nvb3JkaW5hdGVkIFVuaXZlcnNhbCBUaW1lJyA6ICcnO1xufVxuIl19
@@ -1,70 +0,0 @@
1
- /**
2
- *
3
- * @param {number} year
4
- * @param {number} dow - start-of-first-week
5
- * @param {number} doy - start-of-year
6
- * @returns {number}
7
- */
8
- import { createUTCDate } from '../create/date-from-array';
9
- import { daysInYear } from './year';
10
- import { getDayOfYear } from './day-of-year';
11
- import { getFullYear } from '../utils/date-getters';
12
- function firstWeekOffset(year, dow, doy) {
13
- // first-week day -- which january is always in the first week (4 for iso, 1 for other)
14
- const fwd = dow - doy + 7;
15
- // first-week day local weekday -- which local weekday is fwd
16
- const fwdlw = (createUTCDate(year, 0, fwd).getUTCDay() - dow + 7) % 7;
17
- return -fwdlw + fwd - 1;
18
- }
19
- // https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday
20
- export function dayOfYearFromWeeks(year, week, weekday, dow, doy) {
21
- const localWeekday = (7 + weekday - dow) % 7;
22
- const weekOffset = firstWeekOffset(year, dow, doy);
23
- const dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset;
24
- let resYear;
25
- let resDayOfYear;
26
- if (dayOfYear <= 0) {
27
- resYear = year - 1;
28
- resDayOfYear = daysInYear(resYear) + dayOfYear;
29
- }
30
- else if (dayOfYear > daysInYear(year)) {
31
- resYear = year + 1;
32
- resDayOfYear = dayOfYear - daysInYear(year);
33
- }
34
- else {
35
- resYear = year;
36
- resDayOfYear = dayOfYear;
37
- }
38
- return {
39
- year: resYear,
40
- dayOfYear: resDayOfYear
41
- };
42
- }
43
- export function weekOfYear(date, dow, doy, isUTC) {
44
- const weekOffset = firstWeekOffset(getFullYear(date, isUTC), dow, doy);
45
- const week = Math.floor((getDayOfYear(date, isUTC) - weekOffset - 1) / 7) + 1;
46
- let resWeek;
47
- let resYear;
48
- if (week < 1) {
49
- resYear = getFullYear(date, isUTC) - 1;
50
- resWeek = week + weeksInYear(resYear, dow, doy);
51
- }
52
- else if (week > weeksInYear(getFullYear(date, isUTC), dow, doy)) {
53
- resWeek = week - weeksInYear(getFullYear(date, isUTC), dow, doy);
54
- resYear = getFullYear(date, isUTC) + 1;
55
- }
56
- else {
57
- resYear = getFullYear(date, isUTC);
58
- resWeek = week;
59
- }
60
- return {
61
- week: resWeek,
62
- year: resYear
63
- };
64
- }
65
- export function weeksInYear(year, dow, doy) {
66
- const weekOffset = firstWeekOffset(year, dow, doy);
67
- const weekOffsetNext = firstWeekOffset(year + 1, dow, doy);
68
- return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;
69
- }
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vlay1jYWxlbmRhci11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVwaWNrZXIvY2hyb25vcy91bml0cy93ZWVrLWNhbGVuZGFyLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUNILE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXBELFNBQVMsZUFBZSxDQUFDLElBQVksRUFBRSxHQUFXLEVBQUUsR0FBVztJQUM3RCx1RkFBdUY7SUFDdkYsTUFBTSxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUM7SUFDMUIsNkRBQTZEO0lBQzdELE1BQU0sS0FBSyxHQUFHLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUV0RSxPQUFPLENBQUMsS0FBSyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUM7QUFDMUIsQ0FBQztBQUVELDJHQUEyRztBQUMzRyxNQUFNLFVBQVUsa0JBQWtCLENBQ2hDLElBQVksRUFDWixJQUFZLEVBQ1osT0FBZSxFQUNmLEdBQVcsRUFDWCxHQUFXO0lBRVgsTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFDLEdBQUcsT0FBTyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QyxNQUFNLFVBQVUsR0FBRyxlQUFlLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNuRCxNQUFNLFNBQVMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLFlBQVksR0FBRyxVQUFVLENBQUM7SUFDakUsSUFBSSxPQUFlLENBQUM7SUFDcEIsSUFBSSxZQUFvQixDQUFDO0lBRXpCLElBQUksU0FBUyxJQUFJLENBQUMsRUFBRTtRQUNsQixPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNuQixZQUFZLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxHQUFHLFNBQVMsQ0FBQztLQUNoRDtTQUFNLElBQUksU0FBUyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUN2QyxPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNuQixZQUFZLEdBQUcsU0FBUyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUM3QztTQUFNO1FBQ0wsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNmLFlBQVksR0FBRyxTQUFTLENBQUM7S0FDMUI7SUFFRCxPQUFPO1FBQ0wsSUFBSSxFQUFFLE9BQU87UUFDYixTQUFTLEVBQUUsWUFBWTtLQUN4QixDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxVQUFVLENBQUMsSUFBVSxFQUFFLEdBQVcsRUFBRSxHQUFXLEVBQUUsS0FBZTtJQUM5RSxNQUFNLFVBQVUsR0FBRyxlQUFlLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDdkUsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEdBQUcsVUFBVSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM5RSxJQUFJLE9BQWUsQ0FBQztJQUNwQixJQUFJLE9BQWUsQ0FBQztJQUVwQixJQUFJLElBQUksR0FBRyxDQUFDLEVBQUU7UUFDWixPQUFPLEdBQUcsV0FBVyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkMsT0FBTyxHQUFHLElBQUksR0FBRyxXQUFXLENBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztLQUNqRDtTQUFNLElBQUksSUFBSSxHQUFHLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsRUFBRTtRQUNqRSxPQUFPLEdBQUcsSUFBSSxHQUFHLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNqRSxPQUFPLEdBQUcsV0FBVyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDeEM7U0FBTTtRQUNMLE9BQU8sR0FBRyxXQUFXLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ25DLE9BQU8sR0FBRyxJQUFJLENBQUM7S0FDaEI7SUFFRCxPQUFPO1FBQ0wsSUFBSSxFQUFFLE9BQU87UUFDYixJQUFJLEVBQUUsT0FBTztLQUNkLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLFdBQVcsQ0FBQyxJQUFZLEVBQUUsR0FBVyxFQUFFLEdBQVc7SUFDaEUsTUFBTSxVQUFVLEdBQUcsZUFBZSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDbkQsTUFBTSxjQUFjLEdBQUcsZUFBZSxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBRTNELE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsVUFBVSxHQUFHLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUM5RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKlxuICogQHBhcmFtIHtudW1iZXJ9IHllYXJcbiAqIEBwYXJhbSB7bnVtYmVyfSBkb3cgLSBzdGFydC1vZi1maXJzdC13ZWVrXG4gKiBAcGFyYW0ge251bWJlcn0gZG95IC0gc3RhcnQtb2YteWVhclxuICogQHJldHVybnMge251bWJlcn1cbiAqL1xuaW1wb3J0IHsgY3JlYXRlVVRDRGF0ZSB9IGZyb20gJy4uL2NyZWF0ZS9kYXRlLWZyb20tYXJyYXknO1xuaW1wb3J0IHsgZGF5c0luWWVhciB9IGZyb20gJy4veWVhcic7XG5pbXBvcnQgeyBnZXREYXlPZlllYXIgfSBmcm9tICcuL2RheS1vZi15ZWFyJztcbmltcG9ydCB7IGdldEZ1bGxZZWFyIH0gZnJvbSAnLi4vdXRpbHMvZGF0ZS1nZXR0ZXJzJztcblxuZnVuY3Rpb24gZmlyc3RXZWVrT2Zmc2V0KHllYXI6IG51bWJlciwgZG93OiBudW1iZXIsIGRveTogbnVtYmVyKTogbnVtYmVyIHtcbiAgLy8gZmlyc3Qtd2VlayBkYXkgLS0gd2hpY2ggamFudWFyeSBpcyBhbHdheXMgaW4gdGhlIGZpcnN0IHdlZWsgKDQgZm9yIGlzbywgMSBmb3Igb3RoZXIpXG4gIGNvbnN0IGZ3ZCA9IGRvdyAtIGRveSArIDc7XG4gIC8vIGZpcnN0LXdlZWsgZGF5IGxvY2FsIHdlZWtkYXkgLS0gd2hpY2ggbG9jYWwgd2Vla2RheSBpcyBmd2RcbiAgY29uc3QgZndkbHcgPSAoY3JlYXRlVVRDRGF0ZSh5ZWFyLCAwLCBmd2QpLmdldFVUQ0RheSgpIC0gZG93ICsgNykgJSA3O1xuXG4gIHJldHVybiAtZndkbHcgKyBmd2QgLSAxO1xufVxuXG4vLyBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9JU09fd2Vla19kYXRlI0NhbGN1bGF0aW5nX2FfZGF0ZV9naXZlbl90aGVfeWVhci4yQ193ZWVrX251bWJlcl9hbmRfd2Vla2RheVxuZXhwb3J0IGZ1bmN0aW9uIGRheU9mWWVhckZyb21XZWVrcyhcbiAgeWVhcjogbnVtYmVyLFxuICB3ZWVrOiBudW1iZXIsXG4gIHdlZWtkYXk6IG51bWJlcixcbiAgZG93OiBudW1iZXIsXG4gIGRveTogbnVtYmVyXG4pOiB7IHllYXI6IG51bWJlcjsgZGF5T2ZZZWFyOiBudW1iZXIgfSB7XG4gIGNvbnN0IGxvY2FsV2Vla2RheSA9ICg3ICsgd2Vla2RheSAtIGRvdykgJSA3O1xuICBjb25zdCB3ZWVrT2Zmc2V0ID0gZmlyc3RXZWVrT2Zmc2V0KHllYXIsIGRvdywgZG95KTtcbiAgY29uc3QgZGF5T2ZZZWFyID0gMSArIDcgKiAod2VlayAtIDEpICsgbG9jYWxXZWVrZGF5ICsgd2Vla09mZnNldDtcbiAgbGV0IHJlc1llYXI6IG51bWJlcjtcbiAgbGV0IHJlc0RheU9mWWVhcjogbnVtYmVyO1xuXG4gIGlmIChkYXlPZlllYXIgPD0gMCkge1xuICAgIHJlc1llYXIgPSB5ZWFyIC0gMTtcbiAgICByZXNEYXlPZlllYXIgPSBkYXlzSW5ZZWFyKHJlc1llYXIpICsgZGF5T2ZZZWFyO1xuICB9IGVsc2UgaWYgKGRheU9mWWVhciA+IGRheXNJblllYXIoeWVhcikpIHtcbiAgICByZXNZZWFyID0geWVhciArIDE7XG4gICAgcmVzRGF5T2ZZZWFyID0gZGF5T2ZZZWFyIC0gZGF5c0luWWVhcih5ZWFyKTtcbiAgfSBlbHNlIHtcbiAgICByZXNZZWFyID0geWVhcjtcbiAgICByZXNEYXlPZlllYXIgPSBkYXlPZlllYXI7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHllYXI6IHJlc1llYXIsXG4gICAgZGF5T2ZZZWFyOiByZXNEYXlPZlllYXJcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHdlZWtPZlllYXIoZGF0ZTogRGF0ZSwgZG93OiBudW1iZXIsIGRveTogbnVtYmVyLCBpc1VUQz86IGJvb2xlYW4pOiB7IHdlZWs6IG51bWJlcjsgeWVhcjogbnVtYmVyIH0ge1xuICBjb25zdCB3ZWVrT2Zmc2V0ID0gZmlyc3RXZWVrT2Zmc2V0KGdldEZ1bGxZZWFyKGRhdGUsIGlzVVRDKSwgZG93LCBkb3kpO1xuICBjb25zdCB3ZWVrID0gTWF0aC5mbG9vcigoZ2V0RGF5T2ZZZWFyKGRhdGUsIGlzVVRDKSAtIHdlZWtPZmZzZXQgLSAxKSAvIDcpICsgMTtcbiAgbGV0IHJlc1dlZWs6IG51bWJlcjtcbiAgbGV0IHJlc1llYXI6IG51bWJlcjtcblxuICBpZiAod2VlayA8IDEpIHtcbiAgICByZXNZZWFyID0gZ2V0RnVsbFllYXIoZGF0ZSwgaXNVVEMpIC0gMTtcbiAgICByZXNXZWVrID0gd2VlayArIHdlZWtzSW5ZZWFyKHJlc1llYXIsIGRvdywgZG95KTtcbiAgfSBlbHNlIGlmICh3ZWVrID4gd2Vla3NJblllYXIoZ2V0RnVsbFllYXIoZGF0ZSwgaXNVVEMpLCBkb3csIGRveSkpIHtcbiAgICByZXNXZWVrID0gd2VlayAtIHdlZWtzSW5ZZWFyKGdldEZ1bGxZZWFyKGRhdGUsIGlzVVRDKSwgZG93LCBkb3kpO1xuICAgIHJlc1llYXIgPSBnZXRGdWxsWWVhcihkYXRlLCBpc1VUQykgKyAxO1xuICB9IGVsc2Uge1xuICAgIHJlc1llYXIgPSBnZXRGdWxsWWVhcihkYXRlLCBpc1VUQyk7XG4gICAgcmVzV2VlayA9IHdlZWs7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHdlZWs6IHJlc1dlZWssXG4gICAgeWVhcjogcmVzWWVhclxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gd2Vla3NJblllYXIoeWVhcjogbnVtYmVyLCBkb3c6IG51bWJlciwgZG95OiBudW1iZXIpOiBudW1iZXIge1xuICBjb25zdCB3ZWVrT2Zmc2V0ID0gZmlyc3RXZWVrT2Zmc2V0KHllYXIsIGRvdywgZG95KTtcbiAgY29uc3Qgd2Vla09mZnNldE5leHQgPSBmaXJzdFdlZWtPZmZzZXQoeWVhciArIDEsIGRvdywgZG95KTtcblxuICByZXR1cm4gKGRheXNJblllYXIoeWVhcikgLSB3ZWVrT2Zmc2V0ICsgd2Vla09mZnNldE5leHQpIC8gNztcbn1cbiJdfQ==