toolbox-x 2.0.14 → 2.2.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 (53) hide show
  1. package/dist/{Color-B2SgCGbm.d.mts → Color-CInCJvH7.d.mts} +98 -14
  2. package/dist/{Color-asKZqwDF.d.cts → Color-CVRcGmWe.d.cts} +98 -14
  3. package/dist/{Stylog-CRNMQ_uV.d.cts → Stylog-00MmV27Z.d.cts} +1 -1
  4. package/dist/{Stylog-Cvzo5z86.d.mts → Stylog-Bi1f4CR9.d.mts} +1 -1
  5. package/dist/{basics-Dald7J6c.mjs → basics-20lm69yy.mjs} +5 -98
  6. package/dist/{basics-Bb5ovcvz.cjs → basics-byj0VH1c.cjs} +5 -140
  7. package/dist/colors.cjs +130 -24
  8. package/dist/colors.d.cts +2 -2
  9. package/dist/colors.d.mts +2 -2
  10. package/dist/colors.mjs +130 -24
  11. package/dist/constants.cjs +14 -14
  12. package/dist/constants.mjs +1 -1
  13. package/dist/{convert-Cqy2Llek.cjs → convert-BjKz_hhr.cjs} +6 -2
  14. package/dist/{convert-lXdkXPJR.mjs → convert-DRZXcjcS.mjs} +6 -2
  15. package/dist/date.cjs +6 -6
  16. package/dist/date.mjs +4 -4
  17. package/dist/dom.cjs +9 -8
  18. package/dist/dom.mjs +4 -3
  19. package/dist/{guards-D8Iz6EEy.cjs → guards-BSwFQX1M.cjs} +3 -3
  20. package/dist/{guards-DziDBD0p.mjs → guards-CNG9gnvL.mjs} +1 -1
  21. package/dist/guards-CqbVT4L5.cjs +156 -0
  22. package/dist/{guards-DGN95D2h.cjs → guards-CrfVwk0-.cjs} +1 -1
  23. package/dist/guards-DKGBsd6x.mjs +115 -0
  24. package/dist/{guards-D1et4U32.mjs → guards-Dc9MB9on.mjs} +3 -3
  25. package/dist/guards.cjs +37 -36
  26. package/dist/guards.d.cts +1 -1
  27. package/dist/guards.d.mts +1 -1
  28. package/dist/guards.mjs +5 -4
  29. package/dist/hash.cjs +8 -8
  30. package/dist/hash.mjs +8 -8
  31. package/dist/index.cjs +12 -12
  32. package/dist/index.d.cts +2 -3
  33. package/dist/index.d.mts +2 -3
  34. package/dist/index.mjs +12 -12
  35. package/dist/{parse-DUJ0YThn.mjs → parse-TuFyLeVH.mjs} +3 -3
  36. package/dist/{parse-CbVVRoFY.cjs → parse-jh637S25.cjs} +4 -4
  37. package/dist/pluralizer.cjs +1 -1
  38. package/dist/pluralizer.mjs +1 -1
  39. package/dist/{query-B4Lrr5Vt.mjs → query-BomnyWh3.mjs} +5 -5
  40. package/dist/{query-BUBCpo-q.cjs → query-sWSi-d7u.cjs} +10 -10
  41. package/dist/{specials-dkYP1Nh2.cjs → specials-DU8u108m.cjs} +1 -1
  42. package/dist/{specials-Hq5Ncd6y.mjs → specials-krf7zsqI.mjs} +1 -1
  43. package/dist/stylog.cjs +3 -3
  44. package/dist/stylog.d.cts +2 -2
  45. package/dist/stylog.d.mts +2 -2
  46. package/dist/stylog.mjs +3 -3
  47. package/dist/types/colors.d.cts +1 -1
  48. package/dist/types/colors.d.mts +1 -1
  49. package/dist/types/stylog.d.cts +1 -1
  50. package/dist/types/stylog.d.mts +1 -1
  51. package/dist/{utilities-DPscNbS1.mjs → utilities-BSv8VbnM.mjs} +1 -1
  52. package/dist/{utilities-CWV1GPGY.cjs → utilities-BVpk3LKy.cjs} +1 -1
  53. package/package.json +6 -6
package/dist/date.cjs CHANGED
@@ -16,12 +16,12 @@
16
16
 
17
17
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
18
18
  const require_primitives = require('./primitives-CBGICrDR.cjs');
19
+ const require_specials = require('./specials-DU8u108m.cjs');
20
+ const require_utilities = require('./utilities-BVpk3LKy.cjs');
19
21
  const require_constants = require('./constants-CgFaV72Z.cjs');
20
22
  const require_timezone = require('./timezone-CSz7R0L6.cjs');
21
- const require_specials = require('./specials-dkYP1Nh2.cjs');
22
- const require_utilities = require('./utilities-CWV1GPGY.cjs');
23
- const require_parse = require('./parse-CbVVRoFY.cjs');
24
- const require_basics = require('./basics-Bb5ovcvz.cjs');
23
+ const require_parse = require('./parse-jh637S25.cjs');
24
+ const require_guards = require('./guards-CqbVT4L5.cjs');
25
25
 
26
26
  //#region src/date/calculation.ts
27
27
  /**
@@ -180,7 +180,7 @@ const TZ_MAP = /* @__PURE__ */ new Map();
180
180
  * @returns An array of matching IANA time-zone identifiers, or an empty array if the offset is invalid.
181
181
  */
182
182
  function getTimeZoneIds(offset) {
183
- if (!require_basics.isValidUTCOffset(offset)) return [];
183
+ if (!require_guards.isValidUTCOffset(offset)) return [];
184
184
  if (TZ_MAP.has(offset)) return TZ_MAP.get(offset) ?? [];
185
185
  for (const zone of require_timezone.NATIVE_TZ_IDS) {
186
186
  const off = require_parse._gmtToUtcOffset(require_parse._resolveNativeTzName(zone, "longOffset"));
@@ -351,7 +351,7 @@ function getGreeting(configs) {
351
351
  const { morningEnds = "11:59", noonEnds = "12:59", afternoonEnds = "17:59", eveningEnds = "23:59", midnightEnds = "02:59", currentTime, appendToMsg = "", prependToMsg = "", morningMessage = "Good Morning!", noonMessage = "Good Noon!", afternoonMessage = "Good Afternoon!", eveningMessage = "Good Evening!", midnightMessage = "Hello, Night Owl!", defaultMessage = "Greetings!" } = configs || {};
352
352
  let hour;
353
353
  let minute;
354
- if (currentTime && require_basics.isValidTime(currentTime)) [hour, minute] = extractHourMinute(currentTime);
354
+ if (currentTime && require_guards.isValidTime(currentTime)) [hour, minute] = extractHourMinute(currentTime);
355
355
  else {
356
356
  hour = getCurrentDateTime().getHours();
357
357
  minute = getCurrentDateTime().getMinutes();
package/dist/date.mjs CHANGED
@@ -15,12 +15,12 @@
15
15
  */
16
16
 
17
17
  import { c as isNumber, m as isUndefined } from "./primitives-Djsevc69.mjs";
18
+ import { E as isObjectWithKeys, T as isObject } from "./specials-krf7zsqI.mjs";
19
+ import { a as normalizeNumber } from "./utilities-BSv8VbnM.mjs";
18
20
  import { a as RELATIVE_TIME_DIVISIONS, t as DATE_UNIT_SETTERS } from "./constants-GZL_CT1W.mjs";
19
21
  import { n as NATIVE_TZ_IDS } from "./timezone-avZ4TvDx.mjs";
20
- import { E as isObjectWithKeys, T as isObject } from "./specials-Hq5Ncd6y.mjs";
21
- import { a as normalizeNumber } from "./utilities-DPscNbS1.mjs";
22
- import { a as _normalizeOffset, i as _gmtToUtcOffset, n as _dateArgsToDate, o as _resolveNativeTzName, r as _formatDate, t as parseMSec } from "./parse-DUJ0YThn.mjs";
23
- import { Q as isValidTime, et as isValidUTCOffset } from "./basics-Dald7J6c.mjs";
22
+ import { a as _normalizeOffset, i as _gmtToUtcOffset, n as _dateArgsToDate, o as _resolveNativeTzName, r as _formatDate, t as parseMSec } from "./parse-TuFyLeVH.mjs";
23
+ import { a as isValidTime, s as isValidUTCOffset } from "./guards-DKGBsd6x.mjs";
24
24
 
25
25
  //#region src/date/calculation.ts
26
26
  /**
package/dist/dom.cjs CHANGED
@@ -16,9 +16,10 @@
16
16
 
17
17
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
18
18
  const require_primitives = require('./primitives-CBGICrDR.cjs');
19
- const require_specials = require('./specials-dkYP1Nh2.cjs');
20
- const require_basics = require('./basics-Bb5ovcvz.cjs');
21
- const require_query = require('./query-BUBCpo-q.cjs');
19
+ const require_specials = require('./specials-DU8u108m.cjs');
20
+ const require_guards = require('./guards-CqbVT4L5.cjs');
21
+ const require_basics = require('./basics-byj0VH1c.cjs');
22
+ const require_query = require('./query-sWSi-d7u.cjs');
22
23
 
23
24
  //#region src/dom/storage.ts
24
25
  /**
@@ -229,8 +230,8 @@ const createFormData = (data, configs) => {
229
230
  const transformedKey = _transformKey(key);
230
231
  const fullKey = parentKey ? `${parentKey}.${transformedKey}` : transformedKey;
231
232
  if (_compareKeyPaths(fullKey, ignoreKeys)) return acc;
232
- if (value != null && value !== "" || _isRequiredKey(fullKey) || require_primitives.isNonEmptyString(value) || require_specials.isValidArray(value) || require_specials.isNotEmptyObject(value)) if (require_basics.isDateLike(value)) acc[transformedKey] = value;
233
- else if (require_specials.isNotEmptyObject(value)) if (require_basics.isDateLike(value)) acc[transformedKey] = value;
233
+ if (value != null && value !== "" || _isRequiredKey(fullKey) || require_primitives.isNonEmptyString(value) || require_specials.isValidArray(value) || require_specials.isNotEmptyObject(value)) if (require_guards.isDateLike(value)) acc[transformedKey] = value;
234
+ else if (require_specials.isNotEmptyObject(value)) if (require_guards.isDateLike(value)) acc[transformedKey] = value;
234
235
  else {
235
236
  const cleaned = _cleanObject(value, fullKey);
236
237
  if (_isRequiredKey(fullKey) || require_specials.isNotEmptyObject(cleaned)) acc[transformedKey] = cleaned;
@@ -272,7 +273,7 @@ const createFormData = (data, configs) => {
272
273
  });
273
274
  else formData.append(transformedKey, JSON.stringify(value));
274
275
  else if (_isRequiredKey(key)) formData.append(transformedKey, JSON.stringify(value));
275
- } else if (require_basics.isDateLike(value)) formData.append(transformedKey, _parseDateLike(value));
276
+ } else if (require_guards.isDateLike(value)) formData.append(transformedKey, _parseDateLike(value));
276
277
  else if (require_specials.isNotEmptyObject(value)) if (_shouldStringify(key) && !_shouldDotNotate(key)) {
277
278
  const cleanedValue = _cleanObject(value, key);
278
279
  if (require_specials.isNotEmptyObject(cleanedValue) || _isRequiredKey(key)) formData.append(transformedKey, JSON.stringify(cleanedValue));
@@ -294,10 +295,10 @@ const createFormData = (data, configs) => {
294
295
  if (_compareKeyPaths(fullKey, ignoreKeys)) return;
295
296
  if (configs?.trimStrings && require_primitives.isNonEmptyString(value)) value = require_basics.trimString(value);
296
297
  if (_shouldDotNotate(fullKey)) _addToFormData(fullKey, value);
297
- else if (require_specials.isNotEmptyObject(value) && !_shouldStringify(fullKey)) if (require_basics.isDateLike(value)) _addToFormData(key, _parseDateLike(value));
298
+ else if (require_specials.isNotEmptyObject(value) && !_shouldStringify(fullKey)) if (require_guards.isDateLike(value)) _addToFormData(key, _parseDateLike(value));
298
299
  else _processObject(value, key);
299
300
  else if (require_query.isFileOrBlob(value)) _addToFormData(key, value);
300
- else if (require_basics.isDateLike(value)) _addToFormData(key, _parseDateLike(value));
301
+ else if (require_guards.isDateLike(value)) _addToFormData(key, _parseDateLike(value));
301
302
  else if (require_specials.isEmptyObject(value)) {
302
303
  if (_isRequiredKey(fullKey)) _addToFormData(key, JSON.stringify(value));
303
304
  } else _addToFormData(key, value);
package/dist/dom.mjs CHANGED
@@ -15,9 +15,10 @@
15
15
  */
16
16
 
17
17
  import { a as isNonEmptyString, d as isString } from "./primitives-Djsevc69.mjs";
18
- import { j as isValidArray, v as isEmptyObject, w as isNotEmptyObject } from "./specials-Hq5Ncd6y.mjs";
19
- import { J as isDateLike, n as trimString } from "./basics-Dald7J6c.mjs";
20
- import { C as isValidFormData, S as isOriginFileObj, _ as isCustomFileArray, a as updateQueryParam, b as isFileOrBlob, g as isCustomFile, i as parseQueryStringLiteral, m as parseObjectValues, n as getQueryParams, r as parseQueryString, t as generateQueryParams, v as isFileArray, x as isFileUpload, y as isFileList } from "./query-B4Lrr5Vt.mjs";
18
+ import { j as isValidArray, v as isEmptyObject, w as isNotEmptyObject } from "./specials-krf7zsqI.mjs";
19
+ import { t as isDateLike } from "./guards-DKGBsd6x.mjs";
20
+ import { n as trimString } from "./basics-20lm69yy.mjs";
21
+ import { C as isValidFormData, S as isOriginFileObj, _ as isCustomFileArray, a as updateQueryParam, b as isFileOrBlob, g as isCustomFile, i as parseQueryStringLiteral, m as parseObjectValues, n as getQueryParams, r as parseQueryString, t as generateQueryParams, v as isFileArray, x as isFileUpload, y as isFileList } from "./query-BomnyWh3.mjs";
21
22
 
22
23
  //#region src/dom/storage.ts
23
24
  /**
@@ -15,9 +15,9 @@
15
15
  */
16
16
 
17
17
  const require_primitives = require('./primitives-CBGICrDR.cjs');
18
- const require_specials = require('./specials-dkYP1Nh2.cjs');
19
- const require_utilities = require('./utilities-CWV1GPGY.cjs');
20
- const require_basics = require('./basics-Bb5ovcvz.cjs');
18
+ const require_specials = require('./specials-DU8u108m.cjs');
19
+ const require_utilities = require('./utilities-BVpk3LKy.cjs');
20
+ const require_basics = require('./basics-byj0VH1c.cjs');
21
21
 
22
22
  //#region src/object/basics.ts
23
23
  /**
@@ -65,7 +65,7 @@ const _isSimilarToLast = (recentColors, newColor) => {
65
65
  * @returns `true` if it's a valid alpha value, `false` if not.
66
66
  */
67
67
  function _isValidAlpha(value) {
68
- return value >= 0 && value <= 1 && !isNaN(value);
68
+ return value >= 0 && value <= 1 && !Number.isNaN(value);
69
69
  }
70
70
  /** @private Validates RGB component (0–255). */
71
71
  function _isValidRGBComponent(value) {
@@ -0,0 +1,156 @@
1
+ /**
2
+ * Copyright 2026 - present Nazmul Hassan
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ const require_primitives = require('./primitives-CBGICrDR.cjs');
18
+ const require_specials = require('./specials-DU8u108m.cjs');
19
+ const require_utilities = require('./utilities-BVpk3LKy.cjs');
20
+ const require_timezone = require('./timezone-CSz7R0L6.cjs');
21
+
22
+ //#region src/date/guards.ts
23
+ /**
24
+ * * Checks if the provided value is a valid time string in "HH:MM" format.
25
+ *
26
+ * @param value - The value to check.
27
+ * @returns `true` if the value is a valid time string, `false` otherwise.
28
+ */
29
+ function isValidTime(value) {
30
+ if (!require_primitives.isNonEmptyString(value)) return false;
31
+ const [hourStr, minuteStr] = value.split(":");
32
+ if (!require_specials.isNumericString(hourStr) || !require_specials.isNumericString(minuteStr)) return false;
33
+ const hour = Number(hourStr);
34
+ const minute = Number(minuteStr);
35
+ return hour >= 0 && hour <= 23 && minute >= 0 && minute <= 59;
36
+ }
37
+ /**
38
+ * * Checks if the provided value is a valid `UTCOffset` (e.g. `UTC-01:30`).
39
+ *
40
+ * @param value - The value to check.
41
+ * @returns `true` if the value is a valid utc offset, `false` otherwise.
42
+ */
43
+ function isValidUTCOffset(value) {
44
+ return require_primitives.isString(value) ? /^UTC[+-]?(?:0[0-9]|1[0-4]):(?:00|15|30|45)$/.test(value) : false;
45
+ }
46
+ /**
47
+ * * Validates whether the provided value is a recognized IANA time zone identifier (excluding `"Factory"`), based on the {@link https://en.wikipedia.org/wiki/List_of_tz_database_time_zones IANA TZ Database}.
48
+ *
49
+ * @remarks
50
+ * - Relies on a large constant map of time zone identifiers, which can increase bundle size in browser environments. Matches against `597` identifiers.
51
+ * - Prefer {@link isNativeTimeZoneId} when you want a lightweight, native-only validation approach. Matches against `418` identifiers.
52
+ *
53
+ * @param value Time zone identifier to validate.
54
+ * @returns `true` if the value is a valid IANA time zone identifier, otherwise `false`.
55
+ */
56
+ function isValidTimeZoneId(value) {
57
+ return require_primitives.isNonEmptyString(value) ? new Set([...require_timezone.IANA_TZ_IDS]).has(value) : false;
58
+ }
59
+ /**
60
+ * * Validates whether the provided value is a supported time zone identifier using the native JavaScript API (`Intl.supportedValuesOf('timeZone')`).
61
+ *
62
+ * @remarks
63
+ * - Uses only native {@link Intl} capabilities—minimal code footprint, highly performant. Matches against `418` identifiers.
64
+ * - Prefer {@link isValidTimeZoneId} when validation must align strictly with the full
65
+ * {@link https://en.wikipedia.org/wiki/List_of_tz_database_time_zones IANA TZ Database}. Matches against `597` identifiers.
66
+ *
67
+ * @param value Time zone identifier to validate.
68
+ * @returns `true` if the value is a valid native JS-supported time zone identifier, otherwise `false`.
69
+ */
70
+ function isNativeTimeZoneId(value) {
71
+ return require_primitives.isNonEmptyString(value) ? new Set(require_timezone.NATIVE_TZ_IDS).has(value) : false;
72
+ }
73
+ /**
74
+ * * Checks if the year is a leap year.
75
+ *
76
+ * - A year is a leap year if it is divisible by 4, but not divisible by 100, unless it is also divisible by 400.
77
+ * - For example, 2000 and 2400 are leap years, but 1900 and 2100 are not.
78
+ * @param year The year to check.
79
+ * @returns `true` if the year is a leap year, `false` otherwise.
80
+ */
81
+ function isLeapYear(year) {
82
+ const $year = require_utilities.normalizeNumber(year);
83
+ return $year ? $year % 4 === 0 && $year % 100 !== 0 || $year % 400 === 0 : false;
84
+ }
85
+ /**
86
+ * * Checks if a value is a date-like object from `Date`, `Chronos`, `Moment.js`, `Day.js`, `Luxon`, `JS-Joda`, or `Temporal`
87
+ * @param value Value to check if it is date-like object.
88
+ * @returns `true` if the value is date-like object, otherwise `false`.
89
+ */
90
+ function isDateLike(value) {
91
+ if (value instanceof Date) return true;
92
+ if (require_specials.isObject(value)) {
93
+ if (require_specials.isFunction(value.format) && require_specials.isFunction(value.toJSON) && require_specials.isFunction(value.toISOString)) return true;
94
+ if (require_specials.isFunction(value.toISO) && require_specials.isFunction(value.toFormat) && require_primitives.isBoolean(value.isValid)) return true;
95
+ if (require_specials.isFunction(value.plus) && require_specials.isFunction(value.minus) && require_specials.isFunction(value.equals) && require_specials.isFunction(value.getClass)) return true;
96
+ if (require_specials.isFunction(value.toJSON) && require_specials.isFunction(value.toString) && [
97
+ "Instant",
98
+ "Duration",
99
+ "PlainDate",
100
+ "PlainTime",
101
+ "PlainDateTime",
102
+ "PlainMonthDay",
103
+ "PlainYearMonth",
104
+ "ZonedDateTime"
105
+ ].includes(value.constructor?.name ?? "")) return true;
106
+ }
107
+ return false;
108
+ }
109
+ /** Checks if a value represents time value (number) with different forms of {@link TimeWithUnit units} */
110
+ function isTimeWithUnit(value) {
111
+ return require_primitives.isNonEmptyString(value) && /^-?\d*\.?\d+ *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|months?|mo|years?|yrs?|y)?$/i.test(value);
112
+ }
113
+
114
+ //#endregion
115
+ Object.defineProperty(exports, 'isDateLike', {
116
+ enumerable: true,
117
+ get: function () {
118
+ return isDateLike;
119
+ }
120
+ });
121
+ Object.defineProperty(exports, 'isLeapYear', {
122
+ enumerable: true,
123
+ get: function () {
124
+ return isLeapYear;
125
+ }
126
+ });
127
+ Object.defineProperty(exports, 'isNativeTimeZoneId', {
128
+ enumerable: true,
129
+ get: function () {
130
+ return isNativeTimeZoneId;
131
+ }
132
+ });
133
+ Object.defineProperty(exports, 'isTimeWithUnit', {
134
+ enumerable: true,
135
+ get: function () {
136
+ return isTimeWithUnit;
137
+ }
138
+ });
139
+ Object.defineProperty(exports, 'isValidTime', {
140
+ enumerable: true,
141
+ get: function () {
142
+ return isValidTime;
143
+ }
144
+ });
145
+ Object.defineProperty(exports, 'isValidTimeZoneId', {
146
+ enumerable: true,
147
+ get: function () {
148
+ return isValidTimeZoneId;
149
+ }
150
+ });
151
+ Object.defineProperty(exports, 'isValidUTCOffset', {
152
+ enumerable: true,
153
+ get: function () {
154
+ return isValidUTCOffset;
155
+ }
156
+ });
@@ -65,7 +65,7 @@ const _isSimilarToLast = (recentColors, newColor) => {
65
65
  * @returns `true` if it's a valid alpha value, `false` if not.
66
66
  */
67
67
  function _isValidAlpha(value) {
68
- return value >= 0 && value <= 1 && !isNaN(value);
68
+ return value >= 0 && value <= 1 && !Number.isNaN(value);
69
69
  }
70
70
  /** @private Validates RGB component (0–255). */
71
71
  function _isValidRGBComponent(value) {
@@ -0,0 +1,115 @@
1
+ /**
2
+ * Copyright 2026 - present Nazmul Hassan
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ import { a as isNonEmptyString, d as isString, n as isBoolean } from "./primitives-Djsevc69.mjs";
18
+ import { T as isObject, b as isFunction, d as isNumericString } from "./specials-krf7zsqI.mjs";
19
+ import { a as normalizeNumber } from "./utilities-BSv8VbnM.mjs";
20
+ import { n as NATIVE_TZ_IDS, t as IANA_TZ_IDS } from "./timezone-avZ4TvDx.mjs";
21
+
22
+ //#region src/date/guards.ts
23
+ /**
24
+ * * Checks if the provided value is a valid time string in "HH:MM" format.
25
+ *
26
+ * @param value - The value to check.
27
+ * @returns `true` if the value is a valid time string, `false` otherwise.
28
+ */
29
+ function isValidTime(value) {
30
+ if (!isNonEmptyString(value)) return false;
31
+ const [hourStr, minuteStr] = value.split(":");
32
+ if (!isNumericString(hourStr) || !isNumericString(minuteStr)) return false;
33
+ const hour = Number(hourStr);
34
+ const minute = Number(minuteStr);
35
+ return hour >= 0 && hour <= 23 && minute >= 0 && minute <= 59;
36
+ }
37
+ /**
38
+ * * Checks if the provided value is a valid `UTCOffset` (e.g. `UTC-01:30`).
39
+ *
40
+ * @param value - The value to check.
41
+ * @returns `true` if the value is a valid utc offset, `false` otherwise.
42
+ */
43
+ function isValidUTCOffset(value) {
44
+ return isString(value) ? /^UTC[+-]?(?:0[0-9]|1[0-4]):(?:00|15|30|45)$/.test(value) : false;
45
+ }
46
+ /**
47
+ * * Validates whether the provided value is a recognized IANA time zone identifier (excluding `"Factory"`), based on the {@link https://en.wikipedia.org/wiki/List_of_tz_database_time_zones IANA TZ Database}.
48
+ *
49
+ * @remarks
50
+ * - Relies on a large constant map of time zone identifiers, which can increase bundle size in browser environments. Matches against `597` identifiers.
51
+ * - Prefer {@link isNativeTimeZoneId} when you want a lightweight, native-only validation approach. Matches against `418` identifiers.
52
+ *
53
+ * @param value Time zone identifier to validate.
54
+ * @returns `true` if the value is a valid IANA time zone identifier, otherwise `false`.
55
+ */
56
+ function isValidTimeZoneId(value) {
57
+ return isNonEmptyString(value) ? new Set([...IANA_TZ_IDS]).has(value) : false;
58
+ }
59
+ /**
60
+ * * Validates whether the provided value is a supported time zone identifier using the native JavaScript API (`Intl.supportedValuesOf('timeZone')`).
61
+ *
62
+ * @remarks
63
+ * - Uses only native {@link Intl} capabilities—minimal code footprint, highly performant. Matches against `418` identifiers.
64
+ * - Prefer {@link isValidTimeZoneId} when validation must align strictly with the full
65
+ * {@link https://en.wikipedia.org/wiki/List_of_tz_database_time_zones IANA TZ Database}. Matches against `597` identifiers.
66
+ *
67
+ * @param value Time zone identifier to validate.
68
+ * @returns `true` if the value is a valid native JS-supported time zone identifier, otherwise `false`.
69
+ */
70
+ function isNativeTimeZoneId(value) {
71
+ return isNonEmptyString(value) ? new Set(NATIVE_TZ_IDS).has(value) : false;
72
+ }
73
+ /**
74
+ * * Checks if the year is a leap year.
75
+ *
76
+ * - A year is a leap year if it is divisible by 4, but not divisible by 100, unless it is also divisible by 400.
77
+ * - For example, 2000 and 2400 are leap years, but 1900 and 2100 are not.
78
+ * @param year The year to check.
79
+ * @returns `true` if the year is a leap year, `false` otherwise.
80
+ */
81
+ function isLeapYear(year) {
82
+ const $year = normalizeNumber(year);
83
+ return $year ? $year % 4 === 0 && $year % 100 !== 0 || $year % 400 === 0 : false;
84
+ }
85
+ /**
86
+ * * Checks if a value is a date-like object from `Date`, `Chronos`, `Moment.js`, `Day.js`, `Luxon`, `JS-Joda`, or `Temporal`
87
+ * @param value Value to check if it is date-like object.
88
+ * @returns `true` if the value is date-like object, otherwise `false`.
89
+ */
90
+ function isDateLike(value) {
91
+ if (value instanceof Date) return true;
92
+ if (isObject(value)) {
93
+ if (isFunction(value.format) && isFunction(value.toJSON) && isFunction(value.toISOString)) return true;
94
+ if (isFunction(value.toISO) && isFunction(value.toFormat) && isBoolean(value.isValid)) return true;
95
+ if (isFunction(value.plus) && isFunction(value.minus) && isFunction(value.equals) && isFunction(value.getClass)) return true;
96
+ if (isFunction(value.toJSON) && isFunction(value.toString) && [
97
+ "Instant",
98
+ "Duration",
99
+ "PlainDate",
100
+ "PlainTime",
101
+ "PlainDateTime",
102
+ "PlainMonthDay",
103
+ "PlainYearMonth",
104
+ "ZonedDateTime"
105
+ ].includes(value.constructor?.name ?? "")) return true;
106
+ }
107
+ return false;
108
+ }
109
+ /** Checks if a value represents time value (number) with different forms of {@link TimeWithUnit units} */
110
+ function isTimeWithUnit(value) {
111
+ return isNonEmptyString(value) && /^-?\d*\.?\d+ *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|months?|mo|years?|yrs?|y)?$/i.test(value);
112
+ }
113
+
114
+ //#endregion
115
+ export { isValidTime as a, isTimeWithUnit as i, isLeapYear as n, isValidTimeZoneId as o, isNativeTimeZoneId as r, isValidUTCOffset as s, isDateLike as t };
@@ -15,9 +15,9 @@
15
15
  */
16
16
 
17
17
  import { d as isString, m as isUndefined } from "./primitives-Djsevc69.mjs";
18
- import { b as isFunction, w as isNotEmptyObject } from "./specials-Hq5Ncd6y.mjs";
19
- import { a as normalizeNumber } from "./utilities-DPscNbS1.mjs";
20
- import { G as stableStringify, n as trimString } from "./basics-Dald7J6c.mjs";
18
+ import { b as isFunction, w as isNotEmptyObject } from "./specials-krf7zsqI.mjs";
19
+ import { a as normalizeNumber } from "./utilities-BSv8VbnM.mjs";
20
+ import { G as stableStringify, n as trimString } from "./basics-20lm69yy.mjs";
21
21
 
22
22
  //#region src/object/basics.ts
23
23
  /**
package/dist/guards.cjs CHANGED
@@ -16,13 +16,14 @@
16
16
 
17
17
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
18
18
  const require_primitives = require('./primitives-CBGICrDR.cjs');
19
- const require_guards = require('./guards-DGN95D2h.cjs');
20
- const require_specials = require('./specials-dkYP1Nh2.cjs');
21
- const require_basics = require('./basics-Bb5ovcvz.cjs');
22
- const require_guards$1 = require('./guards-D8Iz6EEy.cjs');
19
+ const require_guards = require('./guards-CrfVwk0-.cjs');
20
+ const require_specials = require('./specials-DU8u108m.cjs');
21
+ const require_guards$1 = require('./guards-CqbVT4L5.cjs');
22
+ const require_basics = require('./basics-byj0VH1c.cjs');
23
+ const require_guards$2 = require('./guards-BSwFQX1M.cjs');
23
24
 
24
- exports.areInvalidNumbers = require_guards$1.areInvalidNumbers;
25
- exports.areNumbersInvalid = require_guards$1.areInvalidNumbers;
25
+ exports.areInvalidNumbers = require_guards$2.areInvalidNumbers;
26
+ exports.areNumbersInvalid = require_guards$2.areInvalidNumbers;
26
27
  exports.doesReturnPromise = require_specials.isReturningPromise;
27
28
  exports.isArray = require_specials.isArray;
28
29
  exports.isArrayOfType = require_specials.isArrayOfType;
@@ -33,22 +34,22 @@ exports.isBinaryString = require_specials.isBinaryString;
33
34
  exports.isBoolean = require_primitives.isBoolean;
34
35
  exports.isBrowser = require_specials.isBrowser;
35
36
  exports.isCSSColor = require_guards.isCSSColor;
36
- exports.isCamelCase = require_guards$1.isCamelCase;
37
+ exports.isCamelCase = require_guards$2.isCamelCase;
37
38
  exports.isDate = require_specials.isDate;
38
- exports.isDateLike = require_basics.isDateLike;
39
+ exports.isDateLike = require_guards$1.isDateLike;
39
40
  exports.isDateString = require_specials.isDateString;
40
41
  exports.isDeepEqual = require_basics.isDeepEqual;
41
42
  exports.isEmail = require_specials.isEmail;
42
43
  exports.isEmailArray = require_specials.isEmailArray;
43
- exports.isEmojiOnly = require_guards$1.isEmojiOnly;
44
+ exports.isEmojiOnly = require_guards$2.isEmojiOnly;
44
45
  exports.isEmptyObject = require_specials.isEmptyObject;
45
46
  exports.isEnvironment = require_specials.isEnvironment;
46
47
  exports.isError = require_specials.isError;
47
- exports.isEven = require_guards$1.isEven;
48
- exports.isEvenNumber = require_guards$1.isEven;
48
+ exports.isEven = require_guards$2.isEven;
49
+ exports.isEvenNumber = require_guards$2.isEven;
49
50
  exports.isExpectedNodeENV = require_specials.isEnvironment;
50
51
  exports.isFalsy = require_primitives.isFalsy;
51
- exports.isFibonacci = require_guards$1.isFibonacci;
52
+ exports.isFibonacci = require_guards$2.isFibonacci;
52
53
  exports.isFunction = require_specials.isFunction;
53
54
  exports.isHSL = require_guards.isHSL;
54
55
  exports.isHSLA = require_guards.isHSLA;
@@ -57,17 +58,17 @@ exports.isHex8 = require_guards.isHex8;
57
58
  exports.isHexString = require_specials.isHexString;
58
59
  exports.isIPAddress = require_specials.isIPAddress;
59
60
  exports.isInteger = require_primitives.isInteger;
60
- exports.isInvalidNumber = require_guards$1.areInvalidNumbers;
61
- exports.isInvalidOrEmptyArray = require_guards$1.isInvalidOrEmptyArray;
61
+ exports.isInvalidNumber = require_guards$2.areInvalidNumbers;
62
+ exports.isInvalidOrEmptyArray = require_guards$2.isInvalidOrEmptyArray;
62
63
  exports.isJSON = require_specials.isJSON;
63
- exports.isKebabCase = require_guards$1.isKebabCase;
64
- exports.isLeapYear = require_basics.isLeapYear;
64
+ exports.isKebabCase = require_guards$2.isKebabCase;
65
+ exports.isLeapYear = require_guards$1.isLeapYear;
65
66
  exports.isMap = require_specials.isMap;
66
67
  exports.isMethod = require_specials.isMethodDescriptor;
67
68
  exports.isMethodDescriptor = require_specials.isMethodDescriptor;
68
- exports.isMultiple = require_guards$1.isMultiple;
69
- exports.isMultipleOf = require_guards$1.isMultiple;
70
- exports.isNativeTimeZoneId = require_basics.isNativeTimeZoneId;
69
+ exports.isMultiple = require_guards$2.isMultiple;
70
+ exports.isMultipleOf = require_guards$2.isMultiple;
71
+ exports.isNativeTimeZoneId = require_guards$1.isNativeTimeZoneId;
71
72
  exports.isNode = require_specials.isNode;
72
73
  exports.isNodeENV = require_specials.isEnvironment;
73
74
  exports.isNodeEnvironment = require_specials.isEnvironment;
@@ -76,22 +77,22 @@ exports.isNormalPrimitive = require_primitives.isNormalPrimitive;
76
77
  exports.isNotEmptyObject = require_specials.isNotEmptyObject;
77
78
  exports.isNull = require_primitives.isNull;
78
79
  exports.isNumber = require_primitives.isNumber;
79
- exports.isNumberInvalid = require_guards$1.areInvalidNumbers;
80
+ exports.isNumberInvalid = require_guards$2.areInvalidNumbers;
80
81
  exports.isNumericString = require_specials.isNumericString;
81
82
  exports.isObject = require_specials.isObject;
82
83
  exports.isObjectEmpty = require_specials.isEmptyObject;
83
84
  exports.isObjectWithKeys = require_specials.isObjectWithKeys;
84
- exports.isOdd = require_guards$1.isOdd;
85
- exports.isOddNumber = require_guards$1.isOdd;
86
- exports.isPalindrome = require_guards$1.isPalindrome;
87
- exports.isPartOfFibonacci = require_guards$1.isFibonacci;
88
- exports.isPartOfFibonacciSeries = require_guards$1.isFibonacci;
89
- exports.isPascalCase = require_guards$1.isPascalCase;
90
- exports.isPerfectSquare = require_guards$1.isPerfectSquare;
85
+ exports.isOdd = require_guards$2.isOdd;
86
+ exports.isOddNumber = require_guards$2.isOdd;
87
+ exports.isPalindrome = require_guards$2.isPalindrome;
88
+ exports.isPartOfFibonacci = require_guards$2.isFibonacci;
89
+ exports.isPartOfFibonacciSeries = require_guards$2.isFibonacci;
90
+ exports.isPascalCase = require_guards$2.isPascalCase;
91
+ exports.isPerfectSquare = require_guards$2.isPerfectSquare;
91
92
  exports.isPhoneNumber = require_specials.isPhoneNumber;
92
93
  exports.isPositiveInteger = require_primitives.isPositiveInteger;
93
- exports.isPrime = require_guards$1.isPrime;
94
- exports.isPrimeNumber = require_guards$1.isPrime;
94
+ exports.isPrime = require_guards$2.isPrime;
95
+ exports.isPrimeNumber = require_guards$2.isPrime;
95
96
  exports.isPrimitive = require_primitives.isPrimitive;
96
97
  exports.isPromise = require_specials.isPromise;
97
98
  exports.isRGB = require_guards.isRGB;
@@ -100,10 +101,10 @@ exports.isRegExp = require_specials.isRegExp;
100
101
  exports.isRegularExpression = require_specials.isRegExp;
101
102
  exports.isReturningPromise = require_specials.isReturningPromise;
102
103
  exports.isSet = require_specials.isSet;
103
- exports.isSnakeCase = require_guards$1.isSnakeCase;
104
+ exports.isSnakeCase = require_guards$2.isSnakeCase;
104
105
  exports.isString = require_primitives.isString;
105
106
  exports.isSymbol = require_primitives.isSymbol;
106
- exports.isTimeWithUnit = require_basics.isTimeWithUnit;
107
+ exports.isTimeWithUnit = require_guards$1.isTimeWithUnit;
107
108
  exports.isTruthy = require_primitives.isTruthy;
108
109
  exports.isURL = require_specials.isURL;
109
110
  exports.isUUID = require_specials.isUUID;
@@ -120,9 +121,9 @@ exports.isValidArray = require_specials.isValidArray;
120
121
  exports.isValidEmail = require_specials.isEmail;
121
122
  exports.isValidJSON = require_specials.isJSON;
122
123
  exports.isValidObject = require_specials.isNotEmptyObject;
123
- exports.isValidTime = require_basics.isValidTime;
124
- exports.isValidTimeString = require_basics.isValidTime;
125
- exports.isValidTimeZoneId = require_basics.isValidTimeZoneId;
124
+ exports.isValidTime = require_guards$1.isValidTime;
125
+ exports.isValidTimeString = require_guards$1.isValidTime;
126
+ exports.isValidTimeZoneId = require_guards$1.isValidTimeZoneId;
126
127
  exports.isValidURL = require_specials.isURL;
127
- exports.isValidUTC = require_basics.isValidUTCOffset;
128
- exports.isValidUTCOffset = require_basics.isValidUTCOffset;
128
+ exports.isValidUTC = require_guards$1.isValidUTCOffset;
129
+ exports.isValidUTCOffset = require_guards$1.isValidUTCOffset;
package/dist/guards.d.cts CHANGED
@@ -15,7 +15,7 @@
15
15
  */
16
16
 
17
17
  import { $ as GenericFn, B as AsyncFunction, Dn as UTCOffset, Ft as DateLike, Z as FalsyPrimitive, _n as TimeWithUnit, at as NormalPrimitive, ct as Numeric, dt as Primitive, jt as ClockTime, nt as Maybe, pt as ValidArray, rt as MethodDescriptor, wt as $TimeZoneIdentifier, xn as TimeZoneIdNative, y as GenericObject } from "./object-DyVg8BFt.cjs";
18
- import { b as RGB, g as HSLA, h as HSL, s as CSSColor, v as Hex6, x as RGBA, y as Hex8 } from "./Color-asKZqwDF.cjs";
18
+ import { b as RGB, g as HSLA, h as HSL, s as CSSColor, v as Hex6, x as RGBA, y as Hex8 } from "./Color-CVRcGmWe.cjs";
19
19
  import { S as isInvalidOrEmptyArray, f as isDeepEqual, v as isPrime } from "./index-D00Uqm9S.cjs";
20
20
  import { C as isURL, S as isPhoneNumber, _ as isEnvironment, a as isUUIDv4, b as isNode, c as isUUIDv7, d as isBase64, f as isBinaryString, g as isEmailArray, h as isEmail, i as isUUIDv3, l as isUUIDv8, m as isDateString, n as isUUIDv1, o as isUUIDv5, p as isBrowser, r as isUUIDv2, s as isUUIDv6, v as isHexString, w as isUUID, x as isNumericString, y as isIPAddress } from "./uuid-CMNRM9NO.cjs";
21
21
 
package/dist/guards.d.mts CHANGED
@@ -15,7 +15,7 @@
15
15
  */
16
16
 
17
17
  import { $ as GenericFn, B as AsyncFunction, Dn as UTCOffset, Ft as DateLike, Z as FalsyPrimitive, _n as TimeWithUnit, at as NormalPrimitive, ct as Numeric, dt as Primitive, jt as ClockTime, nt as Maybe, pt as ValidArray, rt as MethodDescriptor, wt as $TimeZoneIdentifier, xn as TimeZoneIdNative, y as GenericObject } from "./object-DyVg8BFt.mjs";
18
- import { b as RGB, g as HSLA, h as HSL, s as CSSColor, v as Hex6, x as RGBA, y as Hex8 } from "./Color-B2SgCGbm.mjs";
18
+ import { b as RGB, g as HSLA, h as HSL, s as CSSColor, v as Hex6, x as RGBA, y as Hex8 } from "./Color-CInCJvH7.mjs";
19
19
  import { S as isInvalidOrEmptyArray, f as isDeepEqual, v as isPrime } from "./index-BbBnKdBb.mjs";
20
20
  import { C as isURL, S as isPhoneNumber, _ as isEnvironment, a as isUUIDv4, b as isNode, c as isUUIDv7, d as isBase64, f as isBinaryString, g as isEmailArray, h as isEmail, i as isUUIDv3, l as isUUIDv8, m as isDateString, n as isUUIDv1, o as isUUIDv5, p as isBrowser, r as isUUIDv2, s as isUUIDv6, v as isHexString, w as isUUID, x as isNumericString, y as isIPAddress } from "./uuid-DvQsIl9p.mjs";
21
21
 
package/dist/guards.mjs CHANGED
@@ -15,9 +15,10 @@
15
15
  */
16
16
 
17
17
  import { a as isNonEmptyString, c as isNumber, d as isString, f as isSymbol, i as isInteger, l as isPositiveInteger, m as isUndefined, n as isBoolean, o as isNormalPrimitive, p as isTruthy, r as isFalsy, s as isNull, t as isBigInt, u as isPrimitive } from "./primitives-Djsevc69.mjs";
18
- import { a as isHex8, i as isHex6, n as isHSL, o as isRGB, r as isHSLA, s as isRGBA, t as isCSSColor } from "./guards-DziDBD0p.mjs";
19
- import { A as isSet, C as isMethodDescriptor, D as isPromise, E as isObjectWithKeys, O as isRegExp, S as isMap, T as isObject, _ as isDate, a as isEmail, b as isFunction, c as isHexString, d as isNumericString, f as isPhoneNumber, g as isArrayOfType, h as isArray, i as isDateString, j as isValidArray, k as isReturningPromise, l as isIPAddress, m as isUUID, n as isBinaryString, o as isEmailArray, p as isURL, r as isBrowser, s as isEnvironment, t as isBase64, u as isNode, v as isEmptyObject, w as isNotEmptyObject, x as isJSON, y as isError } from "./specials-Hq5Ncd6y.mjs";
20
- import { $ as isValidTimeZoneId, J as isDateLike, Q as isValidTime, U as isDeepEqual, X as isNativeTimeZoneId, Y as isLeapYear, Z as isTimeWithUnit, a as isUUIDv1, c as isUUIDv4, d as isUUIDv7, et as isValidUTCOffset, f as isUUIDv8, l as isUUIDv5, o as isUUIDv2, s as isUUIDv3, u as isUUIDv6 } from "./basics-Dald7J6c.mjs";
21
- import { E as isInvalidOrEmptyArray, S as isPerfectSquare, _ as areInvalidNumbers, a as isPascalCase, b as isMultiple, g as isPrime, i as isPalindrome, n as isEmojiOnly, o as isSnakeCase, r as isKebabCase, t as isCamelCase, v as isEven, x as isOdd, y as isFibonacci } from "./guards-D1et4U32.mjs";
18
+ import { a as isHex8, i as isHex6, n as isHSL, o as isRGB, r as isHSLA, s as isRGBA, t as isCSSColor } from "./guards-CNG9gnvL.mjs";
19
+ import { A as isSet, C as isMethodDescriptor, D as isPromise, E as isObjectWithKeys, O as isRegExp, S as isMap, T as isObject, _ as isDate, a as isEmail, b as isFunction, c as isHexString, d as isNumericString, f as isPhoneNumber, g as isArrayOfType, h as isArray, i as isDateString, j as isValidArray, k as isReturningPromise, l as isIPAddress, m as isUUID, n as isBinaryString, o as isEmailArray, p as isURL, r as isBrowser, s as isEnvironment, t as isBase64, u as isNode, v as isEmptyObject, w as isNotEmptyObject, x as isJSON, y as isError } from "./specials-krf7zsqI.mjs";
20
+ import { a as isValidTime, i as isTimeWithUnit, n as isLeapYear, o as isValidTimeZoneId, r as isNativeTimeZoneId, s as isValidUTCOffset, t as isDateLike } from "./guards-DKGBsd6x.mjs";
21
+ import { U as isDeepEqual, a as isUUIDv1, c as isUUIDv4, d as isUUIDv7, f as isUUIDv8, l as isUUIDv5, o as isUUIDv2, s as isUUIDv3, u as isUUIDv6 } from "./basics-20lm69yy.mjs";
22
+ import { E as isInvalidOrEmptyArray, S as isPerfectSquare, _ as areInvalidNumbers, a as isPascalCase, b as isMultiple, g as isPrime, i as isPalindrome, n as isEmojiOnly, o as isSnakeCase, r as isKebabCase, t as isCamelCase, v as isEven, x as isOdd, y as isFibonacci } from "./guards-Dc9MB9on.mjs";
22
23
 
23
24
  export { areInvalidNumbers, areInvalidNumbers as areNumbersInvalid, areInvalidNumbers as isInvalidNumber, areInvalidNumbers as isNumberInvalid, isReturningPromise as doesReturnPromise, isReturningPromise, isArray, isArrayOfType, isValidArray as isArrayWithLength, isValidArray, isBase64, isBigInt, isBinaryString, isBoolean, isBrowser, isCSSColor, isCamelCase, isDate, isDateLike, isDateString, isDeepEqual, isEmail, isEmail as isValidEmail, isEmailArray, isEmojiOnly, isEmptyObject, isEmptyObject as isObjectEmpty, isEnvironment, isEnvironment as isExpectedNodeENV, isEnvironment as isNodeENV, isEnvironment as isNodeEnvironment, isError, isEven, isEven as isEvenNumber, isFalsy, isFibonacci, isFibonacci as isPartOfFibonacci, isFibonacci as isPartOfFibonacciSeries, isFunction, isHSL, isHSLA, isHex6, isHex8, isHexString, isIPAddress, isInteger, isInvalidOrEmptyArray, isJSON, isJSON as isValidJSON, isKebabCase, isLeapYear, isMap, isMethodDescriptor as isMethod, isMethodDescriptor, isMultiple, isMultiple as isMultipleOf, isNativeTimeZoneId, isNode, isNonEmptyString, isNormalPrimitive, isNotEmptyObject, isNotEmptyObject as isValidObject, isNull, isNumber, isNumericString, isObject, isObjectWithKeys, isOdd, isOdd as isOddNumber, isPalindrome, isPascalCase, isPerfectSquare, isPhoneNumber, isPositiveInteger, isPrime, isPrime as isPrimeNumber, isPrimitive, isPromise, isRGB, isRGBA, isRegExp, isRegExp as isRegularExpression, isSet, isSnakeCase, isString, isSymbol, isTimeWithUnit, isTruthy, isURL, isURL as isValidURL, isUUID, isUUIDv1, isUUIDv2, isUUIDv3, isUUIDv4, isUUIDv5, isUUIDv6, isUUIDv7, isUUIDv8, isUndefined, isValidTime, isValidTime as isValidTimeString, isValidTimeZoneId, isValidUTCOffset as isValidUTC, isValidUTCOffset };