@anoki/fse-ui 1.0.675 → 1.0.677

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 (1247) hide show
  1. package/dist/components/ui/VerticalCardStepper/VerticalCardStepper.css +1 -1
  2. package/dist/index.cjs.js +1 -1
  3. package/dist/index.cjs.js.map +1 -1
  4. package/dist/index.cjs10.js +1 -1
  5. package/dist/index.cjs100.js +1 -1
  6. package/dist/index.cjs101.js +1 -1
  7. package/dist/index.cjs102.js +1 -1
  8. package/dist/index.cjs103.js +1 -1
  9. package/dist/index.cjs104.js +1 -1
  10. package/dist/index.cjs105.js +1 -1
  11. package/dist/index.cjs106.js +1 -1
  12. package/dist/index.cjs107.js +1 -1
  13. package/dist/index.cjs108.js +1 -1
  14. package/dist/index.cjs109.js +1 -1
  15. package/dist/index.cjs11.js +1 -1
  16. package/dist/index.cjs110.js +1 -1
  17. package/dist/index.cjs111.js +1 -1
  18. package/dist/index.cjs112.js +1 -1
  19. package/dist/index.cjs113.js +1 -1
  20. package/dist/index.cjs114.js +1 -1
  21. package/dist/index.cjs114.js.map +1 -1
  22. package/dist/index.cjs115.js +1 -1
  23. package/dist/index.cjs115.js.map +1 -1
  24. package/dist/index.cjs116.js +1 -1
  25. package/dist/index.cjs117.js +1 -1
  26. package/dist/index.cjs118.js +1 -1
  27. package/dist/index.cjs119.js +1 -1
  28. package/dist/index.cjs12.js +1 -1
  29. package/dist/index.cjs120.js +1 -1
  30. package/dist/index.cjs121.js +1 -1
  31. package/dist/index.cjs122.js +1 -1
  32. package/dist/index.cjs123.js +1 -1
  33. package/dist/index.cjs124.js +1 -1
  34. package/dist/index.cjs125.js +1 -1
  35. package/dist/index.cjs126.js +1 -1
  36. package/dist/index.cjs127.js +1 -1
  37. package/dist/index.cjs127.js.map +1 -1
  38. package/dist/index.cjs128.js +1 -1
  39. package/dist/index.cjs128.js.map +1 -1
  40. package/dist/index.cjs129.js +1 -1
  41. package/dist/index.cjs129.js.map +1 -1
  42. package/dist/index.cjs13.js +1 -1
  43. package/dist/index.cjs130.js +1 -1
  44. package/dist/index.cjs130.js.map +1 -1
  45. package/dist/index.cjs131.js +1 -1
  46. package/dist/index.cjs131.js.map +1 -1
  47. package/dist/index.cjs132.js +1 -1
  48. package/dist/index.cjs132.js.map +1 -1
  49. package/dist/index.cjs133.js +1 -1
  50. package/dist/index.cjs133.js.map +1 -1
  51. package/dist/index.cjs134.js +1 -1
  52. package/dist/index.cjs134.js.map +1 -1
  53. package/dist/index.cjs135.js +1 -1
  54. package/dist/index.cjs135.js.map +1 -1
  55. package/dist/index.cjs136.js +1 -1
  56. package/dist/index.cjs136.js.map +1 -1
  57. package/dist/index.cjs137.js +1 -1
  58. package/dist/index.cjs137.js.map +1 -1
  59. package/dist/index.cjs138.js +1 -1
  60. package/dist/index.cjs138.js.map +1 -1
  61. package/dist/index.cjs139.js +1 -1
  62. package/dist/index.cjs139.js.map +1 -1
  63. package/dist/index.cjs14.js +1 -1
  64. package/dist/index.cjs140.js +1 -1
  65. package/dist/index.cjs140.js.map +1 -1
  66. package/dist/index.cjs141.js +1 -1
  67. package/dist/index.cjs141.js.map +1 -1
  68. package/dist/index.cjs142.js +1 -1
  69. package/dist/index.cjs142.js.map +1 -1
  70. package/dist/index.cjs143.js +1 -1
  71. package/dist/index.cjs143.js.map +1 -1
  72. package/dist/index.cjs144.js +1 -1
  73. package/dist/index.cjs144.js.map +1 -1
  74. package/dist/index.cjs145.js +1 -1
  75. package/dist/index.cjs145.js.map +1 -1
  76. package/dist/index.cjs146.js +1 -1
  77. package/dist/index.cjs146.js.map +1 -1
  78. package/dist/index.cjs147.js +1 -1
  79. package/dist/index.cjs147.js.map +1 -1
  80. package/dist/index.cjs148.js +1 -1
  81. package/dist/index.cjs148.js.map +1 -1
  82. package/dist/index.cjs149.js +1 -1
  83. package/dist/index.cjs149.js.map +1 -1
  84. package/dist/index.cjs15.js +1 -1
  85. package/dist/index.cjs150.js +1 -1
  86. package/dist/index.cjs150.js.map +1 -1
  87. package/dist/index.cjs151.js +1 -1
  88. package/dist/index.cjs151.js.map +1 -1
  89. package/dist/index.cjs152.js +1 -1
  90. package/dist/index.cjs152.js.map +1 -1
  91. package/dist/index.cjs153.js +1 -1
  92. package/dist/index.cjs153.js.map +1 -1
  93. package/dist/index.cjs154.js +1 -1
  94. package/dist/index.cjs154.js.map +1 -1
  95. package/dist/index.cjs155.js +1 -1
  96. package/dist/index.cjs155.js.map +1 -1
  97. package/dist/index.cjs156.js +1 -1
  98. package/dist/index.cjs156.js.map +1 -1
  99. package/dist/index.cjs157.js +1 -1
  100. package/dist/index.cjs157.js.map +1 -1
  101. package/dist/index.cjs158.js +1 -1
  102. package/dist/index.cjs158.js.map +1 -1
  103. package/dist/index.cjs159.js +1 -1
  104. package/dist/index.cjs159.js.map +1 -1
  105. package/dist/index.cjs16.js +1 -1
  106. package/dist/index.cjs160.js +1 -1
  107. package/dist/index.cjs160.js.map +1 -1
  108. package/dist/index.cjs161.js +1 -1
  109. package/dist/index.cjs161.js.map +1 -1
  110. package/dist/index.cjs162.js +1 -1
  111. package/dist/index.cjs162.js.map +1 -1
  112. package/dist/index.cjs163.js +1 -1
  113. package/dist/index.cjs163.js.map +1 -1
  114. package/dist/index.cjs164.js +1 -1
  115. package/dist/index.cjs164.js.map +1 -1
  116. package/dist/index.cjs165.js +1 -1
  117. package/dist/index.cjs165.js.map +1 -1
  118. package/dist/index.cjs166.js +1 -1
  119. package/dist/index.cjs166.js.map +1 -1
  120. package/dist/index.cjs167.js +1 -1
  121. package/dist/index.cjs167.js.map +1 -1
  122. package/dist/index.cjs168.js +1 -1
  123. package/dist/index.cjs168.js.map +1 -1
  124. package/dist/index.cjs169.js +1 -1
  125. package/dist/index.cjs169.js.map +1 -1
  126. package/dist/index.cjs17.js +1 -1
  127. package/dist/index.cjs170.js +1 -1
  128. package/dist/index.cjs170.js.map +1 -1
  129. package/dist/index.cjs171.js +1 -1
  130. package/dist/index.cjs171.js.map +1 -1
  131. package/dist/index.cjs172.js +1 -1
  132. package/dist/index.cjs172.js.map +1 -1
  133. package/dist/index.cjs173.js +1 -1
  134. package/dist/index.cjs173.js.map +1 -1
  135. package/dist/index.cjs174.js +1 -1
  136. package/dist/index.cjs174.js.map +1 -1
  137. package/dist/index.cjs175.js +1 -1
  138. package/dist/index.cjs175.js.map +1 -1
  139. package/dist/index.cjs176.js +1 -1
  140. package/dist/index.cjs176.js.map +1 -1
  141. package/dist/index.cjs177.js +1 -1
  142. package/dist/index.cjs177.js.map +1 -1
  143. package/dist/index.cjs178.js +1 -1
  144. package/dist/index.cjs178.js.map +1 -1
  145. package/dist/index.cjs179.js +1 -1
  146. package/dist/index.cjs179.js.map +1 -1
  147. package/dist/index.cjs18.js +1 -1
  148. package/dist/index.cjs180.js +1 -1
  149. package/dist/index.cjs180.js.map +1 -1
  150. package/dist/index.cjs181.js +1 -1
  151. package/dist/index.cjs181.js.map +1 -1
  152. package/dist/index.cjs182.js +1 -1
  153. package/dist/index.cjs182.js.map +1 -1
  154. package/dist/index.cjs183.js +1 -1
  155. package/dist/index.cjs183.js.map +1 -1
  156. package/dist/index.cjs184.js +1 -1
  157. package/dist/index.cjs184.js.map +1 -1
  158. package/dist/index.cjs185.js +1 -1
  159. package/dist/index.cjs185.js.map +1 -1
  160. package/dist/index.cjs186.js +1 -1
  161. package/dist/index.cjs186.js.map +1 -1
  162. package/dist/index.cjs187.js +1 -1
  163. package/dist/index.cjs187.js.map +1 -1
  164. package/dist/index.cjs188.js +1 -1
  165. package/dist/index.cjs188.js.map +1 -1
  166. package/dist/index.cjs189.js +1 -1
  167. package/dist/index.cjs189.js.map +1 -1
  168. package/dist/index.cjs19.js +1 -1
  169. package/dist/index.cjs190.js +1 -1
  170. package/dist/index.cjs190.js.map +1 -1
  171. package/dist/index.cjs191.js +1 -1
  172. package/dist/index.cjs191.js.map +1 -1
  173. package/dist/index.cjs192.js +1 -1
  174. package/dist/index.cjs192.js.map +1 -1
  175. package/dist/index.cjs193.js +1 -1
  176. package/dist/index.cjs193.js.map +1 -1
  177. package/dist/index.cjs194.js +1 -1
  178. package/dist/index.cjs194.js.map +1 -1
  179. package/dist/index.cjs195.js +1 -1
  180. package/dist/index.cjs195.js.map +1 -1
  181. package/dist/index.cjs196.js +1 -1
  182. package/dist/index.cjs196.js.map +1 -1
  183. package/dist/index.cjs197.js +1 -1
  184. package/dist/index.cjs197.js.map +1 -1
  185. package/dist/index.cjs198.js +1 -1
  186. package/dist/index.cjs198.js.map +1 -1
  187. package/dist/index.cjs199.js +1 -1
  188. package/dist/index.cjs199.js.map +1 -1
  189. package/dist/index.cjs20.js +1 -1
  190. package/dist/index.cjs200.js +1 -1
  191. package/dist/index.cjs200.js.map +1 -1
  192. package/dist/index.cjs201.js +1 -1
  193. package/dist/index.cjs201.js.map +1 -1
  194. package/dist/index.cjs202.js +1 -1
  195. package/dist/index.cjs202.js.map +1 -1
  196. package/dist/index.cjs203.js +1 -1
  197. package/dist/index.cjs203.js.map +1 -1
  198. package/dist/index.cjs204.js +1 -1
  199. package/dist/index.cjs204.js.map +1 -1
  200. package/dist/index.cjs205.js +1 -1
  201. package/dist/index.cjs205.js.map +1 -1
  202. package/dist/index.cjs206.js +1 -1
  203. package/dist/index.cjs206.js.map +1 -1
  204. package/dist/index.cjs207.js +1 -1
  205. package/dist/index.cjs207.js.map +1 -1
  206. package/dist/index.cjs208.js +1 -1
  207. package/dist/index.cjs208.js.map +1 -1
  208. package/dist/index.cjs209.js +2 -0
  209. package/dist/index.cjs209.js.map +1 -0
  210. package/dist/index.cjs21.js +1 -1
  211. package/dist/index.cjs211.js +1 -1
  212. package/dist/index.cjs211.js.map +1 -1
  213. package/dist/{index.cjs224.js → index.cjs212.js} +1 -1
  214. package/dist/{index.cjs224.js.map → index.cjs212.js.map} +1 -1
  215. package/dist/{index.cjs227.js → index.cjs215.js} +1 -1
  216. package/dist/{index.cjs227.js.map → index.cjs215.js.map} +1 -1
  217. package/dist/index.cjs219.js +1 -6
  218. package/dist/index.cjs219.js.map +1 -1
  219. package/dist/index.cjs22.js +1 -1
  220. package/dist/index.cjs222.js +1 -1
  221. package/dist/index.cjs222.js.map +1 -1
  222. package/dist/index.cjs225.js +2 -0
  223. package/dist/index.cjs225.js.map +1 -0
  224. package/dist/index.cjs228.js +2 -0
  225. package/dist/index.cjs228.js.map +1 -0
  226. package/dist/{index.cjs241.js → index.cjs229.js} +2 -2
  227. package/dist/{index.cjs241.js.map → index.cjs229.js.map} +1 -1
  228. package/dist/index.cjs23.js +1 -1
  229. package/dist/{index.cjs242.js → index.cjs230.js} +2 -2
  230. package/dist/{index.cjs242.js.map → index.cjs230.js.map} +1 -1
  231. package/dist/index.cjs236.js +2 -0
  232. package/dist/index.cjs236.js.map +1 -0
  233. package/dist/index.cjs237.js +1 -1
  234. package/dist/index.cjs237.js.map +1 -1
  235. package/dist/index.cjs24.js +1 -1
  236. package/dist/index.cjs240.js +1 -1
  237. package/dist/index.cjs240.js.map +1 -1
  238. package/dist/{index.cjs257.js → index.cjs245.js} +2 -2
  239. package/dist/{index.cjs257.js.map → index.cjs245.js.map} +1 -1
  240. package/dist/index.cjs246.js +2 -0
  241. package/dist/index.cjs246.js.map +1 -0
  242. package/dist/index.cjs247.js +2 -0
  243. package/dist/index.cjs247.js.map +1 -0
  244. package/dist/index.cjs248.js +1 -1
  245. package/dist/index.cjs248.js.map +1 -1
  246. package/dist/index.cjs25.js +1 -1
  247. package/dist/{index.cjs262.js → index.cjs250.js} +2 -2
  248. package/dist/{index.cjs262.js.map → index.cjs250.js.map} +1 -1
  249. package/dist/index.cjs252.js +5 -1
  250. package/dist/index.cjs252.js.map +1 -1
  251. package/dist/{index.cjs265.js → index.cjs253.js} +2 -2
  252. package/dist/{index.cjs265.js.map → index.cjs253.js.map} +1 -1
  253. package/dist/{index.cjs266.js → index.cjs254.js} +2 -2
  254. package/dist/{index.cjs266.js.map → index.cjs254.js.map} +1 -1
  255. package/dist/{index.cjs267.js → index.cjs255.js} +2 -2
  256. package/dist/{index.cjs267.js.map → index.cjs255.js.map} +1 -1
  257. package/dist/{index.cjs268.js → index.cjs256.js} +2 -2
  258. package/dist/{index.cjs268.js.map → index.cjs256.js.map} +1 -1
  259. package/dist/index.cjs258.js +1 -1
  260. package/dist/index.cjs258.js.map +1 -1
  261. package/dist/index.cjs259.js +1 -1
  262. package/dist/index.cjs259.js.map +1 -1
  263. package/dist/index.cjs26.js +1 -1
  264. package/dist/index.cjs260.js +1 -1
  265. package/dist/index.cjs260.js.map +1 -1
  266. package/dist/index.cjs263.js +2 -0
  267. package/dist/index.cjs263.js.map +1 -0
  268. package/dist/index.cjs264.js +1 -5
  269. package/dist/index.cjs264.js.map +1 -1
  270. package/dist/index.cjs269.js +2 -0
  271. package/dist/index.cjs269.js.map +1 -0
  272. package/dist/index.cjs27.js +1 -1
  273. package/dist/index.cjs270.js +1 -1
  274. package/dist/index.cjs270.js.map +1 -1
  275. package/dist/index.cjs271.js +1 -1
  276. package/dist/index.cjs271.js.map +1 -1
  277. package/dist/{index.cjs285.js → index.cjs273.js} +2 -2
  278. package/dist/{index.cjs285.js.map → index.cjs273.js.map} +1 -1
  279. package/dist/{index.cjs286.js → index.cjs274.js} +2 -2
  280. package/dist/{index.cjs286.js.map → index.cjs274.js.map} +1 -1
  281. package/dist/index.cjs275.js +1 -1
  282. package/dist/index.cjs275.js.map +1 -1
  283. package/dist/{index.cjs289.js → index.cjs277.js} +2 -2
  284. package/dist/{index.cjs289.js.map → index.cjs277.js.map} +1 -1
  285. package/dist/index.cjs278.js +2 -0
  286. package/dist/index.cjs278.js.map +1 -0
  287. package/dist/{index.cjs291.js → index.cjs279.js} +2 -2
  288. package/dist/{index.cjs291.js.map → index.cjs279.js.map} +1 -1
  289. package/dist/index.cjs28.js +1 -1
  290. package/dist/index.cjs281.js +6 -1
  291. package/dist/index.cjs281.js.map +1 -1
  292. package/dist/index.cjs29.js +1 -1
  293. package/dist/index.cjs290.js +1 -1
  294. package/dist/index.cjs290.js.map +1 -1
  295. package/dist/index.cjs3.js +1 -1
  296. package/dist/index.cjs30.js +1 -1
  297. package/dist/index.cjs31.js +1 -1
  298. package/dist/{index.cjs330.js → index.cjs319.js} +2 -2
  299. package/dist/{index.cjs330.js.map → index.cjs319.js.map} +1 -1
  300. package/dist/index.cjs32.js +1 -1
  301. package/dist/index.cjs327.js +2 -0
  302. package/dist/index.cjs327.js.map +1 -0
  303. package/dist/index.cjs33.js +1 -1
  304. package/dist/{index.cjs343.js → index.cjs332.js} +2 -2
  305. package/dist/{index.cjs343.js.map → index.cjs332.js.map} +1 -1
  306. package/dist/index.cjs338.js +1 -1
  307. package/dist/index.cjs338.js.map +1 -1
  308. package/dist/index.cjs34.js +1 -1
  309. package/dist/{index.cjs351.js → index.cjs340.js} +2 -2
  310. package/dist/{index.cjs351.js.map → index.cjs340.js.map} +1 -1
  311. package/dist/{index.cjs355.js → index.cjs344.js} +2 -2
  312. package/dist/{index.cjs355.js.map → index.cjs344.js.map} +1 -1
  313. package/dist/index.cjs346.js +2 -0
  314. package/dist/index.cjs346.js.map +1 -0
  315. package/dist/{index.cjs358.js → index.cjs347.js} +2 -2
  316. package/dist/{index.cjs358.js.map → index.cjs347.js.map} +1 -1
  317. package/dist/{index.cjs359.js → index.cjs348.js} +2 -2
  318. package/dist/{index.cjs359.js.map → index.cjs348.js.map} +1 -1
  319. package/dist/index.cjs35.js +1 -1
  320. package/dist/index.cjs357.js +1 -1
  321. package/dist/index.cjs357.js.map +1 -1
  322. package/dist/index.cjs36.js +1 -1
  323. package/dist/index.cjs364.js +2 -0
  324. package/dist/index.cjs364.js.map +1 -0
  325. package/dist/index.cjs367.js +1 -1
  326. package/dist/index.cjs367.js.map +1 -1
  327. package/dist/index.cjs368.js +1 -1
  328. package/dist/index.cjs368.js.map +1 -1
  329. package/dist/index.cjs369.js +1 -9
  330. package/dist/index.cjs369.js.map +1 -1
  331. package/dist/index.cjs37.js +1 -1
  332. package/dist/index.cjs370.js +3 -8
  333. package/dist/index.cjs370.js.map +1 -1
  334. package/dist/index.cjs371.js +14 -1
  335. package/dist/index.cjs371.js.map +1 -1
  336. package/dist/index.cjs372.js +1 -1
  337. package/dist/index.cjs372.js.map +1 -1
  338. package/dist/index.cjs373.js +1 -1
  339. package/dist/index.cjs373.js.map +1 -1
  340. package/dist/index.cjs374.js +1 -27
  341. package/dist/index.cjs374.js.map +1 -1
  342. package/dist/index.cjs375.js +1 -1
  343. package/dist/index.cjs375.js.map +1 -1
  344. package/dist/index.cjs376.js +1 -1
  345. package/dist/index.cjs376.js.map +1 -1
  346. package/dist/index.cjs377.js +1 -2
  347. package/dist/index.cjs377.js.map +1 -1
  348. package/dist/index.cjs378.js +1 -1
  349. package/dist/index.cjs378.js.map +1 -1
  350. package/dist/index.cjs38.js +1 -1
  351. package/dist/index.cjs380.js +1 -1
  352. package/dist/index.cjs380.js.map +1 -1
  353. package/dist/index.cjs381.js +1 -1
  354. package/dist/index.cjs381.js.map +1 -1
  355. package/dist/index.cjs382.js +1 -1
  356. package/dist/index.cjs382.js.map +1 -1
  357. package/dist/index.cjs383.js +1 -1
  358. package/dist/index.cjs383.js.map +1 -1
  359. package/dist/index.cjs386.js +1 -1
  360. package/dist/index.cjs386.js.map +1 -1
  361. package/dist/index.cjs389.js +1 -1
  362. package/dist/index.cjs389.js.map +1 -1
  363. package/dist/index.cjs39.js +1 -1
  364. package/dist/index.cjs390.js +1 -1
  365. package/dist/index.cjs390.js.map +1 -1
  366. package/dist/index.cjs391.js +1 -1
  367. package/dist/index.cjs391.js.map +1 -1
  368. package/dist/index.cjs392.js +1 -1
  369. package/dist/index.cjs392.js.map +1 -1
  370. package/dist/index.cjs393.js +1 -1
  371. package/dist/index.cjs393.js.map +1 -1
  372. package/dist/index.cjs394.js +1 -1
  373. package/dist/index.cjs394.js.map +1 -1
  374. package/dist/index.cjs395.js +1 -1
  375. package/dist/index.cjs395.js.map +1 -1
  376. package/dist/index.cjs4.js +1 -1
  377. package/dist/index.cjs40.js +1 -1
  378. package/dist/index.cjs405.js +1 -1
  379. package/dist/index.cjs405.js.map +1 -1
  380. package/dist/index.cjs406.js +1 -1
  381. package/dist/index.cjs406.js.map +1 -1
  382. package/dist/index.cjs41.js +1 -1
  383. package/dist/index.cjs411.js +1 -1
  384. package/dist/index.cjs411.js.map +1 -1
  385. package/dist/index.cjs412.js +1 -1
  386. package/dist/index.cjs412.js.map +1 -1
  387. package/dist/index.cjs413.js +1 -1
  388. package/dist/index.cjs413.js.map +1 -1
  389. package/dist/index.cjs414.js +1 -1
  390. package/dist/index.cjs414.js.map +1 -1
  391. package/dist/index.cjs415.js +1 -4
  392. package/dist/index.cjs415.js.map +1 -1
  393. package/dist/index.cjs416.js +1 -1
  394. package/dist/index.cjs416.js.map +1 -1
  395. package/dist/index.cjs417.js +1 -1
  396. package/dist/index.cjs417.js.map +1 -1
  397. package/dist/index.cjs418.js +1 -1
  398. package/dist/index.cjs418.js.map +1 -1
  399. package/dist/index.cjs419.js +1 -1
  400. package/dist/index.cjs419.js.map +1 -1
  401. package/dist/index.cjs42.js +1 -1
  402. package/dist/index.cjs420.js +1 -1
  403. package/dist/index.cjs420.js.map +1 -1
  404. package/dist/index.cjs421.js +2 -0
  405. package/dist/index.cjs421.js.map +1 -0
  406. package/dist/{index.cjs409.js → index.cjs422.js} +1 -1
  407. package/dist/{index.cjs409.js.map → index.cjs422.js.map} +1 -1
  408. package/dist/{index.cjs410.js → index.cjs423.js} +2 -2
  409. package/dist/{index.cjs410.js.map → index.cjs423.js.map} +1 -1
  410. package/dist/index.cjs424.js +2 -0
  411. package/dist/index.cjs424.js.map +1 -0
  412. package/dist/index.cjs425.js +2 -0
  413. package/dist/index.cjs425.js.map +1 -0
  414. package/dist/index.cjs426.js +2 -0
  415. package/dist/index.cjs426.js.map +1 -0
  416. package/dist/index.cjs427.js +2 -0
  417. package/dist/index.cjs427.js.map +1 -0
  418. package/dist/index.cjs428.js +5 -0
  419. package/dist/index.cjs428.js.map +1 -0
  420. package/dist/index.cjs429.js +1 -1
  421. package/dist/index.cjs429.js.map +1 -1
  422. package/dist/index.cjs43.js +1 -1
  423. package/dist/index.cjs430.js +1 -38
  424. package/dist/index.cjs430.js.map +1 -1
  425. package/dist/index.cjs431.js +1 -1
  426. package/dist/index.cjs431.js.map +1 -1
  427. package/dist/index.cjs432.js +1 -1
  428. package/dist/index.cjs432.js.map +1 -1
  429. package/dist/index.cjs433.js +1 -1
  430. package/dist/index.cjs433.js.map +1 -1
  431. package/dist/index.cjs434.js +39 -0
  432. package/dist/index.cjs434.js.map +1 -0
  433. package/dist/index.cjs435.js +2 -0
  434. package/dist/index.cjs435.js.map +1 -0
  435. package/dist/index.cjs436.js +2 -0
  436. package/dist/index.cjs436.js.map +1 -0
  437. package/dist/index.cjs437.js +2 -0
  438. package/dist/index.cjs437.js.map +1 -0
  439. package/dist/index.cjs438.js +2 -0
  440. package/dist/index.cjs438.js.map +1 -0
  441. package/dist/index.cjs439.js +2 -0
  442. package/dist/index.cjs439.js.map +1 -0
  443. package/dist/index.cjs44.js +1 -1
  444. package/dist/index.cjs440.js +2 -0
  445. package/dist/index.cjs440.js.map +1 -0
  446. package/dist/index.cjs441.js +1 -1
  447. package/dist/index.cjs441.js.map +1 -1
  448. package/dist/index.cjs442.js +1 -1
  449. package/dist/index.cjs442.js.map +1 -1
  450. package/dist/index.cjs443.js +1 -1
  451. package/dist/index.cjs443.js.map +1 -1
  452. package/dist/index.cjs446.js +1 -1
  453. package/dist/index.cjs446.js.map +1 -1
  454. package/dist/index.cjs447.js +2 -0
  455. package/dist/index.cjs447.js.map +1 -0
  456. package/dist/index.cjs448.js +2 -0
  457. package/dist/index.cjs448.js.map +1 -0
  458. package/dist/index.cjs449.js +1 -1
  459. package/dist/index.cjs449.js.map +1 -1
  460. package/dist/index.cjs45.js +1 -1
  461. package/dist/index.cjs450.js +1 -1
  462. package/dist/index.cjs450.js.map +1 -1
  463. package/dist/index.cjs451.js +1 -1
  464. package/dist/index.cjs451.js.map +1 -1
  465. package/dist/index.cjs452.js +1 -1
  466. package/dist/index.cjs452.js.map +1 -1
  467. package/dist/index.cjs453.js +1 -1
  468. package/dist/index.cjs453.js.map +1 -1
  469. package/dist/index.cjs454.js +1 -1
  470. package/dist/index.cjs454.js.map +1 -1
  471. package/dist/index.cjs455.js +1 -1
  472. package/dist/index.cjs455.js.map +1 -1
  473. package/dist/index.cjs456.js +1 -1
  474. package/dist/index.cjs456.js.map +1 -1
  475. package/dist/index.cjs457.js +1 -1
  476. package/dist/index.cjs457.js.map +1 -1
  477. package/dist/index.cjs458.js +1 -1
  478. package/dist/index.cjs458.js.map +1 -1
  479. package/dist/index.cjs459.js +1 -1
  480. package/dist/index.cjs459.js.map +1 -1
  481. package/dist/index.cjs46.js +1 -1
  482. package/dist/index.cjs461.js +5 -1
  483. package/dist/index.cjs461.js.map +1 -1
  484. package/dist/index.cjs462.js +1 -1
  485. package/dist/index.cjs462.js.map +1 -1
  486. package/dist/index.cjs463.js +1 -1
  487. package/dist/index.cjs463.js.map +1 -1
  488. package/dist/index.cjs464.js +1 -5
  489. package/dist/index.cjs464.js.map +1 -1
  490. package/dist/index.cjs465.js +1 -1
  491. package/dist/index.cjs465.js.map +1 -1
  492. package/dist/index.cjs466.js +1 -1
  493. package/dist/index.cjs466.js.map +1 -1
  494. package/dist/index.cjs467.js +1 -1
  495. package/dist/index.cjs467.js.map +1 -1
  496. package/dist/index.cjs468.js +1 -1
  497. package/dist/index.cjs468.js.map +1 -1
  498. package/dist/index.cjs469.js +1 -1
  499. package/dist/index.cjs469.js.map +1 -1
  500. package/dist/index.cjs47.js +1 -1
  501. package/dist/index.cjs470.js +27 -1
  502. package/dist/index.cjs470.js.map +1 -1
  503. package/dist/index.cjs471.js +1 -1
  504. package/dist/index.cjs471.js.map +1 -1
  505. package/dist/index.cjs472.js +1 -1
  506. package/dist/index.cjs472.js.map +1 -1
  507. package/dist/index.cjs473.js +2 -1
  508. package/dist/index.cjs473.js.map +1 -1
  509. package/dist/index.cjs474.js +1 -1
  510. package/dist/index.cjs474.js.map +1 -1
  511. package/dist/index.cjs475.js +2 -0
  512. package/dist/index.cjs475.js.map +1 -0
  513. package/dist/index.cjs48.js +1 -1
  514. package/dist/index.cjs49.js +1 -1
  515. package/dist/index.cjs5.js +1 -1
  516. package/dist/index.cjs50.js +1 -1
  517. package/dist/index.cjs51.js +1 -1
  518. package/dist/index.cjs52.js +1 -1
  519. package/dist/index.cjs53.js +1 -1
  520. package/dist/index.cjs54.js +1 -1
  521. package/dist/index.cjs55.js +1 -1
  522. package/dist/index.cjs56.js +1 -1
  523. package/dist/index.cjs57.js +1 -1
  524. package/dist/index.cjs58.js +1 -1
  525. package/dist/index.cjs59.js +1 -1
  526. package/dist/index.cjs6.js +1 -1
  527. package/dist/index.cjs60.js +1 -1
  528. package/dist/index.cjs61.js +1 -1
  529. package/dist/index.cjs62.js +1 -1
  530. package/dist/index.cjs63.js +1 -1
  531. package/dist/index.cjs64.js +1 -1
  532. package/dist/index.cjs65.js +1 -1
  533. package/dist/index.cjs66.js +1 -1
  534. package/dist/index.cjs67.js +1 -1
  535. package/dist/index.cjs68.js +1 -1
  536. package/dist/index.cjs69.js +1 -1
  537. package/dist/index.cjs7.js +1 -1
  538. package/dist/index.cjs70.js +1 -1
  539. package/dist/index.cjs71.js +1 -1
  540. package/dist/index.cjs72.js +1 -1
  541. package/dist/index.cjs73.js +1 -1
  542. package/dist/index.cjs74.js +1 -1
  543. package/dist/index.cjs75.js +1 -1
  544. package/dist/index.cjs76.js +1 -1
  545. package/dist/index.cjs77.js +1 -1
  546. package/dist/index.cjs78.js +1 -1
  547. package/dist/index.cjs79.js +1 -1
  548. package/dist/index.cjs8.js +1 -1
  549. package/dist/index.cjs80.js +1 -1
  550. package/dist/index.cjs81.js +1 -1
  551. package/dist/index.cjs82.js +1 -1
  552. package/dist/index.cjs83.js +1 -1
  553. package/dist/index.cjs84.js +1 -1
  554. package/dist/index.cjs85.js +1 -1
  555. package/dist/index.cjs86.js +1 -1
  556. package/dist/index.cjs87.js +1 -1
  557. package/dist/index.cjs88.js +1 -1
  558. package/dist/index.cjs89.js +1 -1
  559. package/dist/index.cjs9.js +1 -1
  560. package/dist/index.cjs90.js +1 -1
  561. package/dist/index.cjs91.js +1 -1
  562. package/dist/index.cjs92.js +1 -1
  563. package/dist/index.cjs93.js +1 -1
  564. package/dist/index.cjs94.js +1 -1
  565. package/dist/index.cjs95.js +1 -1
  566. package/dist/index.cjs96.js +1 -1
  567. package/dist/index.cjs97.js +1 -1
  568. package/dist/index.cjs98.js +1 -1
  569. package/dist/index.cjs99.js +1 -1
  570. package/dist/index.d.ts +11 -2
  571. package/dist/index.es.js +142 -140
  572. package/dist/index.es.js.map +1 -1
  573. package/dist/index.es10.js +5 -5
  574. package/dist/index.es100.js +2 -2
  575. package/dist/index.es101.js +2 -2
  576. package/dist/index.es102.js +5 -5
  577. package/dist/index.es103.js +3 -3
  578. package/dist/index.es104.js +3 -3
  579. package/dist/index.es105.js +2 -2
  580. package/dist/index.es106.js +2 -2
  581. package/dist/index.es107.js +1 -1
  582. package/dist/index.es108.js +3 -3
  583. package/dist/index.es109.js +2 -2
  584. package/dist/index.es11.js +2 -2
  585. package/dist/index.es110.js +2 -2
  586. package/dist/index.es111.js +2 -2
  587. package/dist/index.es112.js +1 -1
  588. package/dist/index.es113.js +4 -4
  589. package/dist/index.es114.js +19 -22
  590. package/dist/index.es114.js.map +1 -1
  591. package/dist/index.es115.js +3 -3
  592. package/dist/index.es115.js.map +1 -1
  593. package/dist/index.es116.js +1 -1
  594. package/dist/index.es117.js +3 -3
  595. package/dist/index.es118.js +1 -1
  596. package/dist/index.es119.js +2 -2
  597. package/dist/index.es12.js +4 -4
  598. package/dist/index.es120.js +3 -3
  599. package/dist/index.es121.js +2 -2
  600. package/dist/index.es122.js +1 -1
  601. package/dist/index.es123.js +1 -1
  602. package/dist/index.es124.js +3 -3
  603. package/dist/index.es125.js +1 -1
  604. package/dist/index.es126.js +2 -2
  605. package/dist/index.es127.js +14 -25
  606. package/dist/index.es127.js.map +1 -1
  607. package/dist/index.es128.js +16 -16
  608. package/dist/index.es128.js.map +1 -1
  609. package/dist/index.es129.js +14 -14
  610. package/dist/index.es129.js.map +1 -1
  611. package/dist/index.es13.js +3 -3
  612. package/dist/index.es130.js +14 -14
  613. package/dist/index.es130.js.map +1 -1
  614. package/dist/index.es131.js +12 -14
  615. package/dist/index.es131.js.map +1 -1
  616. package/dist/index.es132.js +16 -22
  617. package/dist/index.es132.js.map +1 -1
  618. package/dist/index.es133.js +24 -2267
  619. package/dist/index.es133.js.map +1 -1
  620. package/dist/index.es134.js +2267 -23
  621. package/dist/index.es134.js.map +1 -1
  622. package/dist/index.es135.js +23 -41
  623. package/dist/index.es135.js.map +1 -1
  624. package/dist/index.es136.js +36 -18
  625. package/dist/index.es136.js.map +1 -1
  626. package/dist/index.es137.js +20 -72
  627. package/dist/index.es137.js.map +1 -1
  628. package/dist/index.es138.js +72 -38
  629. package/dist/index.es138.js.map +1 -1
  630. package/dist/index.es139.js +39 -17
  631. package/dist/index.es139.js.map +1 -1
  632. package/dist/index.es14.js +3 -3
  633. package/dist/index.es140.js +16 -669
  634. package/dist/index.es140.js.map +1 -1
  635. package/dist/index.es141.js +654 -17
  636. package/dist/index.es141.js.map +1 -1
  637. package/dist/index.es142.js +34 -21
  638. package/dist/index.es142.js.map +1 -1
  639. package/dist/index.es143.js +6 -6
  640. package/dist/index.es143.js.map +1 -1
  641. package/dist/index.es144.js +17 -19
  642. package/dist/index.es144.js.map +1 -1
  643. package/dist/index.es145.js +18 -30
  644. package/dist/index.es145.js.map +1 -1
  645. package/dist/index.es146.js +28 -23
  646. package/dist/index.es146.js.map +1 -1
  647. package/dist/index.es147.js +21 -32
  648. package/dist/index.es147.js.map +1 -1
  649. package/dist/index.es148.js +33 -22
  650. package/dist/index.es148.js.map +1 -1
  651. package/dist/index.es149.js +40 -24
  652. package/dist/index.es149.js.map +1 -1
  653. package/dist/index.es15.js +4 -4
  654. package/dist/index.es150.js +13 -17
  655. package/dist/index.es150.js.map +1 -1
  656. package/dist/index.es151.js +17 -17
  657. package/dist/index.es151.js.map +1 -1
  658. package/dist/index.es152.js +28 -32
  659. package/dist/index.es152.js.map +1 -1
  660. package/dist/index.es153.js +21 -24
  661. package/dist/index.es153.js.map +1 -1
  662. package/dist/index.es154.js +24 -22
  663. package/dist/index.es154.js.map +1 -1
  664. package/dist/index.es155.js +33 -21
  665. package/dist/index.es155.js.map +1 -1
  666. package/dist/index.es156.js +21 -36
  667. package/dist/index.es156.js.map +1 -1
  668. package/dist/index.es157.js +26 -23
  669. package/dist/index.es157.js.map +1 -1
  670. package/dist/index.es158.js +13 -13
  671. package/dist/index.es158.js.map +1 -1
  672. package/dist/index.es159.js +13 -13
  673. package/dist/index.es159.js.map +1 -1
  674. package/dist/index.es16.js +7 -7
  675. package/dist/index.es160.js +17 -17
  676. package/dist/index.es160.js.map +1 -1
  677. package/dist/index.es161.js +14 -14
  678. package/dist/index.es161.js.map +1 -1
  679. package/dist/index.es162.js +16 -15
  680. package/dist/index.es162.js.map +1 -1
  681. package/dist/index.es163.js +14 -15
  682. package/dist/index.es163.js.map +1 -1
  683. package/dist/index.es164.js +24 -31
  684. package/dist/index.es164.js.map +1 -1
  685. package/dist/index.es165.js +40 -21
  686. package/dist/index.es165.js.map +1 -1
  687. package/dist/index.es166.js +21 -31
  688. package/dist/index.es166.js.map +1 -1
  689. package/dist/index.es167.js +17 -19
  690. package/dist/index.es167.js.map +1 -1
  691. package/dist/index.es168.js +9 -9
  692. package/dist/index.es168.js.map +1 -1
  693. package/dist/index.es169.js +21 -23
  694. package/dist/index.es169.js.map +1 -1
  695. package/dist/index.es17.js +2 -2
  696. package/dist/index.es170.js +22 -19
  697. package/dist/index.es170.js.map +1 -1
  698. package/dist/index.es171.js +16 -17
  699. package/dist/index.es171.js.map +1 -1
  700. package/dist/index.es172.js +23 -15
  701. package/dist/index.es172.js.map +1 -1
  702. package/dist/index.es173.js +25 -21
  703. package/dist/index.es173.js.map +1 -1
  704. package/dist/index.es174.js +21 -33
  705. package/dist/index.es174.js.map +1 -1
  706. package/dist/index.es175.js +16 -16
  707. package/dist/index.es175.js.map +1 -1
  708. package/dist/index.es176.js +13 -13
  709. package/dist/index.es176.js.map +1 -1
  710. package/dist/index.es177.js +16 -16
  711. package/dist/index.es177.js.map +1 -1
  712. package/dist/index.es178.js +16 -16
  713. package/dist/index.es178.js.map +1 -1
  714. package/dist/index.es179.js +18 -18
  715. package/dist/index.es179.js.map +1 -1
  716. package/dist/index.es18.js +3 -3
  717. package/dist/index.es180.js +16 -16
  718. package/dist/index.es180.js.map +1 -1
  719. package/dist/index.es181.js +33 -22
  720. package/dist/index.es181.js.map +1 -1
  721. package/dist/index.es182.js +13 -11
  722. package/dist/index.es182.js.map +1 -1
  723. package/dist/index.es183.js +15 -29
  724. package/dist/index.es183.js.map +1 -1
  725. package/dist/index.es184.js +28 -14
  726. package/dist/index.es184.js.map +1 -1
  727. package/dist/index.es185.js +9 -11
  728. package/dist/index.es185.js.map +1 -1
  729. package/dist/index.es186.js +17 -9
  730. package/dist/index.es186.js.map +1 -1
  731. package/dist/index.es187.js +14 -1801
  732. package/dist/index.es187.js.map +1 -1
  733. package/dist/index.es188.js +1654 -327
  734. package/dist/index.es188.js.map +1 -1
  735. package/dist/index.es189.js +430 -134
  736. package/dist/index.es189.js.map +1 -1
  737. package/dist/index.es19.js +3 -3
  738. package/dist/index.es190.js +164 -245
  739. package/dist/index.es190.js.map +1 -1
  740. package/dist/index.es191.js +245 -109
  741. package/dist/index.es191.js.map +1 -1
  742. package/dist/index.es192.js +120 -282
  743. package/dist/index.es192.js.map +1 -1
  744. package/dist/index.es193.js +280 -199
  745. package/dist/index.es193.js.map +1 -1
  746. package/dist/index.es194.js +203 -16
  747. package/dist/index.es194.js.map +1 -1
  748. package/dist/index.es195.js +16 -33
  749. package/dist/index.es195.js.map +1 -1
  750. package/dist/index.es196.js +32 -340
  751. package/dist/index.es196.js.map +1 -1
  752. package/dist/index.es197.js +335 -83
  753. package/dist/index.es197.js.map +1 -1
  754. package/dist/index.es198.js +90 -148
  755. package/dist/index.es198.js.map +1 -1
  756. package/dist/index.es199.js +148 -38
  757. package/dist/index.es199.js.map +1 -1
  758. package/dist/index.es20.js +2 -2
  759. package/dist/index.es200.js +35 -6
  760. package/dist/index.es200.js.map +1 -1
  761. package/dist/index.es201.js +6 -176
  762. package/dist/index.es201.js.map +1 -1
  763. package/dist/index.es202.js +127 -34
  764. package/dist/index.es202.js.map +1 -1
  765. package/dist/index.es203.js +73 -26
  766. package/dist/index.es203.js.map +1 -1
  767. package/dist/index.es204.js +16 -22
  768. package/dist/index.es204.js.map +1 -1
  769. package/dist/index.es205.js +44 -74
  770. package/dist/index.es205.js.map +1 -1
  771. package/dist/index.es206.js +75 -3
  772. package/dist/index.es206.js.map +1 -1
  773. package/dist/index.es207.js +3 -15
  774. package/dist/index.es207.js.map +1 -1
  775. package/dist/index.es208.js +15 -2
  776. package/dist/index.es208.js.map +1 -1
  777. package/dist/index.es209.js +30 -0
  778. package/dist/index.es209.js.map +1 -0
  779. package/dist/index.es21.js +3 -3
  780. package/dist/index.es211.js +2 -3
  781. package/dist/index.es211.js.map +1 -1
  782. package/dist/{index.es224.js → index.es212.js} +1 -1
  783. package/dist/{index.es224.js.map → index.es212.js.map} +1 -1
  784. package/dist/{index.es227.js → index.es215.js} +1 -1
  785. package/dist/{index.es227.js.map → index.es215.js.map} +1 -1
  786. package/dist/index.es219.js +22 -59
  787. package/dist/index.es219.js.map +1 -1
  788. package/dist/index.es22.js +5 -5
  789. package/dist/index.es222.js +22 -27
  790. package/dist/index.es222.js.map +1 -1
  791. package/dist/index.es225.js +210 -0
  792. package/dist/index.es225.js.map +1 -0
  793. package/dist/index.es228.js +79 -0
  794. package/dist/index.es228.js.map +1 -0
  795. package/dist/{index.es241.js → index.es229.js} +6 -6
  796. package/dist/{index.es241.js.map → index.es229.js.map} +1 -1
  797. package/dist/index.es23.js +4 -4
  798. package/dist/{index.es242.js → index.es230.js} +5 -5
  799. package/dist/{index.es242.js.map → index.es230.js.map} +1 -1
  800. package/dist/index.es236.js +136 -0
  801. package/dist/index.es236.js.map +1 -0
  802. package/dist/index.es237.js +20 -207
  803. package/dist/index.es237.js.map +1 -1
  804. package/dist/index.es24.js +6 -6
  805. package/dist/index.es240.js +3 -76
  806. package/dist/index.es240.js.map +1 -1
  807. package/dist/{index.es257.js → index.es245.js} +2 -2
  808. package/dist/{index.es257.js.map → index.es245.js.map} +1 -1
  809. package/dist/index.es246.js +23 -0
  810. package/dist/index.es246.js.map +1 -0
  811. package/dist/index.es247.js +9 -0
  812. package/dist/index.es247.js.map +1 -0
  813. package/dist/index.es248.js +4 -132
  814. package/dist/index.es248.js.map +1 -1
  815. package/dist/index.es25.js +6 -6
  816. package/dist/{index.es262.js → index.es250.js} +4 -4
  817. package/dist/{index.es262.js.map → index.es250.js.map} +1 -1
  818. package/dist/index.es252.js +259 -3
  819. package/dist/index.es252.js.map +1 -1
  820. package/dist/{index.es265.js → index.es253.js} +5 -5
  821. package/dist/{index.es265.js.map → index.es253.js.map} +1 -1
  822. package/dist/{index.es266.js → index.es254.js} +2 -2
  823. package/dist/{index.es266.js.map → index.es254.js.map} +1 -1
  824. package/dist/{index.es267.js → index.es255.js} +2 -2
  825. package/dist/{index.es267.js.map → index.es255.js.map} +1 -1
  826. package/dist/{index.es268.js → index.es256.js} +4 -4
  827. package/dist/{index.es268.js.map → index.es256.js.map} +1 -1
  828. package/dist/index.es258.js +26 -19
  829. package/dist/index.es258.js.map +1 -1
  830. package/dist/index.es259.js +4 -6
  831. package/dist/index.es259.js.map +1 -1
  832. package/dist/index.es26.js +3 -3
  833. package/dist/index.es260.js +8 -5
  834. package/dist/index.es260.js.map +1 -1
  835. package/dist/index.es263.js +11 -0
  836. package/dist/index.es263.js.map +1 -0
  837. package/dist/index.es264.js +4 -259
  838. package/dist/index.es264.js.map +1 -1
  839. package/dist/index.es269.js +11 -0
  840. package/dist/index.es269.js.map +1 -0
  841. package/dist/index.es27.js +1 -1
  842. package/dist/index.es270.js +17 -17
  843. package/dist/index.es270.js.map +1 -1
  844. package/dist/index.es271.js +5 -3
  845. package/dist/index.es271.js.map +1 -1
  846. package/dist/{index.es285.js → index.es273.js} +4 -4
  847. package/dist/{index.es285.js.map → index.es273.js.map} +1 -1
  848. package/dist/{index.es286.js → index.es274.js} +3 -3
  849. package/dist/{index.es286.js.map → index.es274.js.map} +1 -1
  850. package/dist/index.es275.js +6 -8
  851. package/dist/index.es275.js.map +1 -1
  852. package/dist/{index.es289.js → index.es277.js} +4 -4
  853. package/dist/{index.es289.js.map → index.es277.js.map} +1 -1
  854. package/dist/index.es278.js +31 -0
  855. package/dist/index.es278.js.map +1 -0
  856. package/dist/{index.es291.js → index.es279.js} +9 -9
  857. package/dist/{index.es291.js.map → index.es279.js.map} +1 -1
  858. package/dist/index.es28.js +3 -3
  859. package/dist/index.es281.js +59 -8
  860. package/dist/index.es281.js.map +1 -1
  861. package/dist/index.es29.js +5 -5
  862. package/dist/index.es290.js +1 -30
  863. package/dist/index.es290.js.map +1 -1
  864. package/dist/index.es3.js +6 -6
  865. package/dist/index.es30.js +7 -7
  866. package/dist/index.es31.js +3 -3
  867. package/dist/{index.es330.js → index.es319.js} +7 -7
  868. package/dist/{index.es330.js.map → index.es319.js.map} +1 -1
  869. package/dist/index.es32.js +3 -3
  870. package/dist/index.es327.js +11 -0
  871. package/dist/index.es327.js.map +1 -0
  872. package/dist/index.es33.js +2 -2
  873. package/dist/{index.es343.js → index.es332.js} +9 -9
  874. package/dist/{index.es343.js.map → index.es332.js.map} +1 -1
  875. package/dist/index.es338.js +35 -8
  876. package/dist/index.es338.js.map +1 -1
  877. package/dist/index.es34.js +7 -7
  878. package/dist/{index.es351.js → index.es340.js} +5 -5
  879. package/dist/{index.es351.js.map → index.es340.js.map} +1 -1
  880. package/dist/{index.es355.js → index.es344.js} +2 -2
  881. package/dist/{index.es355.js.map → index.es344.js.map} +1 -1
  882. package/dist/index.es346.js +243 -0
  883. package/dist/index.es346.js.map +1 -0
  884. package/dist/{index.es358.js → index.es347.js} +3 -3
  885. package/dist/{index.es358.js.map → index.es347.js.map} +1 -1
  886. package/dist/{index.es359.js → index.es348.js} +4 -4
  887. package/dist/{index.es359.js.map → index.es348.js.map} +1 -1
  888. package/dist/index.es35.js +3 -3
  889. package/dist/index.es357.js +3 -240
  890. package/dist/index.es357.js.map +1 -1
  891. package/dist/index.es36.js +2 -2
  892. package/dist/index.es364.js +8 -0
  893. package/dist/index.es364.js.map +1 -0
  894. package/dist/index.es367.js +135 -7
  895. package/dist/index.es367.js.map +1 -1
  896. package/dist/index.es368.js +8 -2
  897. package/dist/index.es368.js.map +1 -1
  898. package/dist/index.es369.js +2 -33
  899. package/dist/index.es369.js.map +1 -1
  900. package/dist/index.es37.js +2 -2
  901. package/dist/index.es370.js +23 -235
  902. package/dist/index.es370.js.map +1 -1
  903. package/dist/index.es371.js +245 -2
  904. package/dist/index.es371.js.map +1 -1
  905. package/dist/index.es372.js +7 -2
  906. package/dist/index.es372.js.map +1 -1
  907. package/dist/index.es373.js +26 -5
  908. package/dist/index.es373.js.map +1 -1
  909. package/dist/index.es374.js +66 -3673
  910. package/dist/index.es374.js.map +1 -1
  911. package/dist/index.es375.js +30 -2
  912. package/dist/index.es375.js.map +1 -1
  913. package/dist/index.es376.js +32 -5
  914. package/dist/index.es376.js.map +1 -1
  915. package/dist/index.es377.js +599 -498
  916. package/dist/index.es377.js.map +1 -1
  917. package/dist/index.es378.js +10 -6
  918. package/dist/index.es378.js.map +1 -1
  919. package/dist/index.es38.js +6 -6
  920. package/dist/index.es380.js +4 -66
  921. package/dist/index.es380.js.map +1 -1
  922. package/dist/index.es381.js +24 -29
  923. package/dist/index.es381.js.map +1 -1
  924. package/dist/index.es382.js +67 -31
  925. package/dist/index.es382.js.map +1 -1
  926. package/dist/index.es383.js +13 -620
  927. package/dist/index.es383.js.map +1 -1
  928. package/dist/index.es386.js +13 -9
  929. package/dist/index.es386.js.map +1 -1
  930. package/dist/index.es389.js +124 -7
  931. package/dist/index.es389.js.map +1 -1
  932. package/dist/index.es39.js +5 -5
  933. package/dist/index.es390.js +126 -116
  934. package/dist/index.es390.js.map +1 -1
  935. package/dist/index.es391.js +13 -14
  936. package/dist/index.es391.js.map +1 -1
  937. package/dist/index.es392.js +14 -134
  938. package/dist/index.es392.js.map +1 -1
  939. package/dist/index.es393.js +8 -217
  940. package/dist/index.es393.js.map +1 -1
  941. package/dist/index.es394.js +50 -14
  942. package/dist/index.es394.js.map +1 -1
  943. package/dist/index.es395.js +47 -63
  944. package/dist/index.es395.js.map +1 -1
  945. package/dist/index.es4.js +7 -7
  946. package/dist/index.es40.js +4 -4
  947. package/dist/index.es405.js +2 -22
  948. package/dist/index.es405.js.map +1 -1
  949. package/dist/index.es406.js +2 -25
  950. package/dist/index.es406.js.map +1 -1
  951. package/dist/index.es41.js +4 -4
  952. package/dist/index.es411.js +11 -5
  953. package/dist/index.es411.js.map +1 -1
  954. package/dist/index.es412.js +46 -5
  955. package/dist/index.es412.js.map +1 -1
  956. package/dist/index.es413.js +8 -3
  957. package/dist/index.es413.js.map +1 -1
  958. package/dist/index.es414.js +217 -23
  959. package/dist/index.es414.js.map +1 -1
  960. package/dist/index.es415.js +174 -106
  961. package/dist/index.es415.js.map +1 -1
  962. package/dist/index.es416.js +3 -15
  963. package/dist/index.es416.js.map +1 -1
  964. package/dist/index.es417.js +10 -521
  965. package/dist/index.es417.js.map +1 -1
  966. package/dist/index.es418.js +197 -119
  967. package/dist/index.es418.js.map +1 -1
  968. package/dist/index.es419.js +20 -127
  969. package/dist/index.es419.js.map +1 -1
  970. package/dist/index.es42.js +3 -3
  971. package/dist/index.es420.js +390 -12
  972. package/dist/index.es420.js.map +1 -1
  973. package/dist/index.es421.js +9 -0
  974. package/dist/index.es421.js.map +1 -0
  975. package/dist/{index.es409.js → index.es422.js} +1 -1
  976. package/dist/{index.es409.js.map → index.es422.js.map} +1 -1
  977. package/dist/{index.es410.js → index.es423.js} +5 -5
  978. package/dist/{index.es410.js.map → index.es423.js.map} +1 -1
  979. package/dist/index.es424.js +8 -0
  980. package/dist/index.es424.js.map +1 -0
  981. package/dist/index.es425.js +8 -0
  982. package/dist/index.es425.js.map +1 -0
  983. package/dist/index.es426.js +6 -0
  984. package/dist/index.es426.js.map +1 -0
  985. package/dist/index.es427.js +27 -0
  986. package/dist/index.es427.js.map +1 -0
  987. package/dist/index.es428.js +113 -0
  988. package/dist/index.es428.js.map +1 -0
  989. package/dist/index.es429.js +15 -64
  990. package/dist/index.es429.js.map +1 -1
  991. package/dist/index.es43.js +3 -3
  992. package/dist/index.es430.js +518 -64
  993. package/dist/index.es430.js.map +1 -1
  994. package/dist/index.es431.js +126 -8
  995. package/dist/index.es431.js.map +1 -1
  996. package/dist/index.es432.js +128 -13
  997. package/dist/index.es432.js.map +1 -1
  998. package/dist/index.es433.js +64 -61
  999. package/dist/index.es433.js.map +1 -1
  1000. package/dist/index.es434.js +72 -0
  1001. package/dist/index.es434.js.map +1 -0
  1002. package/dist/index.es435.js +12 -0
  1003. package/dist/index.es435.js.map +1 -0
  1004. package/dist/index.es436.js +17 -0
  1005. package/dist/index.es436.js.map +1 -0
  1006. package/dist/index.es437.js +65 -0
  1007. package/dist/index.es437.js.map +1 -0
  1008. package/dist/index.es438.js +7 -0
  1009. package/dist/index.es438.js.map +1 -0
  1010. package/dist/index.es439.js +26 -0
  1011. package/dist/index.es439.js.map +1 -0
  1012. package/dist/index.es44.js +5 -5
  1013. package/dist/index.es440.js +26 -0
  1014. package/dist/index.es440.js.map +1 -0
  1015. package/dist/index.es441.js +13 -4
  1016. package/dist/index.es441.js.map +1 -1
  1017. package/dist/index.es442.js +27 -22
  1018. package/dist/index.es442.js.map +1 -1
  1019. package/dist/index.es443.js +4 -12
  1020. package/dist/index.es443.js.map +1 -1
  1021. package/dist/index.es446.js +2029 -20
  1022. package/dist/index.es446.js.map +1 -1
  1023. package/dist/index.es447.js +63 -0
  1024. package/dist/index.es447.js.map +1 -0
  1025. package/dist/index.es448.js +192 -0
  1026. package/dist/index.es448.js.map +1 -0
  1027. package/dist/index.es449.js +5 -2032
  1028. package/dist/index.es449.js.map +1 -1
  1029. package/dist/index.es45.js +5 -5
  1030. package/dist/index.es450.js +4 -60
  1031. package/dist/index.es450.js.map +1 -1
  1032. package/dist/index.es451.js +4 -188
  1033. package/dist/index.es451.js.map +1 -1
  1034. package/dist/index.es452.js +10 -5
  1035. package/dist/index.es452.js.map +1 -1
  1036. package/dist/index.es453.js +56 -4
  1037. package/dist/index.es453.js.map +1 -1
  1038. package/dist/index.es454.js +7 -4
  1039. package/dist/index.es454.js.map +1 -1
  1040. package/dist/index.es455.js +5 -9
  1041. package/dist/index.es455.js.map +1 -1
  1042. package/dist/index.es456.js +524 -47
  1043. package/dist/index.es456.js.map +1 -1
  1044. package/dist/index.es457.js +9 -7
  1045. package/dist/index.es457.js.map +1 -1
  1046. package/dist/index.es458.js +177 -5
  1047. package/dist/index.es458.js.map +1 -1
  1048. package/dist/index.es459.js +3 -532
  1049. package/dist/index.es459.js.map +1 -1
  1050. package/dist/index.es46.js +4 -4
  1051. package/dist/index.es461.js +38 -176
  1052. package/dist/index.es461.js.map +1 -1
  1053. package/dist/index.es462.js +2 -10
  1054. package/dist/index.es462.js.map +1 -1
  1055. package/dist/index.es463.js +2 -4
  1056. package/dist/index.es463.js.map +1 -1
  1057. package/dist/index.es464.js +2 -40
  1058. package/dist/index.es464.js.map +1 -1
  1059. package/dist/index.es465.js +3 -2
  1060. package/dist/index.es465.js.map +1 -1
  1061. package/dist/index.es466.js +2 -2
  1062. package/dist/index.es466.js.map +1 -1
  1063. package/dist/index.es467.js +6 -2
  1064. package/dist/index.es467.js.map +1 -1
  1065. package/dist/index.es468.js +5 -2
  1066. package/dist/index.es468.js.map +1 -1
  1067. package/dist/index.es469.js +4 -3
  1068. package/dist/index.es469.js.map +1 -1
  1069. package/dist/index.es47.js +3 -3
  1070. package/dist/index.es470.js +3675 -2
  1071. package/dist/index.es470.js.map +1 -1
  1072. package/dist/index.es471.js +2 -4
  1073. package/dist/index.es471.js.map +1 -1
  1074. package/dist/index.es472.js +5 -4
  1075. package/dist/index.es472.js.map +1 -1
  1076. package/dist/index.es473.js +520 -3
  1077. package/dist/index.es473.js.map +1 -1
  1078. package/dist/index.es474.js +2 -85
  1079. package/dist/index.es474.js.map +1 -1
  1080. package/dist/index.es475.js +86 -0
  1081. package/dist/index.es475.js.map +1 -0
  1082. package/dist/index.es48.js +2 -2
  1083. package/dist/index.es49.js +4 -4
  1084. package/dist/index.es5.js +4 -4
  1085. package/dist/index.es50.js +2 -2
  1086. package/dist/index.es51.js +2 -2
  1087. package/dist/index.es52.js +3 -3
  1088. package/dist/index.es53.js +4 -4
  1089. package/dist/index.es54.js +2 -2
  1090. package/dist/index.es55.js +3 -3
  1091. package/dist/index.es56.js +2 -2
  1092. package/dist/index.es57.js +3 -3
  1093. package/dist/index.es58.js +1 -1
  1094. package/dist/index.es59.js +2 -2
  1095. package/dist/index.es6.js +3 -3
  1096. package/dist/index.es60.js +4 -4
  1097. package/dist/index.es61.js +3 -3
  1098. package/dist/index.es62.js +4 -4
  1099. package/dist/index.es63.js +1 -1
  1100. package/dist/index.es64.js +3 -3
  1101. package/dist/index.es65.js +2 -2
  1102. package/dist/index.es66.js +6 -6
  1103. package/dist/index.es67.js +4 -4
  1104. package/dist/index.es68.js +3 -3
  1105. package/dist/index.es69.js +3 -3
  1106. package/dist/index.es7.js +3 -3
  1107. package/dist/index.es70.js +3 -3
  1108. package/dist/index.es71.js +2 -2
  1109. package/dist/index.es72.js +3 -3
  1110. package/dist/index.es73.js +4 -4
  1111. package/dist/index.es74.js +1 -1
  1112. package/dist/index.es75.js +1 -1
  1113. package/dist/index.es76.js +1 -1
  1114. package/dist/index.es77.js +1 -1
  1115. package/dist/index.es78.js +1 -1
  1116. package/dist/index.es79.js +1 -1
  1117. package/dist/index.es8.js +3 -3
  1118. package/dist/index.es80.js +1 -1
  1119. package/dist/index.es81.js +1 -1
  1120. package/dist/index.es82.js +1 -1
  1121. package/dist/index.es83.js +1 -1
  1122. package/dist/index.es84.js +1 -1
  1123. package/dist/index.es85.js +1 -1
  1124. package/dist/index.es86.js +1 -1
  1125. package/dist/index.es87.js +1 -1
  1126. package/dist/index.es88.js +3 -3
  1127. package/dist/index.es89.js +2 -2
  1128. package/dist/index.es9.js +5 -5
  1129. package/dist/index.es90.js +6 -6
  1130. package/dist/index.es91.js +2 -2
  1131. package/dist/index.es92.js +2 -2
  1132. package/dist/index.es93.js +1 -1
  1133. package/dist/index.es94.js +5 -5
  1134. package/dist/index.es95.js +1 -1
  1135. package/dist/index.es96.js +3 -3
  1136. package/dist/index.es97.js +3 -3
  1137. package/dist/index.es98.js +1 -1
  1138. package/dist/index.es99.js +1 -1
  1139. package/package.json +1 -1
  1140. package/dist/index.cjs218.js +0 -2
  1141. package/dist/index.cjs218.js.map +0 -1
  1142. package/dist/index.cjs231.js +0 -2
  1143. package/dist/index.cjs231.js.map +0 -1
  1144. package/dist/index.cjs234.js +0 -2
  1145. package/dist/index.cjs234.js.map +0 -1
  1146. package/dist/index.cjs249.js +0 -2
  1147. package/dist/index.cjs249.js.map +0 -1
  1148. package/dist/index.cjs272.js +0 -2
  1149. package/dist/index.cjs272.js.map +0 -1
  1150. package/dist/index.cjs276.js +0 -2
  1151. package/dist/index.cjs276.js.map +0 -1
  1152. package/dist/index.cjs282.js +0 -2
  1153. package/dist/index.cjs282.js.map +0 -1
  1154. package/dist/index.cjs283.js +0 -2
  1155. package/dist/index.cjs283.js.map +0 -1
  1156. package/dist/index.cjs287.js +0 -2
  1157. package/dist/index.cjs287.js.map +0 -1
  1158. package/dist/index.cjs301.js +0 -2
  1159. package/dist/index.cjs301.js.map +0 -1
  1160. package/dist/index.cjs349.js +0 -2
  1161. package/dist/index.cjs349.js.map +0 -1
  1162. package/dist/index.cjs366.js +0 -2
  1163. package/dist/index.cjs366.js.map +0 -1
  1164. package/dist/index.cjs379.js +0 -2
  1165. package/dist/index.cjs379.js.map +0 -1
  1166. package/dist/index.cjs384.js +0 -2
  1167. package/dist/index.cjs384.js.map +0 -1
  1168. package/dist/index.cjs387.js +0 -2
  1169. package/dist/index.cjs387.js.map +0 -1
  1170. package/dist/index.cjs388.js +0 -2
  1171. package/dist/index.cjs388.js.map +0 -1
  1172. package/dist/index.cjs396.js +0 -2
  1173. package/dist/index.cjs396.js.map +0 -1
  1174. package/dist/index.cjs397.js +0 -2
  1175. package/dist/index.cjs397.js.map +0 -1
  1176. package/dist/index.cjs398.js +0 -2
  1177. package/dist/index.cjs398.js.map +0 -1
  1178. package/dist/index.cjs399.js +0 -2
  1179. package/dist/index.cjs399.js.map +0 -1
  1180. package/dist/index.cjs400.js +0 -2
  1181. package/dist/index.cjs400.js.map +0 -1
  1182. package/dist/index.cjs403.js +0 -2
  1183. package/dist/index.cjs403.js.map +0 -1
  1184. package/dist/index.cjs404.js +0 -2
  1185. package/dist/index.cjs404.js.map +0 -1
  1186. package/dist/index.cjs407.js +0 -2
  1187. package/dist/index.cjs407.js.map +0 -1
  1188. package/dist/index.cjs408.js +0 -2
  1189. package/dist/index.cjs408.js.map +0 -1
  1190. package/dist/index.cjs444.js +0 -2
  1191. package/dist/index.cjs444.js.map +0 -1
  1192. package/dist/index.cjs445.js +0 -2
  1193. package/dist/index.cjs445.js.map +0 -1
  1194. package/dist/index.es218.js +0 -8
  1195. package/dist/index.es218.js.map +0 -1
  1196. package/dist/index.es231.js +0 -25
  1197. package/dist/index.es231.js.map +0 -1
  1198. package/dist/index.es234.js +0 -25
  1199. package/dist/index.es234.js.map +0 -1
  1200. package/dist/index.es249.js +0 -23
  1201. package/dist/index.es249.js.map +0 -1
  1202. package/dist/index.es272.js +0 -11
  1203. package/dist/index.es272.js.map +0 -1
  1204. package/dist/index.es276.js +0 -7
  1205. package/dist/index.es276.js.map +0 -1
  1206. package/dist/index.es282.js +0 -30
  1207. package/dist/index.es282.js.map +0 -1
  1208. package/dist/index.es283.js +0 -9
  1209. package/dist/index.es283.js.map +0 -1
  1210. package/dist/index.es287.js +0 -9
  1211. package/dist/index.es287.js.map +0 -1
  1212. package/dist/index.es301.js +0 -2
  1213. package/dist/index.es301.js.map +0 -1
  1214. package/dist/index.es349.js +0 -38
  1215. package/dist/index.es349.js.map +0 -1
  1216. package/dist/index.es366.js +0 -139
  1217. package/dist/index.es366.js.map +0 -1
  1218. package/dist/index.es379.js +0 -30
  1219. package/dist/index.es379.js.map +0 -1
  1220. package/dist/index.es384.js +0 -14
  1221. package/dist/index.es384.js.map +0 -1
  1222. package/dist/index.es387.js +0 -56
  1223. package/dist/index.es387.js.map +0 -1
  1224. package/dist/index.es388.js +0 -49
  1225. package/dist/index.es388.js.map +0 -1
  1226. package/dist/index.es396.js +0 -181
  1227. package/dist/index.es396.js.map +0 -1
  1228. package/dist/index.es397.js +0 -53
  1229. package/dist/index.es397.js.map +0 -1
  1230. package/dist/index.es398.js +0 -12
  1231. package/dist/index.es398.js.map +0 -1
  1232. package/dist/index.es399.js +0 -7
  1233. package/dist/index.es399.js.map +0 -1
  1234. package/dist/index.es400.js +0 -18
  1235. package/dist/index.es400.js.map +0 -1
  1236. package/dist/index.es403.js +0 -15
  1237. package/dist/index.es403.js.map +0 -1
  1238. package/dist/index.es404.js +0 -208
  1239. package/dist/index.es404.js.map +0 -1
  1240. package/dist/index.es407.js +0 -396
  1241. package/dist/index.es407.js.map +0 -1
  1242. package/dist/index.es408.js +0 -9
  1243. package/dist/index.es408.js.map +0 -1
  1244. package/dist/index.es444.js +0 -31
  1245. package/dist/index.es444.js.map +0 -1
  1246. package/dist/index.es445.js +0 -8
  1247. package/dist/index.es445.js.map +0 -1
@@ -1,477 +1,1804 @@
1
- import c, { friendlyDateTime as f } from "./index.es187.js";
2
- import h from "./index.es3.js";
3
- import S from "./index.es4.js";
4
- import { InvalidArgumentError as v, InvalidIntervalError as p } from "./index.es199.js";
5
- import V from "./index.es200.js";
6
- import O from "./index.es190.js";
7
- import { DATE_SHORT as D } from "./index.es198.js";
8
- const d = "Invalid Interval";
9
- function I(m, t) {
10
- return !m || !m.isValid ? a.invalid("missing or invalid start") : !t || !t.isValid ? a.invalid("missing or invalid end") : t < m ? a.invalid(
11
- "end before start",
12
- `The end of an interval must be after its start, but you had start=${m.toISO()} and end=${t.toISO()}`
13
- ) : null;
1
+ import E from "./index.es3.js";
2
+ import Se from "./index.es189.js";
3
+ import T from "./index.es4.js";
4
+ import F from "./index.es190.js";
5
+ import O from "./index.es191.js";
6
+ import B from "./index.es192.js";
7
+ import y from "./index.es193.js";
8
+ import { isUndefined as f, isNumber as U, isDate as Ne, normalizeObject as X, objToLocalTS as P, isLeapYear as Ie, daysInMonth as R, daysInYear as De, weeksInWeekYear as ee, maybeArray as Me, bestBy as te, padStart as m, roundTo as ve } from "./index.es194.js";
9
+ import { normalizeZone as S } from "./index.es195.js";
10
+ import be from "./index.es196.js";
11
+ import { parseISODate as _e, parseRFC2822Date as pe, parseHTTPDate as Ve, parseSQL as We } from "./index.es5.js";
12
+ import { parseFromTokens as Fe, formatOptsToTokens as Le, expandMacroTokens as ze, explainFromTokens as He, TokenParser as Ue } from "./index.es197.js";
13
+ import { usesLocalWeekValues as ne, gregorianToWeek as A, gregorianToOrdinal as Y, hasInvalidWeekData as Ce, hasInvalidOrdinalData as Ae, hasInvalidGregorianData as de, hasInvalidTimeData as he, weekToGregorian as ie, ordinalToGregorian as re } from "./index.es198.js";
14
+ import { DATE_SHORT as se, DATE_MED as xe, DATE_MED_WITH_WEEKDAY as Ye, DATE_FULL as Ze, DATE_HUGE as je, TIME_SIMPLE as qe, TIME_WITH_SECONDS as Ge, TIME_WITH_SHORT_OFFSET as Re, TIME_WITH_LONG_OFFSET as $e, TIME_24_SIMPLE as Pe, TIME_24_WITH_SECONDS as Qe, TIME_24_WITH_SHORT_OFFSET as Je, TIME_24_WITH_LONG_OFFSET as Ke, DATETIME_SHORT as Be, DATETIME_SHORT_WITH_SECONDS as Xe, DATETIME_MED as et, DATETIME_MED_WITH_SECONDS as tt, DATETIME_MED_WITH_WEEKDAY as nt, DATETIME_FULL as it, DATETIME_FULL_WITH_SECONDS as rt, DATETIME_HUGE as st, DATETIME_HUGE_WITH_SECONDS as at } from "./index.es199.js";
15
+ import { InvalidArgumentError as w, ConflictingSpecificationError as L, InvalidDateTimeError as ot, InvalidUnitError as lt } from "./index.es200.js";
16
+ import N from "./index.es201.js";
17
+ const Z = "Invalid DateTime", ut = 864e13;
18
+ function b(n) {
19
+ return new N("unsupported zone", `the zone "${n.name}" is not supported`);
14
20
  }
15
- class a {
21
+ function j(n) {
22
+ return n.weekData === null && (n.weekData = A(n.c)), n.weekData;
23
+ }
24
+ function q(n) {
25
+ return n.localWeekData === null && (n.localWeekData = A(
26
+ n.c,
27
+ n.loc.getMinDaysInFirstWeek(),
28
+ n.loc.getStartOfWeek()
29
+ )), n.localWeekData;
30
+ }
31
+ function k(n, e) {
32
+ const t = {
33
+ ts: n.ts,
34
+ zone: n.zone,
35
+ c: n.c,
36
+ o: n.o,
37
+ loc: n.loc,
38
+ invalid: n.invalid
39
+ };
40
+ return new l({ ...t, ...e, old: t });
41
+ }
42
+ function me(n, e, t) {
43
+ let i = n - e * 60 * 1e3;
44
+ const r = t.offset(i);
45
+ if (e === r)
46
+ return [i, e];
47
+ i -= (r - e) * 60 * 1e3;
48
+ const a = t.offset(i);
49
+ return r === a ? [i, r] : [n - Math.min(r, a) * 60 * 1e3, Math.max(r, a)];
50
+ }
51
+ function z(n, e) {
52
+ n += e * 60 * 1e3;
53
+ const t = new Date(n);
54
+ return {
55
+ year: t.getUTCFullYear(),
56
+ month: t.getUTCMonth() + 1,
57
+ day: t.getUTCDate(),
58
+ hour: t.getUTCHours(),
59
+ minute: t.getUTCMinutes(),
60
+ second: t.getUTCSeconds(),
61
+ millisecond: t.getUTCMilliseconds()
62
+ };
63
+ }
64
+ function C(n, e, t) {
65
+ return me(P(n), e, t);
66
+ }
67
+ function ae(n, e) {
68
+ const t = n.o, i = n.c.year + Math.trunc(e.years), r = n.c.month + Math.trunc(e.months) + Math.trunc(e.quarters) * 3, a = {
69
+ ...n.c,
70
+ year: i,
71
+ month: r,
72
+ day: Math.min(n.c.day, R(i, r)) + Math.trunc(e.days) + Math.trunc(e.weeks) * 7
73
+ }, s = E.fromObject({
74
+ years: e.years - Math.trunc(e.years),
75
+ quarters: e.quarters - Math.trunc(e.quarters),
76
+ months: e.months - Math.trunc(e.months),
77
+ weeks: e.weeks - Math.trunc(e.weeks),
78
+ days: e.days - Math.trunc(e.days),
79
+ hours: e.hours,
80
+ minutes: e.minutes,
81
+ seconds: e.seconds,
82
+ milliseconds: e.milliseconds
83
+ }).as("milliseconds"), o = P(a);
84
+ let [u, c] = me(o, t, n.zone);
85
+ return s !== 0 && (u += s, c = n.zone.offset(u)), { ts: u, o: c };
86
+ }
87
+ function g(n, e, t, i, r, a) {
88
+ const { setZone: s, zone: o } = t;
89
+ if (n && Object.keys(n).length !== 0 || e) {
90
+ const u = e || o, c = l.fromObject(n, {
91
+ ...t,
92
+ zone: u,
93
+ specificOffset: a
94
+ });
95
+ return s ? c : c.setZone(o);
96
+ } else
97
+ return l.invalid(
98
+ new N("unparsable", `the input "${r}" can't be parsed as ${i}`)
99
+ );
100
+ }
101
+ function H(n, e, t = !0) {
102
+ return n.isValid ? O.create(y.create("en-US"), {
103
+ allowZ: t,
104
+ forceSimple: !0
105
+ }).formatDateTimeFromString(n, e) : null;
106
+ }
107
+ function G(n, e) {
108
+ const t = n.c.year > 9999 || n.c.year < 0;
109
+ let i = "";
110
+ return t && n.c.year >= 0 && (i += "+"), i += m(n.c.year, t ? 6 : 4), e ? (i += "-", i += m(n.c.month), i += "-", i += m(n.c.day)) : (i += m(n.c.month), i += m(n.c.day)), i;
111
+ }
112
+ function oe(n, e, t, i, r, a) {
113
+ let s = m(n.c.hour);
114
+ return e ? (s += ":", s += m(n.c.minute), (n.c.millisecond !== 0 || n.c.second !== 0 || !t) && (s += ":")) : s += m(n.c.minute), (n.c.millisecond !== 0 || n.c.second !== 0 || !t) && (s += m(n.c.second), (n.c.millisecond !== 0 || !i) && (s += ".", s += m(n.c.millisecond, 3))), r && (n.isOffsetFixed && n.offset === 0 && !a ? s += "Z" : n.o < 0 ? (s += "-", s += m(Math.trunc(-n.o / 60)), s += ":", s += m(Math.trunc(-n.o % 60))) : (s += "+", s += m(Math.trunc(n.o / 60)), s += ":", s += m(Math.trunc(n.o % 60)))), a && (s += "[" + n.zone.ianaName + "]"), s;
115
+ }
116
+ const ye = {
117
+ month: 1,
118
+ day: 1,
119
+ hour: 0,
120
+ minute: 0,
121
+ second: 0,
122
+ millisecond: 0
123
+ }, ct = {
124
+ weekNumber: 1,
125
+ weekday: 1,
126
+ hour: 0,
127
+ minute: 0,
128
+ second: 0,
129
+ millisecond: 0
130
+ }, ft = {
131
+ ordinal: 1,
132
+ hour: 0,
133
+ minute: 0,
134
+ second: 0,
135
+ millisecond: 0
136
+ }, Te = ["year", "month", "day", "hour", "minute", "second", "millisecond"], dt = [
137
+ "weekYear",
138
+ "weekNumber",
139
+ "weekday",
140
+ "hour",
141
+ "minute",
142
+ "second",
143
+ "millisecond"
144
+ ], ht = ["year", "ordinal", "hour", "minute", "second", "millisecond"];
145
+ function mt(n) {
146
+ const e = {
147
+ year: "year",
148
+ years: "year",
149
+ month: "month",
150
+ months: "month",
151
+ day: "day",
152
+ days: "day",
153
+ hour: "hour",
154
+ hours: "hour",
155
+ minute: "minute",
156
+ minutes: "minute",
157
+ quarter: "quarter",
158
+ quarters: "quarter",
159
+ second: "second",
160
+ seconds: "second",
161
+ millisecond: "millisecond",
162
+ milliseconds: "millisecond",
163
+ weekday: "weekday",
164
+ weekdays: "weekday",
165
+ weeknumber: "weekNumber",
166
+ weeksnumber: "weekNumber",
167
+ weeknumbers: "weekNumber",
168
+ weekyear: "weekYear",
169
+ weekyears: "weekYear",
170
+ ordinal: "ordinal"
171
+ }[n.toLowerCase()];
172
+ if (!e) throw new lt(n);
173
+ return e;
174
+ }
175
+ function le(n) {
176
+ switch (n.toLowerCase()) {
177
+ case "localweekday":
178
+ case "localweekdays":
179
+ return "localWeekday";
180
+ case "localweeknumber":
181
+ case "localweeknumbers":
182
+ return "localWeekNumber";
183
+ case "localweekyear":
184
+ case "localweekyears":
185
+ return "localWeekYear";
186
+ default:
187
+ return mt(n);
188
+ }
189
+ }
190
+ function yt(n) {
191
+ if (_ === void 0 && (_ = T.now()), n.type !== "iana")
192
+ return n.offset(_);
193
+ const e = n.name;
194
+ let t = $.get(e);
195
+ return t === void 0 && (t = n.offset(_), $.set(e, t)), t;
196
+ }
197
+ function ue(n, e) {
198
+ const t = S(e.zone, T.defaultZone);
199
+ if (!t.isValid)
200
+ return l.invalid(b(t));
201
+ const i = y.fromObject(e);
202
+ let r, a;
203
+ if (f(n.year))
204
+ r = T.now();
205
+ else {
206
+ for (const u of Te)
207
+ f(n[u]) && (n[u] = ye[u]);
208
+ const s = de(n) || he(n);
209
+ if (s)
210
+ return l.invalid(s);
211
+ const o = yt(t);
212
+ [r, a] = C(n, o, t);
213
+ }
214
+ return new l({ ts: r, zone: t, loc: i, o: a });
215
+ }
216
+ function ce(n, e, t) {
217
+ const i = f(t.round) ? !0 : t.round, r = (s, o) => (s = ve(s, i || t.calendary ? 0 : 2, !0), e.loc.clone(t).relFormatter(t).format(s, o)), a = (s) => t.calendary ? e.hasSame(n, s) ? 0 : e.startOf(s).diff(n.startOf(s), s).get(s) : e.diff(n, s).get(s);
218
+ if (t.unit)
219
+ return r(a(t.unit), t.unit);
220
+ for (const s of t.units) {
221
+ const o = a(s);
222
+ if (Math.abs(o) >= 1)
223
+ return r(o, s);
224
+ }
225
+ return r(n > e ? -0 : 0, t.units[t.units.length - 1]);
226
+ }
227
+ function fe(n) {
228
+ let e = {}, t;
229
+ return n.length > 0 && typeof n[n.length - 1] == "object" ? (e = n[n.length - 1], t = Array.from(n).slice(0, n.length - 1)) : t = Array.from(n), [e, t];
230
+ }
231
+ let _;
232
+ const $ = /* @__PURE__ */ new Map();
233
+ class l {
16
234
  /**
17
- * @private
235
+ * @access private
18
236
  */
19
- constructor(t) {
20
- this.s = t.start, this.e = t.end, this.invalid = t.invalid || null, this.isLuxonInterval = !0;
237
+ constructor(e) {
238
+ const t = e.zone || T.defaultZone;
239
+ let i = e.invalid || (Number.isNaN(e.ts) ? new N("invalid input") : null) || (t.isValid ? null : b(t));
240
+ this.ts = f(e.ts) ? T.now() : e.ts;
241
+ let r = null, a = null;
242
+ if (!i)
243
+ if (e.old && e.old.ts === this.ts && e.old.zone.equals(t))
244
+ [r, a] = [e.old.c, e.old.o];
245
+ else {
246
+ const o = U(e.o) && !e.old ? e.o : t.offset(this.ts);
247
+ r = z(this.ts, o), i = Number.isNaN(r.year) ? new N("invalid input") : null, r = i ? null : r, a = i ? null : o;
248
+ }
249
+ this._zone = t, this.loc = e.loc || y.create(), this.invalid = i, this.weekData = null, this.localWeekData = null, this.c = r, this.o = a, this.isLuxonDateTime = !0;
21
250
  }
251
+ // CONSTRUCT
22
252
  /**
23
- * Create an invalid Interval.
24
- * @param {string} reason - simple string of why this Interval is invalid. Should not contain parameters or anything else data-dependent
25
- * @param {string} [explanation=null] - longer explanation, may include parameters and other useful debugging information
26
- * @return {Interval}
27
- */
28
- static invalid(t, i = null) {
29
- if (!t)
30
- throw new v("need to specify a reason the Interval is invalid");
31
- const e = t instanceof V ? t : new V(t, i);
32
- if (S.throwOnInvalid)
33
- throw new p(e);
34
- return new a({ invalid: e });
35
- }
36
- /**
37
- * Create an Interval from a start DateTime and an end DateTime. Inclusive of the start but not the end.
38
- * @param {DateTime|Date|Object} start
39
- * @param {DateTime|Date|Object} end
40
- * @return {Interval}
41
- */
42
- static fromDateTimes(t, i) {
43
- const e = f(t), s = f(i), r = I(e, s);
44
- return r ?? new a({
45
- start: e,
46
- end: s
47
- });
253
+ * Create a DateTime for the current instant, in the system's time zone.
254
+ *
255
+ * Use Settings to override these default values if needed.
256
+ * @example DateTime.now().toISO() //~> now in the ISO format
257
+ * @return {DateTime}
258
+ */
259
+ static now() {
260
+ return new l({});
48
261
  }
49
262
  /**
50
- * Create an Interval from a start DateTime and a Duration to extend to.
51
- * @param {DateTime|Date|Object} start
52
- * @param {Duration|Object|number} duration - the length of the Interval.
53
- * @return {Interval}
263
+ * Create a local DateTime
264
+ * @param {number} [year] - The calendar year. If omitted (as in, call `local()` with no arguments), the current time will be used
265
+ * @param {number} [month=1] - The month, 1-indexed
266
+ * @param {number} [day=1] - The day of the month, 1-indexed
267
+ * @param {number} [hour=0] - The hour of the day, in 24-hour time
268
+ * @param {number} [minute=0] - The minute of the hour, meaning a number between 0 and 59
269
+ * @param {number} [second=0] - The second of the minute, meaning a number between 0 and 59
270
+ * @param {number} [millisecond=0] - The millisecond of the second, meaning a number between 0 and 999
271
+ * @example DateTime.local() //~> now
272
+ * @example DateTime.local({ zone: "America/New_York" }) //~> now, in US east coast time
273
+ * @example DateTime.local(2017) //~> 2017-01-01T00:00:00
274
+ * @example DateTime.local(2017, 3) //~> 2017-03-01T00:00:00
275
+ * @example DateTime.local(2017, 3, 12, { locale: "fr" }) //~> 2017-03-12T00:00:00, with a French locale
276
+ * @example DateTime.local(2017, 3, 12, 5) //~> 2017-03-12T05:00:00
277
+ * @example DateTime.local(2017, 3, 12, 5, { zone: "utc" }) //~> 2017-03-12T05:00:00, in UTC
278
+ * @example DateTime.local(2017, 3, 12, 5, 45) //~> 2017-03-12T05:45:00
279
+ * @example DateTime.local(2017, 3, 12, 5, 45, 10) //~> 2017-03-12T05:45:10
280
+ * @example DateTime.local(2017, 3, 12, 5, 45, 10, 765) //~> 2017-03-12T05:45:10.765
281
+ * @return {DateTime}
54
282
  */
55
- static after(t, i) {
56
- const e = h.fromDurationLike(i), s = f(t);
57
- return a.fromDateTimes(s, s.plus(e));
283
+ static local() {
284
+ const [e, t] = fe(arguments), [i, r, a, s, o, u, c] = t;
285
+ return ue({ year: i, month: r, day: a, hour: s, minute: o, second: u, millisecond: c }, e);
58
286
  }
59
287
  /**
60
- * Create an Interval from an end DateTime and a Duration to extend backwards to.
61
- * @param {DateTime|Date|Object} end
62
- * @param {Duration|Object|number} duration - the length of the Interval.
63
- * @return {Interval}
288
+ * Create a DateTime in UTC
289
+ * @param {number} [year] - The calendar year. If omitted (as in, call `utc()` with no arguments), the current time will be used
290
+ * @param {number} [month=1] - The month, 1-indexed
291
+ * @param {number} [day=1] - The day of the month
292
+ * @param {number} [hour=0] - The hour of the day, in 24-hour time
293
+ * @param {number} [minute=0] - The minute of the hour, meaning a number between 0 and 59
294
+ * @param {number} [second=0] - The second of the minute, meaning a number between 0 and 59
295
+ * @param {number} [millisecond=0] - The millisecond of the second, meaning a number between 0 and 999
296
+ * @param {Object} options - configuration options for the DateTime
297
+ * @param {string} [options.locale] - a locale to set on the resulting DateTime instance
298
+ * @param {string} [options.outputCalendar] - the output calendar to set on the resulting DateTime instance
299
+ * @param {string} [options.numberingSystem] - the numbering system to set on the resulting DateTime instance
300
+ * @param {string} [options.weekSettings] - the week settings to set on the resulting DateTime instance
301
+ * @example DateTime.utc() //~> now
302
+ * @example DateTime.utc(2017) //~> 2017-01-01T00:00:00Z
303
+ * @example DateTime.utc(2017, 3) //~> 2017-03-01T00:00:00Z
304
+ * @example DateTime.utc(2017, 3, 12) //~> 2017-03-12T00:00:00Z
305
+ * @example DateTime.utc(2017, 3, 12, 5) //~> 2017-03-12T05:00:00Z
306
+ * @example DateTime.utc(2017, 3, 12, 5, 45) //~> 2017-03-12T05:45:00Z
307
+ * @example DateTime.utc(2017, 3, 12, 5, 45, { locale: "fr" }) //~> 2017-03-12T05:45:00Z with a French locale
308
+ * @example DateTime.utc(2017, 3, 12, 5, 45, 10) //~> 2017-03-12T05:45:10Z
309
+ * @example DateTime.utc(2017, 3, 12, 5, 45, 10, 765, { locale: "fr" }) //~> 2017-03-12T05:45:10.765Z with a French locale
310
+ * @return {DateTime}
64
311
  */
65
- static before(t, i) {
66
- const e = h.fromDurationLike(i), s = f(t);
67
- return a.fromDateTimes(s.minus(e), s);
312
+ static utc() {
313
+ const [e, t] = fe(arguments), [i, r, a, s, o, u, c] = t;
314
+ return e.zone = B.utcInstance, ue({ year: i, month: r, day: a, hour: s, minute: o, second: u, millisecond: c }, e);
68
315
  }
69
316
  /**
70
- * Create an Interval from an ISO 8601 string.
71
- * Accepts `<start>/<end>`, `<start>/<duration>`, and `<duration>/<end>` formats.
72
- * @param {string} text - the ISO string to parse
73
- * @param {Object} [opts] - options to pass {@link DateTime#fromISO} and optionally {@link Duration#fromISO}
74
- * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals
75
- * @return {Interval}
317
+ * Create a DateTime from a JavaScript Date object. Uses the default zone.
318
+ * @param {Date} date - a JavaScript Date object
319
+ * @param {Object} options - configuration options for the DateTime
320
+ * @param {string|Zone} [options.zone='local'] - the zone to place the DateTime into
321
+ * @return {DateTime}
76
322
  */
77
- static fromISO(t, i) {
78
- const [e, s] = (t || "").split("/", 2);
79
- if (e && s) {
80
- let r, n;
81
- try {
82
- r = c.fromISO(e, i), n = r.isValid;
83
- } catch {
84
- n = !1;
85
- }
86
- let u, l;
87
- try {
88
- u = c.fromISO(s, i), l = u.isValid;
89
- } catch {
90
- l = !1;
91
- }
92
- if (n && l)
93
- return a.fromDateTimes(r, u);
94
- if (n) {
95
- const o = h.fromISO(s, i);
96
- if (o.isValid)
97
- return a.after(r, o);
98
- } else if (l) {
99
- const o = h.fromISO(e, i);
100
- if (o.isValid)
101
- return a.before(u, o);
102
- }
323
+ static fromJSDate(e, t = {}) {
324
+ const i = Ne(e) ? e.valueOf() : NaN;
325
+ if (Number.isNaN(i))
326
+ return l.invalid("invalid input");
327
+ const r = S(t.zone, T.defaultZone);
328
+ return r.isValid ? new l({
329
+ ts: i,
330
+ zone: r,
331
+ loc: y.fromObject(t)
332
+ }) : l.invalid(b(r));
333
+ }
334
+ /**
335
+ * Create a DateTime from a number of milliseconds since the epoch (meaning since 1 January 1970 00:00:00 UTC). Uses the default zone.
336
+ * @param {number} milliseconds - a number of milliseconds since 1970 UTC
337
+ * @param {Object} options - configuration options for the DateTime
338
+ * @param {string|Zone} [options.zone='local'] - the zone to place the DateTime into
339
+ * @param {string} [options.locale] - a locale to set on the resulting DateTime instance
340
+ * @param {string} options.outputCalendar - the output calendar to set on the resulting DateTime instance
341
+ * @param {string} options.numberingSystem - the numbering system to set on the resulting DateTime instance
342
+ * @param {string} options.weekSettings - the week settings to set on the resulting DateTime instance
343
+ * @return {DateTime}
344
+ */
345
+ static fromMillis(e, t = {}) {
346
+ if (U(e))
347
+ return e < -864e13 || e > ut ? l.invalid("Timestamp out of range") : new l({
348
+ ts: e,
349
+ zone: S(t.zone, T.defaultZone),
350
+ loc: y.fromObject(t)
351
+ });
352
+ throw new w(
353
+ `fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`
354
+ );
355
+ }
356
+ /**
357
+ * Create a DateTime from a number of seconds since the epoch (meaning since 1 January 1970 00:00:00 UTC). Uses the default zone.
358
+ * @param {number} seconds - a number of seconds since 1970 UTC
359
+ * @param {Object} options - configuration options for the DateTime
360
+ * @param {string|Zone} [options.zone='local'] - the zone to place the DateTime into
361
+ * @param {string} [options.locale] - a locale to set on the resulting DateTime instance
362
+ * @param {string} options.outputCalendar - the output calendar to set on the resulting DateTime instance
363
+ * @param {string} options.numberingSystem - the numbering system to set on the resulting DateTime instance
364
+ * @param {string} options.weekSettings - the week settings to set on the resulting DateTime instance
365
+ * @return {DateTime}
366
+ */
367
+ static fromSeconds(e, t = {}) {
368
+ if (U(e))
369
+ return new l({
370
+ ts: e * 1e3,
371
+ zone: S(t.zone, T.defaultZone),
372
+ loc: y.fromObject(t)
373
+ });
374
+ throw new w("fromSeconds requires a numerical input");
375
+ }
376
+ /**
377
+ * Create a DateTime from a JavaScript object with keys like 'year' and 'hour' with reasonable defaults.
378
+ * @param {Object} obj - the object to create the DateTime from
379
+ * @param {number} obj.year - a year, such as 1987
380
+ * @param {number} obj.month - a month, 1-12
381
+ * @param {number} obj.day - a day of the month, 1-31, depending on the month
382
+ * @param {number} obj.ordinal - day of the year, 1-365 or 366
383
+ * @param {number} obj.weekYear - an ISO week year
384
+ * @param {number} obj.weekNumber - an ISO week number, between 1 and 52 or 53, depending on the year
385
+ * @param {number} obj.weekday - an ISO weekday, 1-7, where 1 is Monday and 7 is Sunday
386
+ * @param {number} obj.localWeekYear - a week year, according to the locale
387
+ * @param {number} obj.localWeekNumber - a week number, between 1 and 52 or 53, depending on the year, according to the locale
388
+ * @param {number} obj.localWeekday - a weekday, 1-7, where 1 is the first and 7 is the last day of the week, according to the locale
389
+ * @param {number} obj.hour - hour of the day, 0-23
390
+ * @param {number} obj.minute - minute of the hour, 0-59
391
+ * @param {number} obj.second - second of the minute, 0-59
392
+ * @param {number} obj.millisecond - millisecond of the second, 0-999
393
+ * @param {Object} opts - options for creating this DateTime
394
+ * @param {string|Zone} [opts.zone='local'] - interpret the numbers in the context of a particular zone. Can take any value taken as the first argument to setZone()
395
+ * @param {string} [opts.locale='system\'s locale'] - a locale to set on the resulting DateTime instance
396
+ * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
397
+ * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance
398
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
399
+ * @example DateTime.fromObject({ year: 1982, month: 5, day: 25}).toISODate() //=> '1982-05-25'
400
+ * @example DateTime.fromObject({ year: 1982 }).toISODate() //=> '1982-01-01'
401
+ * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }) //~> today at 10:26:06
402
+ * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }, { zone: 'utc' }),
403
+ * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }, { zone: 'local' })
404
+ * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }, { zone: 'America/New_York' })
405
+ * @example DateTime.fromObject({ weekYear: 2016, weekNumber: 2, weekday: 3 }).toISODate() //=> '2016-01-13'
406
+ * @example DateTime.fromObject({ localWeekYear: 2022, localWeekNumber: 1, localWeekday: 1 }, { locale: "en-US" }).toISODate() //=> '2021-12-26'
407
+ * @return {DateTime}
408
+ */
409
+ static fromObject(e, t = {}) {
410
+ e = e || {};
411
+ const i = S(t.zone, T.defaultZone);
412
+ if (!i.isValid)
413
+ return l.invalid(b(i));
414
+ const r = y.fromObject(t), a = X(e, le), { minDaysInFirstWeek: s, startOfWeek: o } = ne(a, r), u = T.now(), c = f(t.specificOffset) ? i.offset(u) : t.specificOffset, d = !f(a.ordinal), h = !f(a.year), p = !f(a.month) || !f(a.day), I = h || p, Q = a.weekYear || a.weekNumber;
415
+ if ((I || d) && Q)
416
+ throw new L(
417
+ "Can't mix weekYear/weekNumber units with year/month/day or ordinals"
418
+ );
419
+ if (p && d)
420
+ throw new L("Can't mix ordinal dates with month/day");
421
+ const x = Q || a.weekday && !I;
422
+ let V, W, D = z(u, c);
423
+ x ? (V = dt, W = ct, D = A(D, s, o)) : d ? (V = ht, W = ft, D = Y(D)) : (V = Te, W = ye);
424
+ let J = !1;
425
+ for (const v of V) {
426
+ const Oe = a[v];
427
+ f(Oe) ? J ? a[v] = W[v] : a[v] = D[v] : J = !0;
103
428
  }
104
- return a.invalid("unparsable", `the input "${t}" can't be parsed as ISO 8601`);
429
+ const we = x ? Ce(a, s, o) : d ? Ae(a) : de(a), K = we || he(a);
430
+ if (K)
431
+ return l.invalid(K);
432
+ const ke = x ? ie(a, s, o) : d ? re(a) : a, [ge, Ee] = C(ke, c, i), M = new l({
433
+ ts: ge,
434
+ zone: i,
435
+ o: Ee,
436
+ loc: r
437
+ });
438
+ return a.weekday && I && e.weekday !== M.weekday ? l.invalid(
439
+ "mismatched weekday",
440
+ `you can't specify both a weekday of ${a.weekday} and a date of ${M.toISO()}`
441
+ ) : M.isValid ? M : l.invalid(M.invalid);
442
+ }
443
+ /**
444
+ * Create a DateTime from an ISO 8601 string
445
+ * @param {string} text - the ISO string
446
+ * @param {Object} opts - options to affect the creation
447
+ * @param {string|Zone} [opts.zone='local'] - use this zone if no offset is specified in the input string itself. Will also convert the time to this zone
448
+ * @param {boolean} [opts.setZone=false] - override the zone with a fixed-offset zone specified in the string itself, if it specifies one
449
+ * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance
450
+ * @param {string} [opts.outputCalendar] - the output calendar to set on the resulting DateTime instance
451
+ * @param {string} [opts.numberingSystem] - the numbering system to set on the resulting DateTime instance
452
+ * @param {string} [opts.weekSettings] - the week settings to set on the resulting DateTime instance
453
+ * @example DateTime.fromISO('2016-05-25T09:08:34.123')
454
+ * @example DateTime.fromISO('2016-05-25T09:08:34.123+06:00')
455
+ * @example DateTime.fromISO('2016-05-25T09:08:34.123+06:00', {setZone: true})
456
+ * @example DateTime.fromISO('2016-05-25T09:08:34.123', {zone: 'utc'})
457
+ * @example DateTime.fromISO('2016-W05-4')
458
+ * @return {DateTime}
459
+ */
460
+ static fromISO(e, t = {}) {
461
+ const [i, r] = _e(e);
462
+ return g(i, r, t, "ISO 8601", e);
463
+ }
464
+ /**
465
+ * Create a DateTime from an RFC 2822 string
466
+ * @param {string} text - the RFC 2822 string
467
+ * @param {Object} opts - options to affect the creation
468
+ * @param {string|Zone} [opts.zone='local'] - convert the time to this zone. Since the offset is always specified in the string itself, this has no effect on the interpretation of string, merely the zone the resulting DateTime is expressed in.
469
+ * @param {boolean} [opts.setZone=false] - override the zone with a fixed-offset zone specified in the string itself, if it specifies one
470
+ * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance
471
+ * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
472
+ * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance
473
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
474
+ * @example DateTime.fromRFC2822('25 Nov 2016 13:23:12 GMT')
475
+ * @example DateTime.fromRFC2822('Fri, 25 Nov 2016 13:23:12 +0600')
476
+ * @example DateTime.fromRFC2822('25 Nov 2016 13:23 Z')
477
+ * @return {DateTime}
478
+ */
479
+ static fromRFC2822(e, t = {}) {
480
+ const [i, r] = pe(e);
481
+ return g(i, r, t, "RFC 2822", e);
105
482
  }
106
483
  /**
107
- * Check if an object is an Interval. Works across context boundaries
484
+ * Create a DateTime from an HTTP header date
485
+ * @see https://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.3.1
486
+ * @param {string} text - the HTTP header date
487
+ * @param {Object} opts - options to affect the creation
488
+ * @param {string|Zone} [opts.zone='local'] - convert the time to this zone. Since HTTP dates are always in UTC, this has no effect on the interpretation of string, merely the zone the resulting DateTime is expressed in.
489
+ * @param {boolean} [opts.setZone=false] - override the zone with the fixed-offset zone specified in the string. For HTTP dates, this is always UTC, so this option is equivalent to setting the `zone` option to 'utc', but this option is included for consistency with similar methods.
490
+ * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance
491
+ * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
492
+ * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance
493
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
494
+ * @example DateTime.fromHTTP('Sun, 06 Nov 1994 08:49:37 GMT')
495
+ * @example DateTime.fromHTTP('Sunday, 06-Nov-94 08:49:37 GMT')
496
+ * @example DateTime.fromHTTP('Sun Nov 6 08:49:37 1994')
497
+ * @return {DateTime}
498
+ */
499
+ static fromHTTP(e, t = {}) {
500
+ const [i, r] = Ve(e);
501
+ return g(i, r, t, "HTTP", t);
502
+ }
503
+ /**
504
+ * Create a DateTime from an input string and format string.
505
+ * Defaults to en-US if no locale has been specified, regardless of the system's locale. For a table of tokens and their interpretations, see [here](https://moment.github.io/luxon/#/parsing?id=table-of-tokens).
506
+ * @param {string} text - the string to parse
507
+ * @param {string} fmt - the format the string is expected to be in (see the link below for the formats)
508
+ * @param {Object} opts - options to affect the creation
509
+ * @param {string|Zone} [opts.zone='local'] - use this zone if no offset is specified in the input string itself. Will also convert the DateTime to this zone
510
+ * @param {boolean} [opts.setZone=false] - override the zone with a zone specified in the string itself, if it specifies one
511
+ * @param {string} [opts.locale='en-US'] - a locale string to use when parsing. Will also set the DateTime to this locale
512
+ * @param {string} opts.numberingSystem - the numbering system to use when parsing. Will also set the resulting DateTime to this numbering system
513
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
514
+ * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
515
+ * @return {DateTime}
516
+ */
517
+ static fromFormat(e, t, i = {}) {
518
+ if (f(e) || f(t))
519
+ throw new w("fromFormat requires an input string and a format");
520
+ const { locale: r = null, numberingSystem: a = null } = i, s = y.fromOpts({
521
+ locale: r,
522
+ numberingSystem: a,
523
+ defaultToEN: !0
524
+ }), [o, u, c, d] = Fe(s, e, t);
525
+ return d ? l.invalid(d) : g(o, u, i, `format ${t}`, e, c);
526
+ }
527
+ /**
528
+ * @deprecated use fromFormat instead
529
+ */
530
+ static fromString(e, t, i = {}) {
531
+ return l.fromFormat(e, t, i);
532
+ }
533
+ /**
534
+ * Create a DateTime from a SQL date, time, or datetime
535
+ * Defaults to en-US if no locale has been specified, regardless of the system's locale
536
+ * @param {string} text - the string to parse
537
+ * @param {Object} opts - options to affect the creation
538
+ * @param {string|Zone} [opts.zone='local'] - use this zone if no offset is specified in the input string itself. Will also convert the DateTime to this zone
539
+ * @param {boolean} [opts.setZone=false] - override the zone with a zone specified in the string itself, if it specifies one
540
+ * @param {string} [opts.locale='en-US'] - a locale string to use when parsing. Will also set the DateTime to this locale
541
+ * @param {string} opts.numberingSystem - the numbering system to use when parsing. Will also set the resulting DateTime to this numbering system
542
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
543
+ * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
544
+ * @example DateTime.fromSQL('2017-05-15')
545
+ * @example DateTime.fromSQL('2017-05-15 09:12:34')
546
+ * @example DateTime.fromSQL('2017-05-15 09:12:34.342')
547
+ * @example DateTime.fromSQL('2017-05-15 09:12:34.342+06:00')
548
+ * @example DateTime.fromSQL('2017-05-15 09:12:34.342 America/Los_Angeles')
549
+ * @example DateTime.fromSQL('2017-05-15 09:12:34.342 America/Los_Angeles', { setZone: true })
550
+ * @example DateTime.fromSQL('2017-05-15 09:12:34.342', { zone: 'America/Los_Angeles' })
551
+ * @example DateTime.fromSQL('09:12:34.342')
552
+ * @return {DateTime}
553
+ */
554
+ static fromSQL(e, t = {}) {
555
+ const [i, r] = We(e);
556
+ return g(i, r, t, "SQL", e);
557
+ }
558
+ /**
559
+ * Create an invalid DateTime.
560
+ * @param {string} reason - simple string of why this DateTime is invalid. Should not contain parameters or anything else data-dependent.
561
+ * @param {string} [explanation=null] - longer explanation, may include parameters and other useful debugging information
562
+ * @return {DateTime}
563
+ */
564
+ static invalid(e, t = null) {
565
+ if (!e)
566
+ throw new w("need to specify a reason the DateTime is invalid");
567
+ const i = e instanceof N ? e : new N(e, t);
568
+ if (T.throwOnInvalid)
569
+ throw new ot(i);
570
+ return new l({ invalid: i });
571
+ }
572
+ /**
573
+ * Check if an object is an instance of DateTime. Works across context boundaries
108
574
  * @param {object} o
109
575
  * @return {boolean}
110
576
  */
111
- static isInterval(t) {
112
- return t && t.isLuxonInterval || !1;
577
+ static isDateTime(e) {
578
+ return e && e.isLuxonDateTime || !1;
113
579
  }
114
580
  /**
115
- * Returns the start of the Interval
116
- * @type {DateTime}
581
+ * Produce the format string for a set of options
582
+ * @param formatOpts
583
+ * @param localeOpts
584
+ * @returns {string}
117
585
  */
118
- get start() {
119
- return this.isValid ? this.s : null;
586
+ static parseFormatForOpts(e, t = {}) {
587
+ const i = Le(e, y.fromObject(t));
588
+ return i ? i.map((r) => r ? r.val : null).join("") : null;
120
589
  }
121
590
  /**
122
- * Returns the end of the Interval
123
- * @type {DateTime}
591
+ * Produce the the fully expanded format token for the locale
592
+ * Does NOT quote characters, so quoted tokens will not round trip correctly
593
+ * @param fmt
594
+ * @param localeOpts
595
+ * @returns {string}
124
596
  */
125
- get end() {
126
- return this.isValid ? this.e : null;
597
+ static expandFormat(e, t = {}) {
598
+ return ze(O.parseFormat(e), y.fromObject(t)).map((r) => r.val).join("");
599
+ }
600
+ static resetCache() {
601
+ _ = void 0, $.clear();
127
602
  }
603
+ // INFO
128
604
  /**
129
- * Returns the last DateTime included in the interval (since end is not part of the interval)
130
- * @type {DateTime}
605
+ * Get the value of unit.
606
+ * @param {string} unit - a unit such as 'minute' or 'day'
607
+ * @example DateTime.local(2017, 7, 4).get('month'); //=> 7
608
+ * @example DateTime.local(2017, 7, 4).get('day'); //=> 4
609
+ * @return {number}
131
610
  */
132
- get lastDateTime() {
133
- return this.isValid && this.e ? this.e.minus(1) : null;
611
+ get(e) {
612
+ return this[e];
134
613
  }
135
614
  /**
136
- * Returns whether this Interval's end is at least its start, meaning that the Interval isn't 'backwards'.
615
+ * Returns whether the DateTime is valid. Invalid DateTimes occur when:
616
+ * * The DateTime was created from invalid calendar information, such as the 13th month or February 30
617
+ * * The DateTime was created by an operation on another invalid date
137
618
  * @type {boolean}
138
619
  */
139
620
  get isValid() {
140
- return this.invalidReason === null;
621
+ return this.invalid === null;
141
622
  }
142
623
  /**
143
- * Returns an error code if this Interval is invalid, or null if the Interval is valid
624
+ * Returns an error code if this DateTime is invalid, or null if the DateTime is valid
144
625
  * @type {string}
145
626
  */
146
627
  get invalidReason() {
147
628
  return this.invalid ? this.invalid.reason : null;
148
629
  }
149
630
  /**
150
- * Returns an explanation of why this Interval became invalid, or null if the Interval is valid
631
+ * Returns an explanation of why this DateTime became invalid, or null if the DateTime is valid
151
632
  * @type {string}
152
633
  */
153
634
  get invalidExplanation() {
154
635
  return this.invalid ? this.invalid.explanation : null;
155
636
  }
156
637
  /**
157
- * Returns the length of the Interval in the specified unit.
158
- * @param {string} unit - the unit (such as 'hours' or 'days') to return the length in.
159
- * @return {number}
638
+ * Get the locale of a DateTime, such 'en-GB'. The locale is used when formatting the DateTime
639
+ *
640
+ * @type {string}
160
641
  */
161
- length(t = "milliseconds") {
162
- return this.isValid ? this.toDuration(t).get(t) : NaN;
642
+ get locale() {
643
+ return this.isValid ? this.loc.locale : null;
163
644
  }
164
645
  /**
165
- * Returns the count of minutes, hours, days, months, or years included in the Interval, even in part.
166
- * Unlike {@link Interval#length} this counts sections of the calendar, not periods of time, e.g. specifying 'day'
167
- * asks 'what dates are included in this interval?', not 'how many days long is this interval?'
168
- * @param {string} [unit='milliseconds'] - the unit of time to count.
169
- * @param {Object} opts - options
170
- * @param {boolean} [opts.useLocaleWeeks=false] - If true, use weeks based on the locale, i.e. use the locale-dependent start of the week; this operation will always use the locale of the start DateTime
171
- * @return {number}
646
+ * Get the numbering system of a DateTime, such 'beng'. The numbering system is used when formatting the DateTime
647
+ *
648
+ * @type {string}
172
649
  */
173
- count(t = "milliseconds", i) {
174
- if (!this.isValid) return NaN;
175
- const e = this.start.startOf(t, i);
176
- let s;
177
- return i != null && i.useLocaleWeeks ? s = this.end.reconfigure({ locale: e.locale }) : s = this.end, s = s.startOf(t, i), Math.floor(s.diff(e, t).get(t)) + (s.valueOf() !== this.end.valueOf());
650
+ get numberingSystem() {
651
+ return this.isValid ? this.loc.numberingSystem : null;
178
652
  }
179
653
  /**
180
- * Returns whether this Interval's start and end are both in the same unit of time
181
- * @param {string} unit - the unit of time to check sameness on
182
- * @return {boolean}
654
+ * Get the output calendar of a DateTime, such 'islamic'. The output calendar is used when formatting the DateTime
655
+ *
656
+ * @type {string}
183
657
  */
184
- hasSame(t) {
185
- return this.isValid ? this.isEmpty() || this.e.minus(1).hasSame(this.s, t) : !1;
658
+ get outputCalendar() {
659
+ return this.isValid ? this.loc.outputCalendar : null;
186
660
  }
187
661
  /**
188
- * Return whether this Interval has the same start and end DateTimes.
189
- * @return {boolean}
662
+ * Get the time zone associated with this DateTime.
663
+ * @type {Zone}
190
664
  */
191
- isEmpty() {
192
- return this.s.valueOf() === this.e.valueOf();
665
+ get zone() {
666
+ return this._zone;
193
667
  }
194
668
  /**
195
- * Return whether this Interval's start is after the specified DateTime.
196
- * @param {DateTime} dateTime
197
- * @return {boolean}
669
+ * Get the name of the time zone.
670
+ * @type {string}
198
671
  */
199
- isAfter(t) {
200
- return this.isValid ? this.s > t : !1;
672
+ get zoneName() {
673
+ return this.isValid ? this.zone.name : null;
201
674
  }
202
675
  /**
203
- * Return whether this Interval's end is before the specified DateTime.
204
- * @param {DateTime} dateTime
205
- * @return {boolean}
676
+ * Get the year
677
+ * @example DateTime.local(2017, 5, 25).year //=> 2017
678
+ * @type {number}
206
679
  */
207
- isBefore(t) {
208
- return this.isValid ? this.e <= t : !1;
680
+ get year() {
681
+ return this.isValid ? this.c.year : NaN;
209
682
  }
210
683
  /**
211
- * Return whether this Interval contains the specified DateTime.
212
- * @param {DateTime} dateTime
213
- * @return {boolean}
684
+ * Get the quarter
685
+ * @example DateTime.local(2017, 5, 25).quarter //=> 2
686
+ * @type {number}
214
687
  */
215
- contains(t) {
216
- return this.isValid ? this.s <= t && this.e > t : !1;
688
+ get quarter() {
689
+ return this.isValid ? Math.ceil(this.c.month / 3) : NaN;
217
690
  }
218
691
  /**
219
- * "Sets" the start and/or end dates. Returns a newly-constructed Interval.
220
- * @param {Object} values - the values to set
221
- * @param {DateTime} values.start - the starting DateTime
222
- * @param {DateTime} values.end - the ending DateTime
223
- * @return {Interval}
692
+ * Get the month (1-12).
693
+ * @example DateTime.local(2017, 5, 25).month //=> 5
694
+ * @type {number}
224
695
  */
225
- set({ start: t, end: i } = {}) {
226
- return this.isValid ? a.fromDateTimes(t || this.s, i || this.e) : this;
696
+ get month() {
697
+ return this.isValid ? this.c.month : NaN;
227
698
  }
228
699
  /**
229
- * Split this Interval at each of the specified DateTimes
230
- * @param {...DateTime} dateTimes - the unit of time to count.
231
- * @return {Array}
700
+ * Get the day of the month (1-30ish).
701
+ * @example DateTime.local(2017, 5, 25).day //=> 25
702
+ * @type {number}
232
703
  */
233
- splitAt(...t) {
234
- if (!this.isValid) return [];
235
- const i = t.map(f).filter((n) => this.contains(n)).sort((n, u) => n.toMillis() - u.toMillis()), e = [];
236
- let { s } = this, r = 0;
237
- for (; s < this.e; ) {
238
- const n = i[r] || this.e, u = +n > +this.e ? this.e : n;
239
- e.push(a.fromDateTimes(s, u)), s = u, r += 1;
240
- }
241
- return e;
242
- }
243
- /**
244
- * Split this Interval into smaller Intervals, each of the specified length.
245
- * Left over time is grouped into a smaller interval
246
- * @param {Duration|Object|number} duration - The length of each resulting interval.
247
- * @return {Array}
248
- */
249
- splitBy(t) {
250
- const i = h.fromDurationLike(t);
251
- if (!this.isValid || !i.isValid || i.as("milliseconds") === 0)
252
- return [];
253
- let { s: e } = this, s = 1, r;
254
- const n = [];
255
- for (; e < this.e; ) {
256
- const u = this.start.plus(i.mapUnits((l) => l * s));
257
- r = +u > +this.e ? this.e : u, n.push(a.fromDateTimes(e, r)), e = r, s += 1;
258
- }
259
- return n;
704
+ get day() {
705
+ return this.isValid ? this.c.day : NaN;
260
706
  }
261
707
  /**
262
- * Split this Interval into the specified number of smaller intervals.
263
- * @param {number} numberOfParts - The number of Intervals to divide the Interval into.
264
- * @return {Array}
708
+ * Get the hour of the day (0-23).
709
+ * @example DateTime.local(2017, 5, 25, 9).hour //=> 9
710
+ * @type {number}
265
711
  */
266
- divideEqually(t) {
267
- return this.isValid ? this.splitBy(this.length() / t).slice(0, t) : [];
712
+ get hour() {
713
+ return this.isValid ? this.c.hour : NaN;
268
714
  }
269
715
  /**
270
- * Return whether this Interval overlaps with the specified Interval
271
- * @param {Interval} other
272
- * @return {boolean}
716
+ * Get the minute of the hour (0-59).
717
+ * @example DateTime.local(2017, 5, 25, 9, 30).minute //=> 30
718
+ * @type {number}
273
719
  */
274
- overlaps(t) {
275
- return this.e > t.s && this.s < t.e;
720
+ get minute() {
721
+ return this.isValid ? this.c.minute : NaN;
276
722
  }
277
723
  /**
278
- * Return whether this Interval's end is adjacent to the specified Interval's start.
279
- * @param {Interval} other
280
- * @return {boolean}
724
+ * Get the second of the minute (0-59).
725
+ * @example DateTime.local(2017, 5, 25, 9, 30, 52).second //=> 52
726
+ * @type {number}
281
727
  */
282
- abutsStart(t) {
283
- return this.isValid ? +this.e == +t.s : !1;
728
+ get second() {
729
+ return this.isValid ? this.c.second : NaN;
284
730
  }
285
731
  /**
286
- * Return whether this Interval's start is adjacent to the specified Interval's end.
287
- * @param {Interval} other
288
- * @return {boolean}
732
+ * Get the millisecond of the second (0-999).
733
+ * @example DateTime.local(2017, 5, 25, 9, 30, 52, 654).millisecond //=> 654
734
+ * @type {number}
289
735
  */
290
- abutsEnd(t) {
291
- return this.isValid ? +t.e == +this.s : !1;
736
+ get millisecond() {
737
+ return this.isValid ? this.c.millisecond : NaN;
292
738
  }
293
739
  /**
294
- * Returns true if this Interval fully contains the specified Interval, specifically if the intersect (of this Interval and the other Interval) is equal to the other Interval; false otherwise.
295
- * @param {Interval} other
296
- * @return {boolean}
740
+ * Get the week year
741
+ * @see https://en.wikipedia.org/wiki/ISO_week_date
742
+ * @example DateTime.local(2014, 12, 31).weekYear //=> 2015
743
+ * @type {number}
297
744
  */
298
- engulfs(t) {
299
- return this.isValid ? this.s <= t.s && this.e >= t.e : !1;
745
+ get weekYear() {
746
+ return this.isValid ? j(this).weekYear : NaN;
300
747
  }
301
748
  /**
302
- * Return whether this Interval has the same start and end as the specified Interval.
303
- * @param {Interval} other
304
- * @return {boolean}
749
+ * Get the week number of the week year (1-52ish).
750
+ * @see https://en.wikipedia.org/wiki/ISO_week_date
751
+ * @example DateTime.local(2017, 5, 25).weekNumber //=> 21
752
+ * @type {number}
305
753
  */
306
- equals(t) {
307
- return !this.isValid || !t.isValid ? !1 : this.s.equals(t.s) && this.e.equals(t.e);
754
+ get weekNumber() {
755
+ return this.isValid ? j(this).weekNumber : NaN;
308
756
  }
309
757
  /**
310
- * Return an Interval representing the intersection of this Interval and the specified Interval.
311
- * Specifically, the resulting Interval has the maximum start time and the minimum end time of the two Intervals.
312
- * Returns null if the intersection is empty, meaning, the intervals don't intersect.
313
- * @param {Interval} other
314
- * @return {Interval}
758
+ * Get the day of the week.
759
+ * 1 is Monday and 7 is Sunday
760
+ * @see https://en.wikipedia.org/wiki/ISO_week_date
761
+ * @example DateTime.local(2014, 11, 31).weekday //=> 4
762
+ * @type {number}
315
763
  */
316
- intersection(t) {
317
- if (!this.isValid) return this;
318
- const i = this.s > t.s ? this.s : t.s, e = this.e < t.e ? this.e : t.e;
319
- return i >= e ? null : a.fromDateTimes(i, e);
764
+ get weekday() {
765
+ return this.isValid ? j(this).weekday : NaN;
320
766
  }
321
767
  /**
322
- * Return an Interval representing the union of this Interval and the specified Interval.
323
- * Specifically, the resulting Interval has the minimum start time and the maximum end time of the two Intervals.
324
- * @param {Interval} other
325
- * @return {Interval}
768
+ * Returns true if this date is on a weekend according to the locale, false otherwise
769
+ * @returns {boolean}
326
770
  */
327
- union(t) {
771
+ get isWeekend() {
772
+ return this.isValid && this.loc.getWeekendDays().includes(this.weekday);
773
+ }
774
+ /**
775
+ * Get the day of the week according to the locale.
776
+ * 1 is the first day of the week and 7 is the last day of the week.
777
+ * If the locale assigns Sunday as the first day of the week, then a date which is a Sunday will return 1,
778
+ * @returns {number}
779
+ */
780
+ get localWeekday() {
781
+ return this.isValid ? q(this).weekday : NaN;
782
+ }
783
+ /**
784
+ * Get the week number of the week year according to the locale. Different locales assign week numbers differently,
785
+ * because the week can start on different days of the week (see localWeekday) and because a different number of days
786
+ * is required for a week to count as the first week of a year.
787
+ * @returns {number}
788
+ */
789
+ get localWeekNumber() {
790
+ return this.isValid ? q(this).weekNumber : NaN;
791
+ }
792
+ /**
793
+ * Get the week year according to the locale. Different locales assign week numbers (and therefor week years)
794
+ * differently, see localWeekNumber.
795
+ * @returns {number}
796
+ */
797
+ get localWeekYear() {
798
+ return this.isValid ? q(this).weekYear : NaN;
799
+ }
800
+ /**
801
+ * Get the ordinal (meaning the day of the year)
802
+ * @example DateTime.local(2017, 5, 25).ordinal //=> 145
803
+ * @type {number|DateTime}
804
+ */
805
+ get ordinal() {
806
+ return this.isValid ? Y(this.c).ordinal : NaN;
807
+ }
808
+ /**
809
+ * Get the human readable short month name, such as 'Oct'.
810
+ * Defaults to the system's locale if no locale has been specified
811
+ * @example DateTime.local(2017, 10, 30).monthShort //=> Oct
812
+ * @type {string}
813
+ */
814
+ get monthShort() {
815
+ return this.isValid ? F.months("short", { locObj: this.loc })[this.month - 1] : null;
816
+ }
817
+ /**
818
+ * Get the human readable long month name, such as 'October'.
819
+ * Defaults to the system's locale if no locale has been specified
820
+ * @example DateTime.local(2017, 10, 30).monthLong //=> October
821
+ * @type {string}
822
+ */
823
+ get monthLong() {
824
+ return this.isValid ? F.months("long", { locObj: this.loc })[this.month - 1] : null;
825
+ }
826
+ /**
827
+ * Get the human readable short weekday, such as 'Mon'.
828
+ * Defaults to the system's locale if no locale has been specified
829
+ * @example DateTime.local(2017, 10, 30).weekdayShort //=> Mon
830
+ * @type {string}
831
+ */
832
+ get weekdayShort() {
833
+ return this.isValid ? F.weekdays("short", { locObj: this.loc })[this.weekday - 1] : null;
834
+ }
835
+ /**
836
+ * Get the human readable long weekday, such as 'Monday'.
837
+ * Defaults to the system's locale if no locale has been specified
838
+ * @example DateTime.local(2017, 10, 30).weekdayLong //=> Monday
839
+ * @type {string}
840
+ */
841
+ get weekdayLong() {
842
+ return this.isValid ? F.weekdays("long", { locObj: this.loc })[this.weekday - 1] : null;
843
+ }
844
+ /**
845
+ * Get the UTC offset of this DateTime in minutes
846
+ * @example DateTime.now().offset //=> -240
847
+ * @example DateTime.utc().offset //=> 0
848
+ * @type {number}
849
+ */
850
+ get offset() {
851
+ return this.isValid ? +this.o : NaN;
852
+ }
853
+ /**
854
+ * Get the short human name for the zone's current offset, for example "EST" or "EDT".
855
+ * Defaults to the system's locale if no locale has been specified
856
+ * @type {string}
857
+ */
858
+ get offsetNameShort() {
859
+ return this.isValid ? this.zone.offsetName(this.ts, {
860
+ format: "short",
861
+ locale: this.locale
862
+ }) : null;
863
+ }
864
+ /**
865
+ * Get the long human name for the zone's current offset, for example "Eastern Standard Time" or "Eastern Daylight Time".
866
+ * Defaults to the system's locale if no locale has been specified
867
+ * @type {string}
868
+ */
869
+ get offsetNameLong() {
870
+ return this.isValid ? this.zone.offsetName(this.ts, {
871
+ format: "long",
872
+ locale: this.locale
873
+ }) : null;
874
+ }
875
+ /**
876
+ * Get whether this zone's offset ever changes, as in a DST.
877
+ * @type {boolean}
878
+ */
879
+ get isOffsetFixed() {
880
+ return this.isValid ? this.zone.isUniversal : null;
881
+ }
882
+ /**
883
+ * Get whether the DateTime is in a DST.
884
+ * @type {boolean}
885
+ */
886
+ get isInDST() {
887
+ return this.isOffsetFixed ? !1 : this.offset > this.set({ month: 1, day: 1 }).offset || this.offset > this.set({ month: 5 }).offset;
888
+ }
889
+ /**
890
+ * Get those DateTimes which have the same local time as this DateTime, but a different offset from UTC
891
+ * in this DateTime's zone. During DST changes local time can be ambiguous, for example
892
+ * `2023-10-29T02:30:00` in `Europe/Berlin` can have offset `+01:00` or `+02:00`.
893
+ * This method will return both possible DateTimes if this DateTime's local time is ambiguous.
894
+ * @returns {DateTime[]}
895
+ */
896
+ getPossibleOffsets() {
897
+ if (!this.isValid || this.isOffsetFixed)
898
+ return [this];
899
+ const e = 864e5, t = 6e4, i = P(this.c), r = this.zone.offset(i - e), a = this.zone.offset(i + e), s = this.zone.offset(i - r * t), o = this.zone.offset(i - a * t);
900
+ if (s === o)
901
+ return [this];
902
+ const u = i - s * t, c = i - o * t, d = z(u, s), h = z(c, o);
903
+ return d.hour === h.hour && d.minute === h.minute && d.second === h.second && d.millisecond === h.millisecond ? [k(this, { ts: u }), k(this, { ts: c })] : [this];
904
+ }
905
+ /**
906
+ * Returns true if this DateTime is in a leap year, false otherwise
907
+ * @example DateTime.local(2016).isInLeapYear //=> true
908
+ * @example DateTime.local(2013).isInLeapYear //=> false
909
+ * @type {boolean}
910
+ */
911
+ get isInLeapYear() {
912
+ return Ie(this.year);
913
+ }
914
+ /**
915
+ * Returns the number of days in this DateTime's month
916
+ * @example DateTime.local(2016, 2).daysInMonth //=> 29
917
+ * @example DateTime.local(2016, 3).daysInMonth //=> 31
918
+ * @type {number}
919
+ */
920
+ get daysInMonth() {
921
+ return R(this.year, this.month);
922
+ }
923
+ /**
924
+ * Returns the number of days in this DateTime's year
925
+ * @example DateTime.local(2016).daysInYear //=> 366
926
+ * @example DateTime.local(2013).daysInYear //=> 365
927
+ * @type {number}
928
+ */
929
+ get daysInYear() {
930
+ return this.isValid ? De(this.year) : NaN;
931
+ }
932
+ /**
933
+ * Returns the number of weeks in this DateTime's year
934
+ * @see https://en.wikipedia.org/wiki/ISO_week_date
935
+ * @example DateTime.local(2004).weeksInWeekYear //=> 53
936
+ * @example DateTime.local(2013).weeksInWeekYear //=> 52
937
+ * @type {number}
938
+ */
939
+ get weeksInWeekYear() {
940
+ return this.isValid ? ee(this.weekYear) : NaN;
941
+ }
942
+ /**
943
+ * Returns the number of weeks in this DateTime's local week year
944
+ * @example DateTime.local(2020, 6, {locale: 'en-US'}).weeksInLocalWeekYear //=> 52
945
+ * @example DateTime.local(2020, 6, {locale: 'de-DE'}).weeksInLocalWeekYear //=> 53
946
+ * @type {number}
947
+ */
948
+ get weeksInLocalWeekYear() {
949
+ return this.isValid ? ee(
950
+ this.localWeekYear,
951
+ this.loc.getMinDaysInFirstWeek(),
952
+ this.loc.getStartOfWeek()
953
+ ) : NaN;
954
+ }
955
+ /**
956
+ * Returns the resolved Intl options for this DateTime.
957
+ * This is useful in understanding the behavior of formatting methods
958
+ * @param {Object} opts - the same options as toLocaleString
959
+ * @return {Object}
960
+ */
961
+ resolvedLocaleOptions(e = {}) {
962
+ const { locale: t, numberingSystem: i, calendar: r } = O.create(
963
+ this.loc.clone(e),
964
+ e
965
+ ).resolvedOptions(this);
966
+ return { locale: t, numberingSystem: i, outputCalendar: r };
967
+ }
968
+ // TRANSFORM
969
+ /**
970
+ * "Set" the DateTime's zone to UTC. Returns a newly-constructed DateTime.
971
+ *
972
+ * Equivalent to {@link DateTime#setZone}('utc')
973
+ * @param {number} [offset=0] - optionally, an offset from UTC in minutes
974
+ * @param {Object} [opts={}] - options to pass to `setZone()`
975
+ * @return {DateTime}
976
+ */
977
+ toUTC(e = 0, t = {}) {
978
+ return this.setZone(B.instance(e), t);
979
+ }
980
+ /**
981
+ * "Set" the DateTime's zone to the host's local zone. Returns a newly-constructed DateTime.
982
+ *
983
+ * Equivalent to `setZone('local')`
984
+ * @return {DateTime}
985
+ */
986
+ toLocal() {
987
+ return this.setZone(T.defaultZone);
988
+ }
989
+ /**
990
+ * "Set" the DateTime's zone to specified zone. Returns a newly-constructed DateTime.
991
+ *
992
+ * By default, the setter keeps the underlying time the same (as in, the same timestamp), but the new instance will report different local times and consider DSTs when making computations, as with {@link DateTime#plus}. You may wish to use {@link DateTime#toLocal} and {@link DateTime#toUTC} which provide simple convenience wrappers for commonly used zones.
993
+ * @param {string|Zone} [zone='local'] - a zone identifier. As a string, that can be any IANA zone supported by the host environment, or a fixed-offset name of the form 'UTC+3', or the strings 'local' or 'utc'. You may also supply an instance of a {@link DateTime#Zone} class.
994
+ * @param {Object} opts - options
995
+ * @param {boolean} [opts.keepLocalTime=false] - If true, adjust the underlying time so that the local time stays the same, but in the target zone. You should rarely need this.
996
+ * @return {DateTime}
997
+ */
998
+ setZone(e, { keepLocalTime: t = !1, keepCalendarTime: i = !1 } = {}) {
999
+ if (e = S(e, T.defaultZone), e.equals(this.zone))
1000
+ return this;
1001
+ if (e.isValid) {
1002
+ let r = this.ts;
1003
+ if (t || i) {
1004
+ const a = e.offset(this.ts), s = this.toObject();
1005
+ [r] = C(s, a, e);
1006
+ }
1007
+ return k(this, { ts: r, zone: e });
1008
+ } else
1009
+ return l.invalid(b(e));
1010
+ }
1011
+ /**
1012
+ * "Set" the locale, numberingSystem, or outputCalendar. Returns a newly-constructed DateTime.
1013
+ * @param {Object} properties - the properties to set
1014
+ * @example DateTime.local(2017, 5, 25).reconfigure({ locale: 'en-GB' })
1015
+ * @return {DateTime}
1016
+ */
1017
+ reconfigure({ locale: e, numberingSystem: t, outputCalendar: i } = {}) {
1018
+ const r = this.loc.clone({ locale: e, numberingSystem: t, outputCalendar: i });
1019
+ return k(this, { loc: r });
1020
+ }
1021
+ /**
1022
+ * "Set" the locale. Returns a newly-constructed DateTime.
1023
+ * Just a convenient alias for reconfigure({ locale })
1024
+ * @example DateTime.local(2017, 5, 25).setLocale('en-GB')
1025
+ * @return {DateTime}
1026
+ */
1027
+ setLocale(e) {
1028
+ return this.reconfigure({ locale: e });
1029
+ }
1030
+ /**
1031
+ * "Set" the values of specified units. Returns a newly-constructed DateTime.
1032
+ * You can only set units with this method; for "setting" metadata, see {@link DateTime#reconfigure} and {@link DateTime#setZone}.
1033
+ *
1034
+ * This method also supports setting locale-based week units, i.e. `localWeekday`, `localWeekNumber` and `localWeekYear`.
1035
+ * They cannot be mixed with ISO-week units like `weekday`.
1036
+ * @param {Object} values - a mapping of units to numbers
1037
+ * @example dt.set({ year: 2017 })
1038
+ * @example dt.set({ hour: 8, minute: 30 })
1039
+ * @example dt.set({ weekday: 5 })
1040
+ * @example dt.set({ year: 2005, ordinal: 234 })
1041
+ * @return {DateTime}
1042
+ */
1043
+ set(e) {
328
1044
  if (!this.isValid) return this;
329
- const i = this.s < t.s ? this.s : t.s, e = this.e > t.e ? this.e : t.e;
330
- return a.fromDateTimes(i, e);
1045
+ const t = X(e, le), { minDaysInFirstWeek: i, startOfWeek: r } = ne(t, this.loc), a = !f(t.weekYear) || !f(t.weekNumber) || !f(t.weekday), s = !f(t.ordinal), o = !f(t.year), u = !f(t.month) || !f(t.day), c = o || u, d = t.weekYear || t.weekNumber;
1046
+ if ((c || s) && d)
1047
+ throw new L(
1048
+ "Can't mix weekYear/weekNumber units with year/month/day or ordinals"
1049
+ );
1050
+ if (u && s)
1051
+ throw new L("Can't mix ordinal dates with month/day");
1052
+ let h;
1053
+ a ? h = ie(
1054
+ { ...A(this.c, i, r), ...t },
1055
+ i,
1056
+ r
1057
+ ) : f(t.ordinal) ? (h = { ...this.toObject(), ...t }, f(t.day) && (h.day = Math.min(R(h.year, h.month), h.day))) : h = re({ ...Y(this.c), ...t });
1058
+ const [p, I] = C(h, this.o, this.zone);
1059
+ return k(this, { ts: p, o: I });
331
1060
  }
332
1061
  /**
333
- * Merge an array of Intervals into an equivalent minimal set of Intervals.
334
- * Combines overlapping and adjacent Intervals.
335
- * The resulting array will contain the Intervals in ascending order, that is, starting with the earliest Interval
336
- * and ending with the latest.
1062
+ * Add a period of time to this DateTime and return the resulting DateTime
337
1063
  *
338
- * @param {Array} intervals
339
- * @return {Array}
1064
+ * Adding hours, minutes, seconds, or milliseconds increases the timestamp by the right number of milliseconds. Adding days, months, or years shifts the calendar, accounting for DSTs and leap years along the way. Thus, `dt.plus({ hours: 24 })` may result in a different time than `dt.plus({ days: 1 })` if there's a DST shift in between.
1065
+ * @param {Duration|Object|number} duration - The amount to add. Either a Luxon Duration, a number of milliseconds, the object argument to Duration.fromObject()
1066
+ * @example DateTime.now().plus(123) //~> in 123 milliseconds
1067
+ * @example DateTime.now().plus({ minutes: 15 }) //~> in 15 minutes
1068
+ * @example DateTime.now().plus({ days: 1 }) //~> this time tomorrow
1069
+ * @example DateTime.now().plus({ days: -1 }) //~> this time yesterday
1070
+ * @example DateTime.now().plus({ hours: 3, minutes: 13 }) //~> in 3 hr, 13 min
1071
+ * @example DateTime.now().plus(Duration.fromObject({ hours: 3, minutes: 13 })) //~> in 3 hr, 13 min
1072
+ * @return {DateTime}
340
1073
  */
341
- static merge(t) {
342
- const [i, e] = t.sort((s, r) => s.s - r.s).reduce(
343
- ([s, r], n) => r ? r.overlaps(n) || r.abutsStart(n) ? [s, r.union(n)] : [s.concat([r]), n] : [s, n],
344
- [[], null]
345
- );
346
- return e && i.push(e), i;
1074
+ plus(e) {
1075
+ if (!this.isValid) return this;
1076
+ const t = E.fromDurationLike(e);
1077
+ return k(this, ae(this, t));
1078
+ }
1079
+ /**
1080
+ * Subtract a period of time to this DateTime and return the resulting DateTime
1081
+ * See {@link DateTime#plus}
1082
+ * @param {Duration|Object|number} duration - The amount to subtract. Either a Luxon Duration, a number of milliseconds, the object argument to Duration.fromObject()
1083
+ @return {DateTime}
1084
+ */
1085
+ minus(e) {
1086
+ if (!this.isValid) return this;
1087
+ const t = E.fromDurationLike(e).negate();
1088
+ return k(this, ae(this, t));
347
1089
  }
348
1090
  /**
349
- * Return an array of Intervals representing the spans of time that only appear in one of the specified Intervals.
350
- * @param {Array} intervals
351
- * @return {Array}
1091
+ * "Set" this DateTime to the beginning of a unit of time.
1092
+ * @param {string} unit - The unit to go to the beginning of. Can be 'year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', or 'millisecond'.
1093
+ * @param {Object} opts - options
1094
+ * @param {boolean} [opts.useLocaleWeeks=false] - If true, use weeks based on the locale, i.e. use the locale-dependent start of the week
1095
+ * @example DateTime.local(2014, 3, 3).startOf('month').toISODate(); //=> '2014-03-01'
1096
+ * @example DateTime.local(2014, 3, 3).startOf('year').toISODate(); //=> '2014-01-01'
1097
+ * @example DateTime.local(2014, 3, 3).startOf('week').toISODate(); //=> '2014-03-03', weeks always start on Mondays
1098
+ * @example DateTime.local(2014, 3, 3, 5, 30).startOf('day').toISOTime(); //=> '00:00.000-05:00'
1099
+ * @example DateTime.local(2014, 3, 3, 5, 30).startOf('hour').toISOTime(); //=> '05:00:00.000-05:00'
1100
+ * @return {DateTime}
352
1101
  */
353
- static xor(t) {
354
- let i = null, e = 0;
355
- const s = [], r = t.map((l) => [
356
- { time: l.s, type: "s" },
357
- { time: l.e, type: "e" }
358
- ]), n = Array.prototype.concat(...r), u = n.sort((l, o) => l.time - o.time);
359
- for (const l of u)
360
- e += l.type === "s" ? 1 : -1, e === 1 ? i = l.time : (i && +i != +l.time && s.push(a.fromDateTimes(i, l.time)), i = null);
361
- return a.merge(s);
1102
+ startOf(e, { useLocaleWeeks: t = !1 } = {}) {
1103
+ if (!this.isValid) return this;
1104
+ const i = {}, r = E.normalizeUnit(e);
1105
+ switch (r) {
1106
+ case "years":
1107
+ i.month = 1;
1108
+ // falls through
1109
+ case "quarters":
1110
+ case "months":
1111
+ i.day = 1;
1112
+ // falls through
1113
+ case "weeks":
1114
+ case "days":
1115
+ i.hour = 0;
1116
+ // falls through
1117
+ case "hours":
1118
+ i.minute = 0;
1119
+ // falls through
1120
+ case "minutes":
1121
+ i.second = 0;
1122
+ // falls through
1123
+ case "seconds":
1124
+ i.millisecond = 0;
1125
+ break;
1126
+ }
1127
+ if (r === "weeks")
1128
+ if (t) {
1129
+ const a = this.loc.getStartOfWeek(), { weekday: s } = this;
1130
+ s < a && (i.weekNumber = this.weekNumber - 1), i.weekday = a;
1131
+ } else
1132
+ i.weekday = 1;
1133
+ if (r === "quarters") {
1134
+ const a = Math.ceil(this.month / 3);
1135
+ i.month = (a - 1) * 3 + 1;
1136
+ }
1137
+ return this.set(i);
362
1138
  }
363
1139
  /**
364
- * Return an Interval representing the span of time in this Interval that doesn't overlap with any of the specified Intervals.
365
- * @param {...Interval} intervals
366
- * @return {Array}
1140
+ * "Set" this DateTime to the end (meaning the last millisecond) of a unit of time
1141
+ * @param {string} unit - The unit to go to the end of. Can be 'year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', or 'millisecond'.
1142
+ * @param {Object} opts - options
1143
+ * @param {boolean} [opts.useLocaleWeeks=false] - If true, use weeks based on the locale, i.e. use the locale-dependent start of the week
1144
+ * @example DateTime.local(2014, 3, 3).endOf('month').toISO(); //=> '2014-03-31T23:59:59.999-05:00'
1145
+ * @example DateTime.local(2014, 3, 3).endOf('year').toISO(); //=> '2014-12-31T23:59:59.999-05:00'
1146
+ * @example DateTime.local(2014, 3, 3).endOf('week').toISO(); // => '2014-03-09T23:59:59.999-05:00', weeks start on Mondays
1147
+ * @example DateTime.local(2014, 3, 3, 5, 30).endOf('day').toISO(); //=> '2014-03-03T23:59:59.999-05:00'
1148
+ * @example DateTime.local(2014, 3, 3, 5, 30).endOf('hour').toISO(); //=> '2014-03-03T05:59:59.999-05:00'
1149
+ * @return {DateTime}
367
1150
  */
368
- difference(...t) {
369
- return a.xor([this].concat(t)).map((i) => this.intersection(i)).filter((i) => i && !i.isEmpty());
1151
+ endOf(e, t) {
1152
+ return this.isValid ? this.plus({ [e]: 1 }).startOf(e, t).minus(1) : this;
370
1153
  }
1154
+ // OUTPUT
371
1155
  /**
372
- * Returns a string representation of this Interval appropriate for debugging.
1156
+ * Returns a string representation of this DateTime formatted according to the specified format string.
1157
+ * **You may not want this.** See {@link DateTime#toLocaleString} for a more flexible formatting tool. For a table of tokens and their interpretations, see [here](https://moment.github.io/luxon/#/formatting?id=table-of-tokens).
1158
+ * Defaults to en-US if no locale has been specified, regardless of the system's locale.
1159
+ * @param {string} fmt - the format string
1160
+ * @param {Object} opts - opts to override the configuration options on this DateTime
1161
+ * @example DateTime.now().toFormat('yyyy LLL dd') //=> '2017 Apr 22'
1162
+ * @example DateTime.now().setLocale('fr').toFormat('yyyy LLL dd') //=> '2017 avr. 22'
1163
+ * @example DateTime.now().toFormat('yyyy LLL dd', { locale: "fr" }) //=> '2017 avr. 22'
1164
+ * @example DateTime.now().toFormat("HH 'hours and' mm 'minutes'") //=> '20 hours and 55 minutes'
373
1165
  * @return {string}
374
1166
  */
375
- toString() {
376
- return this.isValid ? `[${this.s.toISO()} – ${this.e.toISO()})` : d;
1167
+ toFormat(e, t = {}) {
1168
+ return this.isValid ? O.create(this.loc.redefaultToEN(t)).formatDateTimeFromString(this, e) : Z;
377
1169
  }
378
1170
  /**
379
- * Returns a string representation of this Interval appropriate for the REPL.
1171
+ * Returns a localized string representing this date. Accepts the same options as the Intl.DateTimeFormat constructor and any presets defined by Luxon, such as `DateTime.DATE_FULL` or `DateTime.TIME_SIMPLE`.
1172
+ * The exact behavior of this method is browser-specific, but in general it will return an appropriate representation
1173
+ * of the DateTime in the assigned locale.
1174
+ * Defaults to the system's locale if no locale has been specified
1175
+ * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat
1176
+ * @param formatOpts {Object} - Intl.DateTimeFormat constructor options and configuration options
1177
+ * @param {Object} opts - opts to override the configuration options on this DateTime
1178
+ * @example DateTime.now().toLocaleString(); //=> 4/20/2017
1179
+ * @example DateTime.now().setLocale('en-gb').toLocaleString(); //=> '20/04/2017'
1180
+ * @example DateTime.now().toLocaleString(DateTime.DATE_FULL); //=> 'April 20, 2017'
1181
+ * @example DateTime.now().toLocaleString(DateTime.DATE_FULL, { locale: 'fr' }); //=> '28 août 2022'
1182
+ * @example DateTime.now().toLocaleString(DateTime.TIME_SIMPLE); //=> '11:32 AM'
1183
+ * @example DateTime.now().toLocaleString(DateTime.DATETIME_SHORT); //=> '4/20/2017, 11:32 AM'
1184
+ * @example DateTime.now().toLocaleString({ weekday: 'long', month: 'long', day: '2-digit' }); //=> 'Thursday, April 20'
1185
+ * @example DateTime.now().toLocaleString({ weekday: 'short', month: 'short', day: '2-digit', hour: '2-digit', minute: '2-digit' }); //=> 'Thu, Apr 20, 11:27 AM'
1186
+ * @example DateTime.now().toLocaleString({ hour: '2-digit', minute: '2-digit', hourCycle: 'h23' }); //=> '11:32'
380
1187
  * @return {string}
381
1188
  */
382
- [Symbol.for("nodejs.util.inspect.custom")]() {
383
- return this.isValid ? `Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }` : `Interval { Invalid, reason: ${this.invalidReason} }`;
1189
+ toLocaleString(e = se, t = {}) {
1190
+ return this.isValid ? O.create(this.loc.clone(t), e).formatDateTime(this) : Z;
384
1191
  }
385
1192
  /**
386
- * Returns a localized string representing this Interval. Accepts the same options as the
387
- * Intl.DateTimeFormat constructor and any presets defined by Luxon, such as
388
- * {@link DateTime.DATE_FULL} or {@link DateTime.TIME_SIMPLE}. The exact behavior of this method
389
- * is browser-specific, but in general it will return an appropriate representation of the
390
- * Interval in the assigned locale. Defaults to the system's locale if no locale has been
391
- * specified.
392
- * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat
393
- * @param {Object} [formatOpts=DateTime.DATE_SHORT] - Either a DateTime preset or
394
- * Intl.DateTimeFormat constructor options.
395
- * @param {Object} opts - Options to override the configuration of the start DateTime.
396
- * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(); //=> 11/7/2022 – 11/8/2022
397
- * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(DateTime.DATE_FULL); //=> November 7 – 8, 2022
398
- * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(DateTime.DATE_FULL, { locale: 'fr-FR' }); //=> 7–8 novembre 2022
399
- * @example Interval.fromISO('2022-11-07T17:00Z/2022-11-07T19:00Z').toLocaleString(DateTime.TIME_SIMPLE); //=> 6:00 – 8:00 PM
400
- * @example Interval.fromISO('2022-11-07T17:00Z/2022-11-07T19:00Z').toLocaleString({ weekday: 'short', month: 'short', day: '2-digit', hour: '2-digit', minute: '2-digit' }); //=> Mon, Nov 07, 6:00 – 8:00 p
1193
+ * Returns an array of format "parts", meaning individual tokens along with metadata. This is allows callers to post-process individual sections of the formatted output.
1194
+ * Defaults to the system's locale if no locale has been specified
1195
+ * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat/formatToParts
1196
+ * @param opts {Object} - Intl.DateTimeFormat constructor options, same as `toLocaleString`.
1197
+ * @example DateTime.now().toLocaleParts(); //=> [
1198
+ * //=> { type: 'day', value: '25' },
1199
+ * //=> { type: 'literal', value: '/' },
1200
+ * //=> { type: 'month', value: '05' },
1201
+ * //=> { type: 'literal', value: '/' },
1202
+ * //=> { type: 'year', value: '1982' }
1203
+ * //=> ]
1204
+ */
1205
+ toLocaleParts(e = {}) {
1206
+ return this.isValid ? O.create(this.loc.clone(e), e).formatDateTimeParts(this) : [];
1207
+ }
1208
+ /**
1209
+ * Returns an ISO 8601-compliant string representation of this DateTime
1210
+ * @param {Object} opts - options
1211
+ * @param {boolean} [opts.suppressMilliseconds=false] - exclude milliseconds from the format if they're 0
1212
+ * @param {boolean} [opts.suppressSeconds=false] - exclude seconds from the format if they're 0
1213
+ * @param {boolean} [opts.includeOffset=true] - include the offset, such as 'Z' or '-04:00'
1214
+ * @param {boolean} [opts.extendedZone=false] - add the time zone format extension
1215
+ * @param {string} [opts.format='extended'] - choose between the basic and extended format
1216
+ * @example DateTime.utc(1983, 5, 25).toISO() //=> '1982-05-25T00:00:00.000Z'
1217
+ * @example DateTime.now().toISO() //=> '2017-04-22T20:47:05.335-04:00'
1218
+ * @example DateTime.now().toISO({ includeOffset: false }) //=> '2017-04-22T20:47:05.335'
1219
+ * @example DateTime.now().toISO({ format: 'basic' }) //=> '20170422T204705.335-0400'
1220
+ * @return {string|null}
1221
+ */
1222
+ toISO({
1223
+ format: e = "extended",
1224
+ suppressSeconds: t = !1,
1225
+ suppressMilliseconds: i = !1,
1226
+ includeOffset: r = !0,
1227
+ extendedZone: a = !1
1228
+ } = {}) {
1229
+ if (!this.isValid)
1230
+ return null;
1231
+ const s = e === "extended";
1232
+ let o = G(this, s);
1233
+ return o += "T", o += oe(this, s, t, i, r, a), o;
1234
+ }
1235
+ /**
1236
+ * Returns an ISO 8601-compliant string representation of this DateTime's date component
1237
+ * @param {Object} opts - options
1238
+ * @param {string} [opts.format='extended'] - choose between the basic and extended format
1239
+ * @example DateTime.utc(1982, 5, 25).toISODate() //=> '1982-05-25'
1240
+ * @example DateTime.utc(1982, 5, 25).toISODate({ format: 'basic' }) //=> '19820525'
1241
+ * @return {string|null}
1242
+ */
1243
+ toISODate({ format: e = "extended" } = {}) {
1244
+ return this.isValid ? G(this, e === "extended") : null;
1245
+ }
1246
+ /**
1247
+ * Returns an ISO 8601-compliant string representation of this DateTime's week date
1248
+ * @example DateTime.utc(1982, 5, 25).toISOWeekDate() //=> '1982-W21-2'
401
1249
  * @return {string}
402
1250
  */
403
- toLocaleString(t = D, i = {}) {
404
- return this.isValid ? O.create(this.s.loc.clone(i), t).formatInterval(this) : d;
1251
+ toISOWeekDate() {
1252
+ return H(this, "kkkk-'W'WW-c");
405
1253
  }
406
1254
  /**
407
- * Returns an ISO 8601-compliant string representation of this Interval.
408
- * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals
409
- * @param {Object} opts - The same options as {@link DateTime#toISO}
1255
+ * Returns an ISO 8601-compliant string representation of this DateTime's time component
1256
+ * @param {Object} opts - options
1257
+ * @param {boolean} [opts.suppressMilliseconds=false] - exclude milliseconds from the format if they're 0
1258
+ * @param {boolean} [opts.suppressSeconds=false] - exclude seconds from the format if they're 0
1259
+ * @param {boolean} [opts.includeOffset=true] - include the offset, such as 'Z' or '-04:00'
1260
+ * @param {boolean} [opts.extendedZone=true] - add the time zone format extension
1261
+ * @param {boolean} [opts.includePrefix=false] - include the `T` prefix
1262
+ * @param {string} [opts.format='extended'] - choose between the basic and extended format
1263
+ * @example DateTime.utc().set({ hour: 7, minute: 34 }).toISOTime() //=> '07:34:19.361Z'
1264
+ * @example DateTime.utc().set({ hour: 7, minute: 34, seconds: 0, milliseconds: 0 }).toISOTime({ suppressSeconds: true }) //=> '07:34Z'
1265
+ * @example DateTime.utc().set({ hour: 7, minute: 34 }).toISOTime({ format: 'basic' }) //=> '073419.361Z'
1266
+ * @example DateTime.utc().set({ hour: 7, minute: 34 }).toISOTime({ includePrefix: true }) //=> 'T07:34:19.361Z'
410
1267
  * @return {string}
411
1268
  */
412
- toISO(t) {
413
- return this.isValid ? `${this.s.toISO(t)}/${this.e.toISO(t)}` : d;
1269
+ toISOTime({
1270
+ suppressMilliseconds: e = !1,
1271
+ suppressSeconds: t = !1,
1272
+ includeOffset: i = !0,
1273
+ includePrefix: r = !1,
1274
+ extendedZone: a = !1,
1275
+ format: s = "extended"
1276
+ } = {}) {
1277
+ return this.isValid ? (r ? "T" : "") + oe(
1278
+ this,
1279
+ s === "extended",
1280
+ t,
1281
+ e,
1282
+ i,
1283
+ a
1284
+ ) : null;
414
1285
  }
415
1286
  /**
416
- * Returns an ISO 8601-compliant string representation of date of this Interval.
417
- * The time components are ignored.
418
- * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals
1287
+ * Returns an RFC 2822-compatible string representation of this DateTime
1288
+ * @example DateTime.utc(2014, 7, 13).toRFC2822() //=> 'Sun, 13 Jul 2014 00:00:00 +0000'
1289
+ * @example DateTime.local(2014, 7, 13).toRFC2822() //=> 'Sun, 13 Jul 2014 00:00:00 -0400'
419
1290
  * @return {string}
420
1291
  */
421
- toISODate() {
422
- return this.isValid ? `${this.s.toISODate()}/${this.e.toISODate()}` : d;
1292
+ toRFC2822() {
1293
+ return H(this, "EEE, dd LLL yyyy HH:mm:ss ZZZ", !1);
423
1294
  }
424
1295
  /**
425
- * Returns an ISO 8601-compliant string representation of time of this Interval.
426
- * The date components are ignored.
427
- * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals
428
- * @param {Object} opts - The same options as {@link DateTime#toISO}
1296
+ * Returns a string representation of this DateTime appropriate for use in HTTP headers. The output is always expressed in GMT.
1297
+ * Specifically, the string conforms to RFC 1123.
1298
+ * @see https://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.3.1
1299
+ * @example DateTime.utc(2014, 7, 13).toHTTP() //=> 'Sun, 13 Jul 2014 00:00:00 GMT'
1300
+ * @example DateTime.utc(2014, 7, 13, 19).toHTTP() //=> 'Sun, 13 Jul 2014 19:00:00 GMT'
429
1301
  * @return {string}
430
1302
  */
431
- toISOTime(t) {
432
- return this.isValid ? `${this.s.toISOTime(t)}/${this.e.toISOTime(t)}` : d;
1303
+ toHTTP() {
1304
+ return H(this.toUTC(), "EEE, dd LLL yyyy HH:mm:ss 'GMT'");
1305
+ }
1306
+ /**
1307
+ * Returns a string representation of this DateTime appropriate for use in SQL Date
1308
+ * @example DateTime.utc(2014, 7, 13).toSQLDate() //=> '2014-07-13'
1309
+ * @return {string|null}
1310
+ */
1311
+ toSQLDate() {
1312
+ return this.isValid ? G(this, !0) : null;
1313
+ }
1314
+ /**
1315
+ * Returns a string representation of this DateTime appropriate for use in SQL Time
1316
+ * @param {Object} opts - options
1317
+ * @param {boolean} [opts.includeZone=false] - include the zone, such as 'America/New_York'. Overrides includeOffset.
1318
+ * @param {boolean} [opts.includeOffset=true] - include the offset, such as 'Z' or '-04:00'
1319
+ * @param {boolean} [opts.includeOffsetSpace=true] - include the space between the time and the offset, such as '05:15:16.345 -04:00'
1320
+ * @example DateTime.utc().toSQL() //=> '05:15:16.345'
1321
+ * @example DateTime.now().toSQL() //=> '05:15:16.345 -04:00'
1322
+ * @example DateTime.now().toSQL({ includeOffset: false }) //=> '05:15:16.345'
1323
+ * @example DateTime.now().toSQL({ includeZone: false }) //=> '05:15:16.345 America/New_York'
1324
+ * @return {string}
1325
+ */
1326
+ toSQLTime({ includeOffset: e = !0, includeZone: t = !1, includeOffsetSpace: i = !0 } = {}) {
1327
+ let r = "HH:mm:ss.SSS";
1328
+ return (t || e) && (i && (r += " "), t ? r += "z" : e && (r += "ZZ")), H(this, r, !0);
1329
+ }
1330
+ /**
1331
+ * Returns a string representation of this DateTime appropriate for use in SQL DateTime
1332
+ * @param {Object} opts - options
1333
+ * @param {boolean} [opts.includeZone=false] - include the zone, such as 'America/New_York'. Overrides includeOffset.
1334
+ * @param {boolean} [opts.includeOffset=true] - include the offset, such as 'Z' or '-04:00'
1335
+ * @param {boolean} [opts.includeOffsetSpace=true] - include the space between the time and the offset, such as '05:15:16.345 -04:00'
1336
+ * @example DateTime.utc(2014, 7, 13).toSQL() //=> '2014-07-13 00:00:00.000 Z'
1337
+ * @example DateTime.local(2014, 7, 13).toSQL() //=> '2014-07-13 00:00:00.000 -04:00'
1338
+ * @example DateTime.local(2014, 7, 13).toSQL({ includeOffset: false }) //=> '2014-07-13 00:00:00.000'
1339
+ * @example DateTime.local(2014, 7, 13).toSQL({ includeZone: true }) //=> '2014-07-13 00:00:00.000 America/New_York'
1340
+ * @return {string}
1341
+ */
1342
+ toSQL(e = {}) {
1343
+ return this.isValid ? `${this.toSQLDate()} ${this.toSQLTime(e)}` : null;
1344
+ }
1345
+ /**
1346
+ * Returns a string representation of this DateTime appropriate for debugging
1347
+ * @return {string}
1348
+ */
1349
+ toString() {
1350
+ return this.isValid ? this.toISO() : Z;
1351
+ }
1352
+ /**
1353
+ * Returns a string representation of this DateTime appropriate for the REPL.
1354
+ * @return {string}
1355
+ */
1356
+ [Symbol.for("nodejs.util.inspect.custom")]() {
1357
+ return this.isValid ? `DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }` : `DateTime { Invalid, reason: ${this.invalidReason} }`;
1358
+ }
1359
+ /**
1360
+ * Returns the epoch milliseconds of this DateTime. Alias of {@link DateTime#toMillis}
1361
+ * @return {number}
1362
+ */
1363
+ valueOf() {
1364
+ return this.toMillis();
1365
+ }
1366
+ /**
1367
+ * Returns the epoch milliseconds of this DateTime.
1368
+ * @return {number}
1369
+ */
1370
+ toMillis() {
1371
+ return this.isValid ? this.ts : NaN;
1372
+ }
1373
+ /**
1374
+ * Returns the epoch seconds (including milliseconds in the fractional part) of this DateTime.
1375
+ * @return {number}
1376
+ */
1377
+ toSeconds() {
1378
+ return this.isValid ? this.ts / 1e3 : NaN;
1379
+ }
1380
+ /**
1381
+ * Returns the epoch seconds (as a whole number) of this DateTime.
1382
+ * @return {number}
1383
+ */
1384
+ toUnixInteger() {
1385
+ return this.isValid ? Math.floor(this.ts / 1e3) : NaN;
433
1386
  }
434
1387
  /**
435
- * Returns a string representation of this Interval formatted according to the specified format
436
- * string. **You may not want this.** See {@link Interval#toLocaleString} for a more flexible
437
- * formatting tool.
438
- * @param {string} dateFormat - The format string. This string formats the start and end time.
439
- * See {@link DateTime#toFormat} for details.
440
- * @param {Object} opts - Options.
441
- * @param {string} [opts.separator = ' – '] - A separator to place between the start and end
442
- * representations.
1388
+ * Returns an ISO 8601 representation of this DateTime appropriate for use in JSON.
443
1389
  * @return {string}
444
1390
  */
445
- toFormat(t, { separator: i = " – " } = {}) {
446
- return this.isValid ? `${this.s.toFormat(t)}${i}${this.e.toFormat(t)}` : d;
1391
+ toJSON() {
1392
+ return this.toISO();
1393
+ }
1394
+ /**
1395
+ * Returns a BSON serializable equivalent to this DateTime.
1396
+ * @return {Date}
1397
+ */
1398
+ toBSON() {
1399
+ return this.toJSDate();
1400
+ }
1401
+ /**
1402
+ * Returns a JavaScript object with this DateTime's year, month, day, and so on.
1403
+ * @param opts - options for generating the object
1404
+ * @param {boolean} [opts.includeConfig=false] - include configuration attributes in the output
1405
+ * @example DateTime.now().toObject() //=> { year: 2017, month: 4, day: 22, hour: 20, minute: 49, second: 42, millisecond: 268 }
1406
+ * @return {Object}
1407
+ */
1408
+ toObject(e = {}) {
1409
+ if (!this.isValid) return {};
1410
+ const t = { ...this.c };
1411
+ return e.includeConfig && (t.outputCalendar = this.outputCalendar, t.numberingSystem = this.loc.numberingSystem, t.locale = this.loc.locale), t;
1412
+ }
1413
+ /**
1414
+ * Returns a JavaScript Date equivalent to this DateTime.
1415
+ * @return {Date}
1416
+ */
1417
+ toJSDate() {
1418
+ return new Date(this.isValid ? this.ts : NaN);
447
1419
  }
1420
+ // COMPARE
448
1421
  /**
449
- * Return a Duration representing the time spanned by this interval.
450
- * @param {string|string[]} [unit=['milliseconds']] - the unit or units (such as 'hours' or 'days') to include in the duration.
1422
+ * Return the difference between two DateTimes as a Duration.
1423
+ * @param {DateTime} otherDateTime - the DateTime to compare this one to
1424
+ * @param {string|string[]} [unit=['milliseconds']] - the unit or array of units (such as 'hours' or 'days') to include in the duration.
451
1425
  * @param {Object} opts - options that affect the creation of the Duration
452
1426
  * @param {string} [opts.conversionAccuracy='casual'] - the conversion system to use
453
- * @example Interval.fromDateTimes(dt1, dt2).toDuration().toObject() //=> { milliseconds: 88489257 }
454
- * @example Interval.fromDateTimes(dt1, dt2).toDuration('days').toObject() //=> { days: 1.0241812152777778 }
455
- * @example Interval.fromDateTimes(dt1, dt2).toDuration(['hours', 'minutes']).toObject() //=> { hours: 24, minutes: 34.82095 }
456
- * @example Interval.fromDateTimes(dt1, dt2).toDuration(['hours', 'minutes', 'seconds']).toObject() //=> { hours: 24, minutes: 34, seconds: 49.257 }
457
- * @example Interval.fromDateTimes(dt1, dt2).toDuration('seconds').toObject() //=> { seconds: 88489.257 }
1427
+ * @example
1428
+ * var i1 = DateTime.fromISO('1982-05-25T09:45'),
1429
+ * i2 = DateTime.fromISO('1983-10-14T10:30');
1430
+ * i2.diff(i1).toObject() //=> { milliseconds: 43807500000 }
1431
+ * i2.diff(i1, 'hours').toObject() //=> { hours: 12168.75 }
1432
+ * i2.diff(i1, ['months', 'days']).toObject() //=> { months: 16, days: 19.03125 }
1433
+ * i2.diff(i1, ['months', 'days', 'hours']).toObject() //=> { months: 16, days: 19, hours: 0.75 }
458
1434
  * @return {Duration}
459
1435
  */
460
- toDuration(t, i) {
461
- return this.isValid ? this.e.diff(this.s, t, i) : h.invalid(this.invalidReason);
1436
+ diff(e, t = "milliseconds", i = {}) {
1437
+ if (!this.isValid || !e.isValid)
1438
+ return E.invalid("created by diffing an invalid DateTime");
1439
+ const r = { locale: this.locale, numberingSystem: this.numberingSystem, ...i }, a = Me(t).map(E.normalizeUnit), s = e.valueOf() > this.valueOf(), o = s ? this : e, u = s ? e : this, c = be(o, u, a, r);
1440
+ return s ? c.negate() : c;
1441
+ }
1442
+ /**
1443
+ * Return the difference between this DateTime and right now.
1444
+ * See {@link DateTime#diff}
1445
+ * @param {string|string[]} [unit=['milliseconds']] - the unit or units units (such as 'hours' or 'days') to include in the duration
1446
+ * @param {Object} opts - options that affect the creation of the Duration
1447
+ * @param {string} [opts.conversionAccuracy='casual'] - the conversion system to use
1448
+ * @return {Duration}
1449
+ */
1450
+ diffNow(e = "milliseconds", t = {}) {
1451
+ return this.diff(l.now(), e, t);
1452
+ }
1453
+ /**
1454
+ * Return an Interval spanning between this DateTime and another DateTime
1455
+ * @param {DateTime} otherDateTime - the other end point of the Interval
1456
+ * @return {Interval|DateTime}
1457
+ */
1458
+ until(e) {
1459
+ return this.isValid ? Se.fromDateTimes(this, e) : this;
1460
+ }
1461
+ /**
1462
+ * Return whether this DateTime is in the same unit of time as another DateTime.
1463
+ * Higher-order units must also be identical for this function to return `true`.
1464
+ * Note that time zones are **ignored** in this comparison, which compares the **local** calendar time. Use {@link DateTime#setZone} to convert one of the dates if needed.
1465
+ * @param {DateTime} otherDateTime - the other DateTime
1466
+ * @param {string} unit - the unit of time to check sameness on
1467
+ * @param {Object} opts - options
1468
+ * @param {boolean} [opts.useLocaleWeeks=false] - If true, use weeks based on the locale, i.e. use the locale-dependent start of the week; only the locale of this DateTime is used
1469
+ * @example DateTime.now().hasSame(otherDT, 'day'); //~> true if otherDT is in the same current calendar day
1470
+ * @return {boolean}
1471
+ */
1472
+ hasSame(e, t, i) {
1473
+ if (!this.isValid) return !1;
1474
+ const r = e.valueOf(), a = this.setZone(e.zone, { keepLocalTime: !0 });
1475
+ return a.startOf(t, i) <= r && r <= a.endOf(t, i);
1476
+ }
1477
+ /**
1478
+ * Equality check
1479
+ * Two DateTimes are equal if and only if they represent the same millisecond, have the same zone and location, and are both valid.
1480
+ * To compare just the millisecond values, use `+dt1 === +dt2`.
1481
+ * @param {DateTime} other - the other DateTime
1482
+ * @return {boolean}
1483
+ */
1484
+ equals(e) {
1485
+ return this.isValid && e.isValid && this.valueOf() === e.valueOf() && this.zone.equals(e.zone) && this.loc.equals(e.loc);
1486
+ }
1487
+ /**
1488
+ * Returns a string representation of a this time relative to now, such as "in two days". Can only internationalize if your
1489
+ * platform supports Intl.RelativeTimeFormat. Rounds down by default.
1490
+ * @param {Object} options - options that affect the output
1491
+ * @param {DateTime} [options.base=DateTime.now()] - the DateTime to use as the basis to which this time is compared. Defaults to now.
1492
+ * @param {string} [options.style="long"] - the style of units, must be "long", "short", or "narrow"
1493
+ * @param {string|string[]} options.unit - use a specific unit or array of units; if omitted, or an array, the method will pick the best unit. Use an array or one of "years", "quarters", "months", "weeks", "days", "hours", "minutes", or "seconds"
1494
+ * @param {boolean} [options.round=true] - whether to round the numbers in the output.
1495
+ * @param {number} [options.padding=0] - padding in milliseconds. This allows you to round up the result if it fits inside the threshold. Don't use in combination with {round: false} because the decimal output will include the padding.
1496
+ * @param {string} options.locale - override the locale of this DateTime
1497
+ * @param {string} options.numberingSystem - override the numberingSystem of this DateTime. The Intl system may choose not to honor this
1498
+ * @example DateTime.now().plus({ days: 1 }).toRelative() //=> "in 1 day"
1499
+ * @example DateTime.now().setLocale("es").toRelative({ days: 1 }) //=> "dentro de 1 día"
1500
+ * @example DateTime.now().plus({ days: 1 }).toRelative({ locale: "fr" }) //=> "dans 23 heures"
1501
+ * @example DateTime.now().minus({ days: 2 }).toRelative() //=> "2 days ago"
1502
+ * @example DateTime.now().minus({ days: 2 }).toRelative({ unit: "hours" }) //=> "48 hours ago"
1503
+ * @example DateTime.now().minus({ hours: 36 }).toRelative({ round: false }) //=> "1.5 days ago"
1504
+ */
1505
+ toRelative(e = {}) {
1506
+ if (!this.isValid) return null;
1507
+ const t = e.base || l.fromObject({}, { zone: this.zone }), i = e.padding ? this < t ? -e.padding : e.padding : 0;
1508
+ let r = ["years", "months", "days", "hours", "minutes", "seconds"], a = e.unit;
1509
+ return Array.isArray(e.unit) && (r = e.unit, a = void 0), ce(t, this.plus(i), {
1510
+ ...e,
1511
+ numeric: "always",
1512
+ units: r,
1513
+ unit: a
1514
+ });
462
1515
  }
463
1516
  /**
464
- * Run mapFn on the interval start and end, returning a new Interval from the resulting DateTimes
465
- * @param {function} mapFn
466
- * @return {Interval}
467
- * @example Interval.fromDateTimes(dt1, dt2).mapEndpoints(endpoint => endpoint.toUTC())
468
- * @example Interval.fromDateTimes(dt1, dt2).mapEndpoints(endpoint => endpoint.plus({ hours: 2 }))
1517
+ * Returns a string representation of this date relative to today, such as "yesterday" or "next month".
1518
+ * Only internationalizes on platforms that supports Intl.RelativeTimeFormat.
1519
+ * @param {Object} options - options that affect the output
1520
+ * @param {DateTime} [options.base=DateTime.now()] - the DateTime to use as the basis to which this time is compared. Defaults to now.
1521
+ * @param {string} options.locale - override the locale of this DateTime
1522
+ * @param {string} options.unit - use a specific unit; if omitted, the method will pick the unit. Use one of "years", "quarters", "months", "weeks", or "days"
1523
+ * @param {string} options.numberingSystem - override the numberingSystem of this DateTime. The Intl system may choose not to honor this
1524
+ * @example DateTime.now().plus({ days: 1 }).toRelativeCalendar() //=> "tomorrow"
1525
+ * @example DateTime.now().setLocale("es").plus({ days: 1 }).toRelative() //=> ""mañana"
1526
+ * @example DateTime.now().plus({ days: 1 }).toRelativeCalendar({ locale: "fr" }) //=> "demain"
1527
+ * @example DateTime.now().minus({ days: 2 }).toRelativeCalendar() //=> "2 days ago"
469
1528
  */
470
- mapEndpoints(t) {
471
- return a.fromDateTimes(t(this.s), t(this.e));
1529
+ toRelativeCalendar(e = {}) {
1530
+ return this.isValid ? ce(e.base || l.fromObject({}, { zone: this.zone }), this, {
1531
+ ...e,
1532
+ numeric: "auto",
1533
+ units: ["years", "months", "days"],
1534
+ calendary: !0
1535
+ }) : null;
472
1536
  }
1537
+ /**
1538
+ * Return the min of several date times
1539
+ * @param {...DateTime} dateTimes - the DateTimes from which to choose the minimum
1540
+ * @return {DateTime} the min DateTime, or undefined if called with no argument
1541
+ */
1542
+ static min(...e) {
1543
+ if (!e.every(l.isDateTime))
1544
+ throw new w("min requires all arguments be DateTimes");
1545
+ return te(e, (t) => t.valueOf(), Math.min);
1546
+ }
1547
+ /**
1548
+ * Return the max of several date times
1549
+ * @param {...DateTime} dateTimes - the DateTimes from which to choose the maximum
1550
+ * @return {DateTime} the max DateTime, or undefined if called with no argument
1551
+ */
1552
+ static max(...e) {
1553
+ if (!e.every(l.isDateTime))
1554
+ throw new w("max requires all arguments be DateTimes");
1555
+ return te(e, (t) => t.valueOf(), Math.max);
1556
+ }
1557
+ // MISC
1558
+ /**
1559
+ * Explain how a string would be parsed by fromFormat()
1560
+ * @param {string} text - the string to parse
1561
+ * @param {string} fmt - the format the string is expected to be in (see description)
1562
+ * @param {Object} options - options taken by fromFormat()
1563
+ * @return {Object}
1564
+ */
1565
+ static fromFormatExplain(e, t, i = {}) {
1566
+ const { locale: r = null, numberingSystem: a = null } = i, s = y.fromOpts({
1567
+ locale: r,
1568
+ numberingSystem: a,
1569
+ defaultToEN: !0
1570
+ });
1571
+ return He(s, e, t);
1572
+ }
1573
+ /**
1574
+ * @deprecated use fromFormatExplain instead
1575
+ */
1576
+ static fromStringExplain(e, t, i = {}) {
1577
+ return l.fromFormatExplain(e, t, i);
1578
+ }
1579
+ /**
1580
+ * Build a parser for `fmt` using the given locale. This parser can be passed
1581
+ * to {@link DateTime.fromFormatParser} to a parse a date in this format. This
1582
+ * can be used to optimize cases where many dates need to be parsed in a
1583
+ * specific format.
1584
+ *
1585
+ * @param {String} fmt - the format the string is expected to be in (see
1586
+ * description)
1587
+ * @param {Object} options - options used to set locale and numberingSystem
1588
+ * for parser
1589
+ * @returns {TokenParser} - opaque object to be used
1590
+ */
1591
+ static buildFormatParser(e, t = {}) {
1592
+ const { locale: i = null, numberingSystem: r = null } = t, a = y.fromOpts({
1593
+ locale: i,
1594
+ numberingSystem: r,
1595
+ defaultToEN: !0
1596
+ });
1597
+ return new Ue(a, e);
1598
+ }
1599
+ /**
1600
+ * Create a DateTime from an input string and format parser.
1601
+ *
1602
+ * The format parser must have been created with the same locale as this call.
1603
+ *
1604
+ * @param {String} text - the string to parse
1605
+ * @param {TokenParser} formatParser - parser from {@link DateTime.buildFormatParser}
1606
+ * @param {Object} opts - options taken by fromFormat()
1607
+ * @returns {DateTime}
1608
+ */
1609
+ static fromFormatParser(e, t, i = {}) {
1610
+ if (f(e) || f(t))
1611
+ throw new w(
1612
+ "fromFormatParser requires an input string and a format parser"
1613
+ );
1614
+ const { locale: r = null, numberingSystem: a = null } = i, s = y.fromOpts({
1615
+ locale: r,
1616
+ numberingSystem: a,
1617
+ defaultToEN: !0
1618
+ });
1619
+ if (!s.equals(t.locale))
1620
+ throw new w(
1621
+ `fromFormatParser called with a locale of ${s}, but the format parser was created for ${t.locale}`
1622
+ );
1623
+ const { result: o, zone: u, specificOffset: c, invalidReason: d } = t.explainFromTokens(e);
1624
+ return d ? l.invalid(d) : g(
1625
+ o,
1626
+ u,
1627
+ i,
1628
+ `format ${t.format}`,
1629
+ e,
1630
+ c
1631
+ );
1632
+ }
1633
+ // FORMAT PRESETS
1634
+ /**
1635
+ * {@link DateTime#toLocaleString} format like 10/14/1983
1636
+ * @type {Object}
1637
+ */
1638
+ static get DATE_SHORT() {
1639
+ return se;
1640
+ }
1641
+ /**
1642
+ * {@link DateTime#toLocaleString} format like 'Oct 14, 1983'
1643
+ * @type {Object}
1644
+ */
1645
+ static get DATE_MED() {
1646
+ return xe;
1647
+ }
1648
+ /**
1649
+ * {@link DateTime#toLocaleString} format like 'Fri, Oct 14, 1983'
1650
+ * @type {Object}
1651
+ */
1652
+ static get DATE_MED_WITH_WEEKDAY() {
1653
+ return Ye;
1654
+ }
1655
+ /**
1656
+ * {@link DateTime#toLocaleString} format like 'October 14, 1983'
1657
+ * @type {Object}
1658
+ */
1659
+ static get DATE_FULL() {
1660
+ return Ze;
1661
+ }
1662
+ /**
1663
+ * {@link DateTime#toLocaleString} format like 'Tuesday, October 14, 1983'
1664
+ * @type {Object}
1665
+ */
1666
+ static get DATE_HUGE() {
1667
+ return je;
1668
+ }
1669
+ /**
1670
+ * {@link DateTime#toLocaleString} format like '09:30 AM'. Only 12-hour if the locale is.
1671
+ * @type {Object}
1672
+ */
1673
+ static get TIME_SIMPLE() {
1674
+ return qe;
1675
+ }
1676
+ /**
1677
+ * {@link DateTime#toLocaleString} format like '09:30:23 AM'. Only 12-hour if the locale is.
1678
+ * @type {Object}
1679
+ */
1680
+ static get TIME_WITH_SECONDS() {
1681
+ return Ge;
1682
+ }
1683
+ /**
1684
+ * {@link DateTime#toLocaleString} format like '09:30:23 AM EDT'. Only 12-hour if the locale is.
1685
+ * @type {Object}
1686
+ */
1687
+ static get TIME_WITH_SHORT_OFFSET() {
1688
+ return Re;
1689
+ }
1690
+ /**
1691
+ * {@link DateTime#toLocaleString} format like '09:30:23 AM Eastern Daylight Time'. Only 12-hour if the locale is.
1692
+ * @type {Object}
1693
+ */
1694
+ static get TIME_WITH_LONG_OFFSET() {
1695
+ return $e;
1696
+ }
1697
+ /**
1698
+ * {@link DateTime#toLocaleString} format like '09:30', always 24-hour.
1699
+ * @type {Object}
1700
+ */
1701
+ static get TIME_24_SIMPLE() {
1702
+ return Pe;
1703
+ }
1704
+ /**
1705
+ * {@link DateTime#toLocaleString} format like '09:30:23', always 24-hour.
1706
+ * @type {Object}
1707
+ */
1708
+ static get TIME_24_WITH_SECONDS() {
1709
+ return Qe;
1710
+ }
1711
+ /**
1712
+ * {@link DateTime#toLocaleString} format like '09:30:23 EDT', always 24-hour.
1713
+ * @type {Object}
1714
+ */
1715
+ static get TIME_24_WITH_SHORT_OFFSET() {
1716
+ return Je;
1717
+ }
1718
+ /**
1719
+ * {@link DateTime#toLocaleString} format like '09:30:23 Eastern Daylight Time', always 24-hour.
1720
+ * @type {Object}
1721
+ */
1722
+ static get TIME_24_WITH_LONG_OFFSET() {
1723
+ return Ke;
1724
+ }
1725
+ /**
1726
+ * {@link DateTime#toLocaleString} format like '10/14/1983, 9:30 AM'. Only 12-hour if the locale is.
1727
+ * @type {Object}
1728
+ */
1729
+ static get DATETIME_SHORT() {
1730
+ return Be;
1731
+ }
1732
+ /**
1733
+ * {@link DateTime#toLocaleString} format like '10/14/1983, 9:30:33 AM'. Only 12-hour if the locale is.
1734
+ * @type {Object}
1735
+ */
1736
+ static get DATETIME_SHORT_WITH_SECONDS() {
1737
+ return Xe;
1738
+ }
1739
+ /**
1740
+ * {@link DateTime#toLocaleString} format like 'Oct 14, 1983, 9:30 AM'. Only 12-hour if the locale is.
1741
+ * @type {Object}
1742
+ */
1743
+ static get DATETIME_MED() {
1744
+ return et;
1745
+ }
1746
+ /**
1747
+ * {@link DateTime#toLocaleString} format like 'Oct 14, 1983, 9:30:33 AM'. Only 12-hour if the locale is.
1748
+ * @type {Object}
1749
+ */
1750
+ static get DATETIME_MED_WITH_SECONDS() {
1751
+ return tt;
1752
+ }
1753
+ /**
1754
+ * {@link DateTime#toLocaleString} format like 'Fri, 14 Oct 1983, 9:30 AM'. Only 12-hour if the locale is.
1755
+ * @type {Object}
1756
+ */
1757
+ static get DATETIME_MED_WITH_WEEKDAY() {
1758
+ return nt;
1759
+ }
1760
+ /**
1761
+ * {@link DateTime#toLocaleString} format like 'October 14, 1983, 9:30 AM EDT'. Only 12-hour if the locale is.
1762
+ * @type {Object}
1763
+ */
1764
+ static get DATETIME_FULL() {
1765
+ return it;
1766
+ }
1767
+ /**
1768
+ * {@link DateTime#toLocaleString} format like 'October 14, 1983, 9:30:33 AM EDT'. Only 12-hour if the locale is.
1769
+ * @type {Object}
1770
+ */
1771
+ static get DATETIME_FULL_WITH_SECONDS() {
1772
+ return rt;
1773
+ }
1774
+ /**
1775
+ * {@link DateTime#toLocaleString} format like 'Friday, October 14, 1983, 9:30 AM Eastern Daylight Time'. Only 12-hour if the locale is.
1776
+ * @type {Object}
1777
+ */
1778
+ static get DATETIME_HUGE() {
1779
+ return st;
1780
+ }
1781
+ /**
1782
+ * {@link DateTime#toLocaleString} format like 'Friday, October 14, 1983, 9:30:33 AM Eastern Daylight Time'. Only 12-hour if the locale is.
1783
+ * @type {Object}
1784
+ */
1785
+ static get DATETIME_HUGE_WITH_SECONDS() {
1786
+ return at;
1787
+ }
1788
+ }
1789
+ function Wt(n) {
1790
+ if (l.isDateTime(n))
1791
+ return n;
1792
+ if (n && n.valueOf && U(n.valueOf()))
1793
+ return l.fromJSDate(n);
1794
+ if (n && typeof n == "object")
1795
+ return l.fromObject(n);
1796
+ throw new w(
1797
+ `Unknown datetime argument: ${n}, of type ${typeof n}`
1798
+ );
473
1799
  }
474
1800
  export {
475
- a as default
1801
+ l as default,
1802
+ Wt as friendlyDateTime
476
1803
  };
477
1804
  //# sourceMappingURL=index.es188.js.map