inferred-types 0.51.4 → 0.51.5

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.
package/dist/index.cjs CHANGED
@@ -381,6 +381,13 @@ __export(inferred_types_exports, {
381
381
  isIso3166Alpha3: () => isIso3166Alpha3,
382
382
  isIso3166CountryCode: () => isIso3166CountryCode,
383
383
  isIso3166CountryName: () => isIso3166CountryName,
384
+ isIsoDate: () => isIsoDate,
385
+ isIsoDateTime: () => isIsoDateTime,
386
+ isIsoExplicitDate: () => isIsoExplicitDate,
387
+ isIsoExplicitTime: () => isIsoExplicitTime,
388
+ isIsoImplicitDate: () => isIsoImplicitDate,
389
+ isIsoImplicitTime: () => isIsoImplicitTime,
390
+ isIsoTime: () => isIsoTime,
384
391
  isItalianNewsUrl: () => isItalianNewsUrl,
385
392
  isJapaneseNewsUrl: () => isJapaneseNewsUrl,
386
393
  isKrogersUrl: () => isKrogersUrl,
@@ -4609,6 +4616,59 @@ var isNewsUrl = (val) => {
4609
4616
  return isAustralianNewsUrl(val) || isBelgiumNewsUrl(val) || isCanadianNewsUrl(val) || isDanishNewsUrl(val) || isDutchNewsUrl(val) || isFrenchNewsUrl(val) || isGermanNewsUrl(val) || isIndianNewsUrl(val) || isItalianNewsUrl(val) || isJapaneseNewsUrl(val) || isMexicanNewsUrl(val) || isNorwegianNewsUrl(val) || isSouthKoreanNewsUrl(val) || isSpanishNewsUrl(val) || isSwissNewsUrl(val) || isTurkishNewsUrl(val) || isUkNewsUrl(val) || isUsNewsUrl(val);
4610
4617
  };
4611
4618
 
4619
+ // src/runtime/type-guards/date-time/isDateTime.ts
4620
+ var isIsoDateTime = (val) => {
4621
+ return isString(val) && val.includes(":") && val.includes("-") && val.split("-").length === 3 && val.split(":").length > 1;
4622
+ };
4623
+
4624
+ // src/runtime/type-guards/date-time/isIsoTime.ts
4625
+ var isIsoExplicitTime = (val) => {
4626
+ if (isString(val)) {
4627
+ const parts = stripLeading(stripAfter(val, "Z"), "T").split(/[:.]/).map((i) => Number(i));
4628
+ return val.startsWith("T") && val.includes(":") && val.split(":").length === 3 && parts[0] >= 0 && parts[0] <= 23 && parts[1] >= 0 && parts[1] <= 59;
4629
+ } else {
4630
+ return false;
4631
+ }
4632
+ };
4633
+ var isIsoImplicitTime = (val) => {
4634
+ if (isString(val)) {
4635
+ const parts = stripAfter(val, "Z").split(/[:.]/).map((i) => Number(i));
4636
+ return val.includes(":") && val.split(":").length === 3 && parts[0] >= 0 && parts[0] <= 23 && parts[1] >= 0 && parts[1] <= 59;
4637
+ } else {
4638
+ return false;
4639
+ }
4640
+ };
4641
+ var isIsoTime = (val) => {
4642
+ return isIsoExplicitTime(val) || isIsoImplicitTime(val);
4643
+ };
4644
+
4645
+ // src/runtime/type-guards/date-time/isIsoDate.ts
4646
+ var isIsoExplicitDate = (val) => {
4647
+ if (isString(val)) {
4648
+ const parts = val.split("-").map((i) => Number(i));
4649
+ return val.includes("-") ? val.split("-").every((i) => isNumberLike(i)) ? parts[0] >= 0 && parts[0] <= 9999 && parts[1] >= 1 && parts[1] <= 12 && parts[2] >= 1 && parts[2] <= 31 : false : false;
4650
+ } else {
4651
+ return false;
4652
+ }
4653
+ };
4654
+ var isIsoImplicitDate = (val) => {
4655
+ if (isString(val) && val.length === 8 && isNumberLike(val)) {
4656
+ const year = Number(val.slice(0, 4));
4657
+ const month = Number(val.slice(4, 6));
4658
+ const date = Number(val.slice(6, 8));
4659
+ return year >= 0 && year <= 9999 && month >= 1 && month <= 12 && date >= 1 && date <= 31;
4660
+ } else {
4661
+ return false;
4662
+ }
4663
+ };
4664
+ var isIsoDate = (val) => {
4665
+ if (isString(val)) {
4666
+ return val.includes("-") ? isIsoExplicitDate(val) : isIsoImplicitDate(val);
4667
+ } else {
4668
+ return false;
4669
+ }
4670
+ };
4671
+
4612
4672
  // src/runtime/literals/stripTrailing.ts
4613
4673
  function stripTrailing(content, ...strip) {
4614
4674
  let output = String(content);
@@ -6066,6 +6126,13 @@ var asVueRef = (value) => ({
6066
6126
  isIso3166Alpha3,
6067
6127
  isIso3166CountryCode,
6068
6128
  isIso3166CountryName,
6129
+ isIsoDate,
6130
+ isIsoDateTime,
6131
+ isIsoExplicitDate,
6132
+ isIsoExplicitTime,
6133
+ isIsoImplicitDate,
6134
+ isIsoImplicitTime,
6135
+ isIsoTime,
6069
6136
  isItalianNewsUrl,
6070
6137
  isJapaneseNewsUrl,
6071
6138
  isKrogersUrl,
package/dist/index.js CHANGED
@@ -4006,6 +4006,59 @@ var isNewsUrl = (val) => {
4006
4006
  return isAustralianNewsUrl(val) || isBelgiumNewsUrl(val) || isCanadianNewsUrl(val) || isDanishNewsUrl(val) || isDutchNewsUrl(val) || isFrenchNewsUrl(val) || isGermanNewsUrl(val) || isIndianNewsUrl(val) || isItalianNewsUrl(val) || isJapaneseNewsUrl(val) || isMexicanNewsUrl(val) || isNorwegianNewsUrl(val) || isSouthKoreanNewsUrl(val) || isSpanishNewsUrl(val) || isSwissNewsUrl(val) || isTurkishNewsUrl(val) || isUkNewsUrl(val) || isUsNewsUrl(val);
4007
4007
  };
4008
4008
 
4009
+ // src/runtime/type-guards/date-time/isDateTime.ts
4010
+ var isIsoDateTime = (val) => {
4011
+ return isString(val) && val.includes(":") && val.includes("-") && val.split("-").length === 3 && val.split(":").length > 1;
4012
+ };
4013
+
4014
+ // src/runtime/type-guards/date-time/isIsoTime.ts
4015
+ var isIsoExplicitTime = (val) => {
4016
+ if (isString(val)) {
4017
+ const parts = stripLeading(stripAfter(val, "Z"), "T").split(/[:.]/).map((i) => Number(i));
4018
+ return val.startsWith("T") && val.includes(":") && val.split(":").length === 3 && parts[0] >= 0 && parts[0] <= 23 && parts[1] >= 0 && parts[1] <= 59;
4019
+ } else {
4020
+ return false;
4021
+ }
4022
+ };
4023
+ var isIsoImplicitTime = (val) => {
4024
+ if (isString(val)) {
4025
+ const parts = stripAfter(val, "Z").split(/[:.]/).map((i) => Number(i));
4026
+ return val.includes(":") && val.split(":").length === 3 && parts[0] >= 0 && parts[0] <= 23 && parts[1] >= 0 && parts[1] <= 59;
4027
+ } else {
4028
+ return false;
4029
+ }
4030
+ };
4031
+ var isIsoTime = (val) => {
4032
+ return isIsoExplicitTime(val) || isIsoImplicitTime(val);
4033
+ };
4034
+
4035
+ // src/runtime/type-guards/date-time/isIsoDate.ts
4036
+ var isIsoExplicitDate = (val) => {
4037
+ if (isString(val)) {
4038
+ const parts = val.split("-").map((i) => Number(i));
4039
+ return val.includes("-") ? val.split("-").every((i) => isNumberLike(i)) ? parts[0] >= 0 && parts[0] <= 9999 && parts[1] >= 1 && parts[1] <= 12 && parts[2] >= 1 && parts[2] <= 31 : false : false;
4040
+ } else {
4041
+ return false;
4042
+ }
4043
+ };
4044
+ var isIsoImplicitDate = (val) => {
4045
+ if (isString(val) && val.length === 8 && isNumberLike(val)) {
4046
+ const year = Number(val.slice(0, 4));
4047
+ const month = Number(val.slice(4, 6));
4048
+ const date = Number(val.slice(6, 8));
4049
+ return year >= 0 && year <= 9999 && month >= 1 && month <= 12 && date >= 1 && date <= 31;
4050
+ } else {
4051
+ return false;
4052
+ }
4053
+ };
4054
+ var isIsoDate = (val) => {
4055
+ if (isString(val)) {
4056
+ return val.includes("-") ? isIsoExplicitDate(val) : isIsoImplicitDate(val);
4057
+ } else {
4058
+ return false;
4059
+ }
4060
+ };
4061
+
4009
4062
  // src/runtime/literals/stripTrailing.ts
4010
4063
  function stripTrailing(content, ...strip) {
4011
4064
  let output = String(content);
@@ -5462,6 +5515,13 @@ export {
5462
5515
  isIso3166Alpha3,
5463
5516
  isIso3166CountryCode,
5464
5517
  isIso3166CountryName,
5518
+ isIsoDate,
5519
+ isIsoDateTime,
5520
+ isIsoExplicitDate,
5521
+ isIsoExplicitTime,
5522
+ isIsoImplicitDate,
5523
+ isIsoImplicitTime,
5524
+ isIsoTime,
5465
5525
  isItalianNewsUrl,
5466
5526
  isJapaneseNewsUrl,
5467
5527
  isKrogersUrl,