inferred-types 0.54.9 → 0.55.1
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/modules/constants/dist/index.cjs +118 -1
- package/modules/constants/dist/index.cjs.map +1 -1
- package/modules/constants/dist/index.d.ts +29 -1
- package/modules/constants/dist/index.js +113 -1
- package/modules/constants/dist/index.js.map +1 -1
- package/modules/inferred-types/dist/index.cjs +293 -16
- package/modules/inferred-types/dist/index.cjs.map +1 -1
- package/modules/inferred-types/dist/index.d.ts +21440 -20778
- package/modules/inferred-types/dist/index.js +277 -16
- package/modules/inferred-types/dist/index.js.map +1 -1
- package/modules/runtime/dist/index.cjs +187 -15
- package/modules/runtime/dist/index.cjs.map +1 -1
- package/modules/runtime/dist/index.d.ts +5420 -5137
- package/modules/runtime/dist/index.js +176 -15
- package/modules/runtime/dist/index.js.map +1 -1
- package/modules/types/dist/index.d.ts +9684 -9333
- package/package.json +3 -4
|
@@ -93,11 +93,15 @@ __export(src_exports, {
|
|
|
93
93
|
MARKED: () => MARKED,
|
|
94
94
|
MASS_METRICS_LOOKUP: () => MASS_METRICS_LOOKUP,
|
|
95
95
|
MEXICAN_NEWS: () => MEXICAN_NEWS,
|
|
96
|
+
MIME_TYPES: () => MIME_TYPES,
|
|
96
97
|
MONTH_ABBR: () => MONTH_ABBR,
|
|
97
98
|
MONTH_NAME: () => MONTH_NAME,
|
|
98
99
|
MapCardinality: () => MapCardinality,
|
|
99
100
|
NARROW_CONTAINER_TYPE_KINDS: () => NARROW_CONTAINER_TYPE_KINDS,
|
|
101
|
+
NETWORK_PROTOCOL: () => NETWORK_PROTOCOL,
|
|
102
|
+
NETWORK_PROTOCOL_INSECURE: () => NETWORK_PROTOCOL_INSECURE,
|
|
100
103
|
NETWORK_PROTOCOL_LOOKUP: () => NETWORK_PROTOCOL_LOOKUP,
|
|
104
|
+
NETWORK_PROTOCOL_SECURE: () => NETWORK_PROTOCOL_SECURE,
|
|
101
105
|
NIKE_DNS: () => NIKE_DNS,
|
|
102
106
|
NON_ZERO_NUMERIC_CHAR: () => NON_ZERO_NUMERIC_CHAR,
|
|
103
107
|
NORWEGIAN_NEWS: () => NORWEGIAN_NEWS,
|
|
@@ -114,6 +118,7 @@ __export(src_exports, {
|
|
|
114
118
|
PLURAL_EXCEPTIONS_OLD: () => PLURAL_EXCEPTIONS_OLD,
|
|
115
119
|
POWER_METRICS_LOOKUP: () => POWER_METRICS_LOOKUP,
|
|
116
120
|
PRESSURE_METRICS_LOOKUP: () => PRESSURE_METRICS_LOOKUP,
|
|
121
|
+
PROTOCOL_DEFAULT_PORTS: () => PROTOCOL_DEFAULT_PORTS,
|
|
117
122
|
PROXMOX_CT_STATE: () => PROXMOX_CT_STATE,
|
|
118
123
|
REPO_PAGE_TYPES: () => REPO_PAGE_TYPES,
|
|
119
124
|
REPO_SOURCES: () => REPO_SOURCES,
|
|
@@ -277,6 +282,9 @@ __export(src_exports, {
|
|
|
277
282
|
getTokenKind: () => getTokenKind,
|
|
278
283
|
getTomorrow: () => getTomorrow,
|
|
279
284
|
getTypeSubtype: () => getTypeSubtype,
|
|
285
|
+
getUrlBase: () => getUrlBase,
|
|
286
|
+
getUrlDefaultPort: () => getUrlDefaultPort,
|
|
287
|
+
getUrlDynamics: () => getUrlDynamics,
|
|
280
288
|
getUrlPath: () => getUrlPath,
|
|
281
289
|
getUrlPort: () => getUrlPort,
|
|
282
290
|
getUrlProtocol: () => getUrlProtocol,
|
|
@@ -289,6 +297,9 @@ __export(src_exports, {
|
|
|
289
297
|
hasDefaultValue: () => hasDefaultValue,
|
|
290
298
|
hasIndexOf: () => hasIndexOf,
|
|
291
299
|
hasKeys: () => hasKeys,
|
|
300
|
+
hasOverlappingKeys: () => hasOverlappingKeys,
|
|
301
|
+
hasProtocol: () => hasProtocol,
|
|
302
|
+
hasProtocolPrefix: () => hasProtocolPrefix,
|
|
292
303
|
hasUrlPort: () => hasUrlPort,
|
|
293
304
|
hasUrlQueryParameter: () => hasUrlQueryParameter,
|
|
294
305
|
hasWhiteSpace: () => hasWhiteSpace,
|
|
@@ -354,6 +365,7 @@ __export(src_exports, {
|
|
|
354
365
|
isCountryCode3: () => isCountryCode3,
|
|
355
366
|
isCountryName: () => isCountryName,
|
|
356
367
|
isCssAspectRatio: () => isCssAspectRatio,
|
|
368
|
+
isCsv: () => isCsv,
|
|
357
369
|
isCurrentMetric: () => isCurrentMetric,
|
|
358
370
|
isCurrentUom: () => isCurrentUom,
|
|
359
371
|
isCvsUrl: () => isCvsUrl,
|
|
@@ -369,6 +381,7 @@ __export(src_exports, {
|
|
|
369
381
|
isDutchNewsUrl: () => isDutchNewsUrl,
|
|
370
382
|
isEbayUrl: () => isEbayUrl,
|
|
371
383
|
isEmail: () => isEmail,
|
|
384
|
+
isEmpty: () => isEmpty,
|
|
372
385
|
isEnergyMetric: () => isEnergyMetric,
|
|
373
386
|
isEnergyUom: () => isEnergyUom,
|
|
374
387
|
isEqual: () => isEqual,
|
|
@@ -457,6 +470,8 @@ __export(src_exports, {
|
|
|
457
470
|
isPowerUom: () => isPowerUom,
|
|
458
471
|
isPressureMetric: () => isPressureMetric,
|
|
459
472
|
isPressureUom: () => isPressureUom,
|
|
473
|
+
isProtocol: () => isProtocol,
|
|
474
|
+
isProtocolPrefix: () => isProtocolPrefix,
|
|
460
475
|
isReadonlyArray: () => isReadonlyArray,
|
|
461
476
|
isRecordToken: () => isRecordToken,
|
|
462
477
|
isRef: () => isRef,
|
|
@@ -535,6 +550,7 @@ __export(src_exports, {
|
|
|
535
550
|
isUsNewsUrl: () => isUsNewsUrl,
|
|
536
551
|
isUsStateAbbreviation: () => isUsStateAbbreviation,
|
|
537
552
|
isUsStateName: () => isUsStateName,
|
|
553
|
+
isVariable: () => isVariable,
|
|
538
554
|
isVoltageMetric: () => isVoltageMetric,
|
|
539
555
|
isVoltageUom: () => isVoltageUom,
|
|
540
556
|
isVolumeMetric: () => isVolumeMetric,
|
|
@@ -1178,6 +1194,73 @@ var HASH_TABLE_CHAR = {
|
|
|
1178
1194
|
...HASH_TABLE_SPECIAL
|
|
1179
1195
|
};
|
|
1180
1196
|
var HASH_TABLE_OTHER = "999";
|
|
1197
|
+
var MIME_TYPES = [
|
|
1198
|
+
// Application MIME Types
|
|
1199
|
+
"application/json",
|
|
1200
|
+
"application/xml",
|
|
1201
|
+
"application/javascript",
|
|
1202
|
+
"application/pdf",
|
|
1203
|
+
"application/ld+json",
|
|
1204
|
+
"application/octet-stream",
|
|
1205
|
+
"application/x-www-form-urlencoded",
|
|
1206
|
+
"application/vnd.api+json",
|
|
1207
|
+
"application/msword",
|
|
1208
|
+
"application/vnd.openxmlformats-officedocument.wordprocessingml.document",
|
|
1209
|
+
"application/vnd.ms-excel",
|
|
1210
|
+
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
|
|
1211
|
+
"application/vnd.ms-powerpoint",
|
|
1212
|
+
"application/vnd.openxmlformats-officedocument.presentationml.presentation",
|
|
1213
|
+
// Text MIME Types
|
|
1214
|
+
"text/plain",
|
|
1215
|
+
"text/html",
|
|
1216
|
+
"text/css",
|
|
1217
|
+
"text/csv",
|
|
1218
|
+
"text/javascript",
|
|
1219
|
+
"text/markdown",
|
|
1220
|
+
// Image MIME Types
|
|
1221
|
+
"image/jpeg",
|
|
1222
|
+
"image/png",
|
|
1223
|
+
"image/gif",
|
|
1224
|
+
"image/bmp",
|
|
1225
|
+
"image/webp",
|
|
1226
|
+
"image/svg+xml",
|
|
1227
|
+
"image/tiff",
|
|
1228
|
+
// Audio MIME Types
|
|
1229
|
+
"audio/mpeg",
|
|
1230
|
+
"audio/ogg",
|
|
1231
|
+
"audio/wav",
|
|
1232
|
+
"audio/webm",
|
|
1233
|
+
"audio/flac",
|
|
1234
|
+
// Video MIME Types
|
|
1235
|
+
"video/mp4",
|
|
1236
|
+
"video/mpeg",
|
|
1237
|
+
"video/ogg",
|
|
1238
|
+
"video/webm",
|
|
1239
|
+
"video/quicktime",
|
|
1240
|
+
// Multipart MIME Types
|
|
1241
|
+
"multipart/form-data",
|
|
1242
|
+
"multipart/mixed",
|
|
1243
|
+
"multipart/alternative",
|
|
1244
|
+
"multipart/related",
|
|
1245
|
+
// Font MIME Types
|
|
1246
|
+
"font/woff",
|
|
1247
|
+
"font/woff2",
|
|
1248
|
+
"font/ttf",
|
|
1249
|
+
"font/otf",
|
|
1250
|
+
// Other Common MIME Types
|
|
1251
|
+
"application/rss+xml",
|
|
1252
|
+
"application/atom+xml",
|
|
1253
|
+
"application/x-pkcs12",
|
|
1254
|
+
"application/x-shockwave-flash",
|
|
1255
|
+
"application/x-www-form-urlencoded",
|
|
1256
|
+
"application/x-font-ttf",
|
|
1257
|
+
"application/x-font-opentype",
|
|
1258
|
+
"application/x-font-woff",
|
|
1259
|
+
"application/x-font-woff2",
|
|
1260
|
+
"application/vnd.rar",
|
|
1261
|
+
"application/zip",
|
|
1262
|
+
"application/x-7z-compressed"
|
|
1263
|
+
];
|
|
1181
1264
|
var IMAGE_FORMAT_LOOKUP = [
|
|
1182
1265
|
{ ext: "jpg", webFormat: true, other_ext: ["jpeg"] },
|
|
1183
1266
|
{ ext: "png", webFormat: true, other_ext: [] },
|
|
@@ -1518,13 +1601,51 @@ var IPv6 = {
|
|
|
1518
1601
|
var IPv4 = {
|
|
1519
1602
|
Loopback: "127.0.0.1"
|
|
1520
1603
|
};
|
|
1604
|
+
var NETWORK_PROTOCOL_INSECURE = [
|
|
1605
|
+
"http",
|
|
1606
|
+
"ftp",
|
|
1607
|
+
"ws",
|
|
1608
|
+
"dns",
|
|
1609
|
+
"telnet",
|
|
1610
|
+
"imap",
|
|
1611
|
+
"pop3",
|
|
1612
|
+
"smtp"
|
|
1613
|
+
];
|
|
1614
|
+
var NETWORK_PROTOCOL_SECURE = [
|
|
1615
|
+
"https",
|
|
1616
|
+
"sftp",
|
|
1617
|
+
"wss",
|
|
1618
|
+
"sdns",
|
|
1619
|
+
"ssh"
|
|
1620
|
+
];
|
|
1621
|
+
var NETWORK_PROTOCOL = [
|
|
1622
|
+
...NETWORK_PROTOCOL_INSECURE,
|
|
1623
|
+
...NETWORK_PROTOCOL_SECURE
|
|
1624
|
+
];
|
|
1521
1625
|
var NETWORK_PROTOCOL_LOOKUP = {
|
|
1522
1626
|
http: ["http", "https"],
|
|
1523
1627
|
ftp: ["ftp", "sftp"],
|
|
1524
1628
|
file: ["", "file"],
|
|
1525
1629
|
ws: ["ws", "wss"],
|
|
1526
1630
|
ssh: ["", "ssh"],
|
|
1527
|
-
scp: ["", "scp"]
|
|
1631
|
+
scp: ["", "scp"],
|
|
1632
|
+
telnet: ["telnet", ""],
|
|
1633
|
+
dns: ["dns", "sdns"]
|
|
1634
|
+
};
|
|
1635
|
+
var PROTOCOL_DEFAULT_PORTS = {
|
|
1636
|
+
http: 80,
|
|
1637
|
+
https: 443,
|
|
1638
|
+
ws: 80,
|
|
1639
|
+
wss: 443,
|
|
1640
|
+
ssh: 22,
|
|
1641
|
+
telnet: 23,
|
|
1642
|
+
dns: 53,
|
|
1643
|
+
sdns: 853,
|
|
1644
|
+
smtp: 25,
|
|
1645
|
+
imap: 142,
|
|
1646
|
+
pop3: 110,
|
|
1647
|
+
ftp: 21,
|
|
1648
|
+
sftp: 22
|
|
1528
1649
|
};
|
|
1529
1650
|
var TOP_LEVEL_DOMAINS = [
|
|
1530
1651
|
"com",
|
|
@@ -3826,13 +3947,51 @@ var AREA_METRICS_LOOKUP2 = [
|
|
|
3826
3947
|
{ abbrev: "acre", name: "acre" },
|
|
3827
3948
|
{ abbrev: "ha", name: "hectare" }
|
|
3828
3949
|
];
|
|
3950
|
+
var NETWORK_PROTOCOL_INSECURE2 = [
|
|
3951
|
+
"http",
|
|
3952
|
+
"ftp",
|
|
3953
|
+
"ws",
|
|
3954
|
+
"dns",
|
|
3955
|
+
"telnet",
|
|
3956
|
+
"imap",
|
|
3957
|
+
"pop3",
|
|
3958
|
+
"smtp"
|
|
3959
|
+
];
|
|
3960
|
+
var NETWORK_PROTOCOL_SECURE2 = [
|
|
3961
|
+
"https",
|
|
3962
|
+
"sftp",
|
|
3963
|
+
"wss",
|
|
3964
|
+
"sdns",
|
|
3965
|
+
"ssh"
|
|
3966
|
+
];
|
|
3967
|
+
var NETWORK_PROTOCOL2 = [
|
|
3968
|
+
...NETWORK_PROTOCOL_INSECURE2,
|
|
3969
|
+
...NETWORK_PROTOCOL_SECURE2
|
|
3970
|
+
];
|
|
3829
3971
|
var NETWORK_PROTOCOL_LOOKUP2 = {
|
|
3830
3972
|
http: ["http", "https"],
|
|
3831
3973
|
ftp: ["ftp", "sftp"],
|
|
3832
3974
|
file: ["", "file"],
|
|
3833
3975
|
ws: ["ws", "wss"],
|
|
3834
3976
|
ssh: ["", "ssh"],
|
|
3835
|
-
scp: ["", "scp"]
|
|
3977
|
+
scp: ["", "scp"],
|
|
3978
|
+
telnet: ["telnet", ""],
|
|
3979
|
+
dns: ["dns", "sdns"]
|
|
3980
|
+
};
|
|
3981
|
+
var PROTOCOL_DEFAULT_PORTS2 = {
|
|
3982
|
+
http: 80,
|
|
3983
|
+
https: 443,
|
|
3984
|
+
ws: 80,
|
|
3985
|
+
wss: 443,
|
|
3986
|
+
ssh: 22,
|
|
3987
|
+
telnet: 23,
|
|
3988
|
+
dns: 53,
|
|
3989
|
+
sdns: 853,
|
|
3990
|
+
smtp: 25,
|
|
3991
|
+
imap: 142,
|
|
3992
|
+
pop3: 110,
|
|
3993
|
+
ftp: 21,
|
|
3994
|
+
sftp: 22
|
|
3836
3995
|
};
|
|
3837
3996
|
var Never2 = createConstant2("never");
|
|
3838
3997
|
var US_NEWS2 = [
|
|
@@ -5493,7 +5652,7 @@ var filter = "NOT READY";
|
|
|
5493
5652
|
function find(list2, deref = null) {
|
|
5494
5653
|
return (comparator) => {
|
|
5495
5654
|
return list2.find((i) => {
|
|
5496
|
-
const val = deref ?
|
|
5655
|
+
const val = deref ? isObject(i) || isArray(i) ? deref in i ? i[deref] : void 0 : i : i;
|
|
5497
5656
|
return val === comparator;
|
|
5498
5657
|
});
|
|
5499
5658
|
};
|
|
@@ -6167,6 +6326,9 @@ var isRatio = (val) => /\d{1,4}\s*\/\s*\d{1,4}/.test(val);
|
|
|
6167
6326
|
function isCssAspectRatio(val) {
|
|
6168
6327
|
return isString(val) && val.split(/\s+/).every((i) => tokens.includes(i) || isRatio(i));
|
|
6169
6328
|
}
|
|
6329
|
+
function isCsv(val) {
|
|
6330
|
+
return isString(val) && val.includes(",") && !val.startsWith(",");
|
|
6331
|
+
}
|
|
6170
6332
|
function isDefined(value) {
|
|
6171
6333
|
return typeof value !== "undefined";
|
|
6172
6334
|
}
|
|
@@ -6183,6 +6345,9 @@ function isEmail(val) {
|
|
|
6183
6345
|
const firstChar = val[0].toLowerCase();
|
|
6184
6346
|
return isString(val) && (LOWER_ALPHA_CHARS2.includes(firstChar) && parts.length === 2 && domain.length >= 1 && tld.length >= 2);
|
|
6185
6347
|
}
|
|
6348
|
+
function isEmpty(val) {
|
|
6349
|
+
return isUndefined(val) || isNull(val) || isString(val) && val.length === 0 || isObject(val) && Object.keys(val).length === 0 || isArray(val) && val.length === 0;
|
|
6350
|
+
}
|
|
6186
6351
|
function isErrorCondition(value, kind = null) {
|
|
6187
6352
|
return isObject(value) && "__kind" in value && value.__kind === "ErrorCondition" && "kind" in value ? kind !== null ? value.kind === kind : true : false;
|
|
6188
6353
|
}
|
|
@@ -6220,7 +6385,7 @@ function isPhoneNumber(val) {
|
|
|
6220
6385
|
const svelte = String(val).trim();
|
|
6221
6386
|
const chars = svelte.split("");
|
|
6222
6387
|
const numeric = retainChars(svelte, ...NUMERIC_CHAR2);
|
|
6223
|
-
const
|
|
6388
|
+
const valid2 = ["+", "(", ...NUMERIC_CHAR2];
|
|
6224
6389
|
const nothing = stripChars(svelte, ...[
|
|
6225
6390
|
...NUMERIC_CHAR2,
|
|
6226
6391
|
...WHITESPACE_CHARS2,
|
|
@@ -6230,7 +6395,7 @@ function isPhoneNumber(val) {
|
|
|
6230
6395
|
".",
|
|
6231
6396
|
"-"
|
|
6232
6397
|
]);
|
|
6233
|
-
return chars.every((i) =>
|
|
6398
|
+
return chars.every((i) => valid2.includes(i)) && svelte.startsWith(`+`) ? numeric.length >= 8 : svelte.startsWith(`00`) ? numeric.length >= 10 : numeric.length >= 7 && nothing === "";
|
|
6234
6399
|
}
|
|
6235
6400
|
function isReadonlyArray(value) {
|
|
6236
6401
|
return Array.isArray(value) === true;
|
|
@@ -6293,6 +6458,19 @@ function isUrl(val, ...protocols) {
|
|
|
6293
6458
|
const p = protocols.length === 0 ? ["http", "https"] : protocols;
|
|
6294
6459
|
return isString(val) && p.some((i) => val.startsWith(`${i}://`));
|
|
6295
6460
|
}
|
|
6461
|
+
var VALID = [
|
|
6462
|
+
...ALPHA_CHARS2,
|
|
6463
|
+
...NUMERIC_CHAR2,
|
|
6464
|
+
"_",
|
|
6465
|
+
"."
|
|
6466
|
+
];
|
|
6467
|
+
var alpha = null;
|
|
6468
|
+
function valid(chars) {
|
|
6469
|
+
return chars.every((i) => VALID.includes(i));
|
|
6470
|
+
}
|
|
6471
|
+
function isVariable(val) {
|
|
6472
|
+
return isString(val) && startsWith(alpha)(val) && valid(asChars(val));
|
|
6473
|
+
}
|
|
6296
6474
|
function separate(s) {
|
|
6297
6475
|
return stripWhile(s.toLowerCase(), ...NUMERIC_CHAR2).trim();
|
|
6298
6476
|
}
|
|
@@ -6431,6 +6609,18 @@ function hasUrlQueryParameter(val, prop) {
|
|
|
6431
6609
|
function isNumericArray(val) {
|
|
6432
6610
|
return Array.isArray(val) && val.every((i) => isNumber(i));
|
|
6433
6611
|
}
|
|
6612
|
+
function hasProtocol(val, ...protocols) {
|
|
6613
|
+
return isString(val) && protocols.length === 0 ? NETWORK_PROTOCOL2.some((i) => val.startsWith(i)) : protocols.some((i) => val.startsWith(i));
|
|
6614
|
+
}
|
|
6615
|
+
function isProtocol(val, ...protocols) {
|
|
6616
|
+
return isString(val) && protocols.length === 0 ? NETWORK_PROTOCOL2.includes(val) : protocols.includes(val);
|
|
6617
|
+
}
|
|
6618
|
+
function hasProtocolPrefix(val, ...protocols) {
|
|
6619
|
+
return isString(val) && protocols.length === 0 ? NETWORK_PROTOCOL2.map((i) => `${i}://`).some((i) => val.startsWith(i)) : protocols.map((i) => `${i}://`).some((i) => val.startsWith(i));
|
|
6620
|
+
}
|
|
6621
|
+
function isProtocolPrefix(val, ...protocols) {
|
|
6622
|
+
return isString(val) && protocols.length === 0 ? NETWORK_PROTOCOL2.map((i) => `${i}://`).includes(val) : protocols.map((i) => `${i}://`).includes(val);
|
|
6623
|
+
}
|
|
6434
6624
|
function isTypeToken(val, kind) {
|
|
6435
6625
|
if (isString(val) && val.startsWith("<<") && val.endsWith(">>")) {
|
|
6436
6626
|
const stripped = stripSurround("<<", ">>")(val);
|
|
@@ -6662,24 +6852,24 @@ function isNewsUrl(val) {
|
|
|
6662
6852
|
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);
|
|
6663
6853
|
}
|
|
6664
6854
|
function isBitbucketUrl(val) {
|
|
6665
|
-
const
|
|
6666
|
-
return isString(val) &&
|
|
6855
|
+
const valid2 = REPO_SOURCE_LOOKUP2.bitbucket;
|
|
6856
|
+
return isString(val) && valid2.some(
|
|
6667
6857
|
(i) => val === i || val.startsWith(`${i}/`) || val.startsWith(`${i}?`)
|
|
6668
6858
|
);
|
|
6669
6859
|
}
|
|
6670
6860
|
function isCodeCommitUrl(val) {
|
|
6671
|
-
const
|
|
6672
|
-
return isString(val) &&
|
|
6861
|
+
const valid2 = REPO_SOURCE_LOOKUP2.codecommit;
|
|
6862
|
+
return isString(val) && valid2.some(
|
|
6673
6863
|
(i) => val === i || val.startsWith(`${i}/`) || val.startsWith(`${i}?`)
|
|
6674
6864
|
);
|
|
6675
6865
|
}
|
|
6676
6866
|
function isGithubUrl(val) {
|
|
6677
|
-
const
|
|
6867
|
+
const valid2 = [
|
|
6678
6868
|
"https://github.com",
|
|
6679
6869
|
"https://www.github.com",
|
|
6680
6870
|
"https://github.io"
|
|
6681
6871
|
];
|
|
6682
|
-
return isString(val) &&
|
|
6872
|
+
return isString(val) && valid2.some(
|
|
6683
6873
|
(i) => val === i || val.startsWith(`${i}/`) || val.startsWith(`${i}?`)
|
|
6684
6874
|
);
|
|
6685
6875
|
}
|
|
@@ -7223,16 +7413,77 @@ function getUrlQueryParams(url, specific = void 0) {
|
|
|
7223
7413
|
}
|
|
7224
7414
|
return qp === "" ? qp : `?${qp}`;
|
|
7225
7415
|
}
|
|
7226
|
-
function
|
|
7227
|
-
const
|
|
7228
|
-
|
|
7229
|
-
|
|
7230
|
-
|
|
7416
|
+
function getUrlDefaultPort(url) {
|
|
7417
|
+
const proto = getUrlProtocol(url);
|
|
7418
|
+
return proto in PROTOCOL_DEFAULT_PORTS2 ? PROTOCOL_DEFAULT_PORTS2[proto] : null;
|
|
7419
|
+
}
|
|
7420
|
+
function getUrlPort(url, resolve = false) {
|
|
7421
|
+
const re = /.*:(\d{2,3})/;
|
|
7422
|
+
const match = url.match(re);
|
|
7423
|
+
return re.test(url) && match && isNumberLike(Array.from(match)[1]) ? Number(Array.from(match)[1]) : resolve ? getUrlDefaultPort(url) : hasProtocol(url) ? `default` : null;
|
|
7231
7424
|
}
|
|
7232
7425
|
function getUrlSource(url) {
|
|
7233
7426
|
const candidate = stripAfter(stripAfter(stripAfter(removeUrlProtocol(url), "/"), "?"), ":");
|
|
7234
7427
|
return isIpAddress(candidate) || isDomainName(candidate) ? candidate : Never2;
|
|
7235
7428
|
}
|
|
7429
|
+
function getUrlBase(url) {
|
|
7430
|
+
const path = getUrlPath(url);
|
|
7431
|
+
const remaining = stripAfter(url, path);
|
|
7432
|
+
return remaining;
|
|
7433
|
+
}
|
|
7434
|
+
function getUrlDynamics(url) {
|
|
7435
|
+
const path = getUrlPath(url);
|
|
7436
|
+
const qp = getUrlQueryParams(url);
|
|
7437
|
+
const pathParts = path.startsWith("<") ? path.split("<").map((i) => ensureLeading(i, "<")) : path.split("<").map((i) => ensureLeading(i, "<")).slice(1);
|
|
7438
|
+
const segmentTypes = [
|
|
7439
|
+
"string",
|
|
7440
|
+
"number",
|
|
7441
|
+
"boolean",
|
|
7442
|
+
"Opt<string>",
|
|
7443
|
+
"Opt<number>",
|
|
7444
|
+
"Opt<boolean>"
|
|
7445
|
+
];
|
|
7446
|
+
const pathVars = {};
|
|
7447
|
+
const findPathTyped = infer(`<{{infer name}} as {{infer type}}>`);
|
|
7448
|
+
const findPathUnion = infer(`<{{infer name}} as string({{infer union}})>`);
|
|
7449
|
+
const findPathNamed = infer(`<{{infer name}}>`);
|
|
7450
|
+
for (const part of pathParts) {
|
|
7451
|
+
const union4 = findPathUnion(part);
|
|
7452
|
+
const typed = findPathTyped(part);
|
|
7453
|
+
const named = findPathNamed(part);
|
|
7454
|
+
if (union4) {
|
|
7455
|
+
if (isVariable(union4.name) && isCsv(union4.union)) {
|
|
7456
|
+
pathVars[union4.name] = `string(${union4.union})`;
|
|
7457
|
+
}
|
|
7458
|
+
} else if (typed && segmentTypes.includes(typed.type) && isVariable(typed.name)) {
|
|
7459
|
+
pathVars[typed.name] = typed.type;
|
|
7460
|
+
} else if (named && isVariable(named.name)) {
|
|
7461
|
+
pathVars[named.name] = "string";
|
|
7462
|
+
}
|
|
7463
|
+
}
|
|
7464
|
+
const qpVars = {};
|
|
7465
|
+
const qpParts = stripLeading(qp, "?").split("&");
|
|
7466
|
+
for (const p of qpParts) {
|
|
7467
|
+
const union4 = infer(`{{infer var}}=<string({{infer params}})>`)(p);
|
|
7468
|
+
const dynamic = infer(`{{infer var}}=<{{infer val}}>`)(p);
|
|
7469
|
+
const fixed = infer(`{{infer var}}={{infer val}}`)(p);
|
|
7470
|
+
if (union4 && isVariable(union4.var) && isCsv(union4.params)) {
|
|
7471
|
+
qpVars[union4.var] = `string(${union4.params})`;
|
|
7472
|
+
} else if (dynamic && isVariable(dynamic.var) && segmentTypes.includes(dynamic.val)) {
|
|
7473
|
+
qpVars[dynamic.var] = dynamic.val;
|
|
7474
|
+
} else if (fixed && isVariable(fixed.var)) {
|
|
7475
|
+
qpVars[fixed.var] = fixed.val;
|
|
7476
|
+
}
|
|
7477
|
+
}
|
|
7478
|
+
return {
|
|
7479
|
+
pathVars,
|
|
7480
|
+
qpVars,
|
|
7481
|
+
allVars: hasOverlappingKeys(pathVars, qpVars) ? null : {
|
|
7482
|
+
...pathVars,
|
|
7483
|
+
...qpVars
|
|
7484
|
+
}
|
|
7485
|
+
};
|
|
7486
|
+
}
|
|
7236
7487
|
function urlMeta(url) {
|
|
7237
7488
|
return {
|
|
7238
7489
|
url,
|
|
@@ -7240,6 +7491,7 @@ function urlMeta(url) {
|
|
|
7240
7491
|
protocol: getUrlProtocol(url),
|
|
7241
7492
|
path: getUrlPath(url),
|
|
7242
7493
|
queryParameters: getUrlQueryParams(url),
|
|
7494
|
+
params: getUrlDynamics,
|
|
7243
7495
|
port: getUrlPort(url),
|
|
7244
7496
|
source: getUrlSource(url),
|
|
7245
7497
|
isIpAddress: isIpAddress(getUrlSource(url)),
|
|
@@ -7640,6 +7892,15 @@ function simpleType(token) {
|
|
|
7640
7892
|
const value = isSimpleScalarToken(token) ? simpleScalarType(token) : isSimpleContainerToken(token) ? simpleContainerToken(token) : Never2;
|
|
7641
7893
|
return value;
|
|
7642
7894
|
}
|
|
7895
|
+
function hasOverlappingKeys(a, b) {
|
|
7896
|
+
const keys = Object.keys(a);
|
|
7897
|
+
for (const k of keys) {
|
|
7898
|
+
if (k in b) {
|
|
7899
|
+
return true;
|
|
7900
|
+
}
|
|
7901
|
+
}
|
|
7902
|
+
return false;
|
|
7903
|
+
}
|
|
7643
7904
|
function uniqueKeys(left, right) {
|
|
7644
7905
|
const isNumeric = !!(isArray(left) && isArray(right));
|
|
7645
7906
|
if (isArray(left) && !isArray(right) || isArray(right) && !isArray(left)) {
|
|
@@ -7928,11 +8189,15 @@ var ExifSaturation = /* @__PURE__ */ ((ExifSaturation2) => {
|
|
|
7928
8189
|
MARKED,
|
|
7929
8190
|
MASS_METRICS_LOOKUP,
|
|
7930
8191
|
MEXICAN_NEWS,
|
|
8192
|
+
MIME_TYPES,
|
|
7931
8193
|
MONTH_ABBR,
|
|
7932
8194
|
MONTH_NAME,
|
|
7933
8195
|
MapCardinality,
|
|
7934
8196
|
NARROW_CONTAINER_TYPE_KINDS,
|
|
8197
|
+
NETWORK_PROTOCOL,
|
|
8198
|
+
NETWORK_PROTOCOL_INSECURE,
|
|
7935
8199
|
NETWORK_PROTOCOL_LOOKUP,
|
|
8200
|
+
NETWORK_PROTOCOL_SECURE,
|
|
7936
8201
|
NIKE_DNS,
|
|
7937
8202
|
NON_ZERO_NUMERIC_CHAR,
|
|
7938
8203
|
NORWEGIAN_NEWS,
|
|
@@ -7949,6 +8214,7 @@ var ExifSaturation = /* @__PURE__ */ ((ExifSaturation2) => {
|
|
|
7949
8214
|
PLURAL_EXCEPTIONS_OLD,
|
|
7950
8215
|
POWER_METRICS_LOOKUP,
|
|
7951
8216
|
PRESSURE_METRICS_LOOKUP,
|
|
8217
|
+
PROTOCOL_DEFAULT_PORTS,
|
|
7952
8218
|
PROXMOX_CT_STATE,
|
|
7953
8219
|
REPO_PAGE_TYPES,
|
|
7954
8220
|
REPO_SOURCES,
|
|
@@ -8112,6 +8378,9 @@ var ExifSaturation = /* @__PURE__ */ ((ExifSaturation2) => {
|
|
|
8112
8378
|
getTokenKind,
|
|
8113
8379
|
getTomorrow,
|
|
8114
8380
|
getTypeSubtype,
|
|
8381
|
+
getUrlBase,
|
|
8382
|
+
getUrlDefaultPort,
|
|
8383
|
+
getUrlDynamics,
|
|
8115
8384
|
getUrlPath,
|
|
8116
8385
|
getUrlPort,
|
|
8117
8386
|
getUrlProtocol,
|
|
@@ -8124,6 +8393,9 @@ var ExifSaturation = /* @__PURE__ */ ((ExifSaturation2) => {
|
|
|
8124
8393
|
hasDefaultValue,
|
|
8125
8394
|
hasIndexOf,
|
|
8126
8395
|
hasKeys,
|
|
8396
|
+
hasOverlappingKeys,
|
|
8397
|
+
hasProtocol,
|
|
8398
|
+
hasProtocolPrefix,
|
|
8127
8399
|
hasUrlPort,
|
|
8128
8400
|
hasUrlQueryParameter,
|
|
8129
8401
|
hasWhiteSpace,
|
|
@@ -8189,6 +8461,7 @@ var ExifSaturation = /* @__PURE__ */ ((ExifSaturation2) => {
|
|
|
8189
8461
|
isCountryCode3,
|
|
8190
8462
|
isCountryName,
|
|
8191
8463
|
isCssAspectRatio,
|
|
8464
|
+
isCsv,
|
|
8192
8465
|
isCurrentMetric,
|
|
8193
8466
|
isCurrentUom,
|
|
8194
8467
|
isCvsUrl,
|
|
@@ -8204,6 +8477,7 @@ var ExifSaturation = /* @__PURE__ */ ((ExifSaturation2) => {
|
|
|
8204
8477
|
isDutchNewsUrl,
|
|
8205
8478
|
isEbayUrl,
|
|
8206
8479
|
isEmail,
|
|
8480
|
+
isEmpty,
|
|
8207
8481
|
isEnergyMetric,
|
|
8208
8482
|
isEnergyUom,
|
|
8209
8483
|
isEqual,
|
|
@@ -8292,6 +8566,8 @@ var ExifSaturation = /* @__PURE__ */ ((ExifSaturation2) => {
|
|
|
8292
8566
|
isPowerUom,
|
|
8293
8567
|
isPressureMetric,
|
|
8294
8568
|
isPressureUom,
|
|
8569
|
+
isProtocol,
|
|
8570
|
+
isProtocolPrefix,
|
|
8295
8571
|
isReadonlyArray,
|
|
8296
8572
|
isRecordToken,
|
|
8297
8573
|
isRef,
|
|
@@ -8370,6 +8646,7 @@ var ExifSaturation = /* @__PURE__ */ ((ExifSaturation2) => {
|
|
|
8370
8646
|
isUsNewsUrl,
|
|
8371
8647
|
isUsStateAbbreviation,
|
|
8372
8648
|
isUsStateName,
|
|
8649
|
+
isVariable,
|
|
8373
8650
|
isVoltageMetric,
|
|
8374
8651
|
isVoltageUom,
|
|
8375
8652
|
isVolumeMetric,
|