chronos-date 1.0.2 → 1.1.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 (76) hide show
  1. package/dist/basic-DIp_pxR2.cjs +450 -0
  2. package/dist/basic-Dputob9z.mjs +366 -0
  3. package/dist/constants.cjs +27 -1
  4. package/dist/constants.mjs +5 -1
  5. package/dist/convert-CNVL-mop.mjs +22 -0
  6. package/dist/convert-dQuGWhVm.cjs +33 -0
  7. package/dist/greet-B8ZtypgG.cjs +40 -0
  8. package/dist/greet-B9j4afzD.mjs +35 -0
  9. package/dist/guards.cjs +119 -1
  10. package/dist/guards.mjs +110 -1
  11. package/dist/helpers-CrMc9iJZ.mjs +185 -0
  12. package/dist/helpers-M_SfAbAv.cjs +262 -0
  13. package/dist/index.cjs +1461 -1
  14. package/dist/index.mjs +1458 -1
  15. package/dist/non-primitives-CT4vszrX.cjs +52 -0
  16. package/dist/non-primitives-DrQfPj1r.mjs +22 -0
  17. package/dist/plugins/banglaPlugin.cjs +121 -1
  18. package/dist/plugins/banglaPlugin.mjs +120 -1
  19. package/dist/plugins/businessPlugin.cjs +118 -1
  20. package/dist/plugins/businessPlugin.mjs +117 -1
  21. package/dist/plugins/dateRangePlugin.cjs +46 -1
  22. package/dist/plugins/dateRangePlugin.mjs +45 -1
  23. package/dist/plugins/dayPartPlugin.cjs +26 -1
  24. package/dist/plugins/dayPartPlugin.mjs +25 -1
  25. package/dist/plugins/durationPlugin.cjs +91 -1
  26. package/dist/plugins/durationPlugin.mjs +90 -1
  27. package/dist/plugins/fromNowPlugin.cjs +80 -1
  28. package/dist/plugins/fromNowPlugin.mjs +79 -1
  29. package/dist/plugins/greetingPlugin.cjs +19 -1
  30. package/dist/plugins/greetingPlugin.mjs +18 -1
  31. package/dist/plugins/palindromePlugin.cjs +22 -1
  32. package/dist/plugins/palindromePlugin.mjs +21 -1
  33. package/dist/plugins/relativeTimePlugin.cjs +74 -1
  34. package/dist/plugins/relativeTimePlugin.mjs +73 -1
  35. package/dist/plugins/roundPlugin.cjs +69 -1
  36. package/dist/plugins/roundPlugin.mjs +68 -1
  37. package/dist/plugins/seasonPlugin.cjs +31 -1
  38. package/dist/plugins/seasonPlugin.mjs +30 -1
  39. package/dist/plugins/timeZonePlugin.cjs +139 -1
  40. package/dist/plugins/timeZonePlugin.mjs +138 -1
  41. package/dist/plugins/zodiacPlugin.cjs +51 -1
  42. package/dist/plugins/zodiacPlugin.mjs +50 -1
  43. package/dist/primitives-BME3_QrA.cjs +49 -0
  44. package/dist/primitives-DEt6I7Sy.mjs +19 -0
  45. package/dist/seasons-CHnjrIKK.mjs +352 -0
  46. package/dist/seasons-CcZicoe1.cjs +418 -0
  47. package/dist/timezone-BfBXeMK_.mjs +5573 -0
  48. package/dist/timezone-DYVJJYKz.cjs +5609 -0
  49. package/dist/types.mjs +1 -1
  50. package/dist/utilities-BU4MSYS7.mjs +43 -0
  51. package/dist/utilities-CGL7F6R9.cjs +72 -0
  52. package/dist/utilities-CtOZhIYv.mjs +241 -0
  53. package/dist/utilities-bXwTPJaD.cjs +318 -0
  54. package/dist/utils.cjs +76 -1
  55. package/dist/utils.mjs +44 -1
  56. package/package.json +1 -1
  57. package/dist/basic-CKxaRSHQ.cjs +0 -1
  58. package/dist/basic-e46DaNAi.mjs +0 -1
  59. package/dist/convert-Bmp63ats.mjs +0 -1
  60. package/dist/convert-DrLrcgqz.cjs +0 -1
  61. package/dist/greet-BBsrvmkn.mjs +0 -1
  62. package/dist/greet-C-6mruI9.cjs +0 -1
  63. package/dist/helpers-DGzYnP81.cjs +0 -1
  64. package/dist/helpers-N1X_Rj_V.mjs +0 -1
  65. package/dist/non-primitives-B2EE6D6s.mjs +0 -1
  66. package/dist/non-primitives-Bu3a4WL4.cjs +0 -1
  67. package/dist/primitives-Cxss_JVF.mjs +0 -1
  68. package/dist/primitives-Db2FUp4e.cjs +0 -1
  69. package/dist/seasons-ChAIVphi.mjs +0 -1
  70. package/dist/seasons-oABOhHcX.cjs +0 -1
  71. package/dist/timezone-B10UItNO.mjs +0 -1
  72. package/dist/timezone-CWxbK_7I.cjs +0 -1
  73. package/dist/utilities-B8dOAQVD.cjs +0 -1
  74. package/dist/utilities-BJE06bms.mjs +0 -1
  75. package/dist/utilities-D2-p26DX.cjs +0 -1
  76. package/dist/utilities-DV_ohS37.mjs +0 -1
@@ -1 +1,50 @@
1
- import{m as e}from"../basic-e46DaNAi.mjs";import{f as t}from"../helpers-N1X_Rj_V.mjs";const n=n=>{function r(e){return e[0]*100+e[1]}function i(t){let{preset:n=`western`,custom:i}=t??{};return[...i??e[n]].sort((e,t)=>r(e[1])-r(t[1]))}n.prototype.getZodiacSign=function(e){let{birthDate:t}=e??{},n,r;t&&t?.includes(`-`)?[n,r]=t.split(`-`).map(Number):(n=this.isoMonth,r=this.date);let a=i(e);for(let e=a.length-1;e>=0;e--){let[t,[i,o]]=a[e];if(n>i||n===i&&r>=o)return t;if(e===0)return a.at(-1)[0]}return a[0][0]},n.prototype.zodiac=function(e){return this.getZodiacSign(e)},n.prototype.getZodiacMeta=function(e,n){let r=i(n),a=r.findIndex(([t])=>t===e);if(a===-1)throw RangeError(`Invalid zodiac sign: "${e}"`);let[o,s]=r[a][1],[c,l]=(r[a+1]??r[0])[1];return{index:a,sign:e,start:`${t(o)}-${t(s)}`,end:`${t(c)}-${t(l-1)}`}}};export{n as zodiacPlugin};
1
+ import { m as ZODIAC_PRESETS } from "../basic-Dputob9z.mjs";
2
+ import { f as _padZero } from "../helpers-CrMc9iJZ.mjs";
3
+
4
+ //#region src/plugins/zodiacPlugin.ts
5
+ /** * Plugin to inject `zodiac` related methods */
6
+ const zodiacPlugin = ($Chronos) => {
7
+ function _toHundreds(range) {
8
+ return range[0] * 100 + range[1];
9
+ }
10
+ function _resolveSigns(options) {
11
+ const { preset = "western", custom } = options ?? {};
12
+ return [...custom ?? ZODIAC_PRESETS[preset]].sort((a, b) => _toHundreds(a[1]) - _toHundreds(b[1]));
13
+ }
14
+ $Chronos.prototype.getZodiacSign = function(options) {
15
+ const { birthDate } = options ?? {};
16
+ let month;
17
+ let date;
18
+ if (birthDate && birthDate?.includes("-")) [month, date] = birthDate.split("-").map(Number);
19
+ else {
20
+ month = this.isoMonth;
21
+ date = this.date;
22
+ }
23
+ const sortedSigns = _resolveSigns(options);
24
+ for (let i = sortedSigns.length - 1; i >= 0; i--) {
25
+ const [sign, [m, d]] = sortedSigns[i];
26
+ if (month > m || month === m && date >= d) return sign;
27
+ if (i === 0) return sortedSigns.at(-1)[0];
28
+ }
29
+ return sortedSigns[0][0];
30
+ };
31
+ $Chronos.prototype.zodiac = function(options) {
32
+ return this.getZodiacSign(options);
33
+ };
34
+ $Chronos.prototype.getZodiacMeta = function(sign, options) {
35
+ const sortedSigns = _resolveSigns(options);
36
+ const index = sortedSigns.findIndex(([s]) => s === sign);
37
+ if (index === -1) throw new RangeError(`Invalid zodiac sign: "${sign}"`);
38
+ const [startMonth, startDate] = sortedSigns[index][1];
39
+ const [endMonth, endDate] = (sortedSigns[index + 1] ?? sortedSigns[0])[1];
40
+ return {
41
+ index,
42
+ sign,
43
+ start: `${_padZero(startMonth)}-${_padZero(startDate)}`,
44
+ end: `${_padZero(endMonth)}-${_padZero(endDate - 1)}`
45
+ };
46
+ };
47
+ };
48
+
49
+ //#endregion
50
+ export { zodiacPlugin };
@@ -0,0 +1,49 @@
1
+
2
+ //#region node_modules/.pnpm/nhb-toolbox@4.30.1/node_modules/nhb-toolbox/dist/esm/guards/primitives.js
3
+ function isNumber(value) {
4
+ return typeof value === "number" && Number.isFinite(value);
5
+ }
6
+ function isString(value) {
7
+ return typeof value === "string";
8
+ }
9
+ function isBoolean(value) {
10
+ return typeof value === "boolean";
11
+ }
12
+ function isUndefined(value) {
13
+ return value === void 0;
14
+ }
15
+ function isNonEmptyString(value) {
16
+ return isString(value) && value?.length > 0;
17
+ }
18
+
19
+ //#endregion
20
+ Object.defineProperty(exports, 'isBoolean', {
21
+ enumerable: true,
22
+ get: function () {
23
+ return isBoolean;
24
+ }
25
+ });
26
+ Object.defineProperty(exports, 'isNonEmptyString', {
27
+ enumerable: true,
28
+ get: function () {
29
+ return isNonEmptyString;
30
+ }
31
+ });
32
+ Object.defineProperty(exports, 'isNumber', {
33
+ enumerable: true,
34
+ get: function () {
35
+ return isNumber;
36
+ }
37
+ });
38
+ Object.defineProperty(exports, 'isString', {
39
+ enumerable: true,
40
+ get: function () {
41
+ return isString;
42
+ }
43
+ });
44
+ Object.defineProperty(exports, 'isUndefined', {
45
+ enumerable: true,
46
+ get: function () {
47
+ return isUndefined;
48
+ }
49
+ });
@@ -0,0 +1,19 @@
1
+ //#region node_modules/.pnpm/nhb-toolbox@4.30.1/node_modules/nhb-toolbox/dist/esm/guards/primitives.js
2
+ function isNumber(value) {
3
+ return typeof value === "number" && Number.isFinite(value);
4
+ }
5
+ function isString(value) {
6
+ return typeof value === "string";
7
+ }
8
+ function isBoolean(value) {
9
+ return typeof value === "boolean";
10
+ }
11
+ function isUndefined(value) {
12
+ return value === void 0;
13
+ }
14
+ function isNonEmptyString(value) {
15
+ return isString(value) && value?.length > 0;
16
+ }
17
+
18
+ //#endregion
19
+ export { isUndefined as a, isString as i, isNonEmptyString as n, isNumber as r, isBoolean as t };
@@ -0,0 +1,352 @@
1
+ //#region src/constants/seasons.ts
2
+ /** Western Seasons */
3
+ const DEFAULT_SEASONS = /* @__PURE__ */ Object.freeze([
4
+ {
5
+ name: "Spring",
6
+ boundary: {
7
+ startMonth: 2,
8
+ endMonth: 4
9
+ }
10
+ },
11
+ {
12
+ name: "Summer",
13
+ boundary: {
14
+ startMonth: 5,
15
+ endMonth: 7
16
+ }
17
+ },
18
+ {
19
+ name: "Autumn",
20
+ boundary: {
21
+ startMonth: 8,
22
+ endMonth: 10
23
+ }
24
+ },
25
+ {
26
+ name: "Winter",
27
+ boundary: {
28
+ startMonth: 11,
29
+ endMonth: 1
30
+ }
31
+ }
32
+ ]);
33
+ /**Default Bangladeshi Seasons */
34
+ const BANGLADESH_SEASONS = /* @__PURE__ */ Object.freeze([
35
+ {
36
+ name: "Grisma (Summer)",
37
+ boundary: {
38
+ startDate: "04-15",
39
+ endDate: "06-14"
40
+ }
41
+ },
42
+ {
43
+ name: "Barsa (Monsoon)",
44
+ boundary: {
45
+ startDate: "06-15",
46
+ endDate: "08-14"
47
+ }
48
+ },
49
+ {
50
+ name: "Sarat (Autumn)",
51
+ boundary: {
52
+ startDate: "08-15",
53
+ endDate: "10-14"
54
+ }
55
+ },
56
+ {
57
+ name: "Hemanta (Late-Autumn)",
58
+ boundary: {
59
+ startDate: "10-15",
60
+ endDate: "12-14"
61
+ }
62
+ },
63
+ {
64
+ name: "Shhit (Winter)",
65
+ boundary: {
66
+ startDate: "12-15",
67
+ endDate: "02-14"
68
+ }
69
+ },
70
+ {
71
+ name: "Basanta (Spring)",
72
+ boundary: {
73
+ startDate: "02-15",
74
+ endDate: "04-14"
75
+ }
76
+ }
77
+ ]);
78
+ /** Indian Seasons */
79
+ const INDIA_IMD_SEASONS = /* @__PURE__ */ Object.freeze([
80
+ {
81
+ name: "Winter",
82
+ boundary: {
83
+ startMonth: 0,
84
+ endMonth: 1
85
+ }
86
+ },
87
+ {
88
+ name: "Pre-Monsoon",
89
+ boundary: {
90
+ startMonth: 2,
91
+ endMonth: 4
92
+ }
93
+ },
94
+ {
95
+ name: "Monsoon",
96
+ boundary: {
97
+ startMonth: 5,
98
+ endMonth: 8
99
+ }
100
+ },
101
+ {
102
+ name: "Post-Monsoon",
103
+ boundary: {
104
+ startMonth: 9,
105
+ endMonth: 10
106
+ }
107
+ },
108
+ {
109
+ name: "Cool Season",
110
+ boundary: {
111
+ startMonth: 11,
112
+ endMonth: 11
113
+ }
114
+ }
115
+ ]);
116
+ /** Indian Vedic Seasons */
117
+ const INDIA_VEDIC_SEASONS = /* @__PURE__ */ Object.freeze([
118
+ {
119
+ name: "Shishir (Winter)",
120
+ boundary: {
121
+ startDate: "12-15",
122
+ endDate: "02-14"
123
+ }
124
+ },
125
+ {
126
+ name: "Vasanta (Spring)",
127
+ boundary: {
128
+ startDate: "02-15",
129
+ endDate: "04-14"
130
+ }
131
+ },
132
+ {
133
+ name: "Grishma (Summer)",
134
+ boundary: {
135
+ startDate: "04-15",
136
+ endDate: "06-14"
137
+ }
138
+ },
139
+ {
140
+ name: "Varsha (Monsoon)",
141
+ boundary: {
142
+ startDate: "06-15",
143
+ endDate: "08-14"
144
+ }
145
+ },
146
+ {
147
+ name: "Sharad (Autumn)",
148
+ boundary: {
149
+ startDate: "08-15",
150
+ endDate: "10-14"
151
+ }
152
+ },
153
+ {
154
+ name: "Hemant (Late-Autumn)",
155
+ boundary: {
156
+ startDate: "10-15",
157
+ endDate: "12-14"
158
+ }
159
+ }
160
+ ]);
161
+ /** Indian Tamil Seasons */
162
+ const INDIA_TAMIL_SEASONS = /* @__PURE__ */ Object.freeze([
163
+ {
164
+ name: "Ilavenil (Mid-Summer)",
165
+ boundary: {
166
+ startMonth: 4,
167
+ endMonth: 5
168
+ }
169
+ },
170
+ {
171
+ name: "Mutuvenil (Peak-Summer)",
172
+ boundary: {
173
+ startMonth: 6,
174
+ endMonth: 7
175
+ }
176
+ },
177
+ {
178
+ name: "Kaar (Monsoon)",
179
+ boundary: {
180
+ startMonth: 7,
181
+ endMonth: 9
182
+ }
183
+ },
184
+ {
185
+ name: "Koothir (Autumn)",
186
+ boundary: {
187
+ startMonth: 9,
188
+ endMonth: 10
189
+ }
190
+ },
191
+ {
192
+ name: "Munpani (Early-Winter)",
193
+ boundary: {
194
+ startMonth: 10,
195
+ endMonth: 0
196
+ }
197
+ },
198
+ {
199
+ name: "Pinpani (Late-Winter)",
200
+ boundary: {
201
+ startMonth: 0,
202
+ endMonth: 2
203
+ }
204
+ }
205
+ ]);
206
+ /** Philippines Seasons */
207
+ const PHILIPPINES_SEASONS = /* @__PURE__ */ Object.freeze([{
208
+ name: "Dry Season",
209
+ boundary: {
210
+ startMonth: 11,
211
+ endMonth: 4
212
+ }
213
+ }, {
214
+ name: "Wet Season",
215
+ boundary: {
216
+ startMonth: 5,
217
+ endMonth: 10
218
+ }
219
+ }]);
220
+ /** US Academic Seasons */
221
+ const US_ACADEMIC_SEASONS = /* @__PURE__ */ Object.freeze([
222
+ {
223
+ name: "Spring",
224
+ boundary: {
225
+ startDate: "01-10",
226
+ endDate: "05-15"
227
+ }
228
+ },
229
+ {
230
+ name: "Summer",
231
+ boundary: {
232
+ startDate: "05-16",
233
+ endDate: "08-15"
234
+ }
235
+ },
236
+ {
237
+ name: "Fall",
238
+ boundary: {
239
+ startDate: "08-16",
240
+ endDate: "12-20"
241
+ }
242
+ },
243
+ {
244
+ name: "Winter Break",
245
+ boundary: {
246
+ startDate: "12-21",
247
+ endDate: "01-09"
248
+ }
249
+ }
250
+ ]);
251
+ /** Japanese Seasons */
252
+ const JAPAN_SEASONS = /* @__PURE__ */ Object.freeze([
253
+ {
254
+ name: "Haru (Spring)",
255
+ boundary: {
256
+ startDate: "03-01",
257
+ endDate: "05-31"
258
+ }
259
+ },
260
+ {
261
+ name: "Natsu (Summer)",
262
+ boundary: {
263
+ startDate: "06-01",
264
+ endDate: "08-31"
265
+ }
266
+ },
267
+ {
268
+ name: "Aki (Autumn)",
269
+ boundary: {
270
+ startDate: "09-01",
271
+ endDate: "11-30"
272
+ }
273
+ },
274
+ {
275
+ name: "Fuyu (Winter)",
276
+ boundary: {
277
+ startDate: "12-01",
278
+ endDate: "02-28"
279
+ }
280
+ }
281
+ ]);
282
+ /** Australian Seasons */
283
+ const AUSTRALIA_SEASONS = /* @__PURE__ */ Object.freeze([
284
+ {
285
+ name: "Summer",
286
+ boundary: {
287
+ startMonth: 11,
288
+ endMonth: 1
289
+ }
290
+ },
291
+ {
292
+ name: "Autumn",
293
+ boundary: {
294
+ startMonth: 2,
295
+ endMonth: 4
296
+ }
297
+ },
298
+ {
299
+ name: "Winter",
300
+ boundary: {
301
+ startMonth: 5,
302
+ endMonth: 7
303
+ }
304
+ },
305
+ {
306
+ name: "Spring",
307
+ boundary: {
308
+ startMonth: 8,
309
+ endMonth: 10
310
+ }
311
+ }
312
+ ]);
313
+ /** Ethiopian Seasons */
314
+ const ETHIOPIA_SEASONS = /* @__PURE__ */ Object.freeze([
315
+ {
316
+ name: "Bega (Dry)",
317
+ boundary: {
318
+ startMonth: 10,
319
+ endMonth: 1
320
+ }
321
+ },
322
+ {
323
+ name: "Belg (Short Rain)",
324
+ boundary: {
325
+ startMonth: 2,
326
+ endMonth: 4
327
+ }
328
+ },
329
+ {
330
+ name: "Kiremt (Main Rain)",
331
+ boundary: {
332
+ startMonth: 5,
333
+ endMonth: 9
334
+ }
335
+ }
336
+ ]);
337
+ /** All the Season Presets for `new Chronos.season()` method */
338
+ const SEASON_PRESETS = /* @__PURE__ */ Object.freeze({
339
+ default: DEFAULT_SEASONS,
340
+ bangladesh: BANGLADESH_SEASONS,
341
+ india: INDIA_IMD_SEASONS,
342
+ tamil: INDIA_TAMIL_SEASONS,
343
+ vedic: INDIA_VEDIC_SEASONS,
344
+ philippines: PHILIPPINES_SEASONS,
345
+ academic_us: US_ACADEMIC_SEASONS,
346
+ japan: JAPAN_SEASONS,
347
+ australia: AUSTRALIA_SEASONS,
348
+ ethiopia: ETHIOPIA_SEASONS
349
+ });
350
+
351
+ //#endregion
352
+ export { INDIA_IMD_SEASONS as a, JAPAN_SEASONS as c, US_ACADEMIC_SEASONS as d, ETHIOPIA_SEASONS as i, PHILIPPINES_SEASONS as l, BANGLADESH_SEASONS as n, INDIA_TAMIL_SEASONS as o, DEFAULT_SEASONS as r, INDIA_VEDIC_SEASONS as s, AUSTRALIA_SEASONS as t, SEASON_PRESETS as u };