@duplojs/utils 1.1.16 → 1.2.17

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 (482) hide show
  1. package/dist/array/index.cjs +28 -28
  2. package/dist/array/index.mjs +14 -14
  3. package/dist/array/reduce.cjs +0 -2
  4. package/dist/array/reduce.mjs +0 -2
  5. package/dist/array/reduceRight.cjs +0 -2
  6. package/dist/array/reduceRight.mjs +0 -2
  7. package/dist/array/types/extractTuple.d.ts +1 -1
  8. package/dist/common/asyncInnerPipe.d.ts +16 -11
  9. package/dist/common/asyncPipe.d.ts +16 -11
  10. package/dist/common/builder.cjs +5 -11
  11. package/dist/common/builder.d.ts +7 -7
  12. package/dist/common/builder.mjs +4 -10
  13. package/dist/common/createKindIdentifier.cjs +1 -3
  14. package/dist/common/createKindIdentifier.mjs +1 -3
  15. package/dist/common/equal.d.ts +4 -4
  16. package/dist/common/errorKindNamespace.cjs +9 -0
  17. package/dist/common/errorKindNamespace.d.ts +1 -0
  18. package/dist/common/errorKindNamespace.mjs +7 -0
  19. package/dist/common/forwardLog.cjs +8 -0
  20. package/dist/common/forwardLog.d.ts +1 -0
  21. package/dist/common/forwardLog.mjs +6 -0
  22. package/dist/common/index.d.ts +3 -0
  23. package/dist/common/innerPipe.d.ts +16 -11
  24. package/dist/common/instanceOf.cjs +0 -2
  25. package/dist/common/instanceOf.mjs +0 -2
  26. package/dist/common/kind.d.ts +1 -0
  27. package/dist/common/override.cjs +36 -0
  28. package/dist/common/override.d.ts +18 -0
  29. package/dist/common/override.mjs +34 -0
  30. package/dist/common/pipe.d.ts +16 -11
  31. package/dist/common/stringToBytes.cjs +4 -9
  32. package/dist/common/stringToBytes.d.ts +4 -4
  33. package/dist/common/stringToBytes.mjs +4 -9
  34. package/dist/common/stringToMillisecond.cjs +4 -9
  35. package/dist/common/stringToMillisecond.d.ts +4 -4
  36. package/dist/common/stringToMillisecond.mjs +4 -9
  37. package/dist/common/types/objectEntry.d.ts +1 -1
  38. package/dist/dataParser/base.cjs +7 -6
  39. package/dist/dataParser/base.d.ts +3 -0
  40. package/dist/dataParser/base.mjs +7 -6
  41. package/dist/dataParser/baseExtended.cjs +12 -14
  42. package/dist/dataParser/baseExtended.d.ts +3 -0
  43. package/dist/dataParser/baseExtended.mjs +12 -14
  44. package/dist/dataParser/extended/array.cjs +4 -5
  45. package/dist/dataParser/extended/array.d.ts +3 -0
  46. package/dist/dataParser/extended/array.mjs +4 -5
  47. package/dist/dataParser/extended/bigint.cjs +4 -5
  48. package/dist/dataParser/extended/bigint.d.ts +3 -0
  49. package/dist/dataParser/extended/bigint.mjs +4 -5
  50. package/dist/dataParser/extended/boolean.cjs +4 -5
  51. package/dist/dataParser/extended/boolean.d.ts +3 -0
  52. package/dist/dataParser/extended/boolean.mjs +4 -5
  53. package/dist/dataParser/extended/coerce/bigint.cjs +0 -4
  54. package/dist/dataParser/extended/coerce/bigint.mjs +0 -4
  55. package/dist/dataParser/extended/coerce/boolean.cjs +0 -4
  56. package/dist/dataParser/extended/coerce/boolean.mjs +0 -4
  57. package/dist/dataParser/extended/coerce/date.cjs +12 -0
  58. package/dist/dataParser/extended/coerce/date.d.ts +7 -0
  59. package/dist/dataParser/extended/coerce/date.mjs +10 -0
  60. package/dist/dataParser/extended/coerce/empty.cjs +0 -4
  61. package/dist/dataParser/extended/coerce/empty.mjs +0 -4
  62. package/dist/dataParser/extended/coerce/index.cjs +2 -0
  63. package/dist/dataParser/extended/coerce/index.d.ts +1 -0
  64. package/dist/dataParser/extended/coerce/index.mjs +1 -0
  65. package/dist/dataParser/extended/coerce/nil.cjs +0 -4
  66. package/dist/dataParser/extended/coerce/nil.mjs +0 -4
  67. package/dist/dataParser/extended/coerce/number.cjs +0 -4
  68. package/dist/dataParser/extended/coerce/number.mjs +0 -4
  69. package/dist/dataParser/extended/coerce/string.cjs +0 -4
  70. package/dist/dataParser/extended/coerce/string.mjs +0 -4
  71. package/dist/dataParser/extended/date.cjs +13 -0
  72. package/dist/dataParser/extended/date.d.ts +23 -0
  73. package/dist/dataParser/extended/date.mjs +11 -0
  74. package/dist/dataParser/extended/empty.cjs +4 -5
  75. package/dist/dataParser/extended/empty.d.ts +3 -0
  76. package/dist/dataParser/extended/empty.mjs +4 -5
  77. package/dist/dataParser/extended/index.cjs +15 -0
  78. package/dist/dataParser/extended/index.d.ts +3 -0
  79. package/dist/dataParser/extended/index.mjs +2 -0
  80. package/dist/dataParser/extended/lazy.cjs +4 -5
  81. package/dist/dataParser/extended/lazy.d.ts +3 -0
  82. package/dist/dataParser/extended/lazy.mjs +4 -5
  83. package/dist/dataParser/extended/literal.cjs +4 -5
  84. package/dist/dataParser/extended/literal.d.ts +3 -0
  85. package/dist/dataParser/extended/literal.mjs +4 -5
  86. package/dist/dataParser/extended/nil.cjs +4 -5
  87. package/dist/dataParser/extended/nil.d.ts +3 -0
  88. package/dist/dataParser/extended/nil.mjs +4 -5
  89. package/dist/dataParser/extended/nullable.cjs +4 -5
  90. package/dist/dataParser/extended/nullable.d.ts +3 -0
  91. package/dist/dataParser/extended/nullable.mjs +4 -5
  92. package/dist/dataParser/extended/number.cjs +4 -5
  93. package/dist/dataParser/extended/number.d.ts +3 -0
  94. package/dist/dataParser/extended/number.mjs +4 -5
  95. package/dist/dataParser/extended/object.cjs +19 -6
  96. package/dist/dataParser/extended/object.d.ts +5 -0
  97. package/dist/dataParser/extended/object.mjs +19 -6
  98. package/dist/dataParser/extended/optional.cjs +4 -5
  99. package/dist/dataParser/extended/optional.d.ts +3 -0
  100. package/dist/dataParser/extended/optional.mjs +4 -5
  101. package/dist/dataParser/extended/pipe.cjs +4 -5
  102. package/dist/dataParser/extended/pipe.d.ts +3 -0
  103. package/dist/dataParser/extended/pipe.mjs +4 -5
  104. package/dist/dataParser/extended/record.cjs +4 -5
  105. package/dist/dataParser/extended/record.d.ts +3 -0
  106. package/dist/dataParser/extended/record.mjs +4 -5
  107. package/dist/dataParser/extended/recover.cjs +4 -5
  108. package/dist/dataParser/extended/recover.d.ts +3 -0
  109. package/dist/dataParser/extended/recover.mjs +4 -5
  110. package/dist/dataParser/extended/string.cjs +4 -5
  111. package/dist/dataParser/extended/string.d.ts +3 -0
  112. package/dist/dataParser/extended/string.mjs +4 -5
  113. package/dist/dataParser/extended/templateLiteral.cjs +4 -5
  114. package/dist/dataParser/extended/templateLiteral.d.ts +3 -0
  115. package/dist/dataParser/extended/templateLiteral.mjs +4 -5
  116. package/dist/dataParser/extended/transform.cjs +4 -5
  117. package/dist/dataParser/extended/transform.d.ts +3 -0
  118. package/dist/dataParser/extended/transform.mjs +4 -5
  119. package/dist/dataParser/extended/tuple.cjs +6 -7
  120. package/dist/dataParser/extended/tuple.d.ts +3 -0
  121. package/dist/dataParser/extended/tuple.mjs +6 -7
  122. package/dist/dataParser/extended/union.cjs +4 -5
  123. package/dist/dataParser/extended/union.d.ts +3 -0
  124. package/dist/dataParser/extended/union.mjs +4 -5
  125. package/dist/dataParser/extended/unknown.cjs +4 -5
  126. package/dist/dataParser/extended/unknown.d.ts +3 -0
  127. package/dist/dataParser/extended/unknown.mjs +4 -5
  128. package/dist/dataParser/identifier.cjs +0 -2
  129. package/dist/dataParser/identifier.d.ts +52 -10
  130. package/dist/dataParser/identifier.mjs +0 -2
  131. package/dist/dataParser/index.cjs +72 -65
  132. package/dist/dataParser/index.mjs +21 -18
  133. package/dist/dataParser/kind.cjs +0 -2
  134. package/dist/dataParser/kind.mjs +0 -2
  135. package/dist/dataParser/parsers/array/index.cjs +4 -1
  136. package/dist/dataParser/parsers/array/index.d.ts +3 -0
  137. package/dist/dataParser/parsers/array/index.mjs +4 -1
  138. package/dist/dataParser/parsers/bigint/index.cjs +4 -1
  139. package/dist/dataParser/parsers/bigint/index.d.ts +3 -0
  140. package/dist/dataParser/parsers/bigint/index.mjs +4 -1
  141. package/dist/dataParser/parsers/boolean.cjs +4 -1
  142. package/dist/dataParser/parsers/boolean.d.ts +3 -0
  143. package/dist/dataParser/parsers/boolean.mjs +4 -1
  144. package/dist/dataParser/parsers/coerce/bigint.cjs +0 -4
  145. package/dist/dataParser/parsers/coerce/bigint.mjs +0 -4
  146. package/dist/dataParser/parsers/coerce/boolean.cjs +0 -4
  147. package/dist/dataParser/parsers/coerce/boolean.mjs +0 -4
  148. package/dist/dataParser/parsers/coerce/date.cjs +12 -0
  149. package/dist/dataParser/parsers/coerce/date.d.ts +6 -0
  150. package/dist/dataParser/parsers/coerce/date.mjs +10 -0
  151. package/dist/dataParser/parsers/coerce/empty.cjs +0 -4
  152. package/dist/dataParser/parsers/coerce/empty.mjs +0 -4
  153. package/dist/dataParser/parsers/coerce/index.cjs +2 -0
  154. package/dist/dataParser/parsers/coerce/index.d.ts +1 -0
  155. package/dist/dataParser/parsers/coerce/index.mjs +1 -0
  156. package/dist/dataParser/parsers/coerce/nil.cjs +0 -4
  157. package/dist/dataParser/parsers/coerce/nil.mjs +0 -4
  158. package/dist/dataParser/parsers/coerce/number.cjs +0 -4
  159. package/dist/dataParser/parsers/coerce/number.mjs +0 -4
  160. package/dist/dataParser/parsers/coerce/string.cjs +0 -4
  161. package/dist/dataParser/parsers/coerce/string.mjs +0 -4
  162. package/dist/dataParser/parsers/date.cjs +50 -0
  163. package/dist/dataParser/parsers/date.d.ts +28 -0
  164. package/dist/dataParser/parsers/date.mjs +47 -0
  165. package/dist/dataParser/parsers/empty.cjs +4 -1
  166. package/dist/dataParser/parsers/empty.d.ts +3 -0
  167. package/dist/dataParser/parsers/empty.mjs +4 -1
  168. package/dist/dataParser/parsers/index.d.ts +1 -0
  169. package/dist/dataParser/parsers/lazy.cjs +5 -4
  170. package/dist/dataParser/parsers/lazy.d.ts +3 -0
  171. package/dist/dataParser/parsers/lazy.mjs +5 -4
  172. package/dist/dataParser/parsers/literal.cjs +5 -4
  173. package/dist/dataParser/parsers/literal.d.ts +3 -0
  174. package/dist/dataParser/parsers/literal.mjs +5 -4
  175. package/dist/dataParser/parsers/nil.cjs +4 -1
  176. package/dist/dataParser/parsers/nil.d.ts +3 -0
  177. package/dist/dataParser/parsers/nil.mjs +4 -1
  178. package/dist/dataParser/parsers/nullable.cjs +4 -1
  179. package/dist/dataParser/parsers/nullable.d.ts +3 -0
  180. package/dist/dataParser/parsers/nullable.mjs +4 -1
  181. package/dist/dataParser/parsers/number/index.cjs +4 -1
  182. package/dist/dataParser/parsers/number/index.d.ts +3 -0
  183. package/dist/dataParser/parsers/number/index.mjs +4 -1
  184. package/dist/dataParser/parsers/{object.cjs → object/index.cjs} +13 -12
  185. package/dist/dataParser/parsers/{object.d.ts → object/index.d.ts} +16 -12
  186. package/dist/dataParser/parsers/{object.mjs → object/index.mjs} +13 -12
  187. package/dist/dataParser/parsers/object/omit.cjs +15 -0
  188. package/dist/dataParser/parsers/object/omit.d.ts +6 -0
  189. package/dist/dataParser/parsers/object/omit.mjs +13 -0
  190. package/dist/dataParser/parsers/object/pick.cjs +15 -0
  191. package/dist/dataParser/parsers/object/pick.d.ts +6 -0
  192. package/dist/dataParser/parsers/object/pick.mjs +13 -0
  193. package/dist/dataParser/parsers/optional.cjs +4 -1
  194. package/dist/dataParser/parsers/optional.d.ts +3 -0
  195. package/dist/dataParser/parsers/optional.mjs +4 -1
  196. package/dist/dataParser/parsers/pipe.cjs +4 -1
  197. package/dist/dataParser/parsers/pipe.d.ts +3 -0
  198. package/dist/dataParser/parsers/pipe.mjs +4 -1
  199. package/dist/dataParser/parsers/record/findRecordRequiredKey.cjs +17 -20
  200. package/dist/dataParser/parsers/record/findRecordRequiredKey.mjs +17 -20
  201. package/dist/dataParser/parsers/record/index.cjs +4 -1
  202. package/dist/dataParser/parsers/record/index.d.ts +3 -0
  203. package/dist/dataParser/parsers/record/index.mjs +4 -1
  204. package/dist/dataParser/parsers/recover.cjs +4 -1
  205. package/dist/dataParser/parsers/recover.d.ts +3 -0
  206. package/dist/dataParser/parsers/recover.mjs +4 -1
  207. package/dist/dataParser/parsers/string/index.cjs +4 -1
  208. package/dist/dataParser/parsers/string/index.d.ts +3 -0
  209. package/dist/dataParser/parsers/string/index.mjs +4 -1
  210. package/dist/dataParser/parsers/templateLiteral/createTemplateLiteralPattern.cjs +14 -17
  211. package/dist/dataParser/parsers/templateLiteral/createTemplateLiteralPattern.mjs +14 -17
  212. package/dist/dataParser/parsers/templateLiteral/index.cjs +5 -4
  213. package/dist/dataParser/parsers/templateLiteral/index.d.ts +3 -0
  214. package/dist/dataParser/parsers/templateLiteral/index.mjs +5 -4
  215. package/dist/dataParser/parsers/transform.cjs +4 -1
  216. package/dist/dataParser/parsers/transform.d.ts +3 -0
  217. package/dist/dataParser/parsers/transform.mjs +4 -1
  218. package/dist/dataParser/parsers/tuple.cjs +4 -1
  219. package/dist/dataParser/parsers/tuple.d.ts +3 -0
  220. package/dist/dataParser/parsers/tuple.mjs +4 -1
  221. package/dist/dataParser/parsers/union.cjs +4 -1
  222. package/dist/dataParser/parsers/union.d.ts +3 -0
  223. package/dist/dataParser/parsers/union.mjs +4 -1
  224. package/dist/dataParser/parsers/unknown.cjs +4 -1
  225. package/dist/dataParser/parsers/unknown.d.ts +3 -0
  226. package/dist/dataParser/parsers/unknown.mjs +4 -1
  227. package/dist/dataParser/types/dataParsers.d.ts +2 -2
  228. package/dist/date/closestTo.cjs +32 -0
  229. package/dist/date/closestTo.d.ts +7 -0
  230. package/dist/date/closestTo.mjs +30 -0
  231. package/dist/date/constants.cjs +29 -0
  232. package/dist/date/constants.d.ts +13 -0
  233. package/dist/date/constants.mjs +15 -0
  234. package/dist/date/create.cjs +50 -0
  235. package/dist/date/create.d.ts +16 -0
  236. package/dist/date/create.mjs +48 -0
  237. package/dist/date/createOrThrow.cjs +25 -0
  238. package/dist/date/createOrThrow.d.ts +10 -0
  239. package/dist/date/createOrThrow.mjs +22 -0
  240. package/dist/date/each.cjs +47 -0
  241. package/dist/date/each.d.ts +5 -0
  242. package/dist/date/each.mjs +45 -0
  243. package/dist/date/getters/getDayOfMonth.cjs +17 -0
  244. package/dist/date/getters/getDayOfMonth.d.ts +2 -0
  245. package/dist/date/getters/getDayOfMonth.mjs +15 -0
  246. package/dist/date/getters/getDayOfWeek.cjs +27 -0
  247. package/dist/date/getters/getDayOfWeek.d.ts +2 -0
  248. package/dist/date/getters/getDayOfWeek.mjs +25 -0
  249. package/dist/date/getters/getDayOfYear.cjs +34 -0
  250. package/dist/date/getters/getDayOfYear.d.ts +2 -0
  251. package/dist/date/getters/getDayOfYear.mjs +32 -0
  252. package/dist/date/getters/getFirstDayOfMonth.cjs +14 -0
  253. package/dist/date/getters/getFirstDayOfMonth.d.ts +2 -0
  254. package/dist/date/getters/getFirstDayOfMonth.mjs +12 -0
  255. package/dist/date/getters/getFirstDayOfWeek.cjs +16 -0
  256. package/dist/date/getters/getFirstDayOfWeek.d.ts +2 -0
  257. package/dist/date/getters/getFirstDayOfWeek.mjs +14 -0
  258. package/dist/date/getters/getHour.cjs +18 -0
  259. package/dist/date/getters/getHour.d.ts +2 -0
  260. package/dist/date/getters/getHour.mjs +16 -0
  261. package/dist/date/getters/getLastDayOfMonth.cjs +14 -0
  262. package/dist/date/getters/getLastDayOfMonth.d.ts +2 -0
  263. package/dist/date/getters/getLastDayOfMonth.mjs +12 -0
  264. package/dist/date/getters/getLastDayOfWeek.cjs +16 -0
  265. package/dist/date/getters/getLastDayOfWeek.d.ts +2 -0
  266. package/dist/date/getters/getLastDayOfWeek.mjs +14 -0
  267. package/dist/date/getters/getMilliseconds.cjs +10 -0
  268. package/dist/date/getters/getMilliseconds.d.ts +2 -0
  269. package/dist/date/getters/getMilliseconds.mjs +8 -0
  270. package/dist/date/getters/getMinute.cjs +17 -0
  271. package/dist/date/getters/getMinute.d.ts +2 -0
  272. package/dist/date/getters/getMinute.mjs +15 -0
  273. package/dist/date/getters/getMonth.cjs +17 -0
  274. package/dist/date/getters/getMonth.d.ts +2 -0
  275. package/dist/date/getters/getMonth.mjs +15 -0
  276. package/dist/date/getters/getSecond.cjs +17 -0
  277. package/dist/date/getters/getSecond.d.ts +2 -0
  278. package/dist/date/getters/getSecond.mjs +15 -0
  279. package/dist/date/getters/getWeekOfYear.cjs +37 -0
  280. package/dist/date/getters/getWeekOfYear.d.ts +2 -0
  281. package/dist/date/getters/getWeekOfYear.mjs +35 -0
  282. package/dist/date/getters/getYear.cjs +17 -0
  283. package/dist/date/getters/getYear.d.ts +2 -0
  284. package/dist/date/getters/getYear.mjs +15 -0
  285. package/dist/date/getters/index.d.ts +15 -0
  286. package/dist/date/index.cjs +121 -0
  287. package/dist/date/index.d.ts +18 -0
  288. package/dist/date/index.mjs +51 -0
  289. package/dist/date/isSafeTimestamp.cjs +15 -0
  290. package/dist/date/isSafeTimestamp.d.ts +1 -0
  291. package/dist/date/isSafeTimestamp.mjs +13 -0
  292. package/dist/date/now.cjs +8 -0
  293. package/dist/date/now.d.ts +1 -0
  294. package/dist/date/now.mjs +6 -0
  295. package/dist/date/operators/addDays.cjs +20 -0
  296. package/dist/date/operators/addDays.d.ts +4 -0
  297. package/dist/date/operators/addDays.mjs +18 -0
  298. package/dist/date/operators/addHours.cjs +20 -0
  299. package/dist/date/operators/addHours.d.ts +4 -0
  300. package/dist/date/operators/addHours.mjs +18 -0
  301. package/dist/date/operators/addMilliseconds.cjs +19 -0
  302. package/dist/date/operators/addMilliseconds.d.ts +4 -0
  303. package/dist/date/operators/addMilliseconds.mjs +17 -0
  304. package/dist/date/operators/addMinutes.cjs +20 -0
  305. package/dist/date/operators/addMinutes.d.ts +4 -0
  306. package/dist/date/operators/addMinutes.mjs +18 -0
  307. package/dist/date/operators/addMonths.cjs +19 -0
  308. package/dist/date/operators/addMonths.d.ts +4 -0
  309. package/dist/date/operators/addMonths.mjs +17 -0
  310. package/dist/date/operators/addSeconds.cjs +20 -0
  311. package/dist/date/operators/addSeconds.d.ts +4 -0
  312. package/dist/date/operators/addSeconds.mjs +18 -0
  313. package/dist/date/operators/addWeeks.cjs +20 -0
  314. package/dist/date/operators/addWeeks.d.ts +4 -0
  315. package/dist/date/operators/addWeeks.mjs +18 -0
  316. package/dist/date/operators/addYears.cjs +19 -0
  317. package/dist/date/operators/addYears.d.ts +4 -0
  318. package/dist/date/operators/addYears.mjs +17 -0
  319. package/dist/date/operators/between.cjs +17 -0
  320. package/dist/date/operators/between.d.ts +3 -0
  321. package/dist/date/operators/between.mjs +15 -0
  322. package/dist/date/operators/betweenThan.cjs +17 -0
  323. package/dist/date/operators/betweenThan.d.ts +3 -0
  324. package/dist/date/operators/betweenThan.mjs +15 -0
  325. package/dist/date/operators/greater.cjs +16 -0
  326. package/dist/date/operators/greater.d.ts +3 -0
  327. package/dist/date/operators/greater.mjs +14 -0
  328. package/dist/date/operators/greaterThan.cjs +16 -0
  329. package/dist/date/operators/greaterThan.d.ts +3 -0
  330. package/dist/date/operators/greaterThan.mjs +14 -0
  331. package/dist/date/operators/index.d.ts +22 -0
  332. package/dist/date/operators/less.cjs +16 -0
  333. package/dist/date/operators/less.d.ts +3 -0
  334. package/dist/date/operators/less.mjs +14 -0
  335. package/dist/date/operators/lessThan.cjs +16 -0
  336. package/dist/date/operators/lessThan.d.ts +3 -0
  337. package/dist/date/operators/lessThan.mjs +14 -0
  338. package/dist/date/operators/subtractDays.cjs +20 -0
  339. package/dist/date/operators/subtractDays.d.ts +4 -0
  340. package/dist/date/operators/subtractDays.mjs +18 -0
  341. package/dist/date/operators/subtractHours.cjs +20 -0
  342. package/dist/date/operators/subtractHours.d.ts +4 -0
  343. package/dist/date/operators/subtractHours.mjs +18 -0
  344. package/dist/date/operators/subtractMilliseconds.cjs +19 -0
  345. package/dist/date/operators/subtractMilliseconds.d.ts +4 -0
  346. package/dist/date/operators/subtractMilliseconds.mjs +17 -0
  347. package/dist/date/operators/subtractMinutes.cjs +20 -0
  348. package/dist/date/operators/subtractMinutes.d.ts +4 -0
  349. package/dist/date/operators/subtractMinutes.mjs +18 -0
  350. package/dist/date/operators/subtractMonths.cjs +19 -0
  351. package/dist/date/operators/subtractMonths.d.ts +4 -0
  352. package/dist/date/operators/subtractMonths.mjs +17 -0
  353. package/dist/date/operators/subtractSeconds.cjs +20 -0
  354. package/dist/date/operators/subtractSeconds.d.ts +4 -0
  355. package/dist/date/operators/subtractSeconds.mjs +18 -0
  356. package/dist/date/operators/subtractWeeks.cjs +20 -0
  357. package/dist/date/operators/subtractWeeks.d.ts +4 -0
  358. package/dist/date/operators/subtractWeeks.mjs +18 -0
  359. package/dist/date/operators/subtractYears.cjs +19 -0
  360. package/dist/date/operators/subtractYears.d.ts +4 -0
  361. package/dist/date/operators/subtractYears.mjs +17 -0
  362. package/dist/date/round.cjs +23 -0
  363. package/dist/date/round.d.ts +3 -0
  364. package/dist/date/round.mjs +21 -0
  365. package/dist/date/toISOString.cjs +10 -0
  366. package/dist/date/toISOString.d.ts +2 -0
  367. package/dist/date/toISOString.mjs +8 -0
  368. package/dist/date/toNative.cjs +10 -0
  369. package/dist/date/toNative.d.ts +2 -0
  370. package/dist/date/toNative.mjs +8 -0
  371. package/dist/date/toTimestamp.cjs +31 -0
  372. package/dist/date/toTimestamp.d.ts +10 -0
  373. package/dist/date/toTimestamp.mjs +28 -0
  374. package/dist/date/today.cjs +8 -0
  375. package/dist/date/today.d.ts +1 -0
  376. package/dist/date/today.mjs +6 -0
  377. package/dist/date/tomorrow.cjs +10 -0
  378. package/dist/date/tomorrow.d.ts +1 -0
  379. package/dist/date/tomorrow.mjs +8 -0
  380. package/dist/date/types/index.d.ts +6 -0
  381. package/dist/date/types/isLeapYear.d.ts +8 -0
  382. package/dist/date/types/month.d.ts +9 -0
  383. package/dist/date/types/theDate.d.ts +1 -0
  384. package/dist/date/types/time.d.ts +5 -0
  385. package/dist/date/types/timezone.cjs +606 -0
  386. package/dist/date/types/timezone.d.ts +604 -0
  387. package/dist/date/types/timezone.mjs +604 -0
  388. package/dist/date/types/unit.d.ts +1 -0
  389. package/dist/date/yesterday.cjs +10 -0
  390. package/dist/date/yesterday.d.ts +1 -0
  391. package/dist/date/yesterday.mjs +8 -0
  392. package/dist/either/bool/falsy.cjs +2 -4
  393. package/dist/either/bool/falsy.mjs +2 -4
  394. package/dist/either/bool/truthy.cjs +4 -6
  395. package/dist/either/bool/truthy.mjs +4 -6
  396. package/dist/either/future/create.cjs +0 -2
  397. package/dist/either/future/create.mjs +0 -2
  398. package/dist/either/future/error.cjs +2 -4
  399. package/dist/either/future/error.mjs +2 -4
  400. package/dist/either/future/success.cjs +0 -2
  401. package/dist/either/future/success.mjs +0 -2
  402. package/dist/either/index.cjs +7 -7
  403. package/dist/either/index.mjs +3 -3
  404. package/dist/either/kind.cjs +0 -2
  405. package/dist/either/kind.mjs +0 -2
  406. package/dist/either/left/when.cjs +1 -3
  407. package/dist/either/left/when.mjs +1 -3
  408. package/dist/either/nullable/empty.cjs +3 -5
  409. package/dist/either/nullable/empty.mjs +3 -5
  410. package/dist/either/nullable/filled.cjs +4 -6
  411. package/dist/either/nullable/filled.mjs +4 -6
  412. package/dist/either/nullish/empty.cjs +3 -5
  413. package/dist/either/nullish/empty.mjs +3 -5
  414. package/dist/either/nullish/filled.cjs +3 -5
  415. package/dist/either/nullish/filled.mjs +3 -5
  416. package/dist/either/optional/empty.cjs +0 -2
  417. package/dist/either/optional/empty.mjs +0 -2
  418. package/dist/either/optional/filled.cjs +4 -6
  419. package/dist/either/optional/filled.mjs +4 -6
  420. package/dist/either/right/asyncPipe.cjs +2 -4
  421. package/dist/either/right/asyncPipe.d.ts +5 -0
  422. package/dist/either/right/asyncPipe.mjs +2 -4
  423. package/dist/either/right/pipe.cjs +1 -3
  424. package/dist/either/right/pipe.d.ts +5 -0
  425. package/dist/either/right/pipe.mjs +1 -3
  426. package/dist/either/right/when.cjs +1 -3
  427. package/dist/either/right/when.mjs +1 -3
  428. package/dist/either/whenHasInformation.cjs +1 -3
  429. package/dist/either/whenHasInformation.mjs +1 -3
  430. package/dist/generator/asyncReduce.cjs +0 -2
  431. package/dist/generator/asyncReduce.mjs +0 -2
  432. package/dist/generator/reduce.cjs +0 -2
  433. package/dist/generator/reduce.mjs +0 -2
  434. package/dist/index.cjs +39 -30
  435. package/dist/index.d.ts +2 -0
  436. package/dist/index.mjs +36 -30
  437. package/dist/number/between.cjs +12 -0
  438. package/dist/number/between.d.ts +2 -0
  439. package/dist/number/between.mjs +10 -0
  440. package/dist/number/betweenThan.cjs +12 -0
  441. package/dist/number/betweenThan.d.ts +2 -0
  442. package/dist/number/betweenThan.mjs +10 -0
  443. package/dist/number/index.cjs +4 -0
  444. package/dist/number/index.d.ts +3 -0
  445. package/dist/number/index.mjs +2 -0
  446. package/dist/number/types/index.d.ts +1 -0
  447. package/dist/number/types/positiveNumber.d.ts +1 -0
  448. package/dist/object/deepDiscriminate.cjs +1 -3
  449. package/dist/object/deepDiscriminate.mjs +1 -3
  450. package/dist/object/discriminate.cjs +0 -2
  451. package/dist/object/discriminate.mjs +0 -2
  452. package/dist/object/entries.cjs +1 -3
  453. package/dist/object/entries.mjs +1 -3
  454. package/dist/object/entry.d.ts +2 -2
  455. package/dist/object/fromEntries.d.ts +5 -3
  456. package/dist/object/keys.cjs +1 -3
  457. package/dist/object/keys.mjs +1 -3
  458. package/dist/object/values.cjs +1 -3
  459. package/dist/object/values.mjs +1 -3
  460. package/dist/pattern/exhaustive.cjs +0 -2
  461. package/dist/pattern/exhaustive.mjs +0 -2
  462. package/dist/pattern/index.cjs +7 -4
  463. package/dist/pattern/index.mjs +3 -2
  464. package/dist/pattern/match/builder.cjs +56 -0
  465. package/dist/pattern/match/builder.d.ts +30 -0
  466. package/dist/pattern/match/builder.mjs +53 -0
  467. package/dist/pattern/match/index.cjs +28 -0
  468. package/dist/pattern/{match.d.ts → match/index.d.ts} +7 -4
  469. package/dist/pattern/match/index.mjs +25 -0
  470. package/dist/pattern/otherwise.cjs +1 -3
  471. package/dist/pattern/otherwise.mjs +1 -3
  472. package/dist/pattern/result.cjs +0 -2
  473. package/dist/pattern/result.mjs +0 -2
  474. package/dist/pattern/types/complexUnMatchedValue/array.d.ts +1 -1
  475. package/dist/string/index.cjs +12 -12
  476. package/dist/string/index.mjs +6 -6
  477. package/dist/string/replace.cjs +15 -0
  478. package/dist/string/replace.d.ts +10 -2
  479. package/dist/string/replace.mjs +15 -0
  480. package/package.json +7 -1
  481. package/dist/pattern/match.cjs +0 -18
  482. package/dist/pattern/match.mjs +0 -16
@@ -0,0 +1,15 @@
1
+ import { toNative } from '../toNative.mjs';
2
+
3
+ function getDayOfMonth(input, timezone = "UTC") {
4
+ const nativeDate = toNative(input);
5
+ if (timezone === "UTC") {
6
+ return nativeDate.getUTCDate();
7
+ }
8
+ const formatter = new Intl.DateTimeFormat("en-US", {
9
+ timeZone: timezone,
10
+ day: "numeric",
11
+ });
12
+ return Number(formatter.format(nativeDate));
13
+ }
14
+
15
+ export { getDayOfMonth };
@@ -0,0 +1,27 @@
1
+ 'use strict';
2
+
3
+ var toNative = require('../toNative.cjs');
4
+
5
+ const weekdayMapper = {
6
+ Sunday: 0,
7
+ Monday: 1,
8
+ Tuesday: 2,
9
+ Wednesday: 3,
10
+ Thursday: 4,
11
+ Friday: 5,
12
+ Saturday: 6,
13
+ };
14
+ function getDayOfWeek(input, timezone = "UTC") {
15
+ const nativeDate = toNative.toNative(input);
16
+ if (timezone === "UTC") {
17
+ return nativeDate.getUTCDay();
18
+ }
19
+ const formatter = new Intl.DateTimeFormat("en-US", {
20
+ timeZone: timezone,
21
+ weekday: "long",
22
+ });
23
+ const weekday = formatter.format(nativeDate);
24
+ return weekdayMapper[weekday];
25
+ }
26
+
27
+ exports.getDayOfWeek = getDayOfWeek;
@@ -0,0 +1,2 @@
1
+ import { type TheDate, type Timezone } from "..";
2
+ export declare function getDayOfWeek<GenericInput extends TheDate>(input: GenericInput, timezone?: Timezone): number;
@@ -0,0 +1,25 @@
1
+ import { toNative } from '../toNative.mjs';
2
+
3
+ const weekdayMapper = {
4
+ Sunday: 0,
5
+ Monday: 1,
6
+ Tuesday: 2,
7
+ Wednesday: 3,
8
+ Thursday: 4,
9
+ Friday: 5,
10
+ Saturday: 6,
11
+ };
12
+ function getDayOfWeek(input, timezone = "UTC") {
13
+ const nativeDate = toNative(input);
14
+ if (timezone === "UTC") {
15
+ return nativeDate.getUTCDay();
16
+ }
17
+ const formatter = new Intl.DateTimeFormat("en-US", {
18
+ timeZone: timezone,
19
+ weekday: "long",
20
+ });
21
+ const weekday = formatter.format(nativeDate);
22
+ return weekdayMapper[weekday];
23
+ }
24
+
25
+ export { getDayOfWeek };
@@ -0,0 +1,34 @@
1
+ 'use strict';
2
+
3
+ var toNative = require('../toNative.cjs');
4
+
5
+ function getDayOfYear(input, timezone = "UTC") {
6
+ const nativeDate = toNative.toNative(input);
7
+ let year = 0;
8
+ let month = 0;
9
+ let day = 0;
10
+ if (timezone === "UTC") {
11
+ year = nativeDate.getUTCFullYear();
12
+ month = nativeDate.getUTCMonth();
13
+ day = nativeDate.getUTCDate();
14
+ }
15
+ else {
16
+ const parts = new Intl.DateTimeFormat("en-US", {
17
+ timeZone: timezone,
18
+ day: "numeric",
19
+ year: "numeric",
20
+ month: "numeric",
21
+ }).formatToParts(nativeDate);
22
+ const partsMap = new Map(parts.map((part) => [part.type, part.value]));
23
+ year = Number(partsMap.get("year"));
24
+ month = Number(partsMap.get("month")) - 1;
25
+ day = Number(partsMap.get("day"));
26
+ }
27
+ const yearStart = Date.UTC(year, 0, 1);
28
+ const currentDate = Date.UTC(year, month, day);
29
+ const millisecondsDiff = currentDate - yearStart;
30
+ const dayOfYear = Math.floor(millisecondsDiff / 86400000) + 1;
31
+ return dayOfYear;
32
+ }
33
+
34
+ exports.getDayOfYear = getDayOfYear;
@@ -0,0 +1,2 @@
1
+ import { type TheDate, type Timezone } from "..";
2
+ export declare function getDayOfYear<GenericInput extends TheDate>(input: GenericInput, timezone?: Timezone): number;
@@ -0,0 +1,32 @@
1
+ import { toNative } from '../toNative.mjs';
2
+
3
+ function getDayOfYear(input, timezone = "UTC") {
4
+ const nativeDate = toNative(input);
5
+ let year = 0;
6
+ let month = 0;
7
+ let day = 0;
8
+ if (timezone === "UTC") {
9
+ year = nativeDate.getUTCFullYear();
10
+ month = nativeDate.getUTCMonth();
11
+ day = nativeDate.getUTCDate();
12
+ }
13
+ else {
14
+ const parts = new Intl.DateTimeFormat("en-US", {
15
+ timeZone: timezone,
16
+ day: "numeric",
17
+ year: "numeric",
18
+ month: "numeric",
19
+ }).formatToParts(nativeDate);
20
+ const partsMap = new Map(parts.map((part) => [part.type, part.value]));
21
+ year = Number(partsMap.get("year"));
22
+ month = Number(partsMap.get("month")) - 1;
23
+ day = Number(partsMap.get("day"));
24
+ }
25
+ const yearStart = Date.UTC(year, 0, 1);
26
+ const currentDate = Date.UTC(year, month, day);
27
+ const millisecondsDiff = currentDate - yearStart;
28
+ const dayOfYear = Math.floor(millisecondsDiff / 86400000) + 1;
29
+ return dayOfYear;
30
+ }
31
+
32
+ export { getDayOfYear };
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ var toNative = require('../toNative.cjs');
4
+
5
+ function getFirstDayOfMonth(input) {
6
+ const nativeDate = toNative.toNative(input);
7
+ nativeDate.setUTCDate(1);
8
+ nativeDate.setUTCHours(0, 0, 0, 0);
9
+ const timestamp = nativeDate.getTime();
10
+ const isNegative = timestamp < 0;
11
+ return `date${Math.abs(timestamp)}${isNegative ? "-" : "+"}`;
12
+ }
13
+
14
+ exports.getFirstDayOfMonth = getFirstDayOfMonth;
@@ -0,0 +1,2 @@
1
+ import type { TheDate } from "../types";
2
+ export declare function getFirstDayOfMonth(input: TheDate): TheDate;
@@ -0,0 +1,12 @@
1
+ import { toNative } from '../toNative.mjs';
2
+
3
+ function getFirstDayOfMonth(input) {
4
+ const nativeDate = toNative(input);
5
+ nativeDate.setUTCDate(1);
6
+ nativeDate.setUTCHours(0, 0, 0, 0);
7
+ const timestamp = nativeDate.getTime();
8
+ const isNegative = timestamp < 0;
9
+ return `date${Math.abs(timestamp)}${isNegative ? "-" : "+"}`;
10
+ }
11
+
12
+ export { getFirstDayOfMonth };
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ var toNative = require('../toNative.cjs');
4
+
5
+ function getFirstDayOfWeek(input) {
6
+ const nativeDate = toNative.toNative(input);
7
+ const dayOfWeek = nativeDate.getUTCDay();
8
+ const daysToMonday = dayOfWeek === 0 ? -6 : 1 - dayOfWeek;
9
+ nativeDate.setUTCHours(0, 0, 0, 0);
10
+ nativeDate.setUTCDate(nativeDate.getUTCDate() + daysToMonday);
11
+ const timestamp = nativeDate.getTime();
12
+ const isNegative = timestamp < 0;
13
+ return `date${Math.abs(timestamp)}${isNegative ? "-" : "+"}`;
14
+ }
15
+
16
+ exports.getFirstDayOfWeek = getFirstDayOfWeek;
@@ -0,0 +1,2 @@
1
+ import type { TheDate } from "../types";
2
+ export declare function getFirstDayOfWeek(input: TheDate): TheDate;
@@ -0,0 +1,14 @@
1
+ import { toNative } from '../toNative.mjs';
2
+
3
+ function getFirstDayOfWeek(input) {
4
+ const nativeDate = toNative(input);
5
+ const dayOfWeek = nativeDate.getUTCDay();
6
+ const daysToMonday = dayOfWeek === 0 ? -6 : 1 - dayOfWeek;
7
+ nativeDate.setUTCHours(0, 0, 0, 0);
8
+ nativeDate.setUTCDate(nativeDate.getUTCDate() + daysToMonday);
9
+ const timestamp = nativeDate.getTime();
10
+ const isNegative = timestamp < 0;
11
+ return `date${Math.abs(timestamp)}${isNegative ? "-" : "+"}`;
12
+ }
13
+
14
+ export { getFirstDayOfWeek };
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ var toNative = require('../toNative.cjs');
4
+
5
+ function getHour(input, timezone = "UTC") {
6
+ const nativeDate = toNative.toNative(input);
7
+ if (timezone === "UTC") {
8
+ return nativeDate.getUTCHours();
9
+ }
10
+ const formatter = new Intl.DateTimeFormat("en-US", {
11
+ timeZone: timezone,
12
+ hour: "numeric",
13
+ hour12: false,
14
+ });
15
+ return Number(formatter.format(nativeDate));
16
+ }
17
+
18
+ exports.getHour = getHour;
@@ -0,0 +1,2 @@
1
+ import { type TheDate, type Timezone } from "..";
2
+ export declare function getHour<GenericInput extends TheDate>(input: GenericInput, timezone?: Timezone): number;
@@ -0,0 +1,16 @@
1
+ import { toNative } from '../toNative.mjs';
2
+
3
+ function getHour(input, timezone = "UTC") {
4
+ const nativeDate = toNative(input);
5
+ if (timezone === "UTC") {
6
+ return nativeDate.getUTCHours();
7
+ }
8
+ const formatter = new Intl.DateTimeFormat("en-US", {
9
+ timeZone: timezone,
10
+ hour: "numeric",
11
+ hour12: false,
12
+ });
13
+ return Number(formatter.format(nativeDate));
14
+ }
15
+
16
+ export { getHour };
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ var toNative = require('../toNative.cjs');
4
+
5
+ function getLastDayOfMonth(input) {
6
+ const nativeDate = toNative.toNative(input);
7
+ nativeDate.setUTCMonth(nativeDate.getUTCMonth() + 1, 0);
8
+ nativeDate.setUTCHours(23, 59, 59, 999);
9
+ const timestamp = nativeDate.getTime();
10
+ const isNegative = timestamp < 0;
11
+ return `date${Math.abs(timestamp)}${isNegative ? "-" : "+"}`;
12
+ }
13
+
14
+ exports.getLastDayOfMonth = getLastDayOfMonth;
@@ -0,0 +1,2 @@
1
+ import type { TheDate } from "../types";
2
+ export declare function getLastDayOfMonth(input: TheDate): TheDate;
@@ -0,0 +1,12 @@
1
+ import { toNative } from '../toNative.mjs';
2
+
3
+ function getLastDayOfMonth(input) {
4
+ const nativeDate = toNative(input);
5
+ nativeDate.setUTCMonth(nativeDate.getUTCMonth() + 1, 0);
6
+ nativeDate.setUTCHours(23, 59, 59, 999);
7
+ const timestamp = nativeDate.getTime();
8
+ const isNegative = timestamp < 0;
9
+ return `date${Math.abs(timestamp)}${isNegative ? "-" : "+"}`;
10
+ }
11
+
12
+ export { getLastDayOfMonth };
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ var toNative = require('../toNative.cjs');
4
+
5
+ function getLastDayOfWeek(input) {
6
+ const nativeDate = toNative.toNative(input);
7
+ const dayOfWeek = nativeDate.getUTCDay();
8
+ const daysToSunday = dayOfWeek === 0 ? 0 : 7 - dayOfWeek;
9
+ nativeDate.setUTCDate(nativeDate.getUTCDate() + daysToSunday);
10
+ nativeDate.setUTCHours(23, 59, 59, 999);
11
+ const timestamp = nativeDate.getTime();
12
+ const isNegative = timestamp < 0;
13
+ return `date${Math.abs(timestamp)}${isNegative ? "-" : "+"}`;
14
+ }
15
+
16
+ exports.getLastDayOfWeek = getLastDayOfWeek;
@@ -0,0 +1,2 @@
1
+ import type { TheDate } from "../types";
2
+ export declare function getLastDayOfWeek(input: TheDate): TheDate;
@@ -0,0 +1,14 @@
1
+ import { toNative } from '../toNative.mjs';
2
+
3
+ function getLastDayOfWeek(input) {
4
+ const nativeDate = toNative(input);
5
+ const dayOfWeek = nativeDate.getUTCDay();
6
+ const daysToSunday = dayOfWeek === 0 ? 0 : 7 - dayOfWeek;
7
+ nativeDate.setUTCDate(nativeDate.getUTCDate() + daysToSunday);
8
+ nativeDate.setUTCHours(23, 59, 59, 999);
9
+ const timestamp = nativeDate.getTime();
10
+ const isNegative = timestamp < 0;
11
+ return `date${Math.abs(timestamp)}${isNegative ? "-" : "+"}`;
12
+ }
13
+
14
+ export { getLastDayOfWeek };
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ var toNative = require('../toNative.cjs');
4
+
5
+ function getMilliseconds(input) {
6
+ const nativeDate = toNative.toNative(input);
7
+ return nativeDate.getUTCMilliseconds();
8
+ }
9
+
10
+ exports.getMilliseconds = getMilliseconds;
@@ -0,0 +1,2 @@
1
+ import { type TheDate } from "..";
2
+ export declare function getMilliseconds<GenericInput extends TheDate>(input: GenericInput): number;
@@ -0,0 +1,8 @@
1
+ import { toNative } from '../toNative.mjs';
2
+
3
+ function getMilliseconds(input) {
4
+ const nativeDate = toNative(input);
5
+ return nativeDate.getUTCMilliseconds();
6
+ }
7
+
8
+ export { getMilliseconds };
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ var toNative = require('../toNative.cjs');
4
+
5
+ function getMinute(input, timezone = "UTC") {
6
+ const nativeDate = toNative.toNative(input);
7
+ if (timezone === "UTC") {
8
+ return nativeDate.getUTCMinutes();
9
+ }
10
+ const formatter = new Intl.DateTimeFormat("en-US", {
11
+ timeZone: timezone,
12
+ minute: "numeric",
13
+ });
14
+ return Number(formatter.format(nativeDate));
15
+ }
16
+
17
+ exports.getMinute = getMinute;
@@ -0,0 +1,2 @@
1
+ import { type TheDate, type Timezone } from "..";
2
+ export declare function getMinute<GenericInput extends TheDate>(input: GenericInput, timezone?: Timezone): number;
@@ -0,0 +1,15 @@
1
+ import { toNative } from '../toNative.mjs';
2
+
3
+ function getMinute(input, timezone = "UTC") {
4
+ const nativeDate = toNative(input);
5
+ if (timezone === "UTC") {
6
+ return nativeDate.getUTCMinutes();
7
+ }
8
+ const formatter = new Intl.DateTimeFormat("en-US", {
9
+ timeZone: timezone,
10
+ minute: "numeric",
11
+ });
12
+ return Number(formatter.format(nativeDate));
13
+ }
14
+
15
+ export { getMinute };
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ var toNative = require('../toNative.cjs');
4
+
5
+ function getMonth(input, timezone = "UTC") {
6
+ const nativeDate = toNative.toNative(input);
7
+ if (timezone === "UTC") {
8
+ return nativeDate.getUTCMonth() + 1;
9
+ }
10
+ const formatter = new Intl.DateTimeFormat("en-US", {
11
+ timeZone: timezone,
12
+ month: "numeric",
13
+ });
14
+ return Number(formatter.format(nativeDate));
15
+ }
16
+
17
+ exports.getMonth = getMonth;
@@ -0,0 +1,2 @@
1
+ import { type TheDate, type Timezone } from "..";
2
+ export declare function getMonth<GenericInput extends TheDate>(input: GenericInput, timezone?: Timezone): number;
@@ -0,0 +1,15 @@
1
+ import { toNative } from '../toNative.mjs';
2
+
3
+ function getMonth(input, timezone = "UTC") {
4
+ const nativeDate = toNative(input);
5
+ if (timezone === "UTC") {
6
+ return nativeDate.getUTCMonth() + 1;
7
+ }
8
+ const formatter = new Intl.DateTimeFormat("en-US", {
9
+ timeZone: timezone,
10
+ month: "numeric",
11
+ });
12
+ return Number(formatter.format(nativeDate));
13
+ }
14
+
15
+ export { getMonth };
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ var toNative = require('../toNative.cjs');
4
+
5
+ function getSecond(input, timezone = "UTC") {
6
+ const nativeDate = toNative.toNative(input);
7
+ if (timezone === "UTC") {
8
+ return nativeDate.getUTCSeconds();
9
+ }
10
+ const formatter = new Intl.DateTimeFormat("en-US", {
11
+ timeZone: timezone,
12
+ second: "numeric",
13
+ });
14
+ return Number(formatter.format(nativeDate));
15
+ }
16
+
17
+ exports.getSecond = getSecond;
@@ -0,0 +1,2 @@
1
+ import { type TheDate, type Timezone } from "..";
2
+ export declare function getSecond<GenericInput extends TheDate>(input: GenericInput, timezone?: Timezone): number;
@@ -0,0 +1,15 @@
1
+ import { toNative } from '../toNative.mjs';
2
+
3
+ function getSecond(input, timezone = "UTC") {
4
+ const nativeDate = toNative(input);
5
+ if (timezone === "UTC") {
6
+ return nativeDate.getUTCSeconds();
7
+ }
8
+ const formatter = new Intl.DateTimeFormat("en-US", {
9
+ timeZone: timezone,
10
+ second: "numeric",
11
+ });
12
+ return Number(formatter.format(nativeDate));
13
+ }
14
+
15
+ export { getSecond };
@@ -0,0 +1,37 @@
1
+ 'use strict';
2
+
3
+ var toNative = require('../toNative.cjs');
4
+
5
+ function getWeekOfYear(input, timezone = "UTC") {
6
+ const nativeDate = toNative.toNative(input);
7
+ let year = 0;
8
+ let month = 0;
9
+ let day = 0;
10
+ if (timezone === "UTC") {
11
+ year = nativeDate.getUTCFullYear();
12
+ month = nativeDate.getUTCMonth();
13
+ day = nativeDate.getUTCDate();
14
+ }
15
+ else {
16
+ const parts = new Intl.DateTimeFormat("en-US", {
17
+ timeZone: timezone,
18
+ day: "numeric",
19
+ year: "numeric",
20
+ month: "numeric",
21
+ }).formatToParts(nativeDate);
22
+ const partsMap = new Map(parts.map((part) => [part.type, part.value]));
23
+ year = Number(partsMap.get("year"));
24
+ month = Number(partsMap.get("month")) - 1;
25
+ day = Number(partsMap.get("day"));
26
+ }
27
+ const date = new Date(Date.UTC(year, month, day));
28
+ const dayOfWeek = date.getUTCDay() || 7;
29
+ const nearestThursday = day + 4 - dayOfWeek;
30
+ date.setUTCDate(nearestThursday);
31
+ const thursYearStart = Date.UTC(date.getUTCFullYear(), 0, 1);
32
+ const millisecondsDiff = date.getTime() - thursYearStart;
33
+ const daysDiff = Math.floor(millisecondsDiff / 86400000);
34
+ return Math.ceil((daysDiff + 1) / 7);
35
+ }
36
+
37
+ exports.getWeekOfYear = getWeekOfYear;
@@ -0,0 +1,2 @@
1
+ import { type TheDate, type Timezone } from "..";
2
+ export declare function getWeekOfYear<GenericInput extends TheDate>(input: GenericInput, timezone?: Timezone): number;
@@ -0,0 +1,35 @@
1
+ import { toNative } from '../toNative.mjs';
2
+
3
+ function getWeekOfYear(input, timezone = "UTC") {
4
+ const nativeDate = toNative(input);
5
+ let year = 0;
6
+ let month = 0;
7
+ let day = 0;
8
+ if (timezone === "UTC") {
9
+ year = nativeDate.getUTCFullYear();
10
+ month = nativeDate.getUTCMonth();
11
+ day = nativeDate.getUTCDate();
12
+ }
13
+ else {
14
+ const parts = new Intl.DateTimeFormat("en-US", {
15
+ timeZone: timezone,
16
+ day: "numeric",
17
+ year: "numeric",
18
+ month: "numeric",
19
+ }).formatToParts(nativeDate);
20
+ const partsMap = new Map(parts.map((part) => [part.type, part.value]));
21
+ year = Number(partsMap.get("year"));
22
+ month = Number(partsMap.get("month")) - 1;
23
+ day = Number(partsMap.get("day"));
24
+ }
25
+ const date = new Date(Date.UTC(year, month, day));
26
+ const dayOfWeek = date.getUTCDay() || 7;
27
+ const nearestThursday = day + 4 - dayOfWeek;
28
+ date.setUTCDate(nearestThursday);
29
+ const thursYearStart = Date.UTC(date.getUTCFullYear(), 0, 1);
30
+ const millisecondsDiff = date.getTime() - thursYearStart;
31
+ const daysDiff = Math.floor(millisecondsDiff / 86400000);
32
+ return Math.ceil((daysDiff + 1) / 7);
33
+ }
34
+
35
+ export { getWeekOfYear };
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ var toNative = require('../toNative.cjs');
4
+
5
+ function getYear(input, timezone = "UTC") {
6
+ const nativeDate = toNative.toNative(input);
7
+ if (timezone === "UTC") {
8
+ return nativeDate.getUTCFullYear();
9
+ }
10
+ const formatter = new Intl.DateTimeFormat("en-US", {
11
+ timeZone: timezone,
12
+ year: "numeric",
13
+ });
14
+ return Number(formatter.format(nativeDate));
15
+ }
16
+
17
+ exports.getYear = getYear;
@@ -0,0 +1,2 @@
1
+ import { type TheDate, type Timezone } from "..";
2
+ export declare function getYear<GenericInput extends TheDate>(input: GenericInput, timezone?: Timezone): number;
@@ -0,0 +1,15 @@
1
+ import { toNative } from '../toNative.mjs';
2
+
3
+ function getYear(input, timezone = "UTC") {
4
+ const nativeDate = toNative(input);
5
+ if (timezone === "UTC") {
6
+ return nativeDate.getUTCFullYear();
7
+ }
8
+ const formatter = new Intl.DateTimeFormat("en-US", {
9
+ timeZone: timezone,
10
+ year: "numeric",
11
+ });
12
+ return Number(formatter.format(nativeDate));
13
+ }
14
+
15
+ export { getYear };
@@ -0,0 +1,15 @@
1
+ export * from "./getDayOfMonth";
2
+ export * from "./getDayOfWeek";
3
+ export * from "./getFirstDayOfWeek";
4
+ export * from "./getLastDayOfWeek";
5
+ export * from "./getFirstDayOfMonth";
6
+ export * from "./getLastDayOfMonth";
7
+ export * from "./getHour";
8
+ export * from "./getMilliseconds";
9
+ export * from "./getMinute";
10
+ export * from "./getMonth";
11
+ export * from "./getSecond";
12
+ export * from "./getYear";
13
+ export * from "./getMilliseconds";
14
+ export * from "./getDayOfYear";
15
+ export * from "./getWeekOfYear";