@duplojs/utils 1.4.57 → 1.4.59

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 (319) hide show
  1. package/dist/array/group.cjs +11 -11
  2. package/dist/array/group.d.ts +1 -1
  3. package/dist/array/group.mjs +11 -11
  4. package/dist/clean/constraint/base.d.ts +6 -4
  5. package/dist/clean/constraint/defaultConstraint/index.d.ts +1 -0
  6. package/dist/clean/constraint/defaultConstraint/number.d.ts +6 -6
  7. package/dist/clean/constraint/defaultConstraint/string.d.ts +4 -4
  8. package/dist/clean/constraint/defaultConstraint/time.cjs +19 -0
  9. package/dist/clean/constraint/defaultConstraint/time.d.ts +61 -0
  10. package/dist/clean/constraint/defaultConstraint/time.mjs +16 -0
  11. package/dist/clean/constraint/set.d.ts +6 -4
  12. package/dist/clean/entity.d.ts +2 -1
  13. package/dist/clean/index.cjs +3 -0
  14. package/dist/clean/index.mjs +1 -0
  15. package/dist/clean/newType.d.ts +7 -5
  16. package/dist/clean/primitive/base.d.ts +25 -34
  17. package/dist/clean/primitive/operations/date/dateAddTime.d.ts +7 -11
  18. package/dist/clean/primitive/operations/date/dateGreaterThan.d.ts +9 -7
  19. package/dist/clean/primitive/operations/date/dateLessThan.d.ts +9 -7
  20. package/dist/clean/primitive/operations/date/dateMax.d.ts +3 -10
  21. package/dist/clean/primitive/operations/date/dateMin.d.ts +3 -10
  22. package/dist/clean/primitive/operations/date/dateSubtractTime.d.ts +7 -11
  23. package/dist/clean/primitive/operations/equal.cjs +1 -1
  24. package/dist/clean/primitive/operations/equal.d.ts +3 -3
  25. package/dist/clean/primitive/operations/equal.mjs +1 -1
  26. package/dist/clean/primitive/operations/sort.d.ts +8 -10
  27. package/dist/clean/primitive/operations/time/timeGreaterThan.d.ts +11 -9
  28. package/dist/clean/primitive/operations/time/timeLessThan.d.ts +11 -9
  29. package/dist/clean/primitive/operations/time/timeMax.cjs +2 -2
  30. package/dist/clean/primitive/operations/time/timeMax.d.ts +10 -17
  31. package/dist/clean/primitive/operations/time/timeMax.mjs +2 -2
  32. package/dist/clean/primitive/operations/time/timeMin.cjs +3 -3
  33. package/dist/clean/primitive/operations/time/timeMin.d.ts +10 -17
  34. package/dist/clean/primitive/operations/time/timeMin.mjs +3 -3
  35. package/dist/clean/unwrapEntity.cjs +13 -3
  36. package/dist/clean/unwrapEntity.d.ts +57 -5
  37. package/dist/clean/unwrapEntity.mjs +13 -3
  38. package/dist/common/index.d.ts +3 -4
  39. package/dist/common/kind.d.ts +1 -0
  40. package/dist/common/path.cjs +13 -13
  41. package/dist/common/path.d.ts +17 -11
  42. package/dist/common/path.mjs +13 -13
  43. package/dist/common/toRegExp.cjs +19 -0
  44. package/dist/common/toRegExp.d.ts +31 -0
  45. package/dist/common/toRegExp.mjs +17 -0
  46. package/dist/common/transformer.cjs +45 -0
  47. package/dist/common/transformer.d.ts +61 -0
  48. package/dist/common/transformer.mjs +40 -0
  49. package/dist/common/types/DeepReadonly.d.ts +1 -1
  50. package/dist/common/types/toLargeEnsemble.d.ts +2 -2
  51. package/dist/dataParser/error.cjs +4 -2
  52. package/dist/dataParser/error.d.ts +4 -2
  53. package/dist/dataParser/error.mjs +4 -2
  54. package/dist/dataParser/extended/date.d.ts +9 -4
  55. package/dist/dataParser/extended/time.d.ts +28 -12
  56. package/dist/dataParser/identifier.d.ts +20 -8
  57. package/dist/dataParser/parsers/date.cjs +16 -12
  58. package/dist/dataParser/parsers/date.d.ts +15 -9
  59. package/dist/dataParser/parsers/date.mjs +16 -12
  60. package/dist/dataParser/parsers/time/checkers/max.cjs +3 -0
  61. package/dist/dataParser/parsers/time/checkers/max.d.ts +28 -0
  62. package/dist/dataParser/parsers/time/checkers/max.mjs +3 -0
  63. package/dist/dataParser/parsers/time/checkers/min.cjs +3 -0
  64. package/dist/dataParser/parsers/time/checkers/min.d.ts +28 -0
  65. package/dist/dataParser/parsers/time/checkers/min.mjs +3 -0
  66. package/dist/dataParser/parsers/time/index.cjs +14 -10
  67. package/dist/dataParser/parsers/time/index.d.ts +15 -9
  68. package/dist/dataParser/parsers/time/index.mjs +14 -10
  69. package/dist/date/applyTimezone.cjs +4 -4
  70. package/dist/date/applyTimezone.d.ts +18 -16
  71. package/dist/date/applyTimezone.mjs +2 -2
  72. package/dist/date/closestTo.cjs +6 -2
  73. package/dist/date/closestTo.d.ts +15 -15
  74. package/dist/date/closestTo.mjs +6 -2
  75. package/dist/date/constants.cjs +4 -4
  76. package/dist/date/constants.d.ts +2 -2
  77. package/dist/date/constants.mjs +3 -3
  78. package/dist/date/create.cjs +20 -10
  79. package/dist/date/create.d.ts +24 -38
  80. package/dist/date/create.mjs +21 -11
  81. package/dist/date/createOrThrow.d.ts +18 -20
  82. package/dist/date/createTime.cjs +16 -7
  83. package/dist/date/createTime.d.ts +19 -18
  84. package/dist/date/createTime.mjs +17 -8
  85. package/dist/date/createTimeOrThrow.d.ts +17 -20
  86. package/dist/date/each.cjs +6 -4
  87. package/dist/date/each.d.ts +21 -19
  88. package/dist/date/each.mjs +6 -4
  89. package/dist/date/format.d.ts +17 -15
  90. package/dist/date/formatTime.d.ts +17 -16
  91. package/dist/date/getTimezoneOffset.cjs +6 -3
  92. package/dist/date/getTimezoneOffset.d.ts +17 -18
  93. package/dist/date/getTimezoneOffset.mjs +6 -3
  94. package/dist/date/getters/getDayOfMonth.cjs +3 -3
  95. package/dist/date/getters/getDayOfMonth.d.ts +20 -14
  96. package/dist/date/getters/getDayOfMonth.mjs +3 -3
  97. package/dist/date/getters/getDayOfWeek.cjs +3 -3
  98. package/dist/date/getters/getDayOfWeek.d.ts +15 -12
  99. package/dist/date/getters/getDayOfWeek.mjs +3 -3
  100. package/dist/date/getters/getDayOfYear.cjs +6 -6
  101. package/dist/date/getters/getDayOfYear.d.ts +21 -13
  102. package/dist/date/getters/getDayOfYear.mjs +6 -6
  103. package/dist/date/getters/getFirstDayOfMonth.cjs +2 -3
  104. package/dist/date/getters/getFirstDayOfMonth.d.ts +16 -10
  105. package/dist/date/getters/getFirstDayOfMonth.mjs +2 -3
  106. package/dist/date/getters/getFirstDayOfWeek.cjs +2 -3
  107. package/dist/date/getters/getFirstDayOfWeek.d.ts +17 -10
  108. package/dist/date/getters/getFirstDayOfWeek.mjs +2 -3
  109. package/dist/date/getters/getHour.cjs +3 -3
  110. package/dist/date/getters/getHour.d.ts +16 -14
  111. package/dist/date/getters/getHour.mjs +3 -3
  112. package/dist/date/getters/getLastDayOfMonth.cjs +2 -3
  113. package/dist/date/getters/getLastDayOfMonth.d.ts +16 -10
  114. package/dist/date/getters/getLastDayOfMonth.mjs +2 -3
  115. package/dist/date/getters/getLastDayOfWeek.cjs +2 -3
  116. package/dist/date/getters/getLastDayOfWeek.d.ts +17 -10
  117. package/dist/date/getters/getLastDayOfWeek.mjs +2 -3
  118. package/dist/date/getters/getMilliseconds.cjs +2 -2
  119. package/dist/date/getters/getMilliseconds.d.ts +11 -9
  120. package/dist/date/getters/getMilliseconds.mjs +2 -2
  121. package/dist/date/getters/getMinute.cjs +3 -3
  122. package/dist/date/getters/getMinute.d.ts +17 -15
  123. package/dist/date/getters/getMinute.mjs +3 -3
  124. package/dist/date/getters/getMonth.cjs +3 -3
  125. package/dist/date/getters/getMonth.d.ts +20 -15
  126. package/dist/date/getters/getMonth.mjs +3 -3
  127. package/dist/date/getters/getSecond.cjs +3 -3
  128. package/dist/date/getters/getSecond.d.ts +17 -15
  129. package/dist/date/getters/getSecond.mjs +3 -3
  130. package/dist/date/getters/getWeekOfYear.cjs +12 -11
  131. package/dist/date/getters/getWeekOfYear.d.ts +17 -11
  132. package/dist/date/getters/getWeekOfYear.mjs +12 -11
  133. package/dist/date/getters/getYear.cjs +3 -3
  134. package/dist/date/getters/getYear.d.ts +16 -15
  135. package/dist/date/getters/getYear.mjs +3 -3
  136. package/dist/date/index.cjs +12 -6
  137. package/dist/date/index.d.ts +5 -2
  138. package/dist/date/index.mjs +6 -3
  139. package/dist/date/is.cjs +3 -8
  140. package/dist/date/is.d.ts +9 -14
  141. package/dist/date/is.mjs +3 -8
  142. package/dist/date/isSafeTimeValue.d.ts +9 -13
  143. package/dist/date/isSafeTimestamp.d.ts +7 -16
  144. package/dist/date/isSerializedTheDate.cjs +20 -0
  145. package/dist/date/isSerializedTheDate.d.ts +31 -0
  146. package/dist/date/isSerializedTheDate.mjs +18 -0
  147. package/dist/date/isSerializedTheTime.cjs +20 -0
  148. package/dist/date/isSerializedTheTime.d.ts +31 -0
  149. package/dist/date/isSerializedTheTime.mjs +18 -0
  150. package/dist/date/isTime.cjs +3 -8
  151. package/dist/date/isTime.d.ts +7 -14
  152. package/dist/date/isTime.mjs +3 -8
  153. package/dist/date/kind.cjs +9 -0
  154. package/dist/date/kind.d.ts +1 -0
  155. package/dist/date/kind.mjs +7 -0
  156. package/dist/date/makeSafeTimeValue.d.ts +12 -11
  157. package/dist/date/makeSafeTimestamp.d.ts +12 -11
  158. package/dist/date/max.cjs +2 -2
  159. package/dist/date/max.d.ts +13 -13
  160. package/dist/date/max.mjs +2 -2
  161. package/dist/date/maxTime.cjs +2 -2
  162. package/dist/date/maxTime.d.ts +13 -21
  163. package/dist/date/maxTime.mjs +2 -2
  164. package/dist/date/min.cjs +2 -2
  165. package/dist/date/min.d.ts +13 -13
  166. package/dist/date/min.mjs +2 -2
  167. package/dist/date/minTime.cjs +2 -2
  168. package/dist/date/minTime.d.ts +13 -21
  169. package/dist/date/minTime.mjs +2 -2
  170. package/dist/date/now.cjs +3 -1
  171. package/dist/date/now.d.ts +9 -7
  172. package/dist/date/now.mjs +3 -1
  173. package/dist/date/operators/addDays.cjs +3 -5
  174. package/dist/date/operators/addDays.d.ts +14 -11
  175. package/dist/date/operators/addDays.mjs +3 -5
  176. package/dist/date/operators/addHours.cjs +3 -5
  177. package/dist/date/operators/addHours.d.ts +14 -11
  178. package/dist/date/operators/addHours.mjs +3 -5
  179. package/dist/date/operators/addMilliseconds.cjs +3 -5
  180. package/dist/date/operators/addMilliseconds.d.ts +14 -11
  181. package/dist/date/operators/addMilliseconds.mjs +3 -5
  182. package/dist/date/operators/addMinutes.cjs +3 -5
  183. package/dist/date/operators/addMinutes.d.ts +14 -11
  184. package/dist/date/operators/addMinutes.mjs +3 -5
  185. package/dist/date/operators/addMonths.cjs +2 -2
  186. package/dist/date/operators/addMonths.d.ts +13 -13
  187. package/dist/date/operators/addMonths.mjs +2 -2
  188. package/dist/date/operators/addSeconds.cjs +3 -5
  189. package/dist/date/operators/addSeconds.d.ts +14 -11
  190. package/dist/date/operators/addSeconds.mjs +3 -5
  191. package/dist/date/operators/addTime.cjs +13 -6
  192. package/dist/date/operators/addTime.d.ts +20 -18
  193. package/dist/date/operators/addTime.mjs +13 -6
  194. package/dist/date/operators/addWeeks.cjs +6 -5
  195. package/dist/date/operators/addWeeks.d.ts +14 -11
  196. package/dist/date/operators/addWeeks.mjs +6 -5
  197. package/dist/date/operators/addYears.cjs +2 -2
  198. package/dist/date/operators/addYears.d.ts +13 -13
  199. package/dist/date/operators/addYears.mjs +2 -2
  200. package/dist/date/operators/between.d.ts +11 -11
  201. package/dist/date/operators/betweenThan.d.ts +11 -11
  202. package/dist/date/operators/betweenThanTime.d.ts +18 -22
  203. package/dist/date/operators/betweenTime.d.ts +17 -21
  204. package/dist/date/operators/greater.d.ts +12 -9
  205. package/dist/date/operators/greaterThan.d.ts +14 -11
  206. package/dist/date/operators/greaterThanTime.d.ts +17 -21
  207. package/dist/date/operators/greaterTime.d.ts +16 -20
  208. package/dist/date/operators/less.d.ts +12 -9
  209. package/dist/date/operators/lessThan.d.ts +13 -10
  210. package/dist/date/operators/lessThanTime.d.ts +17 -21
  211. package/dist/date/operators/lessTime.d.ts +16 -20
  212. package/dist/date/operators/subtractDays.cjs +3 -5
  213. package/dist/date/operators/subtractDays.d.ts +14 -11
  214. package/dist/date/operators/subtractDays.mjs +3 -5
  215. package/dist/date/operators/subtractHours.cjs +3 -5
  216. package/dist/date/operators/subtractHours.d.ts +14 -11
  217. package/dist/date/operators/subtractHours.mjs +3 -5
  218. package/dist/date/operators/subtractMilliseconds.cjs +3 -5
  219. package/dist/date/operators/subtractMilliseconds.d.ts +14 -11
  220. package/dist/date/operators/subtractMilliseconds.mjs +3 -5
  221. package/dist/date/operators/subtractMinutes.cjs +3 -5
  222. package/dist/date/operators/subtractMinutes.d.ts +14 -11
  223. package/dist/date/operators/subtractMinutes.mjs +3 -5
  224. package/dist/date/operators/subtractMonths.cjs +2 -2
  225. package/dist/date/operators/subtractMonths.d.ts +17 -11
  226. package/dist/date/operators/subtractMonths.mjs +2 -2
  227. package/dist/date/operators/subtractSeconds.cjs +3 -5
  228. package/dist/date/operators/subtractSeconds.d.ts +14 -11
  229. package/dist/date/operators/subtractSeconds.mjs +3 -5
  230. package/dist/date/operators/subtractTime.cjs +13 -6
  231. package/dist/date/operators/subtractTime.d.ts +20 -18
  232. package/dist/date/operators/subtractTime.mjs +13 -6
  233. package/dist/date/operators/subtractWeeks.cjs +3 -5
  234. package/dist/date/operators/subtractWeeks.d.ts +14 -11
  235. package/dist/date/operators/subtractWeeks.mjs +3 -5
  236. package/dist/date/operators/subtractYears.cjs +2 -2
  237. package/dist/date/operators/subtractYears.d.ts +17 -11
  238. package/dist/date/operators/subtractYears.mjs +2 -2
  239. package/dist/date/round.cjs +2 -2
  240. package/dist/date/round.d.ts +11 -14
  241. package/dist/date/round.mjs +2 -2
  242. package/dist/date/serialize.cjs +14 -0
  243. package/dist/date/serialize.d.ts +41 -0
  244. package/dist/date/serialize.mjs +12 -0
  245. package/dist/date/sort.cjs +2 -2
  246. package/dist/date/sort.d.ts +16 -15
  247. package/dist/date/sort.mjs +2 -2
  248. package/dist/date/sortTimes.cjs +2 -2
  249. package/dist/date/sortTimes.d.ts +15 -21
  250. package/dist/date/sortTimes.mjs +2 -2
  251. package/dist/date/theDate.cjs +124 -0
  252. package/dist/date/theDate.d.ts +114 -0
  253. package/dist/date/theDate.mjs +122 -0
  254. package/dist/date/theTime.cjs +36 -0
  255. package/dist/date/theTime.d.ts +53 -0
  256. package/dist/date/theTime.mjs +34 -0
  257. package/dist/date/timezone.cjs +3 -0
  258. package/dist/date/timezone.d.ts +27 -0
  259. package/dist/date/timezone.mjs +3 -0
  260. package/dist/date/toISOString.cjs +5 -2
  261. package/dist/date/toISOString.d.ts +12 -10
  262. package/dist/date/toISOString.mjs +5 -2
  263. package/dist/date/toNative.cjs +4 -0
  264. package/dist/date/toNative.d.ts +12 -10
  265. package/dist/date/toNative.mjs +4 -0
  266. package/dist/date/toTimeValue.cjs +6 -2
  267. package/dist/date/toTimeValue.d.ts +14 -12
  268. package/dist/date/toTimeValue.mjs +6 -2
  269. package/dist/date/toTimestamp.cjs +5 -3
  270. package/dist/date/toTimestamp.d.ts +11 -9
  271. package/dist/date/toTimestamp.mjs +6 -4
  272. package/dist/date/today.cjs +3 -1
  273. package/dist/date/today.d.ts +14 -7
  274. package/dist/date/today.mjs +3 -1
  275. package/dist/date/tomorrow.cjs +2 -1
  276. package/dist/date/tomorrow.d.ts +12 -7
  277. package/dist/date/tomorrow.mjs +2 -1
  278. package/dist/date/types/index.d.ts +2 -2
  279. package/dist/date/types/serializedTheDate.d.ts +1 -0
  280. package/dist/date/types/serializedTheTime.d.ts +42 -0
  281. package/dist/date/types/spoolingDate.d.ts +2 -1
  282. package/dist/date/yesterday.cjs +2 -1
  283. package/dist/date/yesterday.d.ts +12 -7
  284. package/dist/date/yesterday.mjs +2 -1
  285. package/dist/generator/asyncGroup.cjs +31 -0
  286. package/dist/generator/asyncGroup.d.ts +39 -0
  287. package/dist/generator/asyncGroup.mjs +29 -0
  288. package/dist/generator/group.cjs +39 -0
  289. package/dist/generator/group.d.ts +101 -0
  290. package/dist/generator/group.mjs +36 -0
  291. package/dist/generator/index.cjs +5 -0
  292. package/dist/generator/index.d.ts +3 -0
  293. package/dist/generator/index.mjs +2 -0
  294. package/dist/index.cjs +7 -6
  295. package/dist/index.mjs +2 -3
  296. package/dist/metadata.json +94 -40
  297. package/dist/object/entries.cjs +7 -2
  298. package/dist/object/entries.mjs +7 -2
  299. package/dist/object/keys.cjs +7 -2
  300. package/dist/object/keys.d.ts +1 -1
  301. package/dist/object/keys.mjs +7 -2
  302. package/package.json +1 -1
  303. package/dist/common/toJSON.cjs +0 -37
  304. package/dist/common/toJSON.d.ts +0 -44
  305. package/dist/common/toJSON.mjs +0 -35
  306. package/dist/common/toString.cjs +0 -10
  307. package/dist/common/toString.d.ts +0 -17
  308. package/dist/common/toString.mjs +0 -8
  309. package/dist/common/toTransform.cjs +0 -37
  310. package/dist/common/toTransform.d.ts +0 -50
  311. package/dist/common/toTransform.mjs +0 -35
  312. package/dist/date/createTheDate.cjs +0 -13
  313. package/dist/date/createTheDate.d.ts +0 -28
  314. package/dist/date/createTheDate.mjs +0 -11
  315. package/dist/date/createTheTime.cjs +0 -13
  316. package/dist/date/createTheTime.d.ts +0 -25
  317. package/dist/date/createTheTime.mjs +0 -11
  318. package/dist/date/types/theDate.d.ts +0 -11
  319. package/dist/date/types/theTime.d.ts +0 -10
@@ -1,37 +0,0 @@
1
- 'use strict';
2
-
3
- /**
4
- * {@include common/toJSON/index.md}
5
- */
6
- function toJSON(value) {
7
- if (typeof value === "string"
8
- || typeof value === "number"
9
- || value === null
10
- || value === undefined) {
11
- return value;
12
- }
13
- else if (typeof value === "object"
14
- && "toJSON" in value
15
- && typeof value.toJSON === "function") {
16
- return value.toJSON();
17
- }
18
- else if (typeof value === "object"
19
- && (!value.constructor
20
- || value.constructor.name === "Object")) {
21
- return Object
22
- .entries(value)
23
- .reduce((pv, [key, value]) => ({
24
- ...pv,
25
- [key]: toJSON(value),
26
- }), {});
27
- }
28
- else if (value instanceof Array
29
- && value.constructor.name === "Array") {
30
- return value.map(toJSON);
31
- }
32
- else {
33
- return undefined;
34
- }
35
- }
36
-
37
- exports.toJSON = toJSON;
@@ -1,44 +0,0 @@
1
- import { type AnyFunction } from "./types/anyFunction";
2
- import { type IsEqual } from "./types/isEqual";
3
- export type ToJSON<GenericValue extends unknown> = GenericValue extends number | string | null | undefined ? GenericValue : GenericValue extends ({
4
- toJSON: AnyFunction;
5
- }) ? ReturnType<GenericValue["toJSON"]> : GenericValue extends [infer InferredFirst, ...infer InferredRest] ? [
6
- ToJSON<InferredFirst>,
7
- ...(ToJSON<InferredRest> extends infer InferredSubRest extends any[] ? IsEqual<InferredSubRest, never[]> extends false ? InferredSubRest : [] : [])
8
- ] : GenericValue extends any[] ? ToJSON<GenericValue[number]>[] : GenericValue extends object ? {
9
- [Prop in keyof GenericValue as GenericValue[Prop] extends AnyFunction ? never : Prop]: ToJSON<GenericValue[Prop]>;
10
- } : undefined;
11
- /**
12
- * The toJSON() function prepares a value for JSON serialization while respecting objects' toJSON methods, traversing arrays/tuples, and excluding functions.
13
- *
14
- * Signature: `toJSON(value)` → returns a value
15
- *
16
- * The input value is not mutated.
17
- *
18
- * ```ts
19
- * const result = toJSON({
20
- * prop: 1,
21
- * prop1: "test",
22
- * prop2: new Date("2025-08-19T15:14:19.467Z"),
23
- * prop3: null,
24
- * prop4: undefined,
25
- * prop5: {
26
- * subProp: [{ prop1: 1 }],
27
- * subProp1: {
28
- * toJSON() {
29
- * return "test";
30
- * },
31
- * },
32
- * },
33
- * method() {
34
- * return void 0;
35
- * },
36
- * });
37
- *
38
- * // type: { prop: number; prop1: string; prop2: string; prop3: null; prop4: undefined; prop5: { subProp: { prop1: number; }[]; subProp1: "test"; }; }
39
- * ```
40
- *
41
- * @see https://utils.duplojs.dev/en/v1/api/common/toJSON
42
- *
43
- */
44
- export declare function toJSON<GenericValue extends unknown>(value: GenericValue): ToJSON<GenericValue>;
@@ -1,35 +0,0 @@
1
- /**
2
- * {@include common/toJSON/index.md}
3
- */
4
- function toJSON(value) {
5
- if (typeof value === "string"
6
- || typeof value === "number"
7
- || value === null
8
- || value === undefined) {
9
- return value;
10
- }
11
- else if (typeof value === "object"
12
- && "toJSON" in value
13
- && typeof value.toJSON === "function") {
14
- return value.toJSON();
15
- }
16
- else if (typeof value === "object"
17
- && (!value.constructor
18
- || value.constructor.name === "Object")) {
19
- return Object
20
- .entries(value)
21
- .reduce((pv, [key, value]) => ({
22
- ...pv,
23
- [key]: toJSON(value),
24
- }), {});
25
- }
26
- else if (value instanceof Array
27
- && value.constructor.name === "Array") {
28
- return value.map(toJSON);
29
- }
30
- else {
31
- return undefined;
32
- }
33
- }
34
-
35
- export { toJSON };
@@ -1,10 +0,0 @@
1
- 'use strict';
2
-
3
- /**
4
- * {@include common/toString/index.md}
5
- */
6
- function toString(value) {
7
- return `${value}`;
8
- }
9
-
10
- exports.toString = toString;
@@ -1,17 +0,0 @@
1
- /**
2
- * The toString() function converts a literal (number, string, bigint, boolean, null, undefined) into a typed template string.
3
- *
4
- * Signature: `toString(value)` → returns a value
5
- *
6
- * The input value is not mutated.
7
- *
8
- * ```ts
9
- * const result = toString(42n);
10
- *
11
- * // type: "42"
12
- * ```
13
- *
14
- * @see https://utils.duplojs.dev/en/v1/api/common/toString
15
- *
16
- */
17
- export declare function toString<GenericValue extends number | string | bigint | boolean | null | undefined>(value: GenericValue): `${GenericValue}`;
@@ -1,8 +0,0 @@
1
- /**
2
- * {@include common/toString/index.md}
3
- */
4
- function toString(value) {
5
- return `${value}`;
6
- }
7
-
8
- export { toString };
@@ -1,37 +0,0 @@
1
- 'use strict';
2
-
3
- /**
4
- * {@include common/toTransform/index.md}
5
- */
6
- function toTransform(value) {
7
- if (typeof value === "string"
8
- || typeof value === "number"
9
- || value === null
10
- || value === undefined) {
11
- return value;
12
- }
13
- else if (value
14
- && typeof value === "object"
15
- && "toTransform" in value
16
- && typeof value.toTransform === "function") {
17
- return (value.toTransform());
18
- }
19
- else if (typeof value === "object"
20
- && (!value.constructor
21
- || value.constructor.name === "Object")) {
22
- return Object.entries(value)
23
- .reduce((pv, [key, value]) => ({
24
- ...pv,
25
- [key]: toTransform(value),
26
- }), {});
27
- }
28
- else if (value instanceof Array
29
- && value.constructor.name === "Array") {
30
- return value.map((subValue) => toTransform(subValue));
31
- }
32
- else {
33
- return value;
34
- }
35
- }
36
-
37
- exports.toTransform = toTransform;
@@ -1,50 +0,0 @@
1
- import { type AnyFunction } from "./types/anyFunction";
2
- import { type IsEqual } from "./types/isEqual";
3
- export type ToTransform<GenericValue extends unknown> = GenericValue extends number | string | null | undefined ? GenericValue : GenericValue extends ({
4
- toTransform: AnyFunction;
5
- }) ? ReturnType<GenericValue["toTransform"]> : GenericValue extends [infer InferredFirst, ...infer InferredRest] ? [
6
- ToTransform<InferredFirst>,
7
- ...(ToTransform<InferredRest> extends infer InferredSubRest extends any[] ? IsEqual<InferredSubRest, never[]> extends false ? InferredSubRest : [] : [])
8
- ] : GenericValue extends any[] ? ToTransform<GenericValue[number]>[] : GenericValue extends Record<number, unknown> ? {
9
- [Prop in keyof GenericValue]: ToTransform<GenericValue[Prop]>;
10
- } : GenericValue;
11
- /**
12
- * The toTransform() function recursively applies objects' toTransform methods and traverses arrays/tuples to produce a value ready to be transported (DTO).
13
- *
14
- * Signature: `toTransform(value)` → returns a value
15
- *
16
- * The input value is not mutated.
17
- *
18
- * ```ts
19
- * class Money {
20
- * public constructor(
21
- * public amount: number,
22
- * public currency: string,
23
- * ) {}
24
- *
25
- * public toTransform() {
26
- * return {
27
- * amount: this.amount,
28
- * currency: this.currency,
29
- * };
30
- * }
31
- * }
32
- *
33
- * const input = {
34
- * id: "INV-1",
35
- * total: new Money(99, "EUR"),
36
- * lines: [
37
- * new Money(49.5, "EUR"),
38
- * new Money(49.5, "EUR"),
39
- * ],
40
- * };
41
- *
42
- * const result = toTransform(input);
43
- *
44
- * // type: { id: string; total: { amount: number; currency: string; }; lines: { amount: number; currency: string; }[]; }
45
- * ```
46
- *
47
- * @see https://utils.duplojs.dev/en/v1/api/common/toTransform
48
- *
49
- */
50
- export declare function toTransform<GenericValue extends unknown>(value: GenericValue): ToTransform<GenericValue>;
@@ -1,35 +0,0 @@
1
- /**
2
- * {@include common/toTransform/index.md}
3
- */
4
- function toTransform(value) {
5
- if (typeof value === "string"
6
- || typeof value === "number"
7
- || value === null
8
- || value === undefined) {
9
- return value;
10
- }
11
- else if (value
12
- && typeof value === "object"
13
- && "toTransform" in value
14
- && typeof value.toTransform === "function") {
15
- return (value.toTransform());
16
- }
17
- else if (typeof value === "object"
18
- && (!value.constructor
19
- || value.constructor.name === "Object")) {
20
- return Object.entries(value)
21
- .reduce((pv, [key, value]) => ({
22
- ...pv,
23
- [key]: toTransform(value),
24
- }), {});
25
- }
26
- else if (value instanceof Array
27
- && value.constructor.name === "Array") {
28
- return value.map((subValue) => toTransform(subValue));
29
- }
30
- else {
31
- return value;
32
- }
33
- }
34
-
35
- export { toTransform };
@@ -1,13 +0,0 @@
1
- 'use strict';
2
-
3
- var makeSafeTimestamp = require('./makeSafeTimestamp.cjs');
4
-
5
- /**
6
- * {@include date/createTheDate/index.md}
7
- */
8
- function createTheDate(timestamp) {
9
- const safeTimestamp = makeSafeTimestamp.makeSafeTimestamp(timestamp);
10
- return `date${Math.abs(safeTimestamp)}${safeTimestamp < 0 ? "-" : "+"}`;
11
- }
12
-
13
- exports.createTheDate = createTheDate;
@@ -1,28 +0,0 @@
1
- import { type TheDate } from "./types";
2
- /**
3
- * Creates a TheDate from a timestamp in milliseconds.
4
- *
5
- * Signature: `createTheDate(input)` → returns a value
6
- *
7
- * The input value is not mutated.
8
- *
9
- * ```ts
10
- * const result = D.createTheDate(1_700_000_000_000);
11
- * // result: "date1700000000000+"
12
- *
13
- * const result2 = D.createTheDate(-1_700_000_000_000);
14
- * // result2: "date1700000000000-"
15
- *
16
- * const result3 = D.createTheDate(8_640_000_000_000_500);
17
- * // result3: "date8640000000000000+"
18
- * ```
19
- *
20
- * @remarks
21
- * - The input is rounded and clamped to the supported timestamp range.
22
- *
23
- * @see https://utils.duplojs.dev/en/v1/api/date/createTheDate
24
- *
25
- * @namespace D
26
- *
27
- */
28
- export declare function createTheDate(timestamp: number): TheDate;
@@ -1,11 +0,0 @@
1
- import { makeSafeTimestamp } from './makeSafeTimestamp.mjs';
2
-
3
- /**
4
- * {@include date/createTheDate/index.md}
5
- */
6
- function createTheDate(timestamp) {
7
- const safeTimestamp = makeSafeTimestamp(timestamp);
8
- return `date${Math.abs(safeTimestamp)}${safeTimestamp < 0 ? "-" : "+"}`;
9
- }
10
-
11
- export { createTheDate };
@@ -1,13 +0,0 @@
1
- 'use strict';
2
-
3
- var makeSafeTimeValue = require('./makeSafeTimeValue.cjs');
4
-
5
- /**
6
- * {@include date/createTheTime/index.md}
7
- */
8
- function createTheTime(timestamp) {
9
- const safeTimestamp = makeSafeTimeValue.makeSafeTimeValue(timestamp);
10
- return `time${Math.abs(safeTimestamp)}${safeTimestamp < 0 ? "-" : "+"}`;
11
- }
12
-
13
- exports.createTheTime = createTheTime;
@@ -1,25 +0,0 @@
1
- import { type TheTime } from "./types";
2
- /**
3
- * Creates a TheTime from a time value in milliseconds.
4
- *
5
- * Signature: `createTheTime(input)` → returns a value
6
- *
7
- * The input value is not mutated.
8
- *
9
- * ```ts
10
- * const result = D.createTheTime(90_000);
11
- * // result: "time90000+"
12
- *
13
- * const result2 = D.createTheTime(-90_000);
14
- * // result2: "time90000-"
15
- * ```
16
- *
17
- * @remarks
18
- * - The input is rounded and clamped to the supported time range.
19
- *
20
- * @see https://utils.duplojs.dev/en/v1/api/date/createTheTime
21
- *
22
- * @namespace D
23
- *
24
- */
25
- export declare function createTheTime(timestamp: number): TheTime;
@@ -1,11 +0,0 @@
1
- import { makeSafeTimeValue } from './makeSafeTimeValue.mjs';
2
-
3
- /**
4
- * {@include date/createTheTime/index.md}
5
- */
6
- function createTheTime(timestamp) {
7
- const safeTimestamp = makeSafeTimeValue(timestamp);
8
- return `time${Math.abs(safeTimestamp)}${safeTimestamp < 0 ? "-" : "+"}`;
9
- }
10
-
11
- export { createTheTime };
@@ -1,11 +0,0 @@
1
- /**
2
- * Represents a TheDate string: a UTC timestamp encoded with a sign.
3
- * It solves common date issues across languages and HTTP by using a single transportable format, independent of local timezone quirks.
4
- * When you need local time (e.g., Brazil), you convert from the UTC timestamp with getters and a timezone, keeping storage robust and consistent.
5
- *
6
- * @see https://utils.duplojs.dev/en/v1/api/date/theDate
7
- *
8
- * @namespace D
9
- *
10
- */
11
- export type TheDate = `date${number}${"-" | "+"}`;
@@ -1,10 +0,0 @@
1
- /**
2
- * Represents a TheTime string: a constrained number stored as milliseconds with a sign.
3
- * It gives a single, consistent format for time values so 10 seconds, 3 days, or 1 hour are all just the same unit, making time manipulation predictable.
4
- *
5
- * @see https://utils.duplojs.dev/en/v1/api/date/theTime
6
- *
7
- * @namespace D
8
- *
9
- */
10
- export type TheTime = `time${number}${"+" | "-"}`;