@tool-bridge/server 0.21.1 → 0.22.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/dist/admin.js +170 -0
- package/dist/airtable-ML2GIGCH.js +790 -0
- package/dist/{alt_text_generator_ai-W7O34SNG.js → alt_text_generator_ai-FGYQAF2A.js} +12 -11
- package/dist/{amap-VOX4T2AW.js → amap-G7V65NGK.js} +221 -220
- package/dist/anthropic-6ZK24TBB.js +203 -0
- package/dist/apify-VDGYHP6W.js +248 -0
- package/dist/brave_search-TAATLZOS.js +302 -0
- package/dist/chunk-2IAI3XQM.js +302 -0
- package/dist/chunk-7ISGFRC6.js +161 -0
- package/dist/{chunk-E6JCVKW6.js → chunk-BNMLA2RC.js} +3 -3
- package/dist/chunk-HA4BGL6C.js +8429 -0
- package/dist/{chunk-KMTT3I6D.js → chunk-RMAWSG7E.js} +19172 -25717
- package/dist/{chunk-XYBU3WZH.js → chunk-RTW5VRTK.js} +3 -3
- package/dist/chunk-U7PTOA3U.js +7320 -0
- package/dist/chunk-UY6ANCOY.js +378 -0
- package/dist/{chunk-ATK45BXV.js → chunk-X7ZUTKHR.js} +4 -2
- package/dist/circleci-BQ2UWXL2.js +389 -0
- package/dist/clerk-2JYWQNOI.js +1019 -0
- package/dist/cohere-6MI7AQM4.js +185 -0
- package/dist/{confluence-B3EWPZVE.js → confluence-6Y6GDETF.js} +105 -104
- package/dist/{convertapi-EUWSQYPF.js → convertapi-HBZCSWOX.js} +32 -31
- package/dist/{currencyapi-KVTIK3GL.js → currencyapi-337U5TGI.js} +71 -71
- package/dist/deepseek-OSPASO7O.js +210 -0
- package/dist/docker_hub-3ATQOY5L.js +933 -0
- package/dist/dropbox-LSA4GM2Y.js +1305 -0
- package/dist/dub-VZPJSPI6.js +680 -0
- package/dist/e2b-6SDYQZL2.js +278 -0
- package/dist/exa-B6EUYDVP.js +332 -0
- package/dist/{fal_ai-23E7JPNT.js → fal_ai-K4Q27IME.js} +81 -80
- package/dist/{feishu-7QRIDUV6.js → feishu-4TKXG4SU.js} +528 -572
- package/dist/{feishu_custom_bot-TJ4K7QNJ.js → feishu_custom_bot-7CTEAKRB.js} +57 -53
- package/dist/figma-OUKSZLD5.js +777 -0
- package/dist/firehydrant-7MOYL7QH.js +563 -0
- package/dist/{fixer-BWON27UO.js → fixer-H2BV2NO4.js} +34 -33
- package/dist/fly-PXKY6PNH.js +469 -0
- package/dist/{front-QCGXYEDJ.js → front-UZYIV5DW.js} +104 -104
- package/dist/geocodio-NSYO7TFP.js +213 -0
- package/dist/ghost-QBKKQQMF.js +338 -0
- package/dist/github-ENLSJ4CL.js +5421 -0
- package/dist/gmail-KQSDEB47.js +1887 -0
- package/dist/googlecalendar-5YCX4SZF.js +2524 -0
- package/dist/{googledocs-BUHL4J2H.js → googledocs-SSWIVFKA.js} +341 -340
- package/dist/{grafana-GLU2DWF2.js → grafana-TF2LXDQA.js} +221 -220
- package/dist/graphhopper-CURBVHYK.js +325 -0
- package/dist/index.d.ts +1132 -332
- package/dist/index.js +31 -14
- package/dist/{ip2proxy-EZ64Y4ZH.js → ip2proxy-YNVMTZEM.js} +28 -27
- package/dist/ipgeolocation_io-NAU7VJ4J.js +315 -0
- package/dist/ipqualityscore-OT63L4TI.js +279 -0
- package/dist/{jina_ai-EFBHTBXL.js → jina_ai-6WBMBGWM.js} +23 -23
- package/dist/{jira-HQSHAA5K.js → jira-DVDVTHNO.js} +118 -117
- package/dist/langsmith-IM5N4YAU.js +593 -0
- package/dist/lemlist-277SHUQF.js +289 -0
- package/dist/{linear-K7RYFYAD.js → linear-AEPH7B5V.js} +327 -326
- package/dist/logsnag-VEWRAGBG.js +150 -0
- package/dist/main.js +57 -280
- package/dist/{mattermost-S2BRCWLQ.js → mattermost-Q3A2BIZA.js} +59 -58
- package/dist/mem0-AXS7GZGI.js +544 -0
- package/dist/memos-7TXG4ZTU.js +744 -0
- package/dist/{metabase-MMSEPCOF.js → metabase-NSVACWQM.js} +90 -89
- package/dist/mistral_ai-YZ52RGD4.js +1196 -0
- package/dist/{mother_duck-H7PCQNZ2.js → mother_duck-XLLL6FVL.js} +94 -93
- package/dist/ngrok-4O4W3WZW.js +356 -0
- package/dist/{notes-PFMKRO33.js → notes-YTB3TJOO.js} +11 -9
- package/dist/notion-4W4O7J7V.js +940 -0
- package/dist/open_exchange_rates-23QJXVO5.js +215 -0
- package/dist/openai-ZS7GLSLH.js +800 -0
- package/dist/opengraph_io-PMVH7OYI.js +362 -0
- package/dist/openrouter-ONRGFNB6.js +441 -0
- package/dist/outline-UCUYZZ7J.js +599 -0
- package/dist/paddle-35HTKTUL.js +454 -0
- package/dist/perplexity-NVOBYN24.js +220 -0
- package/dist/pinecone-55CJY73C.js +571 -0
- package/dist/{pipedrive-Y2O7QGFF.js → pipedrive-WMCAKS72.js} +99 -98
- package/dist/polar-SM4ZM53B.js +395 -0
- package/dist/posthog-NWCXVXNJ.js +3464 -0
- package/dist/postmark-QJV5PHUQ.js +427 -0
- package/dist/{prerender-MENYM2TY.js → prerender-2W7UT4SC.js} +31 -30
- package/dist/{pubmed-GOXUVVH5.js → pubmed-VVV7XYLU.js} +239 -238
- package/dist/{railway-V2SID4WV.js → railway-KGI57S3O.js} +118 -117
- package/dist/readwise-AGHTQB42.js +470 -0
- package/dist/render-O4HBROCK.js +461 -0
- package/dist/{replicate-756MXPYX.js → replicate-KWBOMX7D.js} +81 -80
- package/dist/{resend-ZKH3BTBI.js → resend-DRH6Y6I4.js} +20 -16
- package/dist/rootly-XGCUDW6X.js +336 -0
- package/dist/{scrapfly-NSRHFDIQ.js → scrapfly-OIQ3OY6L.js} +62 -61
- package/dist/{scrapingbee-OQHLAVEY.js → scrapingbee-OCZO4FHX.js} +56 -56
- package/dist/{screenshot_fyi-DVWG3AXC.js → screenshot_fyi-CUNGFZOC.js} +16 -16
- package/dist/semantic_scholar-3UJRLKES.js +611 -0
- package/dist/{sentry-546MNDJG.js → sentry-5BWVZFJV.js} +208 -207
- package/dist/{shodan-C3OON3Z3.js → shodan-HI37CTEW.js} +62 -61
- package/dist/shopify-LJ2EV2HH.js +610 -0
- package/dist/stripe-3LHMV55K.js +585 -0
- package/dist/{supabase-U2SL4D63.js → supabase-H2KPX3Q2.js} +245 -244
- package/dist/tavily-FBEWGH3Z.js +326 -0
- package/dist/telegram-MYYO3JND.js +1767 -0
- package/dist/{telnyx-CXQ4EZUX.js → telnyx-H4ALEGAX.js} +57 -56
- package/dist/todoist-OBWICA5Q.js +664 -0
- package/dist/trello-GUFUJRWO.js +1080 -0
- package/dist/turso-NIAK4UMS.js +416 -0
- package/dist/{twilio-4PDBJKWX.js → twilio-K6SLK2CX.js} +70 -69
- package/dist/umami-42RS2EPS.js +389 -0
- package/dist/unsplash-V7TOTETT.js +351 -0
- package/dist/{upstash_redis-G4LQBYHA.js → upstash_redis-AWQMB6Y3.js} +51 -50
- package/dist/uptimerobot-AZC2DHOT.js +483 -0
- package/dist/v2ex-4TVRNMLS.js +667 -0
- package/dist/vercel-DPHTJ3XR.js +1076 -0
- package/dist/{wolfram_alpha_api-3G4PUJWB.js → wolfram_alpha_api-XAG7IXBW.js} +36 -35
- package/dist/wordpress-KMPKVGUX.js +812 -0
- package/dist/workos-PKB2YR7S.js +664 -0
- package/dist/zhihu-Y4H4XYPB.js +254 -0
- package/package.json +18 -9
- package/dist/airtable-LLZDFN7M.js +0 -789
- package/dist/anthropic-G23NN3X5.js +0 -202
- package/dist/apify-Y3SS734K.js +0 -247
- package/dist/brave_search-ZC7OAPSZ.js +0 -301
- package/dist/chunk-R6P4XAE5.js +0 -248
- package/dist/chunk-U7B6DS2O.js +0 -977
- package/dist/chunk-UZM2RXZH.js +0 -23436
- package/dist/circleci-3BAX5FCG.js +0 -388
- package/dist/clerk-6LEM6TNU.js +0 -1019
- package/dist/cloudflare_dns-KINYTJUD.js +0 -588
- package/dist/cohere-XCJ5AJ6B.js +0 -185
- package/dist/deepseek-PC5YGNC5.js +0 -209
- package/dist/docker_hub-C3MA5FU6.js +0 -932
- package/dist/dropbox-XBV7Z2IR.js +0 -1304
- package/dist/dub-LDOFG3HC.js +0 -679
- package/dist/e2b-JMCPSVBW.js +0 -277
- package/dist/exa-RAK7O7RD.js +0 -331
- package/dist/figma-E6IX5DTH.js +0 -773
- package/dist/firehydrant-ZBLPQREE.js +0 -562
- package/dist/fly-ZH3HFCZJ.js +0 -468
- package/dist/geocodio-YGNI7DA4.js +0 -212
- package/dist/ghost-EVSGKH2Q.js +0 -337
- package/dist/github-MA2BGRCJ.js +0 -5420
- package/dist/gmail-E5E6AADE.js +0 -1886
- package/dist/googlecalendar-BTLFPXTD.js +0 -2523
- package/dist/graphhopper-WSMB3TCD.js +0 -324
- package/dist/ipgeolocation_io-AA7HAS22.js +0 -315
- package/dist/ipqualityscore-BHJXVTJT.js +0 -277
- package/dist/langsmith-5W6SCT6F.js +0 -592
- package/dist/lemlist-HJWH6UMK.js +0 -288
- package/dist/logsnag-4KFOHL37.js +0 -150
- package/dist/mem0-CAW43CIC.js +0 -543
- package/dist/memos-TWEGPKFM.js +0 -740
- package/dist/mistral_ai-64BGZQHP.js +0 -1195
- package/dist/ngrok-GQCUGZKJ.js +0 -356
- package/dist/notion-DQWZWP4N.js +0 -936
- package/dist/open_exchange_rates-QMMD735E.js +0 -214
- package/dist/openai-W6PX32NZ.js +0 -799
- package/dist/opengraph_io-HNDBXYNW.js +0 -361
- package/dist/openrouter-JJYMEAUL.js +0 -437
- package/dist/outline-MCBNQZYY.js +0 -595
- package/dist/paddle-D2SKLUDN.js +0 -453
- package/dist/perplexity-XIFMKUAE.js +0 -219
- package/dist/pinecone-HUFTALV2.js +0 -570
- package/dist/polar-TYTOMOSR.js +0 -394
- package/dist/posthog-43JAR3VW.js +0 -3463
- package/dist/postmark-KL2QJYSG.js +0 -426
- package/dist/readwise-CI4GIMMJ.js +0 -469
- package/dist/render-SUBJ6YRZ.js +0 -460
- package/dist/rootly-CD2LJHPI.js +0 -336
- package/dist/semantic_scholar-T4A252KW.js +0 -610
- package/dist/shopify-Y2HN2MCQ.js +0 -609
- package/dist/stripe-VE3CD3AY.js +0 -584
- package/dist/tavily-KCZHK6HE.js +0 -326
- package/dist/telegram-3URFBCMY.js +0 -1766
- package/dist/todoist-HNPWNYTD.js +0 -663
- package/dist/trello-3W2MIXRP.js +0 -1079
- package/dist/turso-2EQF7C2Z.js +0 -415
- package/dist/umami-5REN7TGP.js +0 -388
- package/dist/unsplash-EIXL424F.js +0 -350
- package/dist/uptimerobot-KNJ3EYLY.js +0 -482
- package/dist/v2ex-RHJ234PZ.js +0 -666
- package/dist/vercel-AS6NCIC7.js +0 -1075
- package/dist/wordpress-KNDAAUV7.js +0 -811
- package/dist/workos-R6UITSJ7.js +0 -663
- package/dist/zhihu-AGK4HILK.js +0 -253
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import {
|
|
2
|
+
TBError
|
|
3
|
+
} from "./chunk-HA4BGL6C.js";
|
|
4
|
+
|
|
5
|
+
// ../plugins/src/_runtime/ipPolicy.ts
|
|
6
|
+
import ipaddr from "ipaddr.js";
|
|
7
|
+
function isStrictIpv4(value) {
|
|
8
|
+
return ipaddr.IPv4.isValidFourPartDecimal(value) && value.split(".").every((part) => part === "0" || !part.startsWith("0"));
|
|
9
|
+
}
|
|
10
|
+
function parseAddress(value) {
|
|
11
|
+
let text = value;
|
|
12
|
+
if (text.startsWith("[") && text.endsWith("]")) text = text.slice(1, -1);
|
|
13
|
+
const embeddedIpv4 = text.includes(".") ? text.slice(text.lastIndexOf(":") + 1) : void 0;
|
|
14
|
+
if (embeddedIpv4 !== void 0 && !isStrictIpv4(embeddedIpv4)) return void 0;
|
|
15
|
+
try {
|
|
16
|
+
if (isStrictIpv4(text)) return ipaddr.IPv4.parse(text);
|
|
17
|
+
if (ipaddr.IPv6.isValid(text)) return ipaddr.IPv6.parse(text);
|
|
18
|
+
} catch {
|
|
19
|
+
}
|
|
20
|
+
return void 0;
|
|
21
|
+
}
|
|
22
|
+
function classifyIpv4(octets) {
|
|
23
|
+
const a = octets[0];
|
|
24
|
+
const b = octets[1];
|
|
25
|
+
const c = octets[2];
|
|
26
|
+
if (a === 0) return "blocked";
|
|
27
|
+
if (a === 10) return "blocked";
|
|
28
|
+
if (a === 127) return "blocked";
|
|
29
|
+
if (a === 169 && b === 254) return "blocked";
|
|
30
|
+
if (a === 172 && b >= 16 && b <= 31) return "blocked";
|
|
31
|
+
if (a === 192 && b === 0 && c === 0) return "blocked";
|
|
32
|
+
if (a === 192 && b === 0 && c === 2) return "blocked";
|
|
33
|
+
if (a === 192 && b === 168) return "blocked";
|
|
34
|
+
if (a === 198 && (b === 18 || b === 19)) return "blocked";
|
|
35
|
+
if (a === 198 && b === 51 && c === 100) return "blocked";
|
|
36
|
+
if (a === 203 && b === 0 && c === 113) return "blocked";
|
|
37
|
+
if (a === 100 && b >= 64 && b <= 127) return "blocked";
|
|
38
|
+
if (a >= 224) return "blocked";
|
|
39
|
+
return "public";
|
|
40
|
+
}
|
|
41
|
+
function classifyIpv6(bytes) {
|
|
42
|
+
const isZero = bytes.every((byte) => byte === 0);
|
|
43
|
+
if (isZero) return "blocked";
|
|
44
|
+
if (bytes.slice(0, 15).every((byte) => byte === 0) && bytes[15] === 1) return "blocked";
|
|
45
|
+
const v4Mapped = bytes.slice(0, 10).every((byte) => byte === 0) && (bytes[10] === 255 && bytes[11] === 255 || bytes[10] === 0 && bytes[11] === 0);
|
|
46
|
+
if (v4Mapped) {
|
|
47
|
+
return classifyIpv4([bytes[12], bytes[13], bytes[14], bytes[15]]);
|
|
48
|
+
}
|
|
49
|
+
const first = bytes[0];
|
|
50
|
+
if ((first & 254) === 252) return "blocked";
|
|
51
|
+
if (first === 254 && (bytes[1] & 192) === 128) return "blocked";
|
|
52
|
+
if (first === 255) return "blocked";
|
|
53
|
+
if (first === 32 && bytes[1] === 1 && bytes[2] === 13 && bytes[3] === 184) return "blocked";
|
|
54
|
+
return "public";
|
|
55
|
+
}
|
|
56
|
+
function isIpAddress(value) {
|
|
57
|
+
return parseAddress(value) !== void 0;
|
|
58
|
+
}
|
|
59
|
+
function classifyIpAddress(address) {
|
|
60
|
+
const parsed = parseAddress(address);
|
|
61
|
+
if (parsed === void 0) return "blocked";
|
|
62
|
+
if (parsed instanceof ipaddr.IPv4) return classifyIpv4(parsed.octets);
|
|
63
|
+
const bytes = new Uint8Array(parsed.toByteArray());
|
|
64
|
+
if (parsed.isIPv4MappedAddress()) return classifyIpv4(parsed.toIPv4Address().octets);
|
|
65
|
+
return classifyIpv6(bytes);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// ../plugins/src/_runtime/guardedFetch.ts
|
|
69
|
+
var MAX_REDIRECTS = 5;
|
|
70
|
+
var CROSS_ORIGIN_STRIPPED_HEADERS = [
|
|
71
|
+
"authorization",
|
|
72
|
+
"cookie",
|
|
73
|
+
"proxy-authorization"
|
|
74
|
+
// 各家自定义的密钥头没有统一命名,凡是名字里带 key/token/secret 的一律剥掉:
|
|
75
|
+
// 宁可让跨源跳转少带一个无关头,也不能漏带走一个凭证。
|
|
76
|
+
];
|
|
77
|
+
var REQUEST_BODY_HEADERS = [
|
|
78
|
+
"content-encoding",
|
|
79
|
+
"content-language",
|
|
80
|
+
"content-location",
|
|
81
|
+
"content-type"
|
|
82
|
+
];
|
|
83
|
+
function looksLikeCredentialHeader(name) {
|
|
84
|
+
return /(?:^|-)(?:api[-_]?key|key|token|secret|auth)(?:$|-)/i.test(name);
|
|
85
|
+
}
|
|
86
|
+
function stripCredentials(headers, sensitiveHeaders) {
|
|
87
|
+
const next = new Headers(headers);
|
|
88
|
+
for (const [name] of headers) {
|
|
89
|
+
if (CROSS_ORIGIN_STRIPPED_HEADERS.includes(name.toLowerCase()) || looksLikeCredentialHeader(name) || sensitiveHeaders.has(name.toLowerCase())) {
|
|
90
|
+
next.delete(name);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return next;
|
|
94
|
+
}
|
|
95
|
+
var EgressBlockedError = class extends TBError {
|
|
96
|
+
constructor(message) {
|
|
97
|
+
super("invalid_argument", message);
|
|
98
|
+
this.name = "EgressBlockedError";
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
function assertPublicHttpUrl(value) {
|
|
102
|
+
let url;
|
|
103
|
+
try {
|
|
104
|
+
url = value instanceof URL ? value : new URL(value);
|
|
105
|
+
} catch {
|
|
106
|
+
throw new EgressBlockedError(`\u51FA\u7AD9\u76EE\u6807\u4E0D\u662F\u5408\u6CD5 URL: ${String(value)}`);
|
|
107
|
+
}
|
|
108
|
+
if (url.protocol !== "https:" && url.protocol !== "http:") {
|
|
109
|
+
throw new EgressBlockedError(`\u51FA\u7AD9\u76EE\u6807\u534F\u8BAE\u4E0D\u88AB\u5141\u8BB8: ${url.protocol}`);
|
|
110
|
+
}
|
|
111
|
+
const hostname = url.hostname.startsWith("[") && url.hostname.endsWith("]") ? url.hostname.slice(1, -1) : url.hostname;
|
|
112
|
+
if (hostname === "") throw new EgressBlockedError("\u51FA\u7AD9\u76EE\u6807\u7F3A\u5C11\u4E3B\u673A\u540D");
|
|
113
|
+
if (isIpAddress(hostname) && classifyIpAddress(hostname) === "blocked") {
|
|
114
|
+
throw new EgressBlockedError("\u51FA\u7AD9\u76EE\u6807\u6307\u5411\u79C1\u6709\u6216\u4FDD\u7559\u5730\u5740");
|
|
115
|
+
}
|
|
116
|
+
return url;
|
|
117
|
+
}
|
|
118
|
+
function createGuardedFetch(options = {}) {
|
|
119
|
+
const crossOriginRedirect = options.crossOriginRedirect ?? "error";
|
|
120
|
+
const maxRedirects = options.maxRedirects ?? MAX_REDIRECTS;
|
|
121
|
+
const sensitiveHeaders = new Set(
|
|
122
|
+
(options.sensitiveHeaders ?? []).map((name) => name.toLowerCase())
|
|
123
|
+
);
|
|
124
|
+
return async function guardedFetch2(input, init) {
|
|
125
|
+
const transport = options.fetch ?? globalThis.fetch;
|
|
126
|
+
const initial = input instanceof Request ? input.url : String(input);
|
|
127
|
+
let url = assertPublicHttpUrl(initial);
|
|
128
|
+
let request = input instanceof Request ? new Request(url, new Request(input, init)) : new Request(url, { ...init, redirect: "manual" });
|
|
129
|
+
for (let hop = 0; ; hop += 1) {
|
|
130
|
+
const response = await transport(new Request(request.clone(), { redirect: "manual" }));
|
|
131
|
+
const location = response.headers.get("location");
|
|
132
|
+
if (response.status < 300 || response.status > 399 || location === null) return response;
|
|
133
|
+
if (hop >= maxRedirects) {
|
|
134
|
+
throw new EgressBlockedError(`\u51FA\u7AD9\u91CD\u5B9A\u5411\u8D85\u8FC7 ${maxRedirects} \u8DF3`);
|
|
135
|
+
}
|
|
136
|
+
const previousOrigin = new URL(request.url).origin;
|
|
137
|
+
url = assertPublicHttpUrl(new URL(location, url));
|
|
138
|
+
const crossesOrigin = url.origin !== previousOrigin;
|
|
139
|
+
if (crossesOrigin && crossOriginRedirect === "error") {
|
|
140
|
+
throw new EgressBlockedError("\u643A\u5E26\u654F\u611F\u4FE1\u606F\u7684\u51FA\u7AD9\u8BF7\u6C42\u4E0D\u5141\u8BB8\u8DE8\u6E90\u91CD\u5B9A\u5411");
|
|
141
|
+
}
|
|
142
|
+
const headers = !crossesOrigin ? request.headers : stripCredentials(request.headers, sensitiveHeaders);
|
|
143
|
+
const downgrade = (response.status === 301 || response.status === 302) && request.method === "POST" || response.status === 303 && request.method !== "GET" && request.method !== "HEAD";
|
|
144
|
+
if (downgrade) {
|
|
145
|
+
const redirectedHeaders = new Headers(headers);
|
|
146
|
+
for (const name of REQUEST_BODY_HEADERS) redirectedHeaders.delete(name);
|
|
147
|
+
request = new Request(url, { method: "GET", headers: redirectedHeaders, redirect: "manual" });
|
|
148
|
+
} else {
|
|
149
|
+
const redirected = new Request(url, request);
|
|
150
|
+
request = crossesOrigin ? new Request(redirected, { headers, redirect: "manual" }) : redirected;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
}
|
|
155
|
+
var guardedFetch = createGuardedFetch();
|
|
156
|
+
|
|
157
|
+
export {
|
|
158
|
+
assertPublicHttpUrl,
|
|
159
|
+
createGuardedFetch,
|
|
160
|
+
guardedFetch
|
|
161
|
+
};
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
upstreamError
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-X7ZUTKHR.js";
|
|
4
4
|
import {
|
|
5
5
|
createGuardedFetch
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-7ISGFRC6.js";
|
|
7
7
|
import {
|
|
8
8
|
TBError,
|
|
9
9
|
isTBError
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-HA4BGL6C.js";
|
|
11
11
|
|
|
12
12
|
// ../plugins/src/_runtime/providerHttp.ts
|
|
13
13
|
function credentialLike(name) {
|