@wisemen/datewise 0.0.1

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 (377) hide show
  1. package/README.md +307 -0
  2. package/dist/common/constants.d.ts +9 -0
  3. package/dist/common/constants.js +10 -0
  4. package/dist/common/constants.js.map +1 -0
  5. package/dist/common/date-period.enum.d.ts +7 -0
  6. package/dist/common/date-period.enum.js +15 -0
  7. package/dist/common/date-period.enum.js.map +1 -0
  8. package/dist/common/exhaustive-check.helper.d.ts +1 -0
  9. package/dist/common/exhaustive-check.helper.js +4 -0
  10. package/dist/common/exhaustive-check.helper.js.map +1 -0
  11. package/dist/common/inclusivity.d.ts +8 -0
  12. package/dist/common/inclusivity.js +23 -0
  13. package/dist/common/inclusivity.js.map +1 -0
  14. package/dist/common/index.d.ts +4 -0
  15. package/dist/common/index.js +5 -0
  16. package/dist/common/index.js.map +1 -0
  17. package/dist/common/init-dayjs.d.ts +1 -0
  18. package/dist/common/init-dayjs.js +31 -0
  19. package/dist/common/init-dayjs.js.map +1 -0
  20. package/dist/common/month.d.ts +15 -0
  21. package/dist/common/month.js +21 -0
  22. package/dist/common/month.js.map +1 -0
  23. package/dist/common/timezone.d.ts +600 -0
  24. package/dist/common/timezone.js +614 -0
  25. package/dist/common/timezone.js.map +1 -0
  26. package/dist/common/typeorm/adjacent-to.d.ts +5 -0
  27. package/dist/common/typeorm/adjacent-to.js +7 -0
  28. package/dist/common/typeorm/adjacent-to.js.map +1 -0
  29. package/dist/common/typeorm/ends-before.d.ts +5 -0
  30. package/dist/common/typeorm/ends-before.js +7 -0
  31. package/dist/common/typeorm/ends-before.js.map +1 -0
  32. package/dist/common/typeorm/index.d.ts +10 -0
  33. package/dist/common/typeorm/index.js +11 -0
  34. package/dist/common/typeorm/index.js.map +1 -0
  35. package/dist/common/typeorm/is-preceded-by.d.ts +5 -0
  36. package/dist/common/typeorm/is-preceded-by.js +7 -0
  37. package/dist/common/typeorm/is-preceded-by.js.map +1 -0
  38. package/dist/common/typeorm/is-succeeded-by.d.ts +5 -0
  39. package/dist/common/typeorm/is-succeeded-by.js +7 -0
  40. package/dist/common/typeorm/is-succeeded-by.js.map +1 -0
  41. package/dist/common/typeorm/overlaps-with.d.ts +5 -0
  42. package/dist/common/typeorm/overlaps-with.js +7 -0
  43. package/dist/common/typeorm/overlaps-with.js.map +1 -0
  44. package/dist/common/typeorm/precedes.d.ts +5 -0
  45. package/dist/common/typeorm/precedes.js +7 -0
  46. package/dist/common/typeorm/precedes.js.map +1 -0
  47. package/dist/common/typeorm/starts-after.d.ts +5 -0
  48. package/dist/common/typeorm/starts-after.js +7 -0
  49. package/dist/common/typeorm/starts-after.js.map +1 -0
  50. package/dist/common/typeorm/strictly-left-of.d.ts +5 -0
  51. package/dist/common/typeorm/strictly-left-of.js +7 -0
  52. package/dist/common/typeorm/strictly-left-of.js.map +1 -0
  53. package/dist/common/typeorm/strictly-right-of.d.ts +5 -0
  54. package/dist/common/typeorm/strictly-right-of.js +7 -0
  55. package/dist/common/typeorm/strictly-right-of.js.map +1 -0
  56. package/dist/common/typeorm/succeeds.d.ts +5 -0
  57. package/dist/common/typeorm/succeeds.js +7 -0
  58. package/dist/common/typeorm/succeeds.js.map +1 -0
  59. package/dist/date-range/date-range-errors.d.ts +9 -0
  60. package/dist/date-range/date-range-errors.js +17 -0
  61. package/dist/date-range/date-range-errors.js.map +1 -0
  62. package/dist/date-range/date-range.d.ts +43 -0
  63. package/dist/date-range/date-range.dto-builder.d.ts +8 -0
  64. package/dist/date-range/date-range.dto-builder.js +21 -0
  65. package/dist/date-range/date-range.dto-builder.js.map +1 -0
  66. package/dist/date-range/date-range.dto.d.ts +7 -0
  67. package/dist/date-range/date-range.dto.js +31 -0
  68. package/dist/date-range/date-range.dto.js.map +1 -0
  69. package/dist/date-range/date-range.js +153 -0
  70. package/dist/date-range/date-range.js.map +1 -0
  71. package/dist/date-range/date-range.response.d.ts +6 -0
  72. package/dist/date-range/date-range.response.js +27 -0
  73. package/dist/date-range/date-range.response.js.map +1 -0
  74. package/dist/date-range/index.d.ts +7 -0
  75. package/dist/date-range/index.js +8 -0
  76. package/dist/date-range/index.js.map +1 -0
  77. package/dist/date-range/is-date-range.decorator.d.ts +19 -0
  78. package/dist/date-range/is-date-range.decorator.js +68 -0
  79. package/dist/date-range/is-date-range.decorator.js.map +1 -0
  80. package/dist/date-range/tests/date-range.unit.test.d.ts +1 -0
  81. package/dist/date-range/tests/date-range.unit.test.js +412 -0
  82. package/dist/date-range/tests/date-range.unit.test.js.map +1 -0
  83. package/dist/date-range/tests/is-date-range.decorator.unit.test.d.ts +1 -0
  84. package/dist/date-range/tests/is-date-range.decorator.unit.test.js +120 -0
  85. package/dist/date-range/tests/is-date-range.decorator.unit.test.js.map +1 -0
  86. package/dist/date-range/typeorm/contains-plain-date.d.ts +4 -0
  87. package/dist/date-range/typeorm/contains-plain-date.js +8 -0
  88. package/dist/date-range/typeorm/contains-plain-date.js.map +1 -0
  89. package/dist/date-range/typeorm/date-range-column.d.ts +11 -0
  90. package/dist/date-range/typeorm/date-range-column.js +32 -0
  91. package/dist/date-range/typeorm/date-range-column.js.map +1 -0
  92. package/dist/date-range/typeorm/index.d.ts +2 -0
  93. package/dist/date-range/typeorm/index.js +3 -0
  94. package/dist/date-range/typeorm/index.js.map +1 -0
  95. package/dist/date-time-range/date-time-range.command-builder.d.ts +8 -0
  96. package/dist/date-time-range/date-time-range.command-builder.js +21 -0
  97. package/dist/date-time-range/date-time-range.command-builder.js.map +1 -0
  98. package/dist/date-time-range/date-time-range.command.d.ts +7 -0
  99. package/dist/date-time-range/date-time-range.command.js +30 -0
  100. package/dist/date-time-range/date-time-range.command.js.map +1 -0
  101. package/dist/date-time-range/date-time-range.d.ts +93 -0
  102. package/dist/date-time-range/date-time-range.errors.d.ts +10 -0
  103. package/dist/date-time-range/date-time-range.errors.js +19 -0
  104. package/dist/date-time-range/date-time-range.errors.js.map +1 -0
  105. package/dist/date-time-range/date-time-range.js +205 -0
  106. package/dist/date-time-range/date-time-range.js.map +1 -0
  107. package/dist/date-time-range/date-time-range.response.d.ts +6 -0
  108. package/dist/date-time-range/date-time-range.response.js +27 -0
  109. package/dist/date-time-range/date-time-range.response.js.map +1 -0
  110. package/dist/date-time-range/index.d.ts +7 -0
  111. package/dist/date-time-range/index.js +8 -0
  112. package/dist/date-time-range/index.js.map +1 -0
  113. package/dist/date-time-range/is-date-time-range.decorator.d.ts +15 -0
  114. package/dist/date-time-range/is-date-time-range.decorator.js +58 -0
  115. package/dist/date-time-range/is-date-time-range.decorator.js.map +1 -0
  116. package/dist/date-time-range/tests/date-time-range.column.integration.test.d.ts +1 -0
  117. package/dist/date-time-range/tests/date-time-range.column.integration.test.js +442 -0
  118. package/dist/date-time-range/tests/date-time-range.column.integration.test.js.map +1 -0
  119. package/dist/date-time-range/tests/date-time-range.unit.test.d.ts +1 -0
  120. package/dist/date-time-range/tests/date-time-range.unit.test.js +775 -0
  121. package/dist/date-time-range/tests/date-time-range.unit.test.js.map +1 -0
  122. package/dist/date-time-range/tests/is-date-time-range.decorator.unit.test.d.ts +1 -0
  123. package/dist/date-time-range/tests/is-date-time-range.decorator.unit.test.js +74 -0
  124. package/dist/date-time-range/tests/is-date-time-range.decorator.unit.test.js.map +1 -0
  125. package/dist/date-time-range/tests/sql/datasource.d.ts +2 -0
  126. package/dist/date-time-range/tests/sql/datasource.js +16 -0
  127. package/dist/date-time-range/tests/sql/datasource.js.map +1 -0
  128. package/dist/date-time-range/tests/sql/date-time-range-test.entity.d.ts +5 -0
  129. package/dist/date-time-range/tests/sql/date-time-range-test.entity.js +29 -0
  130. package/dist/date-time-range/tests/sql/date-time-range-test.entity.js.map +1 -0
  131. package/dist/date-time-range/tests/sql/multi-date-time-range-test.entity.d.ts +5 -0
  132. package/dist/date-time-range/tests/sql/multi-date-time-range-test.entity.js +28 -0
  133. package/dist/date-time-range/tests/sql/multi-date-time-range-test.entity.js.map +1 -0
  134. package/dist/date-time-range/typeorm/contains-timestamp.d.ts +4 -0
  135. package/dist/date-time-range/typeorm/contains-timestamp.js +8 -0
  136. package/dist/date-time-range/typeorm/contains-timestamp.js.map +1 -0
  137. package/dist/date-time-range/typeorm/date-time-range-column.d.ts +11 -0
  138. package/dist/date-time-range/typeorm/date-time-range-column.js +32 -0
  139. package/dist/date-time-range/typeorm/date-time-range-column.js.map +1 -0
  140. package/dist/date-time-range/typeorm/index.d.ts +3 -0
  141. package/dist/date-time-range/typeorm/index.js +4 -0
  142. package/dist/date-time-range/typeorm/index.js.map +1 -0
  143. package/dist/date-time-range/typeorm/multi-date-time-range.column.d.ts +3 -0
  144. package/dist/date-time-range/typeorm/multi-date-time-range.column.js +47 -0
  145. package/dist/date-time-range/typeorm/multi-date-time-range.column.js.map +1 -0
  146. package/dist/index.d.ts +6 -0
  147. package/dist/index.js +9 -0
  148. package/dist/index.js.map +1 -0
  149. package/dist/multi-date-time-range/multi-date-time-range.d.ts +20 -0
  150. package/dist/multi-date-time-range/multi-date-time-range.js +51 -0
  151. package/dist/multi-date-time-range/multi-date-time-range.js.map +1 -0
  152. package/dist/multi-date-time-range/tests/multi-date-time-range.unit.test.d.ts +1 -0
  153. package/dist/multi-date-time-range/tests/multi-date-time-range.unit.test.js +129 -0
  154. package/dist/multi-date-time-range/tests/multi-date-time-range.unit.test.js.map +1 -0
  155. package/dist/plain-date/api-property/index.d.ts +1 -0
  156. package/dist/plain-date/api-property/index.js +2 -0
  157. package/dist/plain-date/api-property/index.js.map +1 -0
  158. package/dist/plain-date/api-property/plain-date.api-property.d.ts +2 -0
  159. package/dist/plain-date/api-property/plain-date.api-property.js +12 -0
  160. package/dist/plain-date/api-property/plain-date.api-property.js.map +1 -0
  161. package/dist/plain-date/dayjs-plain-date.d.ts +57 -0
  162. package/dist/plain-date/dayjs-plain-date.js +170 -0
  163. package/dist/plain-date/dayjs-plain-date.js.map +1 -0
  164. package/dist/plain-date/future-infinity-date.d.ts +38 -0
  165. package/dist/plain-date/future-infinity-date.js +100 -0
  166. package/dist/plain-date/future-infinity-date.js.map +1 -0
  167. package/dist/plain-date/index.d.ts +8 -0
  168. package/dist/plain-date/index.js +9 -0
  169. package/dist/plain-date/index.js.map +1 -0
  170. package/dist/plain-date/invalid-date.d.ts +5 -0
  171. package/dist/plain-date/invalid-date.js +8 -0
  172. package/dist/plain-date/invalid-date.js.map +1 -0
  173. package/dist/plain-date/max.d.ts +2 -0
  174. package/dist/plain-date/max.js +15 -0
  175. package/dist/plain-date/max.js.map +1 -0
  176. package/dist/plain-date/min.d.ts +2 -0
  177. package/dist/plain-date/min.js +16 -0
  178. package/dist/plain-date/min.js.map +1 -0
  179. package/dist/plain-date/past-infinity-date.d.ts +39 -0
  180. package/dist/plain-date/past-infinity-date.js +100 -0
  181. package/dist/plain-date/past-infinity-date.js.map +1 -0
  182. package/dist/plain-date/plain-date-object.d.ts +6 -0
  183. package/dist/plain-date/plain-date-object.js +2 -0
  184. package/dist/plain-date/plain-date-object.js.map +1 -0
  185. package/dist/plain-date/plain-date.d.ts +44 -0
  186. package/dist/plain-date/plain-date.factory.d.ts +16 -0
  187. package/dist/plain-date/plain-date.factory.js +41 -0
  188. package/dist/plain-date/plain-date.factory.js.map +1 -0
  189. package/dist/plain-date/plain-date.fn.d.ts +16 -0
  190. package/dist/plain-date/plain-date.fn.js +14 -0
  191. package/dist/plain-date/plain-date.fn.js.map +1 -0
  192. package/dist/plain-date/plain-date.js +2 -0
  193. package/dist/plain-date/plain-date.js.map +1 -0
  194. package/dist/plain-date/plain-date.units.d.ts +4 -0
  195. package/dist/plain-date/plain-date.units.js +2 -0
  196. package/dist/plain-date/plain-date.units.js.map +1 -0
  197. package/dist/plain-date/tests/plain-date.accessors.unit.test.d.ts +1 -0
  198. package/dist/plain-date/tests/plain-date.accessors.unit.test.js +22 -0
  199. package/dist/plain-date/tests/plain-date.accessors.unit.test.js.map +1 -0
  200. package/dist/plain-date/tests/plain-date.constructor.unit.test.d.ts +1 -0
  201. package/dist/plain-date/tests/plain-date.constructor.unit.test.js +40 -0
  202. package/dist/plain-date/tests/plain-date.constructor.unit.test.js.map +1 -0
  203. package/dist/plain-date/tests/plain-date.factory.unit.test.d.ts +1 -0
  204. package/dist/plain-date/tests/plain-date.factory.unit.test.js +136 -0
  205. package/dist/plain-date/tests/plain-date.factory.unit.test.js.map +1 -0
  206. package/dist/plain-date/tests/plain-date.manipulation.unit.test.d.ts +1 -0
  207. package/dist/plain-date/tests/plain-date.manipulation.unit.test.js +93 -0
  208. package/dist/plain-date/tests/plain-date.manipulation.unit.test.js.map +1 -0
  209. package/dist/plain-date/tests/wise-date.ordering.unit.test.d.ts +1 -0
  210. package/dist/plain-date/tests/wise-date.ordering.unit.test.js +174 -0
  211. package/dist/plain-date/tests/wise-date.ordering.unit.test.js.map +1 -0
  212. package/dist/plain-date/typeorm/index.d.ts +1 -0
  213. package/dist/plain-date/typeorm/index.js +2 -0
  214. package/dist/plain-date/typeorm/index.js.map +1 -0
  215. package/dist/plain-date/typeorm/plain-date.column.d.ts +3 -0
  216. package/dist/plain-date/typeorm/plain-date.column.js +24 -0
  217. package/dist/plain-date/typeorm/plain-date.column.js.map +1 -0
  218. package/dist/plain-date/validators/index.d.ts +1 -0
  219. package/dist/plain-date/validators/index.js +2 -0
  220. package/dist/plain-date/validators/index.js.map +1 -0
  221. package/dist/plain-date/validators/is-plain-date.validator.d.ts +7 -0
  222. package/dist/plain-date/validators/is-plain-date.validator.js +34 -0
  223. package/dist/plain-date/validators/is-plain-date.validator.js.map +1 -0
  224. package/dist/plain-time/api-property/index.d.ts +1 -0
  225. package/dist/plain-time/api-property/index.js +2 -0
  226. package/dist/plain-time/api-property/index.js.map +1 -0
  227. package/dist/plain-time/api-property/plain-time.api-property.d.ts +2 -0
  228. package/dist/plain-time/api-property/plain-time.api-property.js +5 -0
  229. package/dist/plain-time/api-property/plain-time.api-property.js.map +1 -0
  230. package/dist/plain-time/constants.d.ts +4 -0
  231. package/dist/plain-time/constants.js +5 -0
  232. package/dist/plain-time/constants.js.map +1 -0
  233. package/dist/plain-time/index.d.ts +8 -0
  234. package/dist/plain-time/index.js +8 -0
  235. package/dist/plain-time/index.js.map +1 -0
  236. package/dist/plain-time/is-valid-time-string.d.ts +2 -0
  237. package/dist/plain-time/is-valid-time-string.js +5 -0
  238. package/dist/plain-time/is-valid-time-string.js.map +1 -0
  239. package/dist/plain-time/max.d.ts +2 -0
  240. package/dist/plain-time/max.js +15 -0
  241. package/dist/plain-time/max.js.map +1 -0
  242. package/dist/plain-time/min.d.ts +2 -0
  243. package/dist/plain-time/min.js +15 -0
  244. package/dist/plain-time/min.js.map +1 -0
  245. package/dist/plain-time/plain-time-entry.d.ts +18 -0
  246. package/dist/plain-time/plain-time-entry.js +11 -0
  247. package/dist/plain-time/plain-time-entry.js.map +1 -0
  248. package/dist/plain-time/plain-time-error.d.ts +12 -0
  249. package/dist/plain-time/plain-time-error.js +19 -0
  250. package/dist/plain-time/plain-time-error.js.map +1 -0
  251. package/dist/plain-time/plain-time-object.type.d.ts +6 -0
  252. package/dist/plain-time/plain-time-object.type.js +2 -0
  253. package/dist/plain-time/plain-time-object.type.js.map +1 -0
  254. package/dist/plain-time/plain-time.d.ts +44 -0
  255. package/dist/plain-time/plain-time.factory.d.ts +12 -0
  256. package/dist/plain-time/plain-time.factory.js +10 -0
  257. package/dist/plain-time/plain-time.factory.js.map +1 -0
  258. package/dist/plain-time/plain-time.js +160 -0
  259. package/dist/plain-time/plain-time.js.map +1 -0
  260. package/dist/plain-time/seconds-in-unit.d.ts +11 -0
  261. package/dist/plain-time/seconds-in-unit.js +13 -0
  262. package/dist/plain-time/seconds-in-unit.js.map +1 -0
  263. package/dist/plain-time/tests/is-plain-time-after.validator.test.d.ts +1 -0
  264. package/dist/plain-time/tests/is-plain-time-after.validator.test.js +49 -0
  265. package/dist/plain-time/tests/is-plain-time-after.validator.test.js.map +1 -0
  266. package/dist/plain-time/tests/is-plain-time.validator.test.d.ts +1 -0
  267. package/dist/plain-time/tests/is-plain-time.validator.test.js +45 -0
  268. package/dist/plain-time/tests/is-plain-time.validator.test.js.map +1 -0
  269. package/dist/plain-time/tests/plain-time.unit.test.d.ts +1 -0
  270. package/dist/plain-time/tests/plain-time.unit.test.js +323 -0
  271. package/dist/plain-time/tests/plain-time.unit.test.js.map +1 -0
  272. package/dist/plain-time/time-unit.d.ts +1 -0
  273. package/dist/plain-time/time-unit.js +2 -0
  274. package/dist/plain-time/time-unit.js.map +1 -0
  275. package/dist/plain-time/typeorm/index.d.ts +1 -0
  276. package/dist/plain-time/typeorm/index.js +2 -0
  277. package/dist/plain-time/typeorm/index.js.map +1 -0
  278. package/dist/plain-time/typeorm/plain-time-column.d.ts +3 -0
  279. package/dist/plain-time/typeorm/plain-time-column.js +26 -0
  280. package/dist/plain-time/typeorm/plain-time-column.js.map +1 -0
  281. package/dist/plain-time/validators/index.d.ts +6 -0
  282. package/dist/plain-time/validators/index.js +7 -0
  283. package/dist/plain-time/validators/index.js.map +1 -0
  284. package/dist/plain-time/validators/is-plain-time-after.validator.d.ts +5 -0
  285. package/dist/plain-time/validators/is-plain-time-after.validator.js +47 -0
  286. package/dist/plain-time/validators/is-plain-time-after.validator.js.map +1 -0
  287. package/dist/plain-time/validators/is-plain-time-before.validator.d.ts +5 -0
  288. package/dist/plain-time/validators/is-plain-time-before.validator.js +47 -0
  289. package/dist/plain-time/validators/is-plain-time-before.validator.js.map +1 -0
  290. package/dist/plain-time/validators/is-plain-time-between.validator.d.ts +6 -0
  291. package/dist/plain-time/validators/is-plain-time-between.validator.js +52 -0
  292. package/dist/plain-time/validators/is-plain-time-between.validator.js.map +1 -0
  293. package/dist/plain-time/validators/is-plain-time-same-or-after.validator.d.ts +5 -0
  294. package/dist/plain-time/validators/is-plain-time-same-or-after.validator.js +47 -0
  295. package/dist/plain-time/validators/is-plain-time-same-or-after.validator.js.map +1 -0
  296. package/dist/plain-time/validators/is-plain-time-same-or-before.validator.d.ts +5 -0
  297. package/dist/plain-time/validators/is-plain-time-same-or-before.validator.js +47 -0
  298. package/dist/plain-time/validators/is-plain-time-same-or-before.validator.js.map +1 -0
  299. package/dist/plain-time/validators/is-plain-time.validator.d.ts +3 -0
  300. package/dist/plain-time/validators/is-plain-time.validator.js +7 -0
  301. package/dist/plain-time/validators/is-plain-time.validator.js.map +1 -0
  302. package/dist/rrule/frequency.d.ts +12 -0
  303. package/dist/rrule/frequency.js +25 -0
  304. package/dist/rrule/frequency.js.map +1 -0
  305. package/dist/rrule/index.d.ts +16 -0
  306. package/dist/rrule/index.js +7 -0
  307. package/dist/rrule/index.js.map +1 -0
  308. package/dist/rrule/rrule.d.ts +23 -0
  309. package/dist/rrule/rrule.factory.d.ts +20 -0
  310. package/dist/rrule/rrule.factory.js +8 -0
  311. package/dist/rrule/rrule.factory.js.map +1 -0
  312. package/dist/rrule/rrule.js +114 -0
  313. package/dist/rrule/rrule.js.map +1 -0
  314. package/dist/rrule/rrule.once.d.ts +14 -0
  315. package/dist/rrule/rrule.once.js +19 -0
  316. package/dist/rrule/rrule.once.js.map +1 -0
  317. package/dist/rrule/tests/rrule.once.unit.test.d.ts +1 -0
  318. package/dist/rrule/tests/rrule.once.unit.test.js +19 -0
  319. package/dist/rrule/tests/rrule.once.unit.test.js.map +1 -0
  320. package/dist/rrule/tests/rrule.unit.test.d.ts +1 -0
  321. package/dist/rrule/tests/rrule.unit.test.js +202 -0
  322. package/dist/rrule/tests/rrule.unit.test.js.map +1 -0
  323. package/dist/rrule/typeorm/index.d.ts +1 -0
  324. package/dist/rrule/typeorm/index.js +2 -0
  325. package/dist/rrule/typeorm/index.js.map +1 -0
  326. package/dist/rrule/typeorm/rrule-column.d.ts +2 -0
  327. package/dist/rrule/typeorm/rrule-column.js +6 -0
  328. package/dist/rrule/typeorm/rrule-column.js.map +1 -0
  329. package/dist/timestamp/api-property/index.d.ts +1 -0
  330. package/dist/timestamp/api-property/index.js +2 -0
  331. package/dist/timestamp/api-property/index.js.map +1 -0
  332. package/dist/timestamp/api-property/timestamp.api-property.d.ts +2 -0
  333. package/dist/timestamp/api-property/timestamp.api-property.js +12 -0
  334. package/dist/timestamp/api-property/timestamp.api-property.js.map +1 -0
  335. package/dist/timestamp/dayjs-timestamp.d.ts +59 -0
  336. package/dist/timestamp/dayjs-timestamp.js +205 -0
  337. package/dist/timestamp/dayjs-timestamp.js.map +1 -0
  338. package/dist/timestamp/future-infinity.d.ts +48 -0
  339. package/dist/timestamp/future-infinity.js +128 -0
  340. package/dist/timestamp/future-infinity.js.map +1 -0
  341. package/dist/timestamp/index.d.ts +30 -0
  342. package/dist/timestamp/index.js +15 -0
  343. package/dist/timestamp/index.js.map +1 -0
  344. package/dist/timestamp/max.d.ts +2 -0
  345. package/dist/timestamp/max.js +15 -0
  346. package/dist/timestamp/max.js.map +1 -0
  347. package/dist/timestamp/min.d.ts +2 -0
  348. package/dist/timestamp/min.js +15 -0
  349. package/dist/timestamp/min.js.map +1 -0
  350. package/dist/timestamp/past-infinity.d.ts +48 -0
  351. package/dist/timestamp/past-infinity.js +128 -0
  352. package/dist/timestamp/past-infinity.js.map +1 -0
  353. package/dist/timestamp/tests/dayjs-timestamp.unit.test.d.ts +1 -0
  354. package/dist/timestamp/tests/dayjs-timestamp.unit.test.js +18 -0
  355. package/dist/timestamp/tests/dayjs-timestamp.unit.test.js.map +1 -0
  356. package/dist/timestamp/tests/timestamp.factory.unit.test.d.ts +1 -0
  357. package/dist/timestamp/tests/timestamp.factory.unit.test.js +16 -0
  358. package/dist/timestamp/tests/timestamp.factory.unit.test.js.map +1 -0
  359. package/dist/timestamp/timestamp.d.ts +83 -0
  360. package/dist/timestamp/timestamp.factory.d.ts +18 -0
  361. package/dist/timestamp/timestamp.factory.js +36 -0
  362. package/dist/timestamp/timestamp.factory.js.map +1 -0
  363. package/dist/timestamp/timestamp.js +2 -0
  364. package/dist/timestamp/timestamp.js.map +1 -0
  365. package/dist/timestamp/typeorm/index.d.ts +1 -0
  366. package/dist/timestamp/typeorm/index.js +2 -0
  367. package/dist/timestamp/typeorm/index.js.map +1 -0
  368. package/dist/timestamp/typeorm/timestamp.column.d.ts +3 -0
  369. package/dist/timestamp/typeorm/timestamp.column.js +25 -0
  370. package/dist/timestamp/typeorm/timestamp.column.js.map +1 -0
  371. package/dist/timestamp/validators/index.d.ts +1 -0
  372. package/dist/timestamp/validators/index.js +2 -0
  373. package/dist/timestamp/validators/index.js.map +1 -0
  374. package/dist/timestamp/validators/is-timestamp.validator.d.ts +7 -0
  375. package/dist/timestamp/validators/is-timestamp.validator.js +34 -0
  376. package/dist/timestamp/validators/is-timestamp.validator.js.map +1 -0
  377. package/package.json +46 -0
@@ -0,0 +1,93 @@
1
+ import { before, describe, it } from 'node:test';
2
+ import { expect } from 'expect';
3
+ import dayjs from 'dayjs';
4
+ import { Month } from '../../common/month.js';
5
+ import { FutureInfinityDate } from '../future-infinity-date.js';
6
+ import { PastInfinityDate } from '../past-infinity-date.js';
7
+ import { DayjsPlainDate } from '../dayjs-plain-date.js';
8
+ import { initDayjs } from '../../common/init-dayjs.js';
9
+ import { plainDate } from '../index.js';
10
+ describe('PlainDate manipulation', () => {
11
+ before(() => initDayjs());
12
+ describe('Future infinity', () => {
13
+ it('Future infinity remains infinity when increasing the date', () => {
14
+ expect(new FutureInfinityDate().add(1, 'day').isSame(new FutureInfinityDate())).toBe(true);
15
+ expect(new FutureInfinityDate().add(1, 'week').isSame(new FutureInfinityDate())).toBe(true);
16
+ expect(new FutureInfinityDate().add(1, 'month').isSame(new FutureInfinityDate())).toBe(true);
17
+ expect(new FutureInfinityDate().add(1, 'year').isSame(new FutureInfinityDate())).toBe(true);
18
+ });
19
+ it('Future infinity remains infinity when decreasing the date', () => {
20
+ expect(new FutureInfinityDate().subtract(1, 'day').isSame(new FutureInfinityDate())).toBe(true);
21
+ expect(new FutureInfinityDate().subtract(1, 'week').isSame(new FutureInfinityDate())).toBe(true);
22
+ expect(new FutureInfinityDate().subtract(1, 'year').isSame(new FutureInfinityDate())).toBe(true);
23
+ expect(new FutureInfinityDate().subtract(1, 'month').isSame(new FutureInfinityDate())).toBe(true);
24
+ });
25
+ });
26
+ describe('Past infinity', () => {
27
+ it('Past infinity remains infinity when increasing the date', () => {
28
+ expect(new PastInfinityDate().add(1, 'day').isSame(new PastInfinityDate())).toBe(true);
29
+ expect(new PastInfinityDate().add(1, 'week').isSame(new PastInfinityDate())).toBe(true);
30
+ expect(new PastInfinityDate().add(1, 'month').isSame(new PastInfinityDate())).toBe(true);
31
+ expect(new PastInfinityDate().add(1, 'year').isSame(new PastInfinityDate())).toBe(true);
32
+ });
33
+ it('Past infinity remains infinity when decreasing the date', () => {
34
+ expect(new PastInfinityDate().subtract(1, 'day').isSame(new PastInfinityDate())).toBe(true);
35
+ expect(new PastInfinityDate().subtract(1, 'week').isSame(new PastInfinityDate())).toBe(true);
36
+ expect(new PastInfinityDate().subtract(1, 'year').isSame(new PastInfinityDate())).toBe(true);
37
+ expect(new PastInfinityDate().subtract(1, 'month').isSame(new PastInfinityDate())).toBe(true);
38
+ });
39
+ });
40
+ describe('Non infinite days', () => {
41
+ it('The day increases by one', () => {
42
+ expect(new DayjsPlainDate().add(1, 'day').isSame(plainDate.tomorrow())).toBe(true);
43
+ expect(new DayjsPlainDate().add(1, 'day').isTomorrow()).toBe(true);
44
+ expect(new DayjsPlainDate().add(1, 'day').dayOfYear()).not.toBe(new DayjsPlainDate().dayOfYear());
45
+ expect(new DayjsPlainDate('2024-01-01').add(1, 'day').isSame(new DayjsPlainDate('2024-01-02'))).toBe(true);
46
+ expect(new DayjsPlainDate(dayjs().endOf('day')).add(1, 'day').isTomorrow()).toBe(true);
47
+ });
48
+ it('Increasing the day by one at the end of a week changes the week of the year', () => {
49
+ const endOfWeek = new DayjsPlainDate(dayjs().endOf('week'));
50
+ const startOfNextWeek = endOfWeek.add(1, 'day');
51
+ expect(endOfWeek.weekOfYear()).not.toBe(startOfNextWeek.weekOfYear());
52
+ });
53
+ it('Increasing the day by one overflows to the next week', () => {
54
+ const endOfWeek = new DayjsPlainDate(dayjs().startOf('year').endOf('week'));
55
+ const startOfNextWeek = endOfWeek.add(1, 'day');
56
+ expect(startOfNextWeek.weekOfYear()).toBe(2);
57
+ });
58
+ it('The week increases by one', () => {
59
+ expect(new DayjsPlainDate().add(1, 'week').isSame(new DayjsPlainDate(dayjs().add(1, 'week')))).toBe(true);
60
+ expect(new DayjsPlainDate().add(1, 'week').isSame(new DayjsPlainDate())).toBe(false);
61
+ expect(new DayjsPlainDate('2024-01-01').add(1, 'week').isSame(new DayjsPlainDate('2024-01-08'))).toBe(true);
62
+ });
63
+ it('Increasing the week overflows to the next month', () => {
64
+ const endOfMonth = new DayjsPlainDate(dayjs().startOf('year').endOf('month'));
65
+ const nextMonth = endOfMonth.add(1, 'week');
66
+ expect(endOfMonth.month()).not.toBe(nextMonth.month());
67
+ expect(nextMonth.month()).toBe(Month.FEBRUARY);
68
+ });
69
+ it('Increasing the week overflows to the next year', () => {
70
+ const endOfYear = new DayjsPlainDate(dayjs().endOf('year'));
71
+ const nextYear = endOfYear.add(1, 'week');
72
+ expect(endOfYear.year()).not.toBe(nextYear.year());
73
+ expect(nextYear.year()).toBe(dayjs().year() + 1);
74
+ });
75
+ it('The month increases by one', () => {
76
+ expect(new DayjsPlainDate().add(1, 'month').isSame(new DayjsPlainDate(dayjs().add(1, 'month')))).toBe(true);
77
+ expect(new DayjsPlainDate().add(1, 'month').month()).not.toBe(new DayjsPlainDate().month());
78
+ expect(new DayjsPlainDate(dayjs().startOf('year')).add(1, 'month').month()).toBe(Month.FEBRUARY);
79
+ });
80
+ it('Increasing the month overflows to the next year', () => {
81
+ const endOfYear = new DayjsPlainDate(dayjs().endOf('year'));
82
+ const nextYear = endOfYear.add(1, 'month');
83
+ expect(endOfYear.year()).not.toBe(nextYear.year());
84
+ expect(nextYear.year()).toBe(dayjs().year() + 1);
85
+ });
86
+ it('The year increases by one', () => {
87
+ expect(new DayjsPlainDate().add(1, 'year').isSame(new DayjsPlainDate(dayjs().add(1, 'year')))).toBe(true);
88
+ expect(new DayjsPlainDate().add(1, 'year').year()).not.toBe(new DayjsPlainDate().year());
89
+ expect(new DayjsPlainDate('2024-01-01').add(1, 'year').isSame(new DayjsPlainDate('2025-01-01'))).toBe(true);
90
+ });
91
+ });
92
+ });
93
+ //# sourceMappingURL=plain-date.manipulation.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plain-date.manipulation.unit.test.js","sourceRoot":"","sources":["../../../lib/plain-date/tests/plain-date.manipulation.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,174 @@
1
+ import { before, describe, it } from 'node:test';
2
+ import { expect } from 'expect';
3
+ import { FutureInfinityDate } from '../future-infinity-date.js';
4
+ import { PastInfinityDate } from '../past-infinity-date.js';
5
+ import { initDayjs } from '../../common/init-dayjs.js';
6
+ import { plainDate } from '../index.js';
7
+ describe('PlainDate ordering', () => {
8
+ before(() => initDayjs());
9
+ describe('relative order of dates', () => {
10
+ describe('today relative to others', () => {
11
+ it('respects ordering of today relative to tomorrow', () => {
12
+ expect(plainDate.today().isBefore(plainDate.tomorrow())).toBe(true);
13
+ expect(plainDate.today().isAfter(plainDate.tomorrow())).toBe(false);
14
+ expect(plainDate.today().isSame(plainDate.tomorrow())).toBe(false);
15
+ });
16
+ it('respects ordering of today relative to today', () => {
17
+ expect(plainDate.today().isBefore(plainDate.today())).toBe(false);
18
+ expect(plainDate.today().isAfter(plainDate.today())).toBe(false);
19
+ expect(plainDate.today().isSame(plainDate.today())).toBe(true);
20
+ });
21
+ it('respects ordering of today relative to yesterday', () => {
22
+ expect(plainDate.today().isBefore(plainDate.yesterday())).toBe(false);
23
+ expect(plainDate.today().isAfter(plainDate.yesterday())).toBe(true);
24
+ expect(plainDate.today().isSame(plainDate.yesterday())).toBe(false);
25
+ });
26
+ it('respects ordering of today relative to future infinity', () => {
27
+ expect(plainDate.today().isBefore(new FutureInfinityDate())).toBe(true);
28
+ expect(plainDate.today().isAfter(new FutureInfinityDate())).toBe(false);
29
+ expect(plainDate.today().isSame(new FutureInfinityDate())).toBe(false);
30
+ });
31
+ it('respects ordering of today relative to past infinity', () => {
32
+ expect(plainDate.today().isBefore(new PastInfinityDate())).toBe(false);
33
+ expect(plainDate.today().isAfter(new PastInfinityDate())).toBe(true);
34
+ expect(plainDate.today().isSame(new PastInfinityDate())).toBe(false);
35
+ });
36
+ });
37
+ describe('yesterday relative to others', () => {
38
+ it('respects ordering of yesterday relative to tomorrow', () => {
39
+ expect(plainDate.yesterday().isBefore(plainDate.tomorrow())).toBe(true);
40
+ expect(plainDate.yesterday().isAfter(plainDate.tomorrow())).toBe(false);
41
+ expect(plainDate.yesterday().isSame(plainDate.tomorrow())).toBe(false);
42
+ });
43
+ it('respects ordering of yesterday relative to today', () => {
44
+ expect(plainDate.yesterday().isBefore(plainDate.today())).toBe(true);
45
+ expect(plainDate.yesterday().isAfter(plainDate.today())).toBe(false);
46
+ expect(plainDate.yesterday().isSame(plainDate.today())).toBe(false);
47
+ });
48
+ it('respects ordering of yesterday relative to yesterday', () => {
49
+ expect(plainDate.yesterday().isBefore(plainDate.yesterday())).toBe(false);
50
+ expect(plainDate.yesterday().isAfter(plainDate.yesterday())).toBe(false);
51
+ expect(plainDate.yesterday().isSame(plainDate.yesterday())).toBe(true);
52
+ });
53
+ it('respects ordering of yesterday relative to future infinity', () => {
54
+ expect(plainDate.yesterday().isBefore(new FutureInfinityDate())).toBe(true);
55
+ expect(plainDate.yesterday().isAfter(new FutureInfinityDate())).toBe(false);
56
+ expect(plainDate.yesterday().isSame(new FutureInfinityDate())).toBe(false);
57
+ });
58
+ it('respects ordering of yesterday relative to past infinity', () => {
59
+ expect(plainDate.yesterday().isBefore(new PastInfinityDate())).toBe(false);
60
+ expect(plainDate.yesterday().isAfter(new PastInfinityDate())).toBe(true);
61
+ expect(plainDate.yesterday().isSame(new PastInfinityDate())).toBe(false);
62
+ });
63
+ });
64
+ describe('tomorrow relative to others', () => {
65
+ it('respects ordering of tomorrow relative to tomorrow', () => {
66
+ expect(plainDate.tomorrow().isBefore(plainDate.tomorrow())).toBe(false);
67
+ expect(plainDate.tomorrow().isAfter(plainDate.tomorrow())).toBe(false);
68
+ expect(plainDate.tomorrow().isSame(plainDate.tomorrow())).toBe(true);
69
+ });
70
+ it('respects ordering of tomorrow relative to today', () => {
71
+ expect(plainDate.tomorrow().isBefore(plainDate.today())).toBe(false);
72
+ expect(plainDate.tomorrow().isAfter(plainDate.today())).toBe(true);
73
+ expect(plainDate.tomorrow().isSame(plainDate.today())).toBe(false);
74
+ });
75
+ it('respects ordering of tomorrow relative to yesterday', () => {
76
+ expect(plainDate.tomorrow().isBefore(plainDate.yesterday())).toBe(false);
77
+ expect(plainDate.tomorrow().isAfter(plainDate.yesterday())).toBe(true);
78
+ expect(plainDate.tomorrow().isSame(plainDate.yesterday())).toBe(false);
79
+ });
80
+ it('respects ordering of tomorrow relative to future infinity', () => {
81
+ expect(plainDate.tomorrow().isBefore(new FutureInfinityDate())).toBe(true);
82
+ expect(plainDate.tomorrow().isAfter(new FutureInfinityDate())).toBe(false);
83
+ expect(plainDate.tomorrow().isSame(new FutureInfinityDate())).toBe(false);
84
+ });
85
+ it('respects ordering of tomorrow relative to past infinity', () => {
86
+ expect(plainDate.tomorrow().isBefore(new PastInfinityDate())).toBe(false);
87
+ expect(plainDate.tomorrow().isAfter(new PastInfinityDate())).toBe(true);
88
+ expect(plainDate.tomorrow().isSame(new PastInfinityDate())).toBe(false);
89
+ });
90
+ });
91
+ describe('tomorrow relative to others', () => {
92
+ it('respects ordering of tomorrow relative to tomorrow', () => {
93
+ expect(plainDate.tomorrow().isBefore(plainDate.tomorrow())).toBe(false);
94
+ expect(plainDate.tomorrow().isAfter(plainDate.tomorrow())).toBe(false);
95
+ expect(plainDate.tomorrow().isSame(plainDate.tomorrow())).toBe(true);
96
+ });
97
+ it('respects ordering of tomorrow relative to today', () => {
98
+ expect(plainDate.tomorrow().isBefore(plainDate.today())).toBe(false);
99
+ expect(plainDate.tomorrow().isAfter(plainDate.today())).toBe(true);
100
+ expect(plainDate.tomorrow().isSame(plainDate.today())).toBe(false);
101
+ });
102
+ it('respects ordering of tomorrow relative to yesterday', () => {
103
+ expect(plainDate.tomorrow().isBefore(plainDate.yesterday())).toBe(false);
104
+ expect(plainDate.tomorrow().isAfter(plainDate.yesterday())).toBe(true);
105
+ expect(plainDate.tomorrow().isSame(plainDate.yesterday())).toBe(false);
106
+ });
107
+ it('respects ordering of tomorrow relative to future infinity', () => {
108
+ expect(plainDate.tomorrow().isBefore(new FutureInfinityDate())).toBe(true);
109
+ expect(plainDate.tomorrow().isAfter(new FutureInfinityDate())).toBe(false);
110
+ expect(plainDate.tomorrow().isSame(new FutureInfinityDate())).toBe(false);
111
+ });
112
+ it('respects ordering of tomorrow relative to past infinity', () => {
113
+ expect(plainDate.tomorrow().isBefore(new PastInfinityDate())).toBe(false);
114
+ expect(plainDate.tomorrow().isAfter(new PastInfinityDate())).toBe(true);
115
+ expect(plainDate.tomorrow().isSame(new PastInfinityDate())).toBe(false);
116
+ });
117
+ });
118
+ describe('future infinity relative to others', () => {
119
+ it('respects ordering of future infinity relative to tomorrow', () => {
120
+ expect(new FutureInfinityDate().isBefore(plainDate.tomorrow())).toBe(false);
121
+ expect(new FutureInfinityDate().isAfter(plainDate.tomorrow())).toBe(true);
122
+ expect(new FutureInfinityDate().isSame(plainDate.tomorrow())).toBe(false);
123
+ });
124
+ it('respects ordering of future infinity relative to today', () => {
125
+ expect(new FutureInfinityDate().isBefore(plainDate.today())).toBe(false);
126
+ expect(new FutureInfinityDate().isAfter(plainDate.today())).toBe(true);
127
+ expect(new FutureInfinityDate().isSame(plainDate.today())).toBe(false);
128
+ });
129
+ it('respects ordering of future infinity relative to yesterday', () => {
130
+ expect(new FutureInfinityDate().isBefore(plainDate.yesterday())).toBe(false);
131
+ expect(new FutureInfinityDate().isAfter(plainDate.yesterday())).toBe(true);
132
+ expect(new FutureInfinityDate().isSame(plainDate.yesterday())).toBe(false);
133
+ });
134
+ it('respects ordering of future infinity relative to future infinity', () => {
135
+ expect(new FutureInfinityDate().isBefore(new FutureInfinityDate())).toBe(false);
136
+ expect(new FutureInfinityDate().isAfter(new FutureInfinityDate())).toBe(true);
137
+ expect(new FutureInfinityDate().isSame(new FutureInfinityDate())).toBe(true);
138
+ });
139
+ it('respects ordering of future infinity relative to past infinity', () => {
140
+ expect(new FutureInfinityDate().isBefore(new PastInfinityDate())).toBe(false);
141
+ expect(new FutureInfinityDate().isAfter(new PastInfinityDate())).toBe(true);
142
+ expect(new FutureInfinityDate().isSame(new PastInfinityDate())).toBe(false);
143
+ });
144
+ });
145
+ describe('past infinity relative to others', () => {
146
+ it('respects ordering of past infinity relative to tomorrow', () => {
147
+ expect(new PastInfinityDate().isBefore(plainDate.tomorrow())).toBe(true);
148
+ expect(new PastInfinityDate().isAfter(plainDate.tomorrow())).toBe(false);
149
+ expect(new PastInfinityDate().isSame(plainDate.tomorrow())).toBe(false);
150
+ });
151
+ it('respects ordering of past infinity relative to today', () => {
152
+ expect(new PastInfinityDate().isBefore(plainDate.today())).toBe(true);
153
+ expect(new PastInfinityDate().isAfter(plainDate.today())).toBe(false);
154
+ expect(new PastInfinityDate().isSame(plainDate.today())).toBe(false);
155
+ });
156
+ it('respects ordering of past infinity relative to yesterday', () => {
157
+ expect(new PastInfinityDate().isBefore(plainDate.yesterday())).toBe(true);
158
+ expect(new PastInfinityDate().isAfter(plainDate.yesterday())).toBe(false);
159
+ expect(new PastInfinityDate().isSame(plainDate.yesterday())).toBe(false);
160
+ });
161
+ it('respects ordering of past infinity relative to future infinity', () => {
162
+ expect(new PastInfinityDate().isBefore(new FutureInfinityDate())).toBe(true);
163
+ expect(new PastInfinityDate().isAfter(new FutureInfinityDate())).toBe(false);
164
+ expect(new PastInfinityDate().isSame(new FutureInfinityDate())).toBe(false);
165
+ });
166
+ it('respects ordering of past infinity relative to past infinity', () => {
167
+ expect(new PastInfinityDate().isBefore(new PastInfinityDate())).toBe(true);
168
+ expect(new PastInfinityDate().isAfter(new PastInfinityDate())).toBe(false);
169
+ expect(new PastInfinityDate().isSame(new PastInfinityDate())).toBe(true);
170
+ });
171
+ });
172
+ });
173
+ });
174
+ //# sourceMappingURL=wise-date.ordering.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wise-date.ordering.unit.test.js","sourceRoot":"","sources":["../../../lib/plain-date/tests/wise-date.ordering.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export * from './plain-date.column.js';
@@ -0,0 +1,2 @@
1
+ export * from './plain-date.column.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/plain-date/typeorm/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { ColumnOptions } from 'typeorm';
2
+ export type PlainDateColumnOptions = Omit<ColumnOptions, 'type' | 'transformer'>;
3
+ export declare function PlainDateColumn(options?: PlainDateColumnOptions): PropertyDecorator;
@@ -0,0 +1,24 @@
1
+ import { Column } from 'typeorm';
2
+ import { plainDate } from '../index.js';
3
+ export function PlainDateColumn(options) {
4
+ return Column({
5
+ ...options,
6
+ type: 'date',
7
+ transformer: TRANSFORMER
8
+ });
9
+ }
10
+ class PlainDateTransformer {
11
+ from(value) {
12
+ return plainDate(value);
13
+ }
14
+ to(value) {
15
+ if (value == null) {
16
+ return value;
17
+ }
18
+ else {
19
+ return value.toString();
20
+ }
21
+ }
22
+ }
23
+ const TRANSFORMER = new PlainDateTransformer();
24
+ //# sourceMappingURL=plain-date.column.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plain-date.column.js","sourceRoot":"","sources":["../../../lib/plain-date/typeorm/plain-date.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAiB,MAAM,SAAS,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAKvC,MAAM,UAAU,eAAe,CAAE,OAAgC;IAC/D,OAAO,MAAM,CAAC;QACZ,GAAG,OAAO;QACV,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,WAAW;KACzB,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,oBAAoB;IACxB,IAAI,CAAE,KAAoB;QACxB,OAAO,SAAS,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC;IAED,EAAE,CAAE,KAAwB;QAC1B,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,OAAO,KAAK,CAAA;QACd,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAA;QACzB,CAAC;IACH,CAAC;CACF;AAED,MAAM,WAAW,GAAG,IAAI,oBAAoB,EAAE,CAAA"}
@@ -0,0 +1 @@
1
+ export * from './is-plain-date.validator.js';
@@ -0,0 +1,2 @@
1
+ export * from './is-plain-date.validator.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/plain-date/validators/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAA"}
@@ -0,0 +1,7 @@
1
+ import type { ValidatorConstraintInterface, ValidationArguments, ValidationOptions } from 'class-validator';
2
+ /** Validate that the value is a string of format YYYY-MM-DD or (+-)infinity */
3
+ export declare function IsPlainDate(validationOptions?: ValidationOptions): PropertyDecorator;
4
+ export declare class IsPlainDateValidator implements ValidatorConstraintInterface {
5
+ validate(dateValue: unknown): boolean;
6
+ defaultMessage(args: ValidationArguments): string;
7
+ }
@@ -0,0 +1,34 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { Validate, ValidatorConstraint } from 'class-validator';
8
+ import { plainDate } from '../index.js';
9
+ /** Validate that the value is a string of format YYYY-MM-DD or (+-)infinity */
10
+ export function IsPlainDate(validationOptions) {
11
+ return Validate(IsPlainDateValidator, [], validationOptions);
12
+ }
13
+ let IsPlainDateValidator = class IsPlainDateValidator {
14
+ validate(dateValue) {
15
+ if (typeof dateValue !== 'string') {
16
+ return false;
17
+ }
18
+ try {
19
+ plainDate(dateValue);
20
+ return true;
21
+ }
22
+ catch {
23
+ return false;
24
+ }
25
+ }
26
+ defaultMessage(args) {
27
+ return `${args.property} must be a date string of format YYYY-MM-DD, infinity, +infinity or -infinity'`;
28
+ }
29
+ };
30
+ IsPlainDateValidator = __decorate([
31
+ ValidatorConstraint({ name: 'isPlainDate', async: false })
32
+ ], IsPlainDateValidator);
33
+ export { IsPlainDateValidator };
34
+ //# sourceMappingURL=is-plain-date.validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-plain-date.validator.js","sourceRoot":"","sources":["../../../lib/plain-date/validators/is-plain-date.validator.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,+EAA+E;AAC/E,MAAM,UAAU,WAAW,CAAE,iBAAqC;IAChE,OAAO,QAAQ,CAAC,oBAAoB,EAAE,EAAE,EAAE,iBAAiB,CAAC,CAAA;AAC9D,CAAC;AAGM,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAC/B,QAAQ,CAAE,SAAkB;QAC1B,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAClC,OAAO,KAAK,CAAA;QACd,CAAC;QAED,IAAI,CAAC;YACH,SAAS,CAAC,SAAS,CAAC,CAAA;YAEpB,OAAO,IAAI,CAAA;QACb,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAED,cAAc,CAAE,IAAyB;QACvC,OAAO,GAAG,IAAI,CAAC,QAAQ,gFAAgF,CAAA;IACzG,CAAC;CACF,CAAA;AAlBY,oBAAoB;IADhC,mBAAmB,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;GAC9C,oBAAoB,CAkBhC"}
@@ -0,0 +1 @@
1
+ export * from './plain-time.api-property.js';
@@ -0,0 +1,2 @@
1
+ export * from './plain-time.api-property.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/plain-time/api-property/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAA"}
@@ -0,0 +1,2 @@
1
+ import { ApiPropertyOptions } from '@nestjs/swagger';
2
+ export declare function PlainTimeApiProperty(options?: Omit<ApiPropertyOptions, 'type' | 'format'>): PropertyDecorator;
@@ -0,0 +1,5 @@
1
+ import { ApiProperty } from '@nestjs/swagger';
2
+ export function PlainTimeApiProperty(options) {
3
+ return ApiProperty({ ...options, type: 'string', format: 'time' });
4
+ }
5
+ //# sourceMappingURL=plain-time.api-property.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plain-time.api-property.js","sourceRoot":"","sources":["../../../lib/plain-time/api-property/plain-time.api-property.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAsB,MAAM,iBAAiB,CAAA;AAEjE,MAAM,UAAU,oBAAoB,CAClC,OAAqD;IAErD,OAAO,WAAW,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAwB,CAAC,CAAA;AAC1F,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare const STRING_FORMAT: "hh:mm:ss";
2
+ export declare const MIN_ABSOLUTE_MILLISECONDS: 0;
3
+ /** = 24 hours * 60 minutes * 60 seconds * 1000 milliseconds */
4
+ export declare const MAX_ABSOLUTE_MILLISECONDS: 86400000;
@@ -0,0 +1,5 @@
1
+ export const STRING_FORMAT = 'hh:mm:ss';
2
+ export const MIN_ABSOLUTE_MILLISECONDS = 0;
3
+ /** = 24 hours * 60 minutes * 60 seconds * 1000 milliseconds */
4
+ export const MAX_ABSOLUTE_MILLISECONDS = 86400000;
5
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../lib/plain-time/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG,UAAmB,CAAA;AAChD,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAU,CAAA;AACnD,+DAA+D;AAC/D,MAAM,CAAC,MAAM,yBAAyB,GAAG,QAAiB,CAAA"}
@@ -0,0 +1,8 @@
1
+ export * from './plain-time-entry.js';
2
+ export * from './plain-time-error.js';
3
+ export { PlainTimeInput, PlainTime } from './plain-time.js';
4
+ export * from './typeorm/index.js';
5
+ export * from './plain-time-object.type.js';
6
+ export * from './time-unit.js';
7
+ export * from './validators/index.js';
8
+ export * from './api-property/index.js';
@@ -0,0 +1,8 @@
1
+ export * from './plain-time-entry.js';
2
+ export * from './plain-time-error.js';
3
+ export * from './typeorm/index.js';
4
+ export * from './plain-time-object.type.js';
5
+ export * from './time-unit.js';
6
+ export * from './validators/index.js';
7
+ export * from './api-property/index.js';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/plain-time/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AAErC,cAAc,oBAAoB,CAAA;AAClC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,gBAAgB,CAAA;AAC9B,cAAc,uBAAuB,CAAA;AACrC,cAAc,yBAAyB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const TIME_REGEX: RegExp;
2
+ export declare function isValidTimeString(timeString?: string | null): boolean;
@@ -0,0 +1,5 @@
1
+ export const TIME_REGEX = /^(?:([01][0-9]|2[0-3]):[0-5][0-9]$|([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](?:\.\d{1,3})?$|24:00$|24:00:00(?:\.0{1,3})?)$/;
2
+ export function isValidTimeString(timeString) {
3
+ return timeString != null && TIME_REGEX.test(timeString);
4
+ }
5
+ //# sourceMappingURL=is-valid-time-string.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-valid-time-string.js","sourceRoot":"","sources":["../../lib/plain-time/is-valid-time-string.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG,2HAA2H,CAAA;AAErJ,MAAM,UAAU,iBAAiB,CAAE,UAA0B;IAC3D,OAAO,UAAU,IAAI,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;AAC1D,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { PlainTimeInput, PlainTime } from './plain-time.js';
2
+ export declare function max(...dates: PlainTimeInput[]): PlainTime;
@@ -0,0 +1,15 @@
1
+ import { plainTime } from './plain-time-entry.js';
2
+ export function max(...dates) {
3
+ if (dates.length === 0) {
4
+ throw new Error('Invalid arguments, no dates provided to compare');
5
+ }
6
+ const plainTimes = dates.map(t => plainTime(t));
7
+ let max = plainTime(plainTimes[0]);
8
+ for (let i = 1; i < plainTimes.length; i++) {
9
+ if (plainTimes[i].isAfter(max)) {
10
+ max = plainTimes[i];
11
+ }
12
+ }
13
+ return max;
14
+ }
15
+ //# sourceMappingURL=max.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"max.js","sourceRoot":"","sources":["../../lib/plain-time/max.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAGjD,MAAM,UAAU,GAAG,CAAE,GAAG,KAAuB;IAC7C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;IACpE,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;IAE/C,IAAI,GAAG,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;IAElC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { PlainTimeInput, PlainTime } from './plain-time.js';
2
+ export declare function min(...dates: PlainTimeInput[]): PlainTime;
@@ -0,0 +1,15 @@
1
+ import { plainTime } from './plain-time-entry.js';
2
+ export function min(...dates) {
3
+ if (dates.length === 0) {
4
+ throw new Error('Invalid arguments, no dates provided to compare');
5
+ }
6
+ const plainTimes = dates.map(t => plainTime(t));
7
+ let min = plainTime(plainTimes[0]);
8
+ for (let i = 1; i < plainTimes.length; i++) {
9
+ if (plainTimes[i].isBefore(min)) {
10
+ min = plainTimes[i];
11
+ }
12
+ }
13
+ return min;
14
+ }
15
+ //# sourceMappingURL=min.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"min.js","sourceRoot":"","sources":["../../lib/plain-time/min.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAGjD,MAAM,UAAU,GAAG,CAAE,GAAG,KAAuB;IAC7C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;IACpE,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;IAE/C,IAAI,GAAG,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;IAElC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAChC,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { PlainTimeInput, PlainTime } from './plain-time.js';
2
+ import { STRING_FORMAT } from './constants.js';
3
+ import { PlainTimeObject } from './plain-time-object.type.js';
4
+ export interface PlainTimeFn {
5
+ (arg: null): null;
6
+ (arg: undefined): PlainTime;
7
+ (arg: number): PlainTime;
8
+ (arg: string): PlainTime;
9
+ (arg: PlainTime): PlainTime;
10
+ (arg: PlainTimeObject): PlainTime;
11
+ (arg: Date): PlainTime;
12
+ (arg: PlainTimeInput): PlainTime;
13
+ isValidTimeString(value?: string | null): boolean;
14
+ max(...times: PlainTimeInput[]): PlainTime;
15
+ min(...times: PlainTimeInput[]): PlainTime;
16
+ STRING_FORMAT: typeof STRING_FORMAT;
17
+ }
18
+ export declare const plainTime: PlainTimeFn;
@@ -0,0 +1,11 @@
1
+ import { factory } from './plain-time.factory.js';
2
+ import { isValidTimeString } from './is-valid-time-string.js';
3
+ import { min } from './min.js';
4
+ import { max } from './max.js';
5
+ import { STRING_FORMAT } from './constants.js';
6
+ export const plainTime = factory;
7
+ plainTime.isValidTimeString = isValidTimeString;
8
+ plainTime.min = min;
9
+ plainTime.max = max;
10
+ plainTime.STRING_FORMAT = STRING_FORMAT;
11
+ //# sourceMappingURL=plain-time-entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plain-time-entry.js","sourceRoot":"","sources":["../../lib/plain-time/plain-time-entry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAmB9C,MAAM,CAAC,MAAM,SAAS,GAAG,OAAiC,CAAA;AAE1D,SAAS,CAAC,iBAAiB,GAAG,iBAAiB,CAAA;AAC/C,SAAS,CAAC,GAAG,GAAG,GAAG,CAAA;AACnB,SAAS,CAAC,GAAG,GAAG,GAAG,CAAA;AACnB,SAAS,CAAC,aAAa,GAAG,aAAa,CAAA"}
@@ -0,0 +1,12 @@
1
+ import { PlainTimeImpl } from './plain-time.js';
2
+ export declare class PlainTimeError extends Error {
3
+ }
4
+ export declare class InvalidPlainTimeString extends PlainTimeError {
5
+ constructor(invalidString: string);
6
+ }
7
+ export declare class InvalidBounds extends PlainTimeError {
8
+ constructor(lowerBound: PlainTimeImpl, upperBound: PlainTimeImpl);
9
+ }
10
+ export declare class InvalidAbsoluteMilliseconds extends PlainTimeError {
11
+ constructor(time: string);
12
+ }