@zajno/common 2.2.14 → 2.3.0

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 (114) hide show
  1. package/api/call.d.ts +29 -0
  2. package/api/call.d.ts.map +1 -0
  3. package/api/call.js +57 -0
  4. package/api/call.js.map +1 -0
  5. package/api/endpoint.d.ts +44 -0
  6. package/api/endpoint.d.ts.map +1 -0
  7. package/api/endpoint.js +55 -0
  8. package/api/endpoint.js.map +1 -0
  9. package/api/error.d.ts +18 -0
  10. package/api/error.d.ts.map +1 -0
  11. package/api/error.js +35 -0
  12. package/api/error.js.map +1 -0
  13. package/api/helpers.d.ts +9 -0
  14. package/api/helpers.d.ts.map +1 -0
  15. package/api/helpers.js +23 -0
  16. package/api/helpers.js.map +1 -0
  17. package/api/index.d.ts +8 -0
  18. package/api/index.d.ts.map +1 -0
  19. package/api/index.js +15 -0
  20. package/api/index.js.map +1 -0
  21. package/api/methods.d.ts +7 -0
  22. package/api/methods.d.ts.map +1 -0
  23. package/api/methods.js +11 -0
  24. package/api/methods.js.map +1 -0
  25. package/api/processor.d.ts +8 -0
  26. package/api/processor.d.ts.map +1 -0
  27. package/api/processor.js +51 -0
  28. package/api/processor.js.map +1 -0
  29. package/api/register.d.ts +8 -0
  30. package/api/register.d.ts.map +1 -0
  31. package/api/register.js +25 -0
  32. package/api/register.js.map +1 -0
  33. package/api/statusCodes.d.ts +17 -0
  34. package/api/statusCodes.d.ts.map +1 -0
  35. package/api/statusCodes.js +21 -0
  36. package/api/statusCodes.js.map +1 -0
  37. package/dates/convert.d.ts +1 -5
  38. package/dates/convert.d.ts.map +1 -1
  39. package/dates/convert.js +2 -46
  40. package/dates/convert.js.map +1 -1
  41. package/dates/datex.d.ts +10 -1
  42. package/dates/datex.d.ts.map +1 -1
  43. package/dates/datex.js +32 -10
  44. package/dates/datex.js.map +1 -1
  45. package/dates/decompose.d.ts +5 -0
  46. package/dates/decompose.d.ts.map +1 -0
  47. package/dates/decompose.js +44 -0
  48. package/dates/decompose.js.map +1 -0
  49. package/dates/format.d.ts.map +1 -1
  50. package/dates/format.js +2 -1
  51. package/dates/format.js.map +1 -1
  52. package/dates/index.d.ts +1 -0
  53. package/dates/index.d.ts.map +1 -1
  54. package/dates/index.js +1 -0
  55. package/dates/index.js.map +1 -1
  56. package/dates/shift.d.ts +0 -9
  57. package/dates/shift.d.ts.map +1 -1
  58. package/dates/shift.js +3 -26
  59. package/dates/shift.js.map +1 -1
  60. package/dates/types.d.ts +8 -4
  61. package/dates/types.d.ts.map +1 -1
  62. package/dates/types.js +45 -27
  63. package/dates/types.js.map +1 -1
  64. package/fields/update.js +2 -2
  65. package/fields/update.js.map +1 -1
  66. package/functions/throttle.d.ts.map +1 -1
  67. package/functions/throttle.js.map +1 -1
  68. package/logger/named.d.ts.map +1 -1
  69. package/logger/named.js +3 -3
  70. package/logger/named.js.map +1 -1
  71. package/math/arrays.d.ts +3 -3
  72. package/math/arrays.d.ts.map +1 -1
  73. package/math/arrays.js +1 -1
  74. package/math/arrays.js.map +1 -1
  75. package/math/object/math.d.ts.map +1 -1
  76. package/math/object/math.js +6 -3
  77. package/math/object/math.js.map +1 -1
  78. package/math/object/ops.d.ts +1 -1
  79. package/math/object/ops.d.ts.map +1 -1
  80. package/math/object/ops.js.map +1 -1
  81. package/observing/event.d.ts.map +1 -1
  82. package/observing/event.js +9 -1
  83. package/observing/event.js.map +1 -1
  84. package/package.json +1 -1
  85. package/structures/path/builder.d.ts +14 -0
  86. package/structures/path/builder.d.ts.map +1 -0
  87. package/structures/path/builder.js +111 -0
  88. package/structures/path/builder.js.map +1 -0
  89. package/structures/path/index.d.ts +3 -0
  90. package/structures/path/index.d.ts.map +1 -0
  91. package/structures/path/index.js +7 -0
  92. package/structures/path/index.js.map +1 -0
  93. package/structures/path/types.d.ts +55 -0
  94. package/structures/path/types.d.ts.map +1 -0
  95. package/structures/path/types.js +3 -0
  96. package/structures/path/types.js.map +1 -0
  97. package/structures/path/utils.d.ts +12 -0
  98. package/structures/path/utils.d.ts.map +1 -0
  99. package/structures/path/utils.js +54 -0
  100. package/structures/path/utils.js.map +1 -0
  101. package/structures/promiseExtended.d.ts +63 -0
  102. package/structures/promiseExtended.d.ts.map +1 -0
  103. package/structures/promiseExtended.js +128 -0
  104. package/structures/promiseExtended.js.map +1 -0
  105. package/structures/promiseProxy.d.ts.map +1 -1
  106. package/structures/promiseProxy.js +3 -2
  107. package/structures/promiseProxy.js.map +1 -1
  108. package/types/misc.d.ts +8 -1
  109. package/types/misc.d.ts.map +1 -1
  110. package/validation/throwers.js.map +1 -1
  111. package/async/arrays.extend.d.ts +0 -10
  112. package/async/arrays.extend.d.ts.map +0 -1
  113. package/async/arrays.extend.js +0 -8
  114. package/async/arrays.extend.js.map +0 -1
package/dates/convert.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDaysStreak = exports.getDiscreteDiff = exports.splitDatesByDay = exports.decomposeDate = exports.decomposeMs = exports.decompose = exports.dateFromUnixDayIndex = exports.unixDayIndex = exports.unix = exports.convert = exports.isNetworkDate = exports.isNetworkDay = exports.ensureDates = void 0;
3
+ exports.getDaysStreak = exports.getDiscreteDiff = exports.splitDatesByDay = exports.decomposeDate = exports.dateFromUnixDayIndex = exports.unixDayIndex = exports.unix = exports.isNetworkDate = exports.isNetworkDay = exports.ensureDates = void 0;
4
4
  const datex_1 = require("./datex");
5
5
  const parse_1 = require("./parse");
6
6
  const shift_1 = require("./shift");
@@ -20,12 +20,6 @@ function isNetworkDay(n) { return n >= 1 && n <= 5; }
20
20
  exports.isNetworkDay = isNetworkDay;
21
21
  function isNetworkDate(d) { return isNetworkDay(d.getUTCDay()); }
22
22
  exports.isNetworkDate = isNetworkDate;
23
- function convert(amount, g, to) {
24
- const ms = amount * types_1.ConstantGranularity.toMs(g);
25
- const toMs = types_1.ConstantGranularity.toMs(to);
26
- return ms / toMs;
27
- }
28
- exports.convert = convert;
29
23
  function unix(d) {
30
24
  return Math.floor((0, parse_1.getTime)(d) / 1000);
31
25
  }
@@ -38,44 +32,6 @@ function dateFromUnixDayIndex(d) {
38
32
  return new Date(d * 1000 * 3600 * 24);
39
33
  }
40
34
  exports.dateFromUnixDayIndex = dateFromUnixDayIndex;
41
- function decompose(date, local, ...grans) {
42
- const dd = (0, parse_1.getDate)(date);
43
- const offset = local ? dd.getTimezoneOffset() * 60000 : 0;
44
- const ms = dd.getTime() + offset;
45
- return decomposeMs(ms, ...grans);
46
- }
47
- exports.decompose = decompose;
48
- function decomposeMs(ms, ...grans) {
49
- const res = {};
50
- // absolute values
51
- let secs = Math.round(convert(ms, 'millisecond', 'second'));
52
- let mins = convert(secs, 'second', 'minute');
53
- let hrs = convert(mins, 'minute', 'hour');
54
- let days = convert(hrs, 'hour', 'day');
55
- // apply only selected granularity
56
- if (grans.includes('week')) {
57
- // week is 1-based!
58
- res.week = Math.floor(days / 7) + 1;
59
- days = days % 7;
60
- }
61
- if (grans.includes('day')) {
62
- res.day = Math.trunc(days);
63
- hrs = hrs % 24;
64
- }
65
- if (grans.includes('hour')) {
66
- res.hour = Math.trunc(hrs);
67
- mins = mins % 60;
68
- }
69
- if (grans.includes('minute')) {
70
- res.minute = Math.trunc(mins);
71
- secs = secs % 60;
72
- }
73
- if (grans.includes('second')) {
74
- res.second = secs;
75
- }
76
- return res;
77
- }
78
- exports.decomposeMs = decomposeMs;
79
35
  function decomposeDate(d, local, ...grans) {
80
36
  const res = {};
81
37
  grans.forEach(g => {
@@ -133,7 +89,7 @@ function getDiscreteDiff(d1, d2, granularity, local = false, absolute = true) {
133
89
  break;
134
90
  }
135
91
  default: {
136
- const ms = types_1.ConstantGranularity.toMs(granularity);
92
+ const ms = types_1.Granularity.Constant.toMs(granularity);
137
93
  v1 = (0, shift_1.startOf)(d1, granularity, local).getTime() / ms;
138
94
  v2 = (0, shift_1.startOf)(d2, granularity, local).getTime() / ms;
139
95
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"convert.js","sourceRoot":"","sources":["../../src/dates/convert.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"convert.js","sourceRoot":"","sources":["../../src/dates/convert.ts"],"names":[],"mappings":"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"}
package/dates/datex.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { Granularity } from './types';
2
2
  export declare namespace DateX {
3
3
  type DateGranularity = Granularity | 'weekDay';
4
- function get(d: Date, g: DateGranularity, local: boolean): any;
4
+ function get(d: Date, g: DateGranularity, local: boolean): number;
5
5
  function set(d: Date, g: 'year', local: boolean, year: number, month?: number, date?: number): number;
6
6
  function set(d: Date, g: 'month', local: boolean, month: number, date?: number): number;
7
7
  function set(d: Date, g: 'week', local: boolean, week: number): number;
@@ -12,4 +12,13 @@ export declare namespace DateX {
12
12
  function set(d: Date, g: 'second', local: boolean, sec: number, ms?: number): number;
13
13
  function set(d: Date, g: 'millisecond', local: boolean, ms: number): number;
14
14
  }
15
+ /**
16
+ * Allows to set day of week, symmetric to Date.getDay()
17
+ * @param d Date representation
18
+ * @param dayOfWeek 0..6 Sunday..Saturday
19
+ * @param future true - only forward or present, false - only backward or present, null - closest
20
+ * @param local whether to use local time
21
+ * @returns Date with the same time as d, but with the updated day of week
22
+ */
23
+ export declare function setDayOfWeek(d: Date | number, dayOfWeek: number, future?: boolean | null, local?: boolean): Date;
15
24
  //# sourceMappingURL=datex.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"datex.d.ts","sourceRoot":"","sources":["../../src/dates/datex.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,yBAAiB,KAAK,CAAC;IAEnB,KAAY,eAAe,GAAG,WAAW,GAAG,SAAS,CAAC;IAEtD,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,eAAe,EAAE,KAAK,EAAE,OAAO,OAa9D;IAED,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7G,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/F,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9E,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7E,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACpF,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxH,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1G,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5F,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;CA2EtF"}
1
+ {"version":3,"file":"datex.d.ts","sourceRoot":"","sources":["../../src/dates/datex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAItC,yBAAiB,KAAK,CAAC;IAEnB,KAAY,eAAe,GAAG,WAAW,GAAG,SAAS,CAAC;IAEtD,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,eAAe,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAavE;IAED,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7G,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/F,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9E,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7E,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACpF,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxH,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1G,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5F,SAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;CAyEtF;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,GAAG,IAAW,EAAE,KAAK,UAAQ,QAc7G"}
package/dates/datex.js CHANGED
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DateX = void 0;
4
- const convert_1 = require("./convert");
5
- const shift_1 = require("./shift");
3
+ exports.setDayOfWeek = exports.DateX = void 0;
4
+ const types_1 = require("./types");
5
+ const decompose_1 = require("./decompose");
6
+ const parse_1 = require("./parse");
6
7
  var DateX;
7
8
  (function (DateX) {
8
9
  function get(d, g, local) {
@@ -22,12 +23,11 @@ var DateX;
22
23
  DateX.get = get;
23
24
  function set(d, g, local, ...v) {
24
25
  if (g === 'week') {
25
- return setWeek(d, local, v[0]);
26
+ return setWeek(d, local, v[0] ?? 0);
26
27
  }
27
28
  if (g === 'weekDay') {
28
- return (0, shift_1.setDayOfWeek)(d, v[0], null, local);
29
+ return setDayOfWeek(d, v[0] ?? 0, null, local).getTime();
29
30
  }
30
- /* eslint-disable @typescript-eslint/unbound-method -- it's clearly defined as a function with `this: Date` */
31
31
  const fn = (() => {
32
32
  switch (g) {
33
33
  case 'year': return local ? d.setFullYear : d.setUTCFullYear;
@@ -40,7 +40,6 @@ var DateX;
40
40
  default: return null;
41
41
  }
42
42
  })();
43
- /* eslint-enable @typescript-eslint/unbound-method */
44
43
  return fn ? fn.call(d, ...v) : d.getTime();
45
44
  }
46
45
  DateX.set = set;
@@ -51,7 +50,7 @@ var DateX;
51
50
  set(firstDay, 'hour', local, 0, 0, 0, 0);
52
51
  // we need to find diff between the target date and the first Sunday in the year
53
52
  // next closest Sunday in the future, is considered as the start of the second week
54
- const secondWeekSunday = (0, shift_1.setDayOfWeek)(firstDay, 0, true, local);
53
+ const secondWeekSunday = setDayOfWeek(firstDay, 0, true, local);
55
54
  let offset = 1;
56
55
  const secondWeekSundayT = secondWeekSunday.getTime();
57
56
  if (firstDay.getTime() === secondWeekSundayT) {
@@ -65,15 +64,38 @@ var DateX;
65
64
  }
66
65
  const diff = t - secondWeekSundayT;
67
66
  // the returned value is 1-based
68
- const { week } = (0, convert_1.decomposeMs)(diff, 'week');
67
+ const { week } = (0, decompose_1.decomposeMs)(diff, 'week');
69
68
  // adding offset since counting from 2nd week
70
69
  return week + offset;
71
70
  }
72
71
  function setWeek(d, local, week) {
73
72
  const current = getWeek(d, local);
74
- const res = (0, shift_1.shiftDate)(d, (week - current), 'week', local).getTime();
73
+ const res = types_1.Granularity.Constant.shift(d, (week - current), 'week').getTime();
75
74
  d.setTime(res);
76
75
  return res;
77
76
  }
78
77
  })(DateX || (exports.DateX = DateX = {}));
78
+ /**
79
+ * Allows to set day of week, symmetric to Date.getDay()
80
+ * @param d Date representation
81
+ * @param dayOfWeek 0..6 Sunday..Saturday
82
+ * @param future true - only forward or present, false - only backward or present, null - closest
83
+ * @param local whether to use local time
84
+ * @returns Date with the same time as d, but with the updated day of week
85
+ */
86
+ function setDayOfWeek(d, dayOfWeek, future = null, local = false) {
87
+ const res = (0, parse_1.getDate)(d);
88
+ const currentDayOfWeek = DateX.get(res, 'weekDay', local);
89
+ let diff = dayOfWeek - currentDayOfWeek;
90
+ if (future != null) {
91
+ if (future && diff < 0) {
92
+ diff += 7;
93
+ }
94
+ if (!future && diff > 0) {
95
+ diff -= 7;
96
+ }
97
+ }
98
+ return types_1.Granularity.Constant.shift(res, diff, 'day');
99
+ }
100
+ exports.setDayOfWeek = setDayOfWeek;
79
101
  //# sourceMappingURL=datex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"datex.js","sourceRoot":"","sources":["../../src/dates/datex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"datex.js","sourceRoot":"","sources":["../../src/dates/datex.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { Granularity } from './types';
2
+ export type DecomposeGranularity = 'week' | 'day' | 'hour' | 'minute' | 'second';
3
+ export declare function decomposeMs<K extends Granularity & DecomposeGranularity>(ms: number, ...grans: K[]): Record<K, number>;
4
+ export declare function decompose(date: number | Date, local: boolean, ...grans: (Granularity & DecomposeGranularity)[]): Partial<Record<DecomposeGranularity, number>>;
5
+ //# sourceMappingURL=decompose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decompose.d.ts","sourceRoot":"","sources":["../../src/dates/decompose.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEjF,wBAAgB,WAAW,CAAC,CAAC,SAAS,WAAW,GAAG,oBAAoB,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAoCtH;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,CAAC,WAAW,GAAG,oBAAoB,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC,CAM9J"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.decompose = exports.decomposeMs = void 0;
4
+ const parse_1 = require("./parse");
5
+ const types_1 = require("./types");
6
+ function decomposeMs(ms, ...grans) {
7
+ const res = {};
8
+ // absolute values
9
+ let secs = Math.round(types_1.Granularity.Constant.convert(ms, 'millisecond', 'second'));
10
+ let mins = types_1.Granularity.Constant.convert(secs, 'second', 'minute');
11
+ let hrs = types_1.Granularity.Constant.convert(mins, 'minute', 'hour');
12
+ let days = types_1.Granularity.Constant.convert(hrs, 'hour', 'day');
13
+ // apply only selected granularity
14
+ if (grans.includes('week')) {
15
+ // week is 1-based!
16
+ res.week = Math.floor(days / 7) + 1;
17
+ days = days % 7;
18
+ }
19
+ if (grans.includes('day')) {
20
+ res.day = Math.trunc(days);
21
+ hrs = hrs % 24;
22
+ }
23
+ if (grans.includes('hour')) {
24
+ res.hour = Math.trunc(hrs);
25
+ mins = mins % 60;
26
+ }
27
+ if (grans.includes('minute')) {
28
+ res.minute = Math.trunc(mins);
29
+ secs = secs % 60;
30
+ }
31
+ if (grans.includes('second')) {
32
+ res.second = secs;
33
+ }
34
+ return res;
35
+ }
36
+ exports.decomposeMs = decomposeMs;
37
+ function decompose(date, local, ...grans) {
38
+ const dd = (0, parse_1.getDate)(date);
39
+ const offset = local ? dd.getTimezoneOffset() * 60000 : 0;
40
+ const ms = dd.getTime() + offset;
41
+ return decomposeMs(ms, ...grans);
42
+ }
43
+ exports.decompose = decompose;
44
+ //# sourceMappingURL=decompose.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decompose.js","sourceRoot":"","sources":["../../src/dates/decompose.ts"],"names":[],"mappings":";;;AAAA,mCAAkC;AAClC,mCAAsC;AAItC,SAAgB,WAAW,CAA+C,EAAU,EAAE,GAAG,KAAU;IAC/F,MAAM,GAAG,GAAyC,EAAE,CAAC;IAErD,kBAAkB;IAClB,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;IACjF,IAAI,IAAI,GAAG,mBAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAClE,IAAI,GAAG,GAAG,mBAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC/D,IAAI,IAAI,GAAG,mBAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAE5D,kCAAkC;IAClC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAW,CAAC,EAAE,CAAC;QAC9B,mBAAmB;QACnB,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAU,CAAC,EAAE,CAAC;QAC7B,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3B,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC;IACnB,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAW,CAAC,EAAE,CAAC;QAC9B,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAa,CAAC,EAAE,CAAC;QAChC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAa,CAAC,EAAE,CAAC;QAChC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;IACtB,CAAC;IAED,OAAO,GAAwB,CAAC;AACpC,CAAC;AApCD,kCAoCC;AAED,SAAgB,SAAS,CAAC,IAAmB,EAAE,KAAc,EAAE,GAAG,KAA6C;IAC3G,MAAM,EAAE,GAAG,IAAA,eAAO,EAAC,IAAI,CAAC,CAAC;IACzB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC;IAEjC,OAAO,WAAW,CAAC,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC;AACrC,CAAC;AAND,8BAMC"}
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/dates/format.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,yBAAiB,MAAM,CAAC;IAEb,MAAM,aAAa,UAAU,CAAC;IAErC,KAAY,OAAO;QACf,iBAAiB,mBAAmB;QACpC,kBAAkB,wBAAwB;KAC7C;IAED,UAAiB,OAAO,CAAC;QAKrB,SAAgB,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,UAAO,sBAgBpD;KACJ;IAED,SAAgB,QAAQ,CAAC,EAAE,EAAE,IAAI,GAAG,MAAM,EAAE,KAAK,UAAQ,GAAG,MAAM,CAgBjE;IAED,mBAAmB;IACnB,SAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,EAAE,KAAK,UAAQ,GAAG,MAAM,GAAG,IAAI,CAK9E;IAED,SAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAG9D;IAED,SAAgB,QAAQ,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,UAAQ,UAGnD;IAGD,SAAgB,UAAU,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,OAAa,UA6BrD;IAED,UAAiB,OAAO,CAAC;QAErB,6EAA6E;QAC7E,SAAgB,eAAe,QAShB,MAAM,YAKpB;QAGD,SAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,UAEjC;KACJ;CAGJ"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/dates/format.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,yBAAiB,MAAM,CAAC;IAEb,MAAM,aAAa,UAAU,CAAC;IAErC,KAAY,OAAO;QACf,iBAAiB,mBAAmB;QACpC,kBAAkB,wBAAwB;KAC7C;IAED,UAAiB,OAAO,CAAC;QAKrB,SAAgB,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,UAAO,sBAgBpD;KACJ;IAED,SAAgB,QAAQ,CAAC,EAAE,EAAE,IAAI,GAAG,MAAM,EAAE,KAAK,UAAQ,GAAG,MAAM,CAgBjE;IAED,mBAAmB;IACnB,SAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,EAAE,KAAK,UAAQ,GAAG,MAAM,GAAG,IAAI,CAK9E;IAED,SAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAG9D;IAED,SAAgB,QAAQ,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,UAAQ,UAGnD;IAGD,SAAgB,UAAU,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,OAAa,UA6BrD;IAED,UAAiB,OAAO,CAAC;QAErB,6EAA6E;QAC7E,SAAgB,eAAe,QAShB,MAAM,YAKpB;QAGD,SAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,UAEjC;KACJ;CAGJ"}
package/dates/format.js CHANGED
@@ -4,6 +4,7 @@ exports.Format = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const MathX = tslib_1.__importStar(require("../math"));
6
6
  const convert_1 = require("./convert");
7
+ const decompose_1 = require("./decompose");
7
8
  const parse_1 = require("./parse");
8
9
  var Format;
9
10
  (function (Format) {
@@ -36,7 +37,7 @@ var Format;
36
37
  Presets.use = use;
37
38
  })(Presets = Format.Presets || (Format.Presets = {}));
38
39
  function timespan(ms, local = false) {
39
- const decs = (0, convert_1.decompose)((0, parse_1.getTime)(ms), local, 'second', 'minute', 'hour');
40
+ const decs = (0, decompose_1.decompose)((0, parse_1.getTime)(ms), local, 'second', 'minute', 'hour');
40
41
  const parts = [];
41
42
  if (decs.hour) {
42
43
  parts.push(`${decs.hour}h`);
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/dates/format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/dates/format.ts"],"names":[],"mappings":"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"}
package/dates/index.d.ts CHANGED
@@ -7,4 +7,5 @@ export * from './period';
7
7
  export * from './shift';
8
8
  export * from './types';
9
9
  export * from './yearDate';
10
+ export * from './decompose';
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dates/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dates/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
package/dates/index.js CHANGED
@@ -10,4 +10,5 @@ tslib_1.__exportStar(require("./period"), exports);
10
10
  tslib_1.__exportStar(require("./shift"), exports);
11
11
  tslib_1.__exportStar(require("./types"), exports);
12
12
  tslib_1.__exportStar(require("./yearDate"), exports);
13
+ tslib_1.__exportStar(require("./decompose"), exports);
13
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dates/index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,oDAA0B;AAC1B,kDAAwB;AACxB,mDAAyB;AACzB,kDAAwB;AACxB,mDAAyB;AACzB,kDAAwB;AACxB,kDAAwB;AACxB,qDAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dates/index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,oDAA0B;AAC1B,kDAAwB;AACxB,mDAAyB;AACzB,kDAAwB;AACxB,mDAAyB;AACzB,kDAAwB;AACxB,kDAAwB;AACxB,qDAA2B;AAC3B,sDAA4B"}
package/dates/shift.d.ts CHANGED
@@ -6,13 +6,4 @@ export declare const add: typeof shiftDate;
6
6
  export declare function startOf(d: Date | number, g: Granularity, local?: boolean): Date;
7
7
  export declare function endOf(d: Date | number, g: Granularity, local?: boolean): Date;
8
8
  export declare function isSame(d1: Date | number, d2: Date | number, g: Granularity, local?: boolean): boolean;
9
- /**
10
- * Allows to set day of week, symmetric to Date.getDay()
11
- * @param d Date representation
12
- * @param dayOfWeek 0..6 Sunday..Saturday
13
- * @param future true - only forward or present, false - only backward or present, null - closest
14
- * @param local whether to use local time
15
- * @returns Date with the same time as d, but with the updated day of week
16
- */
17
- export declare function setDayOfWeek(d: Date | number, dayOfWeek: number, future?: boolean | null, local?: boolean): any;
18
9
  //# sourceMappingURL=shift.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shift.d.ts","sourceRoot":"","sources":["../../src/dates/shift.ts"],"names":[],"mappings":"AAEA,OAAO,EAAuB,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3D,wBAAgB,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,OAAO,EAAE,QAAQ,SAAM,QAcnG;AAGD,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,UAAQ,GAAG,IAAI,CAmB5G;AAED,gDAAgD;AAChD,eAAO,MAAM,GAAG,kBAAY,CAAC;AAE7B,wBAAgB,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,KAAK,UAAQ,GAAG,IAAI,CAkC7E;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,KAAK,UAAQ,GAAG,IAAI,CAS3E;AAED,wBAAgB,MAAM,CAAC,EAAE,EAAE,IAAI,GAAG,MAAM,EAAE,EAAE,EAAE,IAAI,GAAG,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,KAAK,UAAQ,WAIzF;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,GAAG,IAAW,EAAE,KAAK,UAAQ,OAc7G"}
1
+ {"version":3,"file":"shift.d.ts","sourceRoot":"","sources":["../../src/dates/shift.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,wBAAgB,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,OAAO,EAAE,QAAQ,SAAM,QAcnG;AAGD,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,UAAQ,GAAG,IAAI,CAmB5G;AAED,gDAAgD;AAChD,eAAO,MAAM,GAAG,kBAAY,CAAC;AAE7B,wBAAgB,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,KAAK,UAAQ,GAAG,IAAI,CAkC7E;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,KAAK,UAAQ,GAAG,IAAI,CAS3E;AAED,wBAAgB,MAAM,CAAC,EAAE,EAAE,IAAI,GAAG,MAAM,EAAE,EAAE,EAAE,IAAI,GAAG,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,KAAK,UAAQ,WAIzF"}
package/dates/shift.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setDayOfWeek = exports.isSame = exports.endOf = exports.startOf = exports.add = exports.shiftDate = exports.addDays = void 0;
3
+ exports.isSame = exports.endOf = exports.startOf = exports.add = exports.shiftDate = exports.addDays = void 0;
4
4
  const parse_1 = require("./parse");
5
5
  const datex_1 = require("./datex");
6
6
  const types_1 = require("./types");
@@ -34,7 +34,7 @@ function shiftDate(date, amount, granularity, local = false) {
34
34
  return res;
35
35
  }
36
36
  default: {
37
- return new Date(res.getTime() + amount * types_1.ConstantGranularity.toMs(granularity));
37
+ return types_1.Granularity.Constant.shift(res, amount, granularity);
38
38
  }
39
39
  }
40
40
  }
@@ -70,7 +70,7 @@ function startOf(d, g, local = false) {
70
70
  return (0, parse_1.getDate)(d);
71
71
  }
72
72
  default: {
73
- const granMs = types_1.ConstantGranularity.toMs(g);
73
+ const granMs = types_1.Granularity.Constant.toMs(g);
74
74
  const startMs = ms - ms % granMs;
75
75
  return new Date(startMs);
76
76
  }
@@ -93,27 +93,4 @@ function isSame(d1, d2, g, local = false) {
93
93
  return s1.getTime() === s2.getTime();
94
94
  }
95
95
  exports.isSame = isSame;
96
- /**
97
- * Allows to set day of week, symmetric to Date.getDay()
98
- * @param d Date representation
99
- * @param dayOfWeek 0..6 Sunday..Saturday
100
- * @param future true - only forward or present, false - only backward or present, null - closest
101
- * @param local whether to use local time
102
- * @returns Date with the same time as d, but with the updated day of week
103
- */
104
- function setDayOfWeek(d, dayOfWeek, future = null, local = false) {
105
- const res = (0, parse_1.getDate)(d);
106
- const currentDayOfWeek = datex_1.DateX.get(res, 'weekDay', local);
107
- let diff = dayOfWeek - currentDayOfWeek;
108
- if (future != null) {
109
- if (future && diff < 0) {
110
- diff += 7;
111
- }
112
- if (!future && diff > 0) {
113
- diff -= 7;
114
- }
115
- }
116
- return shiftDate(res, diff, 'day', local);
117
- }
118
- exports.setDayOfWeek = setDayOfWeek;
119
96
  //# sourceMappingURL=shift.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shift.js","sourceRoot":"","sources":["../../src/dates/shift.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shift.js","sourceRoot":"","sources":["../../src/dates/shift.ts"],"names":[],"mappings":"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"}
package/dates/types.d.ts CHANGED
@@ -1,6 +1,10 @@
1
- export type ConstantGranularity = 'millisecond' | 'second' | 'minute' | 'hour' | 'day' | 'week';
2
- export type Granularity = ConstantGranularity | 'month' | 'year';
3
- export declare namespace ConstantGranularity {
4
- function toMs(g: ConstantGranularity): number;
1
+ export type Granularity = Granularity.Constant | 'month' | 'year';
2
+ export declare namespace Granularity {
3
+ type Constant = 'millisecond' | 'second' | 'minute' | 'hour' | 'day' | 'week';
4
+ namespace Constant {
5
+ function toMs(g: Granularity.Constant): number;
6
+ function convert(amount: number, g: Granularity.Constant, to: Granularity.Constant): number;
7
+ function shift(date: Date | number, amount: number, granularity: Granularity.Constant): Date;
8
+ }
5
9
  }
6
10
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/dates/types.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,mBAAmB,GAAG,aAAa,GACzC,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,KAAK,GACL,MAAM,CACX;AACD,MAAM,MAAM,WAAW,GAAG,mBAAmB,GACvC,OAAO,GACP,MAAM,CACX;AAED,yBAAiB,mBAAmB,CAAC;IACjC,SAAgB,IAAI,CAAC,CAAC,EAAE,mBAAmB,GAAG,MAAM,CAwBnD;CACJ"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/dates/types.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,GACxC,OAAO,GACP,MAAM,CACX;AAED,yBAAiB,WAAW,CAAC;IAEzB,KAAY,QAAQ,GAAG,aAAa,GAC9B,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,KAAK,GACL,MAAM,CACX;IAED,UAAiB,QAAQ,CAAC;QAEtB,SAAgB,IAAI,CAAC,CAAC,EAAE,WAAW,CAAC,QAAQ,GAAG,MAAM,CAwBpD;QAED,SAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,EAAE,WAAW,CAAC,QAAQ,UAIxF;QAED,SAAgB,KAAK,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC,QAAQ,GAAG,IAAI,CAOlG;KACJ;CACJ"}
package/dates/types.js CHANGED
@@ -1,33 +1,51 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ConstantGranularity = void 0;
4
- var ConstantGranularity;
5
- (function (ConstantGranularity) {
6
- function toMs(g) {
7
- switch (g) {
8
- case 'millisecond': {
9
- return 1;
3
+ exports.Granularity = void 0;
4
+ const parse_1 = require("./parse");
5
+ var Granularity;
6
+ (function (Granularity) {
7
+ let Constant;
8
+ (function (Constant) {
9
+ function toMs(g) {
10
+ switch (g) {
11
+ case 'millisecond': {
12
+ return 1;
13
+ }
14
+ case 'second': {
15
+ return 1000;
16
+ }
17
+ case 'minute': {
18
+ return 60 * toMs('second');
19
+ }
20
+ case 'hour': {
21
+ return 60 * toMs('minute');
22
+ }
23
+ case 'day': {
24
+ return 24 * toMs('hour');
25
+ }
26
+ case 'week': {
27
+ return 7 * toMs('day');
28
+ }
29
+ default: {
30
+ throw new Error('Unsupported granularity');
31
+ }
10
32
  }
11
- case 'second': {
12
- return 1000;
13
- }
14
- case 'minute': {
15
- return 60 * toMs('second');
16
- }
17
- case 'hour': {
18
- return 60 * toMs('minute');
19
- }
20
- case 'day': {
21
- return 24 * toMs('hour');
22
- }
23
- case 'week': {
24
- return 7 * toMs('day');
25
- }
26
- default: {
27
- throw new Error('Unsupported granularity');
33
+ }
34
+ Constant.toMs = toMs;
35
+ function convert(amount, g, to) {
36
+ const ms = amount * toMs(g);
37
+ const msTo = toMs(to);
38
+ return ms / msTo;
39
+ }
40
+ Constant.convert = convert;
41
+ function shift(date, amount, granularity) {
42
+ const res = (0, parse_1.getDate)(date);
43
+ if (amount === 0) {
44
+ return res;
28
45
  }
46
+ return new Date(res.getTime() + amount * toMs(granularity));
29
47
  }
30
- }
31
- ConstantGranularity.toMs = toMs;
32
- })(ConstantGranularity || (exports.ConstantGranularity = ConstantGranularity = {}));
48
+ Constant.shift = shift;
49
+ })(Constant = Granularity.Constant || (Granularity.Constant = {}));
50
+ })(Granularity || (exports.Granularity = Granularity = {}));
33
51
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/dates/types.ts"],"names":[],"mappings":";;;AAaA,IAAiB,mBAAmB,CA0BnC;AA1BD,WAAiB,mBAAmB;IAChC,SAAgB,IAAI,CAAC,CAAsB;QACvC,QAAQ,CAAC,EAAE,CAAC;YACR,KAAK,aAAa,CAAC,CAAC,CAAC;gBACjB,OAAO,CAAC,CAAC;YACb,CAAC;YACD,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACZ,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACZ,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,CAAC;gBACV,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC;YACD,KAAK,KAAK,CAAC,CAAC,CAAC;gBACT,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YAC7B,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,CAAC;gBACV,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;YACD,OAAO,CAAC,CAAC,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAC/C,CAAC;QACL,CAAC;IACL,CAAC;IAxBe,wBAAI,OAwBnB,CAAA;AACL,CAAC,EA1BgB,mBAAmB,mCAAnB,mBAAmB,QA0BnC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/dates/types.ts"],"names":[],"mappings":";;;AAAA,mCAAkC;AAQlC,IAAiB,WAAW,CAqD3B;AArDD,WAAiB,WAAW;IAUxB,IAAiB,QAAQ,CA0CxB;IA1CD,WAAiB,QAAQ;QAErB,SAAgB,IAAI,CAAC,CAAuB;YACxC,QAAQ,CAAC,EAAE,CAAC;gBACR,KAAK,aAAa,CAAC,CAAC,CAAC;oBACjB,OAAO,CAAC,CAAC;gBACb,CAAC;gBACD,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACZ,OAAO,IAAI,CAAC;gBAChB,CAAC;gBACD,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACZ,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC/B,CAAC;gBACD,KAAK,MAAM,CAAC,CAAC,CAAC;oBACV,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC/B,CAAC;gBACD,KAAK,KAAK,CAAC,CAAC,CAAC;oBACT,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC7B,CAAC;gBACD,KAAK,MAAM,CAAC,CAAC,CAAC;oBACV,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC;gBACD,OAAO,CAAC,CAAC,CAAC;oBACN,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;gBAC/C,CAAC;YACL,CAAC;QACL,CAAC;QAxBe,aAAI,OAwBnB,CAAA;QAED,SAAgB,OAAO,CAAC,MAAc,EAAE,CAAuB,EAAE,EAAwB;YACrF,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;YACtB,OAAO,EAAE,GAAG,IAAI,CAAC;QACrB,CAAC;QAJe,gBAAO,UAItB,CAAA;QAED,SAAgB,KAAK,CAAC,IAAmB,EAAE,MAAc,EAAE,WAAiC;YACxF,MAAM,GAAG,GAAG,IAAA,eAAO,EAAC,IAAI,CAAC,CAAC;YAC1B,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;gBACf,OAAO,GAAG,CAAC;YACf,CAAC;YAED,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAChE,CAAC;QAPe,cAAK,QAOpB,CAAA;IACL,CAAC,EA1CgB,QAAQ,GAAR,oBAAQ,KAAR,oBAAQ,QA0CxB;AACL,CAAC,EArDgB,WAAW,2BAAX,WAAW,QAqD3B"}
package/fields/update.js CHANGED
@@ -6,9 +6,9 @@ function updateField(target, source, diff, key, hasChanged = null) {
6
6
  }
7
7
  exports.updateField = updateField;
8
8
  function updateFieldExtended(target, source, diff, get, set, hasChanged = null) {
9
- hasChanged = hasChanged || ((v1, v2) => (get(v1) !== get(v2)));
9
+ const _hasChanged = hasChanged ?? ((v1, v2) => (get(v1) !== get(v2)));
10
10
  let changed = true;
11
- if (get(source) !== undefined && hasChanged(source, target)) {
11
+ if (get(source) !== undefined && _hasChanged(source, target)) {
12
12
  changed = true;
13
13
  set(diff, get(target));
14
14
  set(target, get(source));