openclaw
Version:
Multi-channel AI gateway with extensible messaging integrations
21,292 lines • 580 kB
JavaScript
import { a as __toCommonJS, i as __require, n as __esmMin, o as __toESM, r as __exportAll, t as __commonJSMin } from "./chunk-CNf5ZN-e.js";
import { a as normalizeLowercaseStringOrEmpty } from "./string-coerce-mnp54Vah.js";
import { j as resolveTimerTimeoutMs, s as asFiniteNumber } from "./number-coercion-CJQ8TR--.js";
import { i as formatErrorMessage$1 } from "./errors-BXgSefBE.js";
import { _ as uniqueStrings } from "./string-normalization-WNUDCpXX.js";
import { r as fetchWithSsrFGuard } from "./fetch-guard-BttkNCLm.js";
import { t as createDedupeCache } from "./dedupe-DnzL4okR.js";
import { r as MAX_IMAGE_BYTES } from "./constants-Mf57IYS0.js";
import { r as extensionForMime } from "./mime-C8mVE2Bw.js";
import { a as saveRemoteMedia, i as readRemoteMediaBuffer } from "./fetch-2npQWHQh.js";
import { t as createMessageReceiptFromOutboundResults } from "./receipt-B3SXxhHV.js";
import "./error-runtime-C8vbtAJt.js";
import "./media-runtime-fgpmX6eL.js";
import "./number-runtime-DBLVDypr.js";
import "./string-coerce-runtime-CEGJWkQ_.js";
import { t as createLoggerBackedRuntime } from "./runtime-logger-CdfMCDWX.js";
import "./channel-outbound-B3_Zy-kG.js";
import { u as ssrfPolicyFromDangerouslyAllowPrivateNetwork } from "./ssrf-policy-sZLyyYht.js";
import "./ssrf-runtime-BOGN5pUi.js";
import "./media-mime-v9DSctG7.js";
import { i as resolveStableChannelMessageIngress } from "./message-access-mwxdTUGC.js";
import "./channel-ingress-runtime-rGltVkKC.js";
import "./runtime-api-CWQgKmPA.js";
import { c as validateUrbitBaseUrl, d as formatTargetHint, f as normalizeShip, h as resolveTlonOutboundTarget, m as parseTlonTarget, p as parseChannelNest, s as normalizeUrbitHostname, u as resolveTlonAccount } from "./setup-core-DKHb5ch4.js";
import { t as getTlonRuntime } from "./runtime-ln2gtCac.js";
import { t as tlonSetupWizard } from "./setup-surface-f02CdhoW.js";
import { c as tslib_es6_exports, s as init_tslib_es6 } from "./tslib.es6-DJxJwErw.js";
import { G as init_retry, K as retry_exports, U as setFeature, j as httpSigningMiddlewareOptions, n as init_client, t as client_exports, v as dist_es_exports$1, y as init_dist_es$1 } from "./client-48bOJus2.js";
import { $t as init_schema, A as config_exports, En as HttpRequest, Ft as NoOpLogger, Nt as client_exports$1, On as getSmithyContext, Pt as init_client$1, Y as booleanSelector, en as schema_exports, et as toUint8Array, f as init_endpoints, i as serde_exports, j as init_config, kt as fromUtf8, q as SelectorType, r as init_serde, rn as NormalizedSchema, u as endpoints_exports, wn as HttpResponse, wt as parseRfc7231DateTime } from "./serde-CssnHFxP.js";
import { n as protocols_exports, r as buildQueryString, t as init_protocols } from "./protocols-Lf8trFei.js";
import { h as AwsRestXmlProtocol, m as init_protocols$1, n as init_httpAuthSchemes, t as httpAuthSchemes_exports } from "./httpAuthSchemes-DGfmSwPo.js";
import { t as require_dist_cjs$9 } from "./dist-cjs-zgHGTiBF.js";
import { F as require_main$2, I as require_main$1, n as init_event_streams, t as event_streams_exports } from "./event-streams-CPQBbZOV.js";
import { t as require_dist_cjs$10 } from "./dist-cjs-BS-8215S.js";
import { t as require_dist_cjs$11 } from "./dist-cjs-6rSG1EKF.js";
import { createReadStream } from "node:fs";
import * as path$1 from "node:path";
import { mkdir, writeFile } from "node:fs/promises";
import crypto, { randomBytes, randomUUID } from "node:crypto";
import { Readable, Writable } from "node:stream";
//#region extensions/tlon/src/settings.ts
const SETTINGS_DESK = "moltbot";
const SETTINGS_BUCKET = "tlon";
/**
* Parse channelRules - handles both JSON string and object formats.
* Settings-store doesn't support nested objects, so we store as JSON string.
*/
function parseChannelRules(value) {
if (!value) return;
if (typeof value === "string") try {
const parsed = JSON.parse(value);
if (isChannelRulesObject(parsed)) return parsed;
} catch {
return;
}
if (isChannelRulesObject(value)) return value;
}
/**
* Parse settings from the raw Urbit settings-store response.
* The response shape is: { [bucket]: { [key]: value } }
*/
function parseSettingsResponse(raw) {
if (!raw || typeof raw !== "object") return {};
const bucket = raw[SETTINGS_BUCKET];
if (!bucket || typeof bucket !== "object") return {};
const settings = bucket;
return {
groupChannels: Array.isArray(settings.groupChannels) ? settings.groupChannels.filter((x) => typeof x === "string") : void 0,
dmAllowlist: Array.isArray(settings.dmAllowlist) ? settings.dmAllowlist.filter((x) => typeof x === "string") : void 0,
autoDiscover: typeof settings.autoDiscover === "boolean" ? settings.autoDiscover : void 0,
showModelSig: typeof settings.showModelSig === "boolean" ? settings.showModelSig : void 0,
autoAcceptDmInvites: typeof settings.autoAcceptDmInvites === "boolean" ? settings.autoAcceptDmInvites : void 0,
autoAcceptGroupInvites: typeof settings.autoAcceptGroupInvites === "boolean" ? settings.autoAcceptGroupInvites : void 0,
groupInviteAllowlist: Array.isArray(settings.groupInviteAllowlist) ? settings.groupInviteAllowlist.filter((x) => typeof x === "string") : void 0,
channelRules: parseChannelRules(settings.channelRules),
defaultAuthorizedShips: Array.isArray(settings.defaultAuthorizedShips) ? settings.defaultAuthorizedShips.filter((x) => typeof x === "string") : void 0,
ownerShip: typeof settings.ownerShip === "string" ? settings.ownerShip : void 0,
pendingApprovals: parsePendingApprovals(settings.pendingApprovals)
};
}
function isChannelRulesObject(val) {
if (!val || typeof val !== "object" || Array.isArray(val)) return false;
for (const [, rule] of Object.entries(val)) if (!rule || typeof rule !== "object") return false;
return true;
}
/**
* Parse pendingApprovals - handles both JSON string and array formats.
* Settings-store stores complex objects as JSON strings.
*/
function parsePendingApprovals(value) {
if (!value) return;
let parsed = value;
if (typeof value === "string") try {
parsed = JSON.parse(value);
} catch {
return;
}
if (!Array.isArray(parsed)) return;
return parsed.filter((item) => {
if (!item || typeof item !== "object") return false;
const obj = item;
return typeof obj.id === "string" && (obj.type === "dm" || obj.type === "channel" || obj.type === "group") && typeof obj.requestingShip === "string" && typeof obj.timestamp === "number";
});
}
/**
* Parse a single settings entry update event.
*/
function parseSettingsEvent(event) {
if (!event || typeof event !== "object") return null;
const evt = event;
if (evt["put-entry"]) {
const put = evt["put-entry"];
if (put.desk !== SETTINGS_DESK || put["bucket-key"] !== SETTINGS_BUCKET) return null;
return {
key: typeof put["entry-key"] === "string" ? put["entry-key"] : "",
value: put.value
};
}
if (evt["del-entry"]) {
const del = evt["del-entry"];
if (del.desk !== SETTINGS_DESK || del["bucket-key"] !== SETTINGS_BUCKET) return null;
return {
key: typeof del["entry-key"] === "string" ? del["entry-key"] : "",
value: void 0
};
}
return null;
}
/**
* Apply a single settings update to the current state.
*/
function applySettingsUpdate(current, key, value) {
const next = { ...current };
switch (key) {
case "groupChannels":
next.groupChannels = Array.isArray(value) ? value.filter((x) => typeof x === "string") : void 0;
break;
case "dmAllowlist":
next.dmAllowlist = Array.isArray(value) ? value.filter((x) => typeof x === "string") : void 0;
break;
case "autoDiscover":
next.autoDiscover = typeof value === "boolean" ? value : void 0;
break;
case "showModelSig":
next.showModelSig = typeof value === "boolean" ? value : void 0;
break;
case "autoAcceptDmInvites":
next.autoAcceptDmInvites = typeof value === "boolean" ? value : void 0;
break;
case "autoAcceptGroupInvites":
next.autoAcceptGroupInvites = typeof value === "boolean" ? value : void 0;
break;
case "groupInviteAllowlist":
next.groupInviteAllowlist = Array.isArray(value) ? value.filter((x) => typeof x === "string") : void 0;
break;
case "channelRules":
next.channelRules = parseChannelRules(value);
break;
case "defaultAuthorizedShips":
next.defaultAuthorizedShips = Array.isArray(value) ? value.filter((x) => typeof x === "string") : void 0;
break;
case "ownerShip":
next.ownerShip = typeof value === "string" ? value : void 0;
break;
case "pendingApprovals":
next.pendingApprovals = parsePendingApprovals(value);
break;
}
return next;
}
/**
* Create a settings store subscription manager.
*
* Usage:
* const settings = createSettingsManager(api, logger);
* await settings.load();
* settings.subscribe((newSettings) => { ... });
*/
function createSettingsManager(api, logger) {
const state = {
current: {},
loaded: false
};
const listeners = /* @__PURE__ */ new Set();
const notify = () => {
for (const listener of listeners) try {
listener(state.current);
} catch (err) {
logger?.error?.(`[settings] Listener error: ${String(err)}`);
}
};
return {
/**
* Get current settings (may be empty if not loaded yet).
*/
get current() {
return state.current;
},
/**
* Whether initial settings have been loaded.
*/
get loaded() {
return state.loaded;
},
/**
* Load initial settings via scry.
*/
async load() {
try {
const deskData = (await api.scry("/settings/all.json"))?.all?.[SETTINGS_DESK];
state.current = parseSettingsResponse(deskData ?? {});
state.loaded = true;
logger?.log?.(`[settings] Loaded: ${JSON.stringify(state.current)}`);
return state.current;
} catch (err) {
logger?.log?.(`[settings] No settings found (using defaults): ${String(err)}`);
state.current = {};
state.loaded = true;
return state.current;
}
},
/**
* Subscribe to settings changes.
*/
async startSubscription() {
await api.subscribe({
app: "settings",
path: "/desk/moltbot",
event: (event) => {
const update = parseSettingsEvent(event);
if (!update) return;
logger?.log?.(`[settings] Update: ${update.key} = ${JSON.stringify(update.value)}`);
state.current = applySettingsUpdate(state.current, update.key, update.value);
notify();
},
err: (error) => {
logger?.error?.(`[settings] Subscription error: ${String(error)}`);
},
quit: () => {
logger?.log?.("[settings] Subscription ended");
}
});
logger?.log?.("[settings] Subscribed to settings updates");
},
/**
* Register a listener for settings changes.
*/
onChange(listener) {
listeners.add(listener);
return () => listeners.delete(listener);
}
};
}
//#endregion
//#region extensions/tlon/src/urbit/errors.ts
var UrbitError = class extends Error {
constructor(code, message, options) {
super(message, options);
this.name = "UrbitError";
this.code = code;
}
};
var UrbitUrlError = class extends UrbitError {
constructor(message, options) {
super("invalid_url", message, options);
this.name = "UrbitUrlError";
}
};
var UrbitHttpError = class extends UrbitError {
constructor(params) {
const suffix = params.bodyText ? ` - ${params.bodyText}` : "";
super("http_error", `${params.operation} failed: ${params.status}${suffix}`, { cause: params.cause });
this.name = "UrbitHttpError";
this.status = params.status;
this.operation = params.operation;
this.bodyText = params.bodyText;
}
};
var UrbitAuthError = class extends UrbitError {
constructor(code, message, options) {
super(code, message, options);
this.name = "UrbitAuthError";
}
};
//#endregion
//#region extensions/tlon/src/urbit/fetch.ts
async function urbitFetch(params) {
const validated = validateUrbitBaseUrl(params.baseUrl);
if (!validated.ok) throw new UrbitUrlError(validated.error);
return await fetchWithSsrFGuard({
url: new URL(params.path, validated.baseUrl).toString(),
fetchImpl: params.fetchImpl,
init: params.init,
timeoutMs: params.timeoutMs,
maxRedirects: params.maxRedirects,
signal: params.signal,
policy: params.ssrfPolicy,
lookupFn: params.lookupFn,
auditContext: params.auditContext,
pinDns: params.pinDns
});
}
//#endregion
//#region extensions/tlon/src/urbit/auth.ts
async function authenticate(url, code, options = {}) {
const { response, release } = await urbitFetch({
baseUrl: url,
path: "/~/login",
init: {
method: "POST",
headers: { "Content-Type": "application/x-www-form-urlencoded" },
body: new URLSearchParams({ password: code }).toString()
},
ssrfPolicy: options.ssrfPolicy,
lookupFn: options.lookupFn,
fetchImpl: options.fetchImpl,
timeoutMs: options.timeoutMs ?? 15e3,
maxRedirects: 3,
auditContext: "tlon-urbit-login"
});
try {
if (!response.ok) throw new UrbitAuthError("auth_failed", `Login failed with status ${response.status}`);
await response.text().catch(() => {});
const cookie = response.headers.get("set-cookie");
if (!cookie) throw new UrbitAuthError("missing_cookie", "No authentication cookie received");
return cookie;
} finally {
await release();
}
}
//#endregion
//#region extensions/tlon/src/urbit/context.ts
function resolveShipFromHostname(hostname) {
const trimmed = normalizeUrbitHostname(hostname);
if (!trimmed) return "";
if (trimmed.includes(".")) return trimmed.split(".")[0] ?? trimmed;
return trimmed;
}
function normalizeUrbitShip(ship, hostname) {
return (ship?.replace(/^~/, "") ?? resolveShipFromHostname(hostname)).trim();
}
function normalizeUrbitCookie(cookie) {
return cookie.split(";")[0] ?? cookie;
}
function getUrbitContext(url, ship) {
const validated = validateUrbitBaseUrl(url);
if (!validated.ok) throw new UrbitUrlError(validated.error);
return {
baseUrl: validated.baseUrl,
hostname: validated.hostname,
ship: normalizeUrbitShip(ship, validated.hostname)
};
}
//#endregion
//#region node_modules/@urbit/aura/dist/aura.cjs.production.min.js
var require_aura_cjs_production_min = /* @__PURE__ */ __commonJSMin(((exports) => {
function n(n) {
let t = !0, [e, r, u] = n.split("..");
r = r || "0.0.0", u = u || "0000";
let [s, c, l] = e.slice(1).split(".");
"-" === s.at(-1) && (s = s.slice(0, -1), t = !1);
const [d, p, g] = r.split("."), h = u.split(".").map(((n) => BigInt("0x" + n)));
return function(n) {
const t = n.pos ? a + BigInt(n.year) : a - (BigInt(n.year) - 1n), e = (() => {
let e = i(t) ? f : o, r = n.time.day - 1n, a = n.month - 1n;
for (; 0n !== a;) {
const [n, ...t] = e;
r += BigInt(n), a -= 1n, e = t;
}
let u = !0, s = t;
for (; 1 == u;) s % 4n !== 0n ? (s -= 1n, r += i(s) ? 366n : 365n) : s % 100n !== 0n ? (s -= 4n, r += i(s) ? 1461n : 1460n) : s % 400n !== 0n ? (s -= 100n, r += i(s) ? 36525n : 36524n) : (r += s / 400n * (4n * 36524n + 1n), u = !1);
return r;
})();
return n.time.day = e, m(n.time);
}({
pos: t,
year: BigInt(s),
month: BigInt(c),
time: {
day: BigInt(l),
hour: BigInt(d),
minute: BigInt(p),
second: BigInt(g),
ms: h
}
});
}
function t(n) {
const t = {
day: 0n,
hour: 0n,
minute: 0n,
second: 0n,
ms: []
};
n = n.slice(1);
let [e, r] = n.split("..");
return r = r || "0000", t.ms = r.split(".").map(((n) => BigInt("0x" + n))), e.split(".").forEach(((e) => {
switch (e[0]) {
case "d":
t.day += BigInt(e.slice(1));
break;
case "h":
t.hour += BigInt(e.slice(1));
break;
case "m":
t.minute += BigInt(e.slice(1));
break;
case "s":
t.second += BigInt(e.slice(1));
break;
default: throw new Error("bad dr: " + n);
}
})), r = r || "0000", m(t);
}
Object.defineProperty(exports, "__esModule", { value: !0 });
const e = BigInt("170141184475152167957503069145530368000"), r = BigInt("18446744073709551616"), a = BigInt("292277024400");
function i(n) {
return n % 4n === 0n && n % 100n !== 0n || n % 400n === 0n;
}
const o = [
31,
28,
31,
30,
31,
30,
31,
31,
30,
31,
30,
31
], f = [
31,
29,
31,
30,
31,
30,
31,
31,
30,
31,
30,
31
], u = 86400n, s = 3600n, c = 60n, l = 146097n, d = 36524n;
function m(n) {
let t = n.second + u * n.day + s * n.hour + c * n.minute, e = n.ms, r = 0n, a = 3n;
for (; 0 !== e.length;) {
const [n, ...t] = e;
r += n << 16n * a, e = t, a -= 1n;
}
return r | t << 64n;
}
function p(n) {
let t = n >> 64n;
const e = (BigInt("0xffffffffffffffff") & n).toString(16).padStart(16, "0").match(/.{4}/g).map(((n) => BigInt("0x" + n)));
for (; 0n === e.at(-1);) e.pop();
let r = t / u;
t %= u;
let a = t / s;
t %= s;
let i = t / c;
return t %= c, {
ms: e,
day: r,
minute: i,
hour: a,
second: t
};
}
const g = (n, t) => ((n, t) => {
const e = Number(255n & t), r = Number((65280n & t) / 256n), a = String.fromCharCode(e) + String.fromCharCode(r);
return BigInt(((n, t) => {
let e, r, a, i, o, f, u, s;
for (e = 3 & n.length, r = n.length - e, a = t, o = 3432918353, f = 461845907, s = 0; s < r;) u = 255 & n.charCodeAt(s) | (255 & n.charCodeAt(++s)) << 8 | (255 & n.charCodeAt(++s)) << 16 | (255 & n.charCodeAt(++s)) << 24, ++s, u = (65535 & u) * o + (((u >>> 16) * o & 65535) << 16) & 4294967295, u = u << 15 | u >>> 17, u = (65535 & u) * f + (((u >>> 16) * f & 65535) << 16) & 4294967295, a ^= u, a = a << 13 | a >>> 19, i = 5 * (65535 & a) + ((5 * (a >>> 16) & 65535) << 16) & 4294967295, a = 27492 + (65535 & i) + ((58964 + (i >>> 16) & 65535) << 16);
switch (u = 0, e) {
case 3: u ^= (255 & n.charCodeAt(s + 2)) << 16;
case 2: u ^= (255 & n.charCodeAt(s + 1)) << 8;
case 1: u ^= 255 & n.charCodeAt(s), u = (65535 & u) * o + (((u >>> 16) * o & 65535) << 16) & 4294967295, u = u << 15 | u >>> 17, u = (65535 & u) * f + (((u >>> 16) * f & 65535) << 16) & 4294967295, a ^= u;
}
return a ^= n.length, a ^= a >>> 16, a = 2246822507 * (65535 & a) + ((2246822507 * (a >>> 16) & 65535) << 16) & 4294967295, a ^= a >>> 13, a = 3266489909 * (65535 & a) + ((3266489909 * (a >>> 16) & 65535) << 16) & 4294967295, a ^= a >>> 16, a >>> 0;
})(a, n));
})([
3077398253,
3995603712,
2243735041,
1261992695
][n], t), h = (n) => y(4, 65535n, 65536n, 4294967295n, g, n), y = (n, t, e, r, a, i) => {
const o = b(n, t, e, a, i);
return o < r ? o : b(n, t, e, a, o);
}, b = (n, t, e, r, a) => {
const i = (a, o, f) => {
if (a > n) return n % 2 != 0 || f === t ? t * f + o : t * o + f;
{
const n = BigInt(r(a - 1, f).toString());
return i(a + 1, f, a % 2 != 0 ? (o + n) % t : (o + n) % e);
}
};
return i(1, a % t, a / t);
}, x = (n) => w(4, 65535n, 65536n, 4294967295n, g, n), w = (n, t, e, r, a, i) => {
const o = B(n, t, e, a, i);
return o < r ? o : B(n, t, e, a, o);
}, B = (n, t, e, r, a) => {
const i = (n, a, o) => {
if (n < 1) return t * o + a;
{
const f = r(n - 1, a);
return i(n - 1, n % 2 != 0 ? (o + t - f % t) % t : (o + e - f % e) % e, a);
}
}, o = n % 2 != 0 ? a / t : a % t, f = n % 2 != 0 ? a % t : a / t;
return i(n, f === t ? o : f, f === t ? f : o);
};
var I = {
F: g,
fe: b,
Fe: y,
feis: h,
fein: (n) => {
const t = (n) => {
const e = 4294967295n & n, r = 18446744069414584320n & n;
return n >= 65536n && n <= 4294967295n ? 65536n + h(n - 65536n) : n >= 4294967296n && n <= 18446744073709551615n ? r | t(e) : n;
};
return t(n);
},
fen: B,
Fen: w,
tail: x,
fynd: (n) => {
const t = (n) => {
const e = 4294967295n & n, r = 18446744069414584320n & n;
return n >= 65536n && n <= 4294967295n ? 65536n + x(n - 65536n) : n >= 4294967296n && n <= 18446744073709551615n ? r | t(e) : n;
};
return t(BigInt(n));
}
};
const v = /^~([a-z]{3}|([a-z]{6}(\-[a-z]{6}){0,3}(\-(\-[a-z]{6}){4})*))$/;
function S(n) {
const t = N(n), e = (n) => n.toString(2).padStart(8, "0"), r = t.reduce(((n, r, a) => a % 2 != 0 || 1 === t.length ? n + e(E.indexOf(r)) : n + e(C.indexOf(r))), ""), a = BigInt("0b" + r);
return I.fynd(a);
}
function $(n) {
const t = I.fein(n), e = Math.ceil(t.toString(16).length / 2), r = Math.ceil(t.toString(16).length / 4);
return "~" + (e <= 1 ? E[Number(t)] : function n(t, e, a) {
const i = 65535n & t, o = C[Number(i >> 8n)], f = E[Number(255n & i)];
return e === r ? a : n(t >> 16n, e + 1, o + f + (3 & e ? "-" : 0 === e ? "" : "--") + a);
}(t, 0, ""));
}
function A(n) {
let t;
return t = "bigint" == typeof n ? n : z(n), t <= 255n ? "czar" : t <= 65535n ? "king" : t <= 4294967295n ? "duke" : t <= 18446744073709551615n ? "earl" : "pawn";
}
function k(n) {
switch (n) {
case "czar": return "galaxy";
case "king": return "star";
case "duke": return "planet";
case "earl": return "moon";
case "pawn": return "comet";
}
}
function z(n) {
if (!function(n) {
return v.test(n) && j(n) && n === $(S(n));
}(n)) throw new Error("invalid @p literal: " + n);
return S(n);
}
const C = "\ndozmarbinwansamlitsighidfidlissogdirwacsabwissibrigsoldopmodfoglidhopdardorlorhodfolrintogsilmirholpaslacrovlivdalsatlibtabhanticpidtorbolfosdotlosdilforpilramtirwintadbicdifrocwidbisdasmidloprilnardapmolsanlocnovsitnidtipsicropwitnatpanminritpodmottamtolsavposnapnopsomfinfonbanmorworsipronnorbotwicsocwatdolmagpicdavbidbaltimtasmalligsivtagpadsaldivdactansidfabtarmonranniswolmispallasdismaprabtobrollatlonnodnavfignomnibpagsopralbilhaddocridmocpacravripfaltodtiltinhapmicfanpattaclabmogsimsonpinlomrictapfirhasbosbatpochactidhavsaplindibhosdabbitbarracparloddosbortochilmactomdigfilfasmithobharmighinradmashalraglagfadtopmophabnilnosmilfopfamdatnoldinhatnacrisfotribhocnimlarfitwalrapsarnalmoslandondanladdovrivbacpollaptalpitnambonrostonfodponsovnocsorlavmatmipfip".match(/.{1,3}/g), E = "\nzodnecbudwessevpersutletfulpensytdurwepserwylsunrypsyxdyrnuphebpeglupdepdysputlughecryttyvsydnexlunmeplutseppesdelsulpedtemledtulmetwenbynhexfebpyldulhetmevruttylwydtepbesdexsefwycburderneppurrysrebdennutsubpetrulsynregtydsupsemwynrecmegnetsecmulnymtevwebsummutnyxrextebfushepbenmuswyxsymselrucdecwexsyrwetdylmynmesdetbetbeltuxtugmyrpelsyptermebsetdutdegtexsurfeltudnuxruxrenwytnubmedlytdusnebrumtynseglyxpunresredfunrevrefmectedrusbexlebduxrynnumpyxrygryxfeptyrtustyclegnemfermertenlusnussyltecmexpubrymtucfyllepdebbermughuttunbylsudpemdevlurdefbusbeprunmelpexdytbyttyplevmylwedducfurfexnulluclennerlexrupnedlecrydlydfenwelnydhusrelrudneshesfetdesretdunlernyrsebhulrylludremlysfynwerrycsugnysnyllyndyndemluxfedsedbecmunlyrtesmudnytbyrsenwegfyrmurtelreptegpecnelnevfes".match(/.{1,3}/g);
function N(n) {
return n.replace(/[\^~-]/g, "").match(/.{1,3}/g) || [];
}
function j(n) {
const t = N(n);
return !(t.length % 2 != 0 && 1 !== t.length) && t.every(((n, e) => e % 2 != 0 || 1 === t.length ? E.includes(n) : C.includes(n)));
}
function _(n, t) {
let e = [], r = [e];
for (let a = 0; a < n.length; a++) e.length < t ? e.push(n[a]) : (e = [n[a]], r.push(e));
return r;
}
function q(n, t) {
return n = M(n), function(n, t, e) {
if ("nan" === n) return function(n, t) {
return O(BigInt(n + 1)) << BigInt(t - 1);
}(t, e);
if ("inf" === n) return U(!0, t, e);
if ("-inf" === n) return U(!1, t, e);
let r = 0, a = !0;
"-" === n[r] && (a = !1, r++);
let i = "";
for (; "." !== n[r] && "e" !== n[r] && void 0 !== n[r];) i += n[r++];
"." === n[r] && r++;
let o = "";
for (; "e" !== n[r] && void 0 !== n[r];) o += n[r++];
"e" === n[r] && r++;
let f = !0;
"-" === n[r] && (f = !1, r++);
let u = "";
for (; void 0 !== n[r];) u += n[r++];
return BigInt("0b" + function(n, t, e, r, a, i, o) {
return 0 !== o && (i ? (r += a.padEnd(o, "0").slice(0, o), a = a.slice(o)) : (a = r.padStart(o, "0").slice(-o) + a, r = r.slice(0, -o))), function(n, t, e, r, a, i) {
function o(n) {
return console.warn(n), 1;
}
const f = 2 ** (t - 1) - 1, u = 1 - f, s = f, c = u - n, l = 2 * f + 1 + n + 3, d = new Array(l), m = 10n ** a;
var p, g, h, y, b, x, w = 0, B = !e;
for (p = l; p; d[--p] = 0);
for (p = f + 2; r && p; d[--p] = 1n & r, r >>= 1n);
for (p = f + 1; i > 0n && p < l; (d[++p] = (i *= 2n) >= m ? 1 : 0) && (i -= m));
for (p = -1; ++p < l && !d[p];);
if (d[(g = n - 1 + (p = (w = f + 1 - p) >= u && w <= s ? p + 1 : f + 1 - (w = u - 1))) + 1]) {
if (!(h = d[g])) for (y = g + 2; !h && y < l; h = d[y++]);
for (y = g + 1; h && --y >= 0; (d[y] = (d[y] ? 0 : 1) - 0) && (h = 0));
}
for (p = p - 2 < 0 ? -1 : p - 3; ++p < l && !d[p];);
for ((w = f + 1 - p) >= u && w <= s ? ++p : w < u && (w != f + 1 - l && w < c && o("r.construct underflow"), p = f + 1 - (w = u - 1)), r && (o(r ? "r.construct overflow" : "r.construct"), w = s + 1, p = f + 2), x = Math.abs(w + f), y = t + 1, b = ""; --y; b = (1 & x) + b, x = x >>= 1);
return (B ? "1" : "0") + b + d.slice(p, p + n).join("");
}(t, n, e, BigInt(r), BigInt(a.length), BigInt(a));
}(t, e, a, i, o, f, Number(u)));
}(t.slice(n.l.length), n.w, n.p);
}
function F(n, t) {
return (n = M(n)).l + function(n) {
if ("n" === n.t) return "nan";
if ("i" === n.t) return n.s ? "inf" : "-inf";
let t;
return n.e - 4 > 0 || n.e + 2 < 0 ? t = 1 : (t = n.e + 1, n.e = 0), (n.s ? "" : "-") + function(n, t) {
const e = Math.abs(n);
if (n <= 0) return "0." + "".padEnd(e, "0") + t;
{
const n = t.length;
return e >= n ? t + "".padEnd(e - n, "0") : t.slice(0, e) + "." + t.slice(e);
}
}(t, n.a) + (0 === n.e ? "" : "e" + n.e.toString());
}(function(n, t, e) {
const r = O(e), a = O(t), i = n & r, o = n >> BigInt(e) & a, f = 0n === (n >> BigInt(t + e) & 1n);
let u, s, c, l;
if (o === a) return 0n === i ? {
t: "i",
s: f
} : { t: "n" };
0n !== o ? (u = 1n << BigInt(e) | i, s = o - (2n ** (t - 1n) - 1n) - e, c = Number(e), l = 1n !== o && 0n === i) : (u = i, s = 1n - (2n ** (t - 1n) - 1n) - e, c = u.toString(2).length - 1, l = !1);
const d = (2n ** e).toString(10).length + 1, m = function(n, t, e, r, a, i, o) {
const f = BigInt(t);
let u, s, c, l, d = 0, m = new Array(o).fill("0"), p = 0;
if (0n === n) return m[0] = "0", p = 0, {
digits: m.slice(0, 1).join(""),
outExponent: p
};
r ? t > 0 ? (s = 4n * n, s <<= f, u = 4n, c = 1n << f, l = 1n << f + 1n) : (s = 4n * n, u = 1n << -f + 2n, c = 1n, l = 2n) : t > 0 ? (s = 2n * n, s <<= f, u = 2n, c = 1n << f, l = c) : (s = 2n * n, u = 1n << BigInt(1 - t), c = 1n, l = c);
let g = Math.ceil(.3010299956639812 * (e + t) - .69);
if (g > 0) u *= BigInt(10) ** BigInt(g);
else if (g < 0) {
const n = BigInt(10) ** BigInt(-g);
s *= n, c *= n, l !== c && (l *= c);
}
s >= u ? g += 1 : (s *= 10n, c *= 10n, l !== c && (l *= 10n));
let h = g - o;
p = g - 1;
let y = !1, b = !1, x = 0;
for (; g -= 1, x = Number(s / u), s %= u, y = s < c, b = s + l > u, !y && !b && g !== h;) m[d] = String.fromCharCode("0".charCodeAt(0) + x), d += 1, s *= 10n, c *= 10n, l !== c && (l *= 10n);
let w = y;
if (y === b) {
s *= 2n;
let n = s < u ? -1 : s > u ? 1 : 0;
w = n < 0, 0 === n && (w = 0 == (1 & x));
}
if (w) m[d] = String.fromCharCode("0".charCodeAt(0) + x), d += 1;
else if (9 === x) for (;;) {
if (0 === d) {
m[d] = "1", d += 1, p += 1;
break;
}
if (d -= 1, "9" !== m[d]) {
m[d] = String.fromCharCode(m[d].charCodeAt(0) + 1), d += 1;
break;
}
}
else m[d] = String.fromCharCode("0".charCodeAt(0) + x + 1), d += 1;
return {
digits: m.slice(0, d).join(""),
outExponent: p
};
}(u, Number(s), c, l, 0, 0, d);
return {
t: "d",
s: f,
e: m.outExponent,
a: m.digits
};
}(t, BigInt(n.w), BigInt(n.p)));
}
function M(n) {
return "h" === n ? {
w: 5,
p: 10,
l: ".~~"
} : "s" === n ? {
w: 8,
p: 23,
l: "."
} : "d" === n ? {
w: 11,
p: 52,
l: ".~"
} : "q" === n ? {
w: 15,
p: 112,
l: ".~~~"
} : n;
}
function O(n) {
return 2n ** n - 1n;
}
function U(n, t, e) {
return O(BigInt(n ? t : t + 1)) << BigInt(e);
}
function Z(n, t, e, r, a) {
return void 0 === a && (a = !1), new RegExp(`^${a ? "\\-\\-?" : ""}${n}(0|${0 === r ? t : `${t}${e}{0,${r - 1}}`}${0 === r ? `${e}*` : `(\\.${e}{${r}})*`})$`);
}
function P(n) {
return new RegExp(`^\\.~{${n}}(nan|\\-?(inf|(0|[1-9][0-9]*)(\\.[0-9]+)?(e\\-?(0|[1-9][0-9]*))?))$`);
}
const R = {
c: /^~\-((~[0-9a-fA-F]+\.)|(~[~\.])|[0-9a-z\-\._])*$/,
da: /^~(0|[1-9][0-9]*)\-?\.0*([1-9]|1[0-2])\.0*[1-9][0-9]*(\.\.([0-9]+)\.([0-9]+)\.([0-9]+)(\.(\.[0-9a-f]{4})+)?)?$/,
dr: /^~((d|h|m|s)(0|[1-9][0-9]*))(\.(d|h|m|s)(0|[1-9][0-9]*))*(\.(\.[0-9a-f]{4})+)?$/,
f: /^\.(y|n)$/,
if: /^(\.(0|[1-9][0-9]{0,2})){4}$/,
is: /^(\.(0|[1-9a-fA-F][0-9a-fA-F]{0,3})){8}$/,
n: /^~$/,
p: v,
q: /^\.~(([a-z]{3}|[a-z]{6})(\-[a-z]{6})*)$/,
rd: P(1),
rh: P(2),
rq: P(3),
rs: P(0),
sb: Z("0b", "1", "[01]", 4, !0),
sd: Z("", "[1-9]", "[0-9]", 3, !0),
si: Z("0i", "[1-9]", "[0-9]", 0, !0),
sv: Z("0v", "[1-9a-v]", "[0-9a-v]", 5, !0),
sw: Z("0w", "[1-9a-zA-Z~-]", "[0-9a-zA-Z~-]", 5, !0),
sx: Z("0x", "[1-9a-f]", "[0-9a-f]", 4, !0),
t: /^~~((~[0-9a-fA-F]+\.)|(~[~\.])|[0-9a-z\-\._])*$/,
ta: /^~\.[0-9a-z\-\.~_]*$/,
tas: /^[a-z][a-z0-9\-]*$/,
ub: Z("0b", "1", "[01]", 4),
ud: Z("", "[1-9]", "[0-9]", 3),
ui: Z("0i", "[1-9]", "[0-9]", 0),
uv: Z("0v", "[1-9a-v]", "[0-9a-v]", 5),
uw: Z("0w", "[1-9a-zA-Z~-]", "[0-9a-zA-Z~-]", 5),
ux: Z("0x", "[1-9a-f]", "[0-9a-f]", 4)
}, T = D;
function D(n, t) {
const e = H(n, t);
if (!e) throw new Error("slav: failed to parse @" + n + " from string: " + t);
return e;
}
const G = H;
function H(n, t) {
if (n in R && !R[n].test(t)) return null;
const e = J(t);
return e && "dime" === e.type && e.aura === n ? e.atom : null;
}
function J(e) {
if ("" === e) return null;
const r = e[0];
if (r >= "a" && r <= "z") return R.tas.test(e) ? {
type: "dime",
aura: "tas",
atom: Q(e)
} : null;
if (r >= "0" && r <= "9") {
const n = K(e);
return n ? {
type: "dime",
...n
} : null;
}
if ("-" === r) {
let n = !0;
"-" == e[1] ? e = e.slice(2) : (e = e.slice(1), n = !1);
const t = K(e);
return t ? (n ? t.atom = 2n * t.atom : 0n !== t.atom && (t.atom = 1n + 2n * (t.atom - 1n)), {
type: "dime",
aura: t.aura.replace("u", "s"),
atom: t.atom
}) : null;
}
if ("." === r) {
if (".y" === e) return {
type: "dime",
aura: "f",
atom: 0n
};
if (".n" === e) return {
type: "dime",
aura: "f",
atom: 1n
};
if (R.is.test(e)) {
const n = e.slice(1).split(".").reduce(((n, t) => n + t.padStart(4, "0")), "");
return {
type: "dime",
aura: "is",
atom: BigInt("0x" + n)
};
}
if (R.if.test(e)) return {
type: "dime",
aura: "if",
atom: e.slice(1).split(".").reduce(((n, t, e) => n + (BigInt(t) << BigInt(8 * (3 - e)))), 0n)
};
if ("~" === e[1] && (R.rd.test(e) || R.rh.test(e) || R.rq.test(e)) || R.rs.test(e)) {
let n, t = 0;
for (; "~" === e[t + 1];) t++;
switch (t) {
case 0:
n = "rs";
break;
case 1:
n = "rd";
break;
case 2:
n = "rh";
break;
case 3:
n = "rq";
break;
default: throw new Error("parsing invalid @r*");
}
return {
type: "dime",
aura: n,
atom: q(n[1], e)
};
}
if ("~" === e[1] && R.q.test(e)) {
const n = function(n) {
try {
return function(n) {
const t = n.slice(2).split("-"), e = (n) => {
if (n < 0) throw new Error("malformed @q");
return n.toString(16).padStart(2, "0");
}, r = t.map(((n, t) => {
let r = function(n, t) {
return [t.slice(0, 3), t.slice(3)];
}(0, n);
return "" === r[1] && 0 === t ? e(E.indexOf(r[0])) : e(C.indexOf(r[0])) + e(E.indexOf(r[1]));
}));
return BigInt("0x" + (0 === n.length ? "00" : r.join("")));
}(n);
} catch (n) {
return null;
}
}(e);
return null === n ? null : {
type: "dime",
aura: "q",
atom: n
};
}
if ("_" === e[1] && /^\.(_([0-9a-zA-Z\-\.]|~\-|~~)+)*__$/.test(e)) {
const n = e.slice(1, -2).split("_").slice(1).map(((n) => J(n = n.replaceAll("~-", "_").replaceAll("~~", "~"))));
return n.some(((n) => null === n)) ? null : {
type: "many",
list: n
};
}
return null;
}
if ("~" === r) {
if ("~" === e) return {
type: "dime",
aura: "n",
atom: 0n
};
if (R.da.test(e)) return {
type: "dime",
aura: "da",
atom: n(e)
};
if (R.dr.test(e)) return {
type: "dime",
aura: "dr",
atom: t(e)
};
if (R.p.test(e)) {
const n = function(n) {
if (!v.test(n) || !j(n)) return null;
const t = S(n);
return n === $(t) ? t : null;
}(e);
return null === n ? null : {
type: "dime",
aura: "p",
atom: n
};
}
return "." === e[1] && R.ta.test(e) ? {
type: "dime",
aura: "ta",
atom: Q(e.slice(2))
} : "~" === e[1] && R.t.test(e) ? {
type: "dime",
aura: "t",
atom: Q(L(e.slice(2)))
} : "-" === e[1] && R.c.test(e) ? /^~\-~[0-9a-f]+\.$/.test(e) ? {
type: "dime",
aura: "c",
atom: BigInt("0x" + e.slice(3, -1))
} : {
type: "dime",
aura: "c",
atom: Q(L(e.slice(2)))
} : "0" === e[1] && /^~0[0-9a-v]+$/.test(e) ? {
type: "blob",
jam: X(5, W, e.slice(2))
} : null;
}
return null;
}
function K(n) {
switch (n.slice(0, 2)) {
case "0b": return R.ub.test(n) ? {
aura: "ub",
atom: BigInt(n.replaceAll(".", ""))
} : null;
case "0c": return console.log("aura-js: @uc parsing unsupported (bisk)"), null;
case "0i": return R.ui.test(n) ? {
aura: "ui",
atom: BigInt(n.slice(2))
} : null;
case "0x": return R.ux.test(n) ? {
aura: "ux",
atom: BigInt(n.replaceAll(".", ""))
} : null;
case "0v": return R.uv.test(n) ? {
aura: "uv",
atom: X(5, W, n.slice(2))
} : null;
case "0w": return R.uw.test(n) ? {
aura: "uw",
atom: X(6, V, n.slice(2))
} : null;
default: return R.ud.test(n) ? {
aura: "ud",
atom: BigInt(n.replaceAll(".", ""))
} : null;
}
}
function L(n) {
let t = "", e = 0;
for (; e < n.length;) switch (n[e]) {
case ".":
t += " ", e++;
continue;
case "~": switch (n[++e]) {
case "~":
t += "~", e++;
continue;
case ".":
t += ".", e++;
continue;
default:
let r = 0;
do
r = r << 4 | Number.parseInt(n[e++], 16);
while ("." !== n[e]);
t += String.fromCodePoint(r), e++;
continue;
}
default:
t += n[e++];
continue;
}
return t;
}
function Q(n) {
return function(n) {
if (0 === n.length) return 0n;
if ("undefined" != typeof Buffer) return BigInt("0x" + Buffer.from(n.reverse()).toString("hex"));
let t, e = [];
for (var r = n.length - 1; r >= 0; --r) t = n[r], e.push(t < 16 ? "0" + t.toString(16) : t.toString(16));
return BigInt("0x" + e.join(""));
}(new TextEncoder().encode(n));
}
const V = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-~", W = "0123456789abcdefghijklmnopqrstuv";
function X(n, t, e) {
let r = 0n;
const a = BigInt(n);
for (; "" !== e;) "." !== e[0] && (r = (r << a) + BigInt(t.indexOf(e[0]))), e = e.slice(1);
return r;
}
const Y = nn;
function nn(n, t) {
return tn({
type: "dime",
aura: n,
atom: t
});
}
function tn(n) {
switch (n.type) {
case "blob": return "~0" + n.jam.toString(32);
case "many": return "." + n.list.reduce(((n, t) => n + "_" + tn(t).replaceAll("~", "~~").replaceAll("_", "~-")), "") + "__";
case "dime": switch (n.aura[0]) {
case "c": return n.atom < 127n ? "~-" + rn(String.fromCharCode(Number(n.atom))) : "~-~" + n.atom.toString(16) + ".";
case "d": switch (n.aura[1]) {
case "a": return function(n) {
const { pos: t, year: e, month: r, time: i } = function(n) {
const t = p(n), [e, r, i] = function(n) {
let t = 0n, e = 0n, r = !1;
t = n / l, (n %= l) < 36525n ? r = !0 : (r = !1, e = 1n, e += (n -= 36525n) / d, n %= d);
let a = 400n * t + 100n * e, i = !0;
for (; 1 == i;) {
let t = r ? 366n : 365n;
if (n < t) {
i = !1;
let e = 0n;
for (;;) {
let t = BigInt((r ? f : o)[Number(e)]);
if (n < t) return [
a,
e + 1n,
n + 1n
];
e += 1n, n -= t;
}
} else a += 1n, n -= t, r = a % 4n === 0n;
}
return [
0n,
0n,
0n
];
}(t.day);
t.day = i;
const u = e > a;
return {
pos: u,
year: u ? e - a : a + 1n - e,
month: r,
time: t
};
}(n);
let u = `~${e}${t ? "" : "-"}.${r}.${i.day}`;
return 0n === i.hour && 0n === i.minute && 0n === i.second && 0 === i.ms.length || (u += `..${i.hour.toString().padStart(2, "0")}.${i.minute.toString().padStart(2, "0")}.${i.second.toString().padStart(2, "0")}`, 0 !== i.ms.length && (u += `..${i.ms.map(((n) => n.toString(16).padStart(4, "0"))).join(".")}`)), u;
}(n.atom);
case "r": return function(n) {
if (0n === n) return "~s0";
const { day: t, hour: e, minute: r, second: a, ms: i } = p(n);
let o = [];
return 0n !== t && o.push("d" + t.toString()), 0n !== e && o.push("h" + e.toString()), 0n !== r && o.push("m" + r.toString()), 0n !== a && o.push("s" + a.toString()), 0 !== i.length && (0 === o.length && o.push("s0"), o.push("." + i.map(((n) => n.toString(16).padStart(4, "0"))).join("."))), "~" + o.join(".");
}(n.atom);
default: return en(n.atom);
}
case "f": switch (n.atom) {
case 0n: return ".y";
case 1n: return ".n";
default: return en(n.atom);
}
case "n": return "~";
case "i": switch (n.aura[1]) {
case "f": return "." + fn(n.atom, 1, 4, 10);
case "s": return "." + fn(n.atom, 2, 8, 16);
default: return en(n.atom);
}
case "p": return $(n.atom);
case "q": return function(n) {
const t = n.toString(16), e = t.length, r = Buffer.from(t.padStart(e + e % 2, "0"), "hex"), a = r.length % 2 != 0 && r.length > 1 ? [[r[0]]].concat(_(Array.from(r.slice(1)), 2)) : _(Array.from(r), 2);
return a.reduce(((n, t) => {
return n + (".~" === n ? "" : "-") + ((e = t).length % 2 != 0 && a.length > 1 ? void 0 === (r = e)[1] ? E[r[0]] : C[r[0]] + E[r[1]] : ((n) => void 0 === n[1] ? E[n[0]] : C[n[0]] + E[n[1]])(e));
var e, r;
}), ".~");
}(n.atom);
case "r": switch (n.aura[1]) {
case "d": return F("d", n.atom);
case "h": return F("h", n.atom);
case "q": return F("q", n.atom);
case "s": return F("s", n.atom);
default: return en(n.atom);
}
case "u": switch (n.aura[1]) {
case "c": throw new Error("aura-js: @uc rendering unsupported");
case "b": return "0b" + on(n.atom.toString(2), 4);
case "i": return "0i" + n.atom.toString(10).padStart(1, "0");
case "x": return "0x" + on(n.atom.toString(16), 4);
case "v": return "0v" + on(n.atom.toString(32), 5);
case "w": return "0w" + on(function(n, t, e) {
if (0n === e) return t[0];
let r = "";
const a = BigInt(6);
for (; 0n !== e;) r = t[Number(BigInt.asUintN(6, e))] + r, e >>= a;
return r;
}(0, an, n.atom), 5);
default: return on(n.atom.toString(10), 3);
}
case "s":
const t = 1n & n.atom;
return n.atom = t + (n.atom >> 1n), n.aura = n.aura.replace("s", "u"), (0n === t ? "--" : "-") + tn(n);
case "t": return "a" === n.aura[1] ? "s" === n.aura[2] ? un(n.atom) : "~." + un(n.atom) : "~~" + rn(un(n.atom));
default: return en(n.atom);
}
}
}
function en(n) {
return "0x" + function(n, t) {
return t.toString(16).padStart(1, "0");
}(0, n);
}
function rn(n) {
let t = "";
for (let e = 0; e < n.length; e += 1) {
const r = n[e];
let a = "";
switch (r) {
case " ":
a = ".";
break;
case ".":
a = "~.";
break;
case "~":
a = "~~";
break;
default: {
const t = n.codePointAt(e);
if (!t) break;
t > 65535 && (e += 1), a = t >= 97 && t <= 122 || t >= 48 && t <= 57 || "-" === r ? r : `~${t.toString(16)}.`;
}
}
t += a;
}
return t;
}
const an = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-~";
function on(n, t) {
return n.replace(new RegExp(`(?=(?:.{${t}})+$)(?!^)`, "g"), ".");
}
function fn(n, t, e, r) {
void 0 === r && (r = 10);
let a = "";
const i = 8n * BigInt(t), o = (1n << i) - 1n;
for (; e-- > 0;) "" !== a && (a = "." + a), a = (n & o).toString(r) + a, n >>= i;
return a;
}
function un(n) {
return new TextDecoder("utf-8").decode(function(n) {
if (0n === n) return new Uint8Array(0);
const t = n.toString(16), e = t.length % 2 == 0 ? t : "0" + t, r = new Uint8Array(e.length / 2);
for (let n = 0; n < e.length; n += 2) {
const t = e.slice(n, n + 2), a = parseInt(t, 16) << 24 >> 24;
r[n / 2] = a;
}
return r;
}(n).reverse());
}
const sn = {
toSeconds: function(n) {
const { day: t, hour: e, minute: r, second: a } = p(n);
return 60n * (60n * (24n * t + e) + r) + a;
},
fromSeconds: function(n) {
return m({
day: 0n,
hour: 0n,
minute: 0n,
second: n,
ms: []
});
}
}, cn = {
cite: function(n) {
let t;
return t = "bigint" == typeof n ? n : z(n), t <= 4294967295n ? $(t) : t <= 18446744073709551615n ? $(4294967295n & t).replace("-", "^") : $(BigInt("0x" + t.toString(16).slice(0, 4))) + "_" + $(65535n & t).slice(1);
},
sein: function(n) {
let t;
t = "bigint" == typeof n ? n : z(n);
let e = A(t);
const r = "czar" === e ? t : "king" === e ? 255n & t : "duke" === e ? 65535n & t : "earl" === e ? 4294967295n & t : 65535n & t;
return "bigint" == typeof n ? r : $(r);
},
clan: A,
kind: function(n) {
return k(A(n));
},
rankToSize: k,
sizeToRank: function(n) {
switch (n) {
case "galaxy": return "czar";
case "star": return "king";
case "planet": return "duke";
case "moon": return "earl";
case "comet": return "pawn";
}
}
};
exports.da = {
toUnix: function(n) {
return Math.round(Number(1000n * (r / 2000n + (n - e)) / r));
},
fromUnix: function(n) {
return e + BigInt(n) * r / 1000n;
}
}, exports.dr = sn, exports.nuck = J, exports.p = cn, exports.parse = T, exports.rend = tn, exports.render = Y, exports.scot = nn, exports.slav = D, exports.slaw = H, exports.tryParse = G, exports.valid = function(n, t) {
return null !== H(n, t);
};
}));
//#endregion
//#region extensions/tlon/src/urbit/story.ts
var import_dist = (/* @__PURE__ */ __commonJSMin(((exports, module) => {
module.exports = require_aura_cjs_production_min();
})))();
/**
* Parse inline markdown formatting (bold, italic, code, links, mentions)
*/
function parseInlineMarkdown(text) {
const result = [];
let remaining = text;
while (remaining.length > 0) {
const shipMatch = remaining.match(/^(~[a-z][-a-z0-9]*)/);
if (shipMatch) {
result.push({ ship: shipMatch[1] });
remaining = remaining.slice(shipMatch[0].length);
continue;
}
const boldMatch = remaining.match(/^\*\*(.+?)\*\*|^__(.+?)__/);
if (boldMatch) {
const content = boldMatch[1] || boldMatch[2];
result.push({ bold: parseInlineMarkdown(content) });
remaining = remaining.slice(boldMatch[0].length);
continue;
}
const italicsMatch = remaining.match(/^\*([^*]+?)\*|^_([^_]+?)_(?![a-zA-Z0-9])/);
if (italicsMatch) {
const content = italicsMatch[1] || italicsMatch[2];
result.push({ italics: parseInlineMarkdown(content) });
remaining = remaining.slice(italicsMatch[0].length);
continue;
}
const strikeMatch = remaining.match(/^~~(.+?)~~/);
if (strikeMatch) {
result.push({ strike: parseInlineMarkdown(strikeMatch[1]) });
remaining = remaining.slice(strikeMatch[0].length);
continue;
}
const codeMatch = remaining.match(/^`([^`]+)`/);
if (codeMatch) {
result.push({ "inline-code": codeMatch[1] });
remaining = remaining.slice(codeMatch[0].length);
continue;
}
const linkMatch = remaining.match(/^\[([^\]]+)\]\(([^)]+)\)/);
if (linkMatch) {
result.push({ link: {
href: linkMatch[2],
content: linkMatch[1]
} });
remaining = remaining.slice(linkMatch[0].length);
continue;
}
const imageMatch = remaining.match(/^!\[([^\]]*)\]\(([^)]+)\)/);
if (imageMatch) {
result.push({ __image: {
src: imageMatch[2],
alt: imageMatch[1]
} });
remaining = remaining.slice(imageMatch[0].length);
continue;
}
const urlMatch = remaining.match(/^(https?:\/\/[^\s<>"\]]+)/);
if (urlMatch) {
result.push({ link: {
href: urlMatch[1],
content: urlMatch[1]
} });
remaining = remaining.slice(urlMatch[0].length);
continue;
}
const plainMatch = remaining.match(/^[^*_`~[#~\n:/]+/);
if (plainMatch) {
result.push(plainMatch[0]);
remaining = remaining.slice(plainMatch[0].length);
continue;
}
result.push(remaining[0]);
remaining = remaining.slice(1);
}
return mergeAdjacentStrings(result);
}
/**
* Merge adjacent string elements in an inline array
*/
function mergeAdjacentStrings(inlines) {
const result = [];
for (const item of inlines) if (typeof item === "string" && typeof result[result.length - 1] === "string") result[result.length - 1] = result[result.length - 1] + item;
else result.push(item);
return result;
}
/**
* Create an image block
*/
function createImageBlock(src, alt = "", height = 0, width = 0) {
return { block: { image: {
src,
height,
width,
alt
} } };
}
/**
* Check if URL looks like an image
*/
function isImageUrl(url) {
return /\.(jpg|jpeg|png|gif|webp|svg|bmp|ico)(\?.*)?$/i.test(url);
}
/**
* Process inlines and extract any image markers into blocks
*/
function processInlinesForImages(inlines) {
const cleanInlines = [];
const imageBlocks = [];
for (const inline of inlines) if (typeof inline === "object" && "__image" in inline) {
const img = inline["__image"];
imageBlocks.push(createImageBlock(img.src, img.alt));
} else cleanInlines.push(inline);
return {
inlines: cleanInlines,
imageBlocks
};
}
/**
* Convert markdown text to Tlon story format
*/
function markdownToStory(markdown) {
const story = [];
const lines = markdown.split("\n");
let i = 0;
while (i < lines.length) {
const line = lines[i];
if (line.startsWith("```")) {
const lang = line.slice(3).trim() || "plaintext";
const codeLines = [];
i++;
while (i < lines.length && !lines[i].startsWith("```")) {
codeLines.push(lines[i]);
i++;
}
story.push({ block: { code: {
code: codeLines.join("\n"),
lang
} } });
i++;
continue;
}
const headerMatch = line.match(/^(#{1,6})\s+(.+)$/);
if (headerMatch) {
const tag = `h${headerMatch[1].length}`;
story.push({ block: { header: {
tag,
content: parseInlineMarkdown(headerMatch[2])
} } });
i++;
continue;
}
if (/^(-{3,}|\*{3,})$/.test(line.trim())) {
story.push({ block: { rule: null } });
i++;
continue;
}
if (line.startsWith("> ")) {
const quoteLines = [];
while (i < lines.length && lines[i].startsWith("> ")) {
quoteLines.push(lines[i].slice(2));
i++;
}
const quoteText = quoteLines.join("\n");
story.push({ inline: [{ blockquote: parseInlineMarkdown(quoteText) }] });
continue;
}
if (line.trim() === "") {
i++;
continue;
}
const paragraphLines = [];
while (i < lines.length && lines[i].trim() !== "" && !lines[i].startsWith("#") && !lines[i].startsWith("```") && !lines[i].startsWith("> ") && !/^(-{3,}|\*{3,})$/.test(lines[i].trim())) {
paragraphLines.push(lines[i]);
i++;
}
if (paragraphLines.length > 0) {
const inlines = parseInlineMarkdown(paragraphLines.join("\n"));
const withBreaks = [];
for (const inline of inlines) if (typeof inline === "string" && inline.includes("\n")) {
const parts = inline.split("\n");
for (let j = 0; j < parts.length; j++) {
if (parts[j]) withBreaks.push(parts[j]);
if (j < parts.length - 1) withBreaks.push({ break: null });
}
} else withBreaks.push(inline);
const { inlines: cleanInlines, imageBlocks } = processInlinesForImages(withBreaks);
if (cleanInlines.length > 0) story.push({ inline: cleanInlines });
story.push(...imageBlocks);
}
}
return story;
}
//#endregion
//#region extensions/tlon/src/urbit/send.ts
function createTlonSendReceipt(params) {
return createMessageReceiptFromOutboundResults({
results: [{
channel: "tlon",
messageId: params.messageId,
conversationId: params.conversationId
}],
threadId: params.conversationId,
kind: params.kind
});
}
async function sendDm({ api, fromShip, toShip, text }) {
return sendDmWithStory({
api,
fromShip,
toShip,
story: markdownToStory(text),
kind: "text"
});
}
async function sendDmWithStory({ api, fromShip, toShip, story, kind = "unknown" }) {
const sentAt = Date.now();
const id = `${fromShip}/${(0, import_dist.scot)("ud", import_dist.da.fromUnix(sentAt))}`;
const action = {
ship: toShip,
diff: {
id,
delta: { add: {
memo: {
content: story,
author: fromShip,
sent: sentAt
},
kind: null,
time: null
} }
}
};
await api.poke({
app: "chat",
mark: "chat-dm-action",
json: action
});
return {
channel: "tlon",
messageId: id,
receipt: createTlonSendReceipt({
messageId: id,
conversationId: toShip,
kind
})
};
}
async function sendGroupMessage({ api, fromShip, hostShip, channelName, text, replyToId }) {
return sendGroupMessageWithStory({
api,
fromShip,
hostShip,
channelName,
story: markdownToStory(text),
replyToId,
kind: "text"
});
}
async function sendGroupMessageWithStory({ api, fromShip, hostShip, channelName, story, replyToId, kind = "unknown" }) {
const sentAt = Date.now();
let formattedReplyId = replyToId;
if (replyToId && /^\d+$/.test(replyToId)) try {
formattedReplyId = (0, import_dist.scot)("ud", BigInt(replyToId));
} catch {}
const action = { channel: {
nest: `chat/${hostShip}/${channelName}`,
action: formattedReplyId ? { post: { reply: {
id: formattedReplyId,
action: { add: {
content: story,
author: fromShip,
sent: sentAt
} }
} } } : { post: { add: {
content: story,
author: fromShip,
sent: sentAt,
kind: "/chat",
blob: null,
meta: null
} } }
} };
await api.poke({
app: "channels",
mark: "channel-action-1",
json: action
});
const messageId = `${fromShip}/${sentAt}`;
return {
channel: "tlon",
messageId,
receipt: createTlonSendReceipt({
messageId,
conversationId: `${hostShip}/${channelName}`,
kind
})
};
}
/**
* Build a story with text and optional media (image)
*/
function buildMediaStory(text, mediaUrl) {
const story = [];
const cleanText = text?.trim() ?? "";
const cleanUrl = mediaUrl?.trim() ?? "";
if (cleanText) story.push(...markdownToStory(cleanText));
if (cleanUrl && isImageUrl(cleanUrl)) story.push(createImageBlock(cleanUrl, ""));
else if (cleanUrl) story.push({ inline: [{ link: {
href: cleanUrl,
content: cleanUrl
} }] });
return story.length > 0 ? story : [{ inline: [""] }];
}
//#endregion
//#region extensions/tlon/src/urbit/channel-ops.ts
async function putUrbitChannel(deps, params) {
return await urbitFetch({
baseUrl: deps.baseUrl,
path: `/~/channel/${deps.channelId}`,
init: {
method: "PUT",
headers: {
"Content-Type": "application/json",
Cookie: deps.cookie
},
body: JSON.stringify(params.body)
},
ssrfPolicy: deps.ssrfPolicy,
lookupFn: deps.lookupFn,
fetchImpl: deps.fetchImpl,
timeoutMs: 3e4,
auditContext: params.auditContext
});
}
async function pokeUrbitChannel(deps, params) {
const pokeId = Date.now();
const { response, release } = await putUrbitChannel(deps, {
body: [{
id: pokeId,
action: "poke",
ship: deps.ship,
app: params.app,
mark: params.mark,
json: params.json
}],
auditContext: params.auditContext
});
try {
if (!response.ok && response.status !== 204) {
const errorText = await response.text().catch(() => "");
throw new Error(`Poke failed: ${response.status}${errorText ? ` - ${errorText}` : ""}`);
}
return pokeId;
} finally {
await release();
}
}
async function scryUrbitPath(deps, params) {
const scryPath = `/~/scry${params.path}`;
const { response, release } = await urbitFetch({
baseUrl: deps.baseUrl,
path: scryPath,
init: {
method: "GET",
headers: { Cookie: deps.cookie }
},
ssrfPolicy: deps.ssrfPolicy,
lookupFn: deps.lookupFn,
fetchImpl: deps.fetchImpl,
timeoutMs: 3e4,
auditContext: params.auditContext
});
try {
if (!response.ok) throw new Error(`Scry failed: ${response.status} for path ${params.path}`);
try {
return await response.json();
} catch (cause) {
throw new Error(`Urbit scry response was malformed JSON for path ${params.path}`, { cause });
}
} finally {
await release();
}
}
async function createUrbitChannel(deps, params) {
const { response, release } = await putUrbitChannel(deps, params);
try {
if (!response.ok && response.status !== 204) throw new UrbitHttpError({
operation: "Channel creation",
status: response.status
});
} finally {
await release();
}
}
async function wakeUrbitChannel(deps) {
const { response, release } = await putUrbitChannel(deps, {
body: [{
id: Date.now(),
action: "poke",
ship: deps.ship,
app: "hood",
mark: "helm-hi",
json: "Opening API channel"
}],
auditContext: "tlon-urbit-channel-wake"
});
try {
if (!response.ok && response.status !== 204) throw new UrbitHttpError({
operation: "Channel activation",
status: response.status
});
} finally {
await release();
}
}
async function ensureUrbitChannelOpen(deps, params) {
await createUrbitChannel(deps, {
body: params.createBody,
auditContext: params.createAuditContext
});
await wakeUrbitChannel(deps);
}
//#endregion
//#region extensions/tlon/src/urbit/sse-client.ts
function parseUrbitSsePayload(data) {
try {
return JSON.parse(data);
} catch (cause) {
throw new Error("Tlon Urbit SSE event was malformed JSON", { cause });
}
}
function parseUrbitSseEventId(value) {
const trimmed = value.trim();
if (!/^\d+$/.test(trimmed)) return null;
const parsed = Number(trimmed);
return Number.isSafeInteger(parsed) ? parsed : null;
}
var UrbitSSEClient = class {
constructor(url, cookie, options = {}) {
this.subscriptions = [];
this.eventHandlers = /* @__PURE__ */ new Map();
this.aborted = false;
this.streamController = null;
this.reconnectAttempts = 0;
this.isConnected = false;
this.streamRelease = null;
this.lastHeardEventId = -1;
this.lastAcknowledgedEventId = -1;
this.ackThreshold = 20;
const ctx = getUrbitContext(url, options.ship);
this.url = ctx.baseUrl;
this.cookie = normalizeUrbitCookie(cookie);
this.ship = ctx.ship;
this.channelId = `${Math.floor(Date.now() / 1e3)}-${randomUUID()}`;
this.channelUrl = new URL(`/~/channel/${this.channelId}`, this.url).toString();
this.onReconnect = options.onReconnect ?? null;
this.autoReconnect = options.autoReconnect !== false;
this.maxReconnectAttempts = options.maxReconnectAttempts ?? 10;
this.reconnectDelay = resolveTimerTimeoutMs(options.reconnectDelay, 1e3);
this.maxReconnectDelay = resolveTimerTimeoutMs(options.maxReconnectDelay, 3e4);
this.logger = options.logger ?? {};
this.ssrfPolicy = options.ssrfPolicy;
this.lookupFn = options.lookupFn;
this.fetchImpl = options.fetchImpl;
}
channelRequestContext() {
return {
baseUrl: this.url,
cookie: this.cookie,
ship: this.ship,
channelId: this.channelId,
ssrfPolicy: this.ssrfPolicy,
lookupFn: this.lookupFn,
fetchImpl: this.fetchImpl
};
}
async subscribe(params) {
const subId = this.subscriptions.length + 1;
const subscription = {
id: subId,
action: "subscribe",
ship: this.ship,
app: params.app,
path: params.path
};
this.subscriptions.push(subscription);
this.eventHandlers.set(subId, {
event: params.event,
err: params.err,
quit: params.quit
});
if (this.isConnected) try {
await this.sendSubscription(subscription);
} catch (error) {
this.eventHandlers.get(subId)?.err?.(error);
}
return subId;
}
async sendSubscription(subscription) {
const { response, release } = await this.putChannelPayload([subscription], {
timeoutMs: 3e4,
auditContext: "tlon-urbit-subscribe"
});
try {
if (!response.ok && response.status !== 204) {
const errorText = await response.text().catch(() => "");
throw new Error(`Subscribe failed: ${response.status}${errorText ? ` - ${errorText}` : ""}`);
}
} finally {
await release();
}
}
async connect() {
await ensureUrbitChannelOpen(this.channelRequestContext(), {
createBody: this.subscriptions,
createAuditContext: "tlon-urbit-channel-create"
});
await this.openStream();
this.isConnected = true;
this.reconnectAttempts = 0;
}
async openStream() {
const controller = new AbortController();
const timeoutId = setTimeout(() => controller.abort(), 6e4);
this.streamController = controller;
const { response, release } = await urbitFetch({
baseUrl: this.url,
path: `/~/channel/${this.channelId}`,
init: {
method: "GET",
headers: {
Accept: "text/event-stream",
Cookie: this.cookie
}
},
ssrfPolicy: this.ssrfPolicy,
lookupFn: this.lookupFn,
fetchImpl: this.fetchImpl,
signal: controller.signal,
auditContext: "tlon-urbit-sse-stream"
});
this.streamRelease = release;
clearTimeout(timeoutId);
if (!response.ok) {
await release();
this.streamRelease = null;
throw new Error(`Stream connection failed: ${response.status}`);
}
this.processStream(response.body).catch((error) => {
if (!this.aborted) {
this.logger.error?.(`Stream error: ${String(error)}`);
for (const { err } of this.eventHandlers.values()) if (err) err(error);
}
});
}
async processStream(body) {
if (!body) return;
const stream = body instanceof ReadableStream ? Readable.fromWeb(body) : body;
let buffer = "";
try {
for await (const chunk of stream) {
if (this.aborted) break;
buffer += chunk.toString();
let eventEnd;
while ((eventEnd = buffer.indexOf("\n\n")) !== -1) {
const eventData = buffer.slice(0, eventEnd);
buffer = buffer.slice(eventEnd + 2);
this.processEvent(eventData);
}
}
} finally {
if (this.streamRelease) {
const release = this.streamRelease;
this.streamRelease = null;
await release();
}
this.streamController = null;
if (!this.aborted && this.autoReconnect) {
this.isConnected = false;
this.logger.log?.("[SSE] Stream ended, attempting reconnection...");
await this.attemptReconnect();
}
}
}
processEvent(eventData) {
const lines = eventData.split("\n");
let data = null;
let eventId = null;
for (const line of lines) {
if (line.startsWith("id: ")) eventId = parseUrbitSseEventId(line.slice(4));
if (line.startsWith("data: ")) data = line.slice(6);
}
if (!data) return;
if (eventId !== null && !Number.isNaN(eventId)) {
if (eventId > this.lastHeardEventId) {
this.lastHeardEventId = eventId;
if (eventId - this.lastAcknowledgedEventId > this.ackThreshold) {
this.logger.log?.(`[SSE] Acking event ${eventId} (last acked: ${this.lastAcknowledgedEventId})`);
this.ack(eventId).catch((err) => {
this.logger.error?.(`Failed to ack event ${eventId}: ${String(err)}`);
});
}
}
}
try {
const parsed = parseUrbitSsePayload(data);
if (parsed.response === "quit") {
if (parsed.id) {
const handlers = this.eventHandlers.get(parsed.id);
if (handlers?.quit) handlers.quit();
}
return;
}
if (parsed.id && this.eventHandlers.has(parsed.id)) {
const { event } = this.eventHandlers.get(parsed.id) ?? {};
if (event && parsed.json) event(parsed.json);
} else if (parsed.json) {
for (const { event } of this.eventHandlers.values()) if (event) event(parsed.json);
}
} catch (error) {
this.logger.error?.(`Error parsing SSE event: ${String(error)}`);
}
}
async poke(params) {
return await pokeUrbitChannel(this.channelRequestContext(), {
...params,
auditContext: "tlon-urbit-poke"
});
}
async scry(path) {
return await scryUrbitPath({
baseUrl: this.url,
cookie: this.cookie,
ssrfPolicy: this.ssrfPolicy,
lookupFn: this.lookupFn,
fetchImpl: this.fetchImpl
}, {
path,
auditContext: "tlon-urbit-scry"
});
}
/**
* Update the cookie used for authentication.
* Call this when re-authenticating after session expiry.
*/
updateCookie(newCookie) {
this.cookie = normalizeUrbitCookie(newCookie);
}
async ack(eventId) {
this.lastAcknowledgedEventId = eventId;
const ackData = {
id: Date.now(),
action: "ack",
"event-id": eventId
};
const { response, release } = await this.putChannelPayload([ackData], {
timeoutMs: 1e4,
auditContext: "tlon-urbit-ack"
});
try {
if (!response.ok) throw new Error(`Ack failed with status ${response.status}`);
} finally {
await release();
}
}
async attemptReconnect() {
if (this.aborted || !this.autoReconnect) {
this.logger.log?.("[SSE] Reconnection aborted or disabled");
return;
}
if (this.reconnectAttempts >= this.maxReconnectAttempts) {
this.logger.log?.(`[SSE] Max reconnection attempts (${this.maxReconnectAttempts}) reached. Waiting 10s before resetting...`);
const extendedBackoff = 1e4;
await new Promise((resolve) => {
setTimeout(resolve, extendedBackoff);
});
this.reconnectAttempts = 0;
this.logger.log?.("[SSE] Reconnection attempts reset, resuming reconnection...");
}
this.reconnectAttempts += 1;
const delay = Math.min(this.reconnectDelay * 2 ** (this.reconnectAttempts - 1), this.maxReconnectDelay);
this.logger.log?.(`[SSE] Reconnection attempt ${this.reconnectAttempts}/${this.maxReconnectAttempts} in ${delay}ms...`);
await new Promise((resolve) => {
setTimeout(resolve, delay);
});
try {
this.channelId = `${Math.floor(Date.now() / 1e3)}-${randomUUID()}`;
this.channelUrl = new URL(`/~/channel/${this.channelId}`, this.url).toString();
if (this.onReconnect) await this.onReconnect(this);
await this.connect();
this.logger.log?.("[SSE] Reconnection successful!");
} catch (error) {
this.logger.error?.(`[SSE] Reconnection failed: ${String(error)}`);
await this.attemptReconnect();
}
}
async close() {
this.aborted = true;
this.isConnected = false;
this.streamController?.abort();
try {
const unsubscribes = this.subscriptions.map((sub) => ({
id: sub.id,
action: "unsubscribe",
subscription: sub.id
}));
{
const { response, release } = await this.putChannelPayload(unsubscribes, {
timeoutMs: 3e4,
auditContext: "tlon-urbit-unsubscribe"
});
try {
response.body?.cancel();
} finally {
await release();
}
}
{
const { response, release } = await urbitFetch({
baseUrl: this.url,
path: `/~/channel/${this.channelId}`,
init: {
method: "DELETE",
headers: { Cookie: this.cookie }
},
ssrfPolicy: this.ssrfPolicy,
lookupFn: this.lookupFn,
fetchImpl: this.fetchImpl,
timeoutMs: 3e4,
auditContext: "tlon-urbit-channel-close"
});
try {
response.body?.cancel();
} finally {
await release();
}
}
} catch (error) {
this.logger.error?.(`Error closing channel: ${String(error)}`);
}
if (this.streamRelease) {
const release = this.streamRelease;
this.streamRelease = null;
await release();
}
}
async putChannelPayload(payload, params) {
return await urbitFetch({
baseUrl: this.url,
path: `/~/channel/${this.channelId}`,
init: {
method: "PUT",
headers: {
"Content-Type": "application/json",
Cookie: this.cookie
},
body: JSON.stringify(payload)
},
ssrfPolicy: this.ssrfPolicy,
lookupFn: this.lookupFn,
fetchImpl: this.fetchImpl,
timeoutMs: params.timeoutMs,
auditContext: params.auditContext
});
}
};
//#endregion
//#region extensions/tlon/src/monitor/approval.ts
/**
* Approval system for managing DM, channel mention, and group invite approvals.
*
* When an unknown ship tries to interact with the bot, the owner receives
* a notification and can approve or deny the request.
*/
/**
* Generate a unique approval ID in the format: {type}-{timestamp}-{shortHash}
*/
function generateApprovalId(type) {
return `${type}-${Date.now()}-${randomBytes(3).toString("hex")}`;
}
/**
* Create a pending approval object.
*/
function createPendingApproval(params) {
return {
id: generateApprovalId(params.type),
type: params.type,
requestingShip: params.requestingShip,
channelNest: params.channelNest,
groupFlag: params.groupFlag,
messagePreview: params.messagePreview,
originalMessage: params.originalMessage,
timestamp: Date.now()
};
}
/**
* Truncate text to a maximum length with ellipsis.
*/
function truncate(text, maxLength) {
if (text.length <= maxLength) return text;
return text.slice(0, maxLength - 3) + "...";
}
/**
* Format a notification message for the owner about a pending approval.
*/
function formatApprovalRequest(approval) {
const preview = approval.messagePreview ? `\n"${truncate(approval.messagePreview, 100)}"` : "";
switch (approval.type) {
case "dm": return `New DM request from ${approval.requestingShip}:${preview}\n\nReply "approve", "deny", or "block" (ID: ${approval.id})`;
case "channel": return `${approval.requestingShip} mentioned you in ${approval.channelNest}:${preview}\n\nReply "approve", "deny", or "block"\n(ID: ${approval.id})`;
case "group": return `Group invite from ${approval.requestingShip} to join ${approval.groupFlag}\n\nReply "approve", "deny", or "block"\n(ID: ${approval.id})`;
}
throw new Error("Unsupported approval type");
}
/**
* Parse an owner's response to an approval request.
* Supports formats:
* - "approve" / "deny" / "block" (applies to most recent pending)
* - "approve dm-1234567890-abc" / "deny dm-1234567890-abc" (specific ID)
* - "block" permanently blocks the ship via Tlon's native blocking
*/
function parseApprovalResponse(text) {
const match = normalizeLowercaseStringOrEmpty(text).match(/^(approve|deny|block)(?:\s+(.+))?$/);
if (!match) return null;
return {
action: match[1],
id: match[2]?.trim()
};
}
/**
* Check if a message text looks like an approval response.
* Used to determine if we should intercept the message before normal processing.
*/
function isApprovalResponse(text) {
const trimmed = normalizeLowercaseStringOrEmpty(text);
return trimmed.startsWith("approve") || trimmed.startsWith("deny") || trimmed.startsWith("block");
}
/**
* Find a pending approval by ID, or return the most recent if no ID specified.
*/
function findPendingApproval(pendingApprovals, id) {
if (id) return pendingApprovals.find((a) => a.id === id);
return pendingApprovals[pendingApprovals.length - 1];
}
/**
* Remove a pending approval from the list by ID.
*/
function removePendingApproval(pendingApprovals, id) {
return pendingApprovals.filter((a) => a.id !== id);
}
/**
* Format a confirmation message after an approval action.
*/
function formatApprovalConfirmation(approval, action) {
if (action === "block") return `Blocked ${approval.requestingShip}. They will no longer be able to contact the bot.`;
const actionText = action === "approve" ? "Approved" : "Denied";
switch (approval.type) {
case "dm":
if (action === "approve") return `${actionText} DM access for ${approval.requestingShip}. They can now message the bot.`;
return `${actionText} DM request from ${approval.requestingShip}.`;
case "channel":
if (action === "approve") return `${actionText} ${approval.requestingShip} for ${approval.channelNest}. They can now interact in this channel.`;
return `${actionText} ${approval.requestingShip} for ${approval.channelNest}.`;
case "group":
if (action === "approve") return `${actionText} group invite from ${approval.requestingShip} to ${approval.groupFlag}. Joining group...`;
return `${actionText} group invite from ${approval.requestingShip} to ${approval.groupFlag}.`;
}
throw new Error("Unsupported approval type");
}
/**
* Parse an admin command from owner message.
* Supports:
* - "unblock ~ship" - unblock a specific ship
* - "blocked" - list all blocked ships
* - "pending" - list all pending approvals
*/
function parseAdminCommand(text) {
const trimmed = normalizeLowercaseStringOrEmpty(text);
if (trimmed === "blocked") return { type: "blocked" };
if (trimmed === "pending") return { type: "pending" };
const unblockMatch = trimmed.match(/^unblock\s+(~[\w-]+)$/);
if (unblockMatch) return {
type: "unblock",
ship: unblockMatch[1]
};
return null;
}
/**
* Check if a message text looks like an admin command.
*/
function isAdminCommand(text) {
return parseAdminCommand(text) !== null;
}
/**
* Format the list of blocked ships for display to owner.
*/
function formatBlockedList(ships) {
if (ships.length === 0) return "No ships are currently blocked.";
return `Blocked ships (${ships.length}):\n${ships.map((s) => `• ${s}`).join("\n")}`;
}
/**
* Format the list of pending approvals for display to owner.
*/
function formatPendingList(approvals) {
if (approvals.length === 0) return "No pending approval requests.";
return `Pending approvals (${approvals.length}):\n${approvals.map((a) => `• ${a.id}: ${a.type} from ${a.requestingShip}`).join("\n")}`;
}
//#endregion
//#region extensions/tlon/src/monitor/approval-runtime.ts
function createTlonApprovalRuntime(params) {
const { api, runtime, botShipName, getPendingApprovals, setPendingApprovals, getCurrentSettings, setCurrentSettings, getEffectiveDmAllowlist, setEffectiveDmAllowlist, getEffectiveOwnerShip, processApprovedMessage, refreshWatchedChannels } = params;
const savePendingApprovals = async () => {
try {
await api.poke({
app: "settings",
mark: "settings-event",
json: { "put-entry": {
desk: "moltbot",
"bucket-key": "tlon",
"entry-key": "pendingApprovals",
value: JSON.stringify(getPendingApprovals())
} }
});
} catch (err) {
runtime.error?.(`[tlon] Failed to save pending approvals: ${String(err)}`);
}
};
const addToDmAllowlist = async (ship) => {
const normalizedShip = normalizeShip(ship);
const nextAllowlist = getEffectiveDmAllowlist().includes(normalizedShip) ? getEffectiveDmAllowlist() : [...getEffectiveDmAllowlist(), normalizedShip];
setEffectiveDmAllowlist(nextAllowlist);
try {
await api.poke({
app: "settings",
mark: "settings-event",
json: { "put-entry": {
desk: "moltbot",
"bucket-key": "tlon",
"entry-key": "dmAllowlist",
value: nextAllowlist
} }
});
runtime.log?.(`[tlon] Added ${normalizedShip} to dmAllowlist`);
} catch (err) {
runtime.error?.(`[tlon] Failed to update dmAllowlist: ${String(err)}`);
}
};
const addToChannelAllowlist = async (ship, channelNest) => {
const normalizedShip = normalizeShip(ship);
const currentSettings = getCurrentSettings();
const channelRules = currentSettings.channelRules ?? {};
const rule = channelRules[channelNest] ?? {
mode: "restricted",
allowedShips: []
};
const allowedShips = [...rule.allowedShips ?? []];
if (!allowedShips.includes(normalizedShip)) allowedShips.push(normalizedShip);
const updatedRules = {
...channelRules,
[channelNest]: {
...rule,
allowedShips
}
};
setCurrentSettings({
...currentSettings,
channelRules: updatedRules
});
try {
await api.poke({
app: "settings",
mark: "settings-event",
json: { "put-entry": {
desk: "moltbot",
"bucket-key": "tlon",
"entry-key": "channelRules",
value: JSON.stringify(updatedRules)
} }
});
runtime.log?.(`[tlon] Added ${normalizedShip} to ${channelNest} allowlist`);
} catch (err) {
runtime.error?.(`[tlon] Failed to update channelRules: ${String(err)}`);
}
};
const blockShip = async (ship) => {
const normalizedShip = normalizeShip(ship);
try {
await api.poke({
app: "chat",
mark: "chat-block-ship",
json: { ship: normalizedShip }
});
runtime.log?.(`[tlon] Blocked ship ${normalizedShip}`);
} catch (err) {
runtime.error?.(`[tlon] Failed to block ship ${normalizedShip}: ${String(err)}`);
}
};
const isShipBlocked = async (ship) => {
const normalizedShip = normalizeShip(ship);
try {
const blocked = await api.scry("/chat/blocked.json");
return Array.isArray(blocked) && blocked.some((item) => normalizeShip(item) === normalizedShip);
} catch (err) {
runtime.log?.(`[tlon] Failed to check blocked list: ${String(err)}`);
return false;
}
};
const getBlockedShips = async () => {
try {
const blocked = await api.scry("/chat/blocked.json");
return Array.isArray(blocked) ? blocked : [];
} catch (err) {
runtime.log?.(`[tlon] Failed to get blocked list: ${String(err)}`);
return [];
}
};
const unblockShip = async (ship) => {
const normalizedShip = normalizeShip(ship);
try {
await api.poke({
app: "chat",
mark: "chat-unblock-ship",
json: { ship: normalizedShip }
});
runtime.log?.(`[tlon] Unblocked ship ${normalizedShip}`);
return true;
} catch (err) {
runtime.error?.(`[tlon] Failed to unblock ship ${normalizedShip}: ${String(err)}`);
return false;
}
};
const sendOwnerNotification = async (message) => {
const ownerShip = getEffectiveOwnerShip();
if (!ownerShip) {
runtime.log?.("[tlon] No ownerShip configured, cannot send notification");
return;
}
try {
await sendDm({
api,
fromShip: botShipName,
toShip: ownerShip,
text: message
});
runtime.log?.(`[tlon] Sent notification to owner ${ownerShip}`);
} catch (err) {
runtime.error?.(`[tlon] Failed to send notification to owner: ${String(err)}`);
}
};
const queueApprovalRequest = async (approval) => {
if (await isShipBlocked(approval.requestingShip)) {
runtime.log?.(`[tlon] Ignoring request from blocked ship ${approval.requestingShip}`);
return;
}
const approvals = getPendingApprovals();
const existingIndex = approvals.findIndex((item) => item.type === approval.type && item.requestingShip === approval.requestingShip && (approval.type !== "channel" || item.channelNest === approval.channelNest) && (approval.type !== "group" || item.groupFlag === approval.groupFlag));
if (existingIndex !== -1) {
const existing = approvals[existingIndex];
if (approval.originalMessage) {
existing.originalMessage = approval.originalMessage;
existing.messagePreview = approval.messagePreview;
}
runtime.log?.(`[tlon] Updated existing approval for ${approval.requestingShip} (${approval.type}) - re-sending notification`);
await savePendingApprovals();
await sendOwnerNotification(formatApprovalRequest(existing));
return;
}
setPendingApprovals([...approvals, approval]);
await savePendingApprovals();
await sendOwnerNotification(formatApprovalRequest(approval));
runtime.log?.(`[tlon] Queued approval request: ${approval.id} (${approval.type} from ${approval.requestingShip})`);
};
const handleApprovalResponse = async (text) => {
const parsed = parseApprovalResponse(text);
if (!parsed) return false;
const approval = findPendingApproval(getPendingApprovals(), parsed.id);
if (!approval) {
await sendOwnerNotification(`No pending approval found${parsed.id ? ` for ID: ${parsed.id}` : ""}`);
return true;
}
if (parsed.action === "approve") {
switch (approval.type) {
case "dm":
await addToDmAllowlist(approval.requestingShip);
if (approval.originalMessage) {
runtime.log?.(`[tlon] Processing original message from ${approval.requestingShip} after approval`);
await processApprovedMessage(approval);
}
break;
case "channel":
if (approval.channelNest) {
await addToChannelAllowlist(approval.requestingShip, approval.channelNest);
if (approval.originalMessage) {
runtime.log?.(`[tlon] Processing original message from ${approval.requestingShip} in ${approval.channelNest} after approval`);
await processApprovedMessage(approval);
}
}
break;
case "group":
if (approval.groupFlag) try {
await api.poke({
app: "groups",
mark: "group-join",
json: {
flag: approval.groupFlag,
"join-all": true
}
});
runtime.log?.(`[tlon] Joined group ${approval.groupFlag} after approval`);
setTimeout(() => {
(async () => {
try {
const newCount = await refreshWatchedChannels();
if (newCount > 0) runtime.log?.(`[tlon] Discovered ${newCount} new channel(s) after joining group`);
} catch (err) {
runtime.log?.(`[tlon] Channel discovery after group join failed: ${String(err)}`);
}
})();
}, 2e3);
} catch (err) {
runtime.error?.(`[tlon] Failed to join group ${approval.groupFlag}: ${String(err)}`);
}
break;
}
await sendOwnerNotification(formatApprovalConfirmation(approval, "approve"));
} else if (parsed.action === "block") {
await blockShip(approval.requestingShip);
await sendOwnerNotification(formatApprovalConfirmation(approval, "block"));
} else await sendOwnerNotification(formatApprovalConfirmation(approval, "deny"));
setPendingApprovals(removePendingApproval(getPendingApprovals(), approval.id));
await savePendingApprovals();
return true;
};
const handleAdminCommand = async (text) => {
const command = parseAdminCommand(text);
if (!command) return false;
switch (command.type) {
case "blocked": {
const blockedShips = await getBlockedShips();
await sendOwnerNotification(formatBlockedList(blockedShips));
runtime.log?.(`[tlon] Owner requested blocked ships list (${blockedShips.length} ships)`);
return true;
}
case "pending":
await sendOwnerNotification(formatPendingList(getPendingApprovals()));
runtime.log?.(`[tlon] Owner requested pending approvals list (${getPendingApprovals().length} pending)`);
return true;
case "unblock": {
const shipToUnblock = command.ship;
if (!await isShipBlocked(shipToUnblock)) {
await sendOwnerNotification(`${shipToUnblock} is not blocked.`);
return true;
}
await sendOwnerNotification(await unblockShip(shipToUnblock) ? `Unblocked ${shipToUnblock}.` : `Failed to unblock ${shipToUnblock}.`);
return true;
}
}
throw new Error("Unsupported Tlon admin command");
};
return {
queueApprovalRequest,
handleApprovalResponse,
handleAdminCommand
};
}
//#endregion
//#region extensions/tlon/src/monitor/authorization.ts
function resolveChannelAuthorization(cfg, channelNest, settings) {
const tlonConfig = cfg.channels?.tlon;
const fileRules = tlonConfig?.authorization?.channelRules ?? {};
const rule = (settings?.channelRules ?? {})[channelNest] ?? fileRules[channelNest];
const defaultShips = settings?.defaultAuthorizedShips ?? tlonConfig?.defaultAuthorizedShips ?? [];
return {
mode: rule?.mode ?? "restricted",
allowedShips: rule?.allowedShips ?? defaultShips
};
}
//#endregion
//#region extensions/tlon/src/monitor/utils.ts
function extractCites(content) {
if (!content || !Array.isArray(content)) return [];
const cites = [];
for (const verse of content) if (verse?.block?.cite && typeof verse.block.cite === "object") {
const cite = verse.block.cite;
if (cite.chan && typeof cite.chan === "object") {
const { nest, where } = cite.chan;
const whereMatch = where?.match(/\/msg\/(~[a-z-]+)\/(.+)/);
cites.push({
type: "chan",
nest,
where,
author: whereMatch?.[1],
postId: whereMatch?.[2]
});
} else if (cite.group && typeof cite.group === "string") cites.push({
type: "group",
group: cite.group
});
else if (cite.desk && typeof cite.desk === "object") cites.push({
type: "desk",
flag: cite.desk.flag,
where: cite.desk.where
});
else if (cite.bait && typeof cite.bait === "object") cites.push({
type: "bait",
group: cite.bait.group,
nest: cite.bait.graph,
where: cite.bait.where
});
}
return cites;
}
function formatModelName(modelString) {
if (!modelString) return "AI";
const modelName = modelString.includes("/") ? modelString.split("/")[1] : modelString;
const modelMappings = {
"claude-opus-4-5": "Claude Opus 4.5",
"claude-sonnet-4-5": "Claude Sonnet 4.5",
"claude-sonnet-3-5": "Claude Sonnet 3.5",
"gpt-4o": "GPT-4o",
"gpt-4-turbo": "GPT-4 Turbo",
"gpt-4": "GPT-4",
"gemini-2.0-flash": "Gemini 2.0 Flash",
"gemini-pro": "Gemini Pro"
};
if (modelMappings[modelName]) return modelMappings[modelName];
return modelName.replace(/-/g, " ").split(" ").map((word) => word.charAt(0).toUpperCase() + word.slice(1)).join(" ");
}
function isBotMentioned(messageText, botShipName, nickname) {
if (!messageText || !botShipName) return false;
if (/@all\b/i.test(messageText)) return true;
const escapedShip = normalizeShip(botShipName).replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
if (new RegExp(`(^|\\s)${escapedShip}(?=\\s|$)`, "i").test(messageText)) return true;
if (nickname) {
const escapedNickname = nickname.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
if (new RegExp(`(^|\\s)${escapedNickname}(?=\\s|$|[,!?.])`, "i").test(messageText)) return true;
}
return false;
}
function stripBotMention(messageText, botShipName) {
if (!messageText || !botShipName) return messageText;
return messageText.replace(normalizeShip(botShipName), "").trim();
}
const tlonIngressIdentity = {
key: "sender-ship",
normalize: normalizeShip,
sensitivity: "pii",
isWildcardEntry: () => false,
entryIdPrefix: "tlon-entry"
};
async function isDmAllowedWithIngress(senderShip, allowlist) {
return (await resolveStableChannelMessageIngress({
channelId: "tlon",
accountId: "default",
identity: tlonIngressIdentity,
subject: { stableId: senderShip },
conversation: {
kind: "direct",
id: "direct"
},
dmPolicy: "allowlist",
allowFrom: allowlist ?? []
})).senderAccess.allowed;
}
async function resolveTlonCommandAuthorizationWithIngress(params) {
const normalizedOwner = params.ownerShip ? normalizeShip(params.ownerShip) : null;
return await resolveStableChannelMessageIngress({
channelId: "tlon",
accountId: "default",
identity: tlonIngressIdentity,
useAccessGroups: params.useAccessGroups,
subject: { stableId: params.senderShip },
conversation: {
kind: "direct",
id: "command"
},
event: {
authMode: "none",
mayPair: false
},
dmPolicy: "allowlist",
groupPolicy: "open",
allowFrom: normalizedOwner ? [normalizedOwner] : [],
command: {}
});
}
function isGroupInviteAllowed(inviterShip, allowlist) {
if (!allowlist || allowlist.length === 0) return false;
const normalizedInviter = normalizeShip(inviterShip);
return allowlist.map((ship) => normalizeShip(ship)).some((ship) => ship === normalizedInviter);
}
async function resolveAuthorizedMessageText(params) {
const { rawText, content, authorizedForCites, resolveAllCites } = params;
if (!authorizedForCites) return rawText;
return await resolveAllCites(content) + rawText;
}
const asRecord = asNullableObjectRecord;
const formatErrorMessage = formatErrorMessage$1;
const readString = readStringField;
function asNullableObjectRecord(value) {
return value && typeof value === "object" && !Array.isArray(value) ? value : null;
}
function readStringField(record, field) {
const value = record?.[field];
return typeof value === "string" ? value : void 0;
}
function renderInlineItem(item, options) {
if (typeof item === "string") return item;
const record = asRecord(item);
if (!record) return "";
const ship = readString(record, "ship");
if (ship) return ship;
if ("sect" in record) {
const sect = record.sect;
if (typeof sect === "string") return `@${sect || "all"}`;
if (sect === null) return "@all";
}
if (options?.allowBreak && "break" in record) return "\n";
const inlineCode = readString(record, "inline-code");
if (inlineCode) return `\`${inlineCode}\``;
const code = readString(record, "code");
if (code) return `\`${code}\``;
const link = asRecord(record.link);
const linkHref = link ? readString(link, "href") : void 0;
if (link && linkHref) {
const linkContent = readString(link, "content");
return options?.linkMode === "href" ? linkHref : linkContent || linkHref;
}
if (Array.isArray(record.bold)) return `**${extractInlineText(record.bold)}**`;
if (Array.isArray(record.italics)) return `*${extractInlineText(record.italics)}*`;
if (Array.isArray(record.strike)) return `~~${extractInlineText(record.strike)}~~`;
if (options?.allowBlockquote && Array.isArray(record.blockquote)) return `> ${extractInlineText(record.blockquote)}`;
return "";
}
function extractInlineText(items) {
return items.map((item) => renderInlineItem(item)).join("");
}
function extractMessageText(content) {
if (!content || !Array.isArray(content)) return "";
return content.map((verse) => {
const verseRecord = asRecord(verse);
if (!verseRecord) return "";
if (Array.isArray(verseRecord.inline)) return verseRecord.inline.map((item) => renderInlineItem(item, {
linkMode: "href",
allowBreak: true,
allowBlockquote: true
})).join("");
const block = asRecord(verseRecord.block);
if (block) {
const image = asRecord(block.image);
if (image) {
const imageSrc = readString(image, "src");
if (imageSrc) {
const altText = readString(image, "alt");
return `\n${imageSrc}${altText ? ` (${altText})` : ""}\n`;
}
}
const codeBlock = asRecord(block.code);
if (codeBlock) return `\n\`\`\`${readString(codeBlock, "lang") ?? ""}\n${readString(codeBlock, "code") ?? ""}\n\`\`\`\n`;
const header = asRecord(block.header);
if (header) return `\n## ${(Array.isArray(header.content) ? header.content : []).map((item) => typeof item === "string" ? item : "").join("") || ""}\n`;
const cite = asRecord(block.cite);
if (cite) {
const chanCite = asRecord(cite.chan);
if (chanCite) {
const nest = readString(chanCite, "nest");
const whereMatch = readString(chanCite, "where")?.match(/\/msg\/(~[a-z-]+)\/(.+)/);
if (whereMatch) {
const [, author, _postId] = whereMatch;
return `\n> [quoted: ${author} in ${nest}]\n`;
}
return `\n> [quoted from ${nest}]\n`;
}
const group = readString(cite, "group");
if (group) return `\n> [ref: group ${group}]\n`;
const desk = asRecord(cite.desk);
if (desk) {
const flag = readString(desk, "flag");
if (flag) return `\n> [ref: ${flag}]\n`;
}
const bait = asRecord(cite.bait);
if (bait) {
const graph = readString(bait, "graph");
const groupName = readString(bait, "group");
if (graph && groupName) return `\n> [ref: ${graph} in ${groupName}]\n`;
}
return `\n> [quoted message]\n`;
}
}
return "";
}).join("\n").trim();
}
function isSummarizationRequest(messageText) {
return [
/summarize\s+(this\s+)?(channel|chat|conversation)/i,
/what\s+did\s+i\s+miss/i,
/catch\s+me\s+up/i,
/channel\s+summary/i,
/tldr/i
].some((pattern) => pattern.test(messageText));
}
//#endregion
//#region extensions/tlon/src/monitor/cites.ts
function createTlonCitationResolver(params) {
const { api, runtime } = params;
const resolveCiteContent = async (cite) => {
if (cite.type !== "chan" || !cite.nest || !cite.postId) return null;
try {
const scryPath = `/channels/v4/${cite.nest}/posts/post/${cite.postId}.json`;
runtime.log?.(`[tlon] Fetching cited post: ${scryPath}`);
const essay = asRecord(asRecord(await api.scry(scryPath))?.essay);
if (essay?.content) return extractMessageText(essay.content) || null;
return null;
} catch (err) {
runtime.log?.(`[tlon] Failed to fetch cited post: ${String(err)}`);
return null;
}
};
const resolveAllCites = async (content) => {
const cites = extractCites(content);
if (cites.length === 0) return "";
const resolved = [];
for (const cite of cites) {
const text = await resolveCiteContent(cite);
if (text) resolved.push(`> ${cite.author || "unknown"} wrote: ${text}`);
}
return resolved.length > 0 ? `${resolved.join("\n")}\n\n` : "";
};
return {
resolveCiteContent,
resolveAllCites
};
}
//#endregion
//#region extensions/tlon/src/monitor/discovery.ts
/**
* Fetch groups-ui init data, returning channels and foreigns.
* This is a single scry that provides both channel discovery and pending invites.
*/
async function fetchInitData(api, runtime) {
try {
runtime.log?.("[tlon] Fetching groups-ui init data...");
const initData = asRecord(await api.scry("/groups-ui/v6/init.json"));
const channels = [];
const groups = asRecord(initData?.groups);
if (groups) for (const groupData of Object.values(groups)) {
const groupChannels = asRecord(asRecord(groupData)?.channels);
if (groupChannels) {
for (const channelNest of Object.keys(groupChannels)) if (channelNest.startsWith("chat/")) channels.push(channelNest);
}
}
if (channels.length > 0) runtime.log?.(`[tlon] Auto-discovered ${channels.length} chat channel(s)`);
else runtime.log?.("[tlon] No chat channels found via auto-discovery");
const foreignsValue = asRecord(initData?.foreigns);
const foreigns = foreignsValue ? foreignsValue : null;
if (foreigns) {
const pendingCount = Object.values(foreigns).filter((f) => f.invites?.some((i) => i.valid)).length;
if (pendingCount > 0) runtime.log?.(`[tlon] Found ${pendingCount} pending group invite(s)`);
}
return {
channels,
foreigns
};
} catch (error) {
runtime.log?.(`[tlon] Init data fetch failed: ${formatErrorMessage(error)}`);
return {
channels: [],
foreigns: null
};
}
}
async function fetchAllChannels(api, runtime) {
const { channels } = await fetchInitData(api, runtime);
return channels;
}
//#endregion
//#region extensions/tlon/src/monitor/history.ts
/**
* Format a number as @ud (with dots every 3 digits from the right)
* e.g., 170141184507799509469114119040828178432 -> 170.141.184.507.799.509.469.114.119.040.828.178.432
*/
function formatUd(id) {
const reversed = String(id).replace(/\./g, "").split("").toReversed();
const chunks = [];
for (let i = 0; i < reversed.length; i += 3) chunks.push(reversed.slice(i, i + 3).toReversed().join(""));
return chunks.toReversed().join(".");
}
function createHistoryEntryFromMemo(params) {
const { memo, seal, fallbackId } = params;
return {
author: typeof memo?.author === "string" ? memo.author : "unknown",
content: extractMessageText(memo?.content || []),
timestamp: typeof memo?.sent === "number" ? memo.sent : Date.now(),
id: typeof seal?.id === "string" ? seal.id : typeof fallbackId === "string" ? fallbackId : void 0
};
}
const messageCache = /* @__PURE__ */ new Map();
const MAX_CACHED_MESSAGES = 100;
function cacheMessage(channelNest, message) {
if (!messageCache.has(channelNest)) messageCache.set(channelNest, []);
const cache = messageCache.get(channelNest);
if (!cache) return;
cache.unshift(message);
if (cache.length > MAX_CACHED_MESSAGES) cache.pop();
}
async function fetchChannelHistory(api, channelNest, count = 50, runtime) {
try {
const scryPath = `/channels/v4/${channelNest}/posts/newest/${count}/outline.json`;
runtime?.log?.(`[tlon] Fetching history: ${scryPath}`);
const data = await api.scry(scryPath);
if (!data) return [];
let posts = [];
if (Array.isArray(data)) posts = data;
else {
const dataRecord = asRecord(data);
const postMap = asRecord(dataRecord?.posts);
if (postMap) posts = Object.values(postMap);
else if (dataRecord) posts = Object.values(dataRecord);
}
const messages = posts.map((item) => {
const itemRecord = asRecord(item);
const replyPostSet = asRecord(asRecord(itemRecord?.["r-post"])?.set);
const essay = asRecord(itemRecord?.essay) ?? asRecord(replyPostSet?.essay);
const seal = asRecord(itemRecord?.seal) ?? asRecord(replyPostSet?.seal);
return {
author: typeof essay?.author === "string" ? essay.author : "unknown",
content: extractMessageText(essay?.content || []),
timestamp: typeof essay?.sent === "number" ? essay.sent : Date.now(),
id: typeof seal?.id === "string" ? seal.id : void 0
};
}).filter((msg) => msg.content);
runtime?.log?.(`[tlon] Extracted ${messages.length} messages from history`);
return messages;
} catch (error) {
runtime?.log?.(`[tlon] Error fetching channel history: ${formatErrorMessage(error)}`);
return [];
}
}
async function getChannelHistory(api, channelNest, count = 50, runtime) {
const cache = messageCache.get(channelNest) ?? [];
if (cache.length >= count) {
runtime?.log?.(`[tlon] Using cached messages (${cache.length} available)`);
return cache.slice(0, count);
}
runtime?.log?.(`[tlon] Cache has ${cache.length} messages, need ${count}, fetching from scry...`);
return await fetchChannelHistory(api, channelNest, count, runtime);
}
/**
* Fetch thread/reply history for a specific parent post.
* Used to get context when entering a thread conversation.
*/
async function fetchThreadHistory(api, channelNest, parentId, count = 50, runtime) {
try {
const formattedParentId = formatUd(parentId);
runtime?.log?.(`[tlon] Thread history - parentId: ${parentId} -> formatted: ${formattedParentId}`);
const scryPath = `/channels/v4/${channelNest}/posts/post/id/${formattedParentId}/replies/newest/${count}.json`;
runtime?.log?.(`[tlon] Fetching thread history: ${scryPath}`);
const data = await api.scry(scryPath);
if (!data) {
runtime?.log?.(`[tlon] No thread history data returned`);
return [];
}
let replies = [];
if (Array.isArray(data)) replies = data;
else {
const dataRecord = asRecord(data);
const replyValue = dataRecord?.replies;
if (Array.isArray(replyValue)) replies = replyValue;
else if (typeof replyValue === "object" && replyValue) replies = Object.values(replyValue);
else if (dataRecord) replies = Object.values(dataRecord);
}
const messages = replies.map((item) => {
const itemRecord = asRecord(item);
const replySet = asRecord(asRecord(itemRecord?.["r-reply"])?.set);
return createHistoryEntryFromMemo({
memo: asRecord(itemRecord?.memo) ?? asRecord(replySet?.memo) ?? itemRecord,
seal: asRecord(itemRecord?.seal) ?? asRecord(replySet?.seal),
fallbackId: itemRecord?.id
});
}).filter((msg) => msg.content);
runtime?.log?.(`[tlon] Extracted ${messages.length} thread replies from history`);
return messages;
} catch (error) {
runtime?.log?.(`[tlon] Error fetching thread history: ${formatErrorMessage(error)}`);
try {
const altPath = `/channels/v4/${channelNest}/posts/post/id/${formatUd(parentId)}.json`;
runtime?.log?.(`[tlon] Trying alternate path: ${altPath}`);
const data = asRecord(await api.scry(altPath));
const dataMeta = asRecord(asRecord(data?.seal)?.meta);
const repliesValue = data?.replies;
if (typeof dataMeta?.replyCount === "number" && dataMeta.replyCount > 0 && repliesValue) {
const messages = (Array.isArray(repliesValue) ? repliesValue : Object.values(repliesValue)).map((reply) => {
const replyRecord = asRecord(reply);
return createHistoryEntryFromMemo({
memo: asRecord(replyRecord?.memo),
seal: asRecord(replyRecord?.seal)
});
}).filter((msg) => msg.content);
runtime?.log?.(`[tlon] Extracted ${messages.length} replies from post data`);
return messages;
}
} catch (altError) {
runtime?.log?.(`[tlon] Alternate path also failed: ${formatErrorMessage(altError)}`);
}
return [];
}
}
//#endregion
//#region extensions/tlon/src/monitor/media.ts
const MAX_IMAGES_PER_MESSAGE = 8;
const TLON_MEDIA_DOWNLOAD_IDLE_TIMEOUT_MS = 3e4;
/**
* Extract image blocks from Tlon message content.
* Returns array of image URLs found in the message.
*/
function extractImageBlocks(content) {
if (!content || !Array.isArray(content)) return [];
const images = [];
for (const verse of content) if (verse?.block?.image?.src) {
images.push({
url: verse.block.image.src,
alt: verse.block.image.alt
});
if (images.length >= MAX_IMAGES_PER_MESSAGE) break;
}
return images;
}
/**
* Download a media file from URL to local storage.
* Returns the local path where the file was saved.
*/
async function downloadMedia(url, mediaDir) {
try {
const parsedUrl = new URL(url);
if (parsedUrl.protocol !== "http:" && parsedUrl.protocol !== "https:") {
console.warn(`[tlon-media] Rejected non-http(s) URL: ${url}`);
return null;
}
const fetchOptions = {
url,
maxBytes: MAX_IMAGE_BYTES,
readIdleTimeoutMs: TLON_MEDIA_DOWNLOAD_IDLE_TIMEOUT_MS,
ssrfPolicy: void 0,
requestInit: { method: "GET" }
};
if (!mediaDir) {
const saved = await saveRemoteMedia(fetchOptions);
return {
localPath: saved.path,
contentType: saved.contentType ?? "application/octet-stream",
originalUrl: url
};
}
const fetched = await readRemoteMediaBuffer(fetchOptions);
await mkdir(mediaDir, { recursive: true });
const ext = getExtensionFromFileName(fetched.fileName) || getExtensionFromContentType(fetched.contentType ?? "") || getExtensionFromUrl(url) || "bin";
const localPath = path$1.join(mediaDir, `${randomUUID()}.${ext}`);
await writeFile(localPath, fetched.buffer);
return {
localPath,
contentType: fetched.contentType ?? "application/octet-stream",
originalUrl: url
};
} catch (error) {
console.error(`[tlon-media] Error downloading ${url}: ${formatErrorMessage$1(error)}`);
return null;
}
}
function getExtensionFromFileName(fileName) {
if (!fileName) return null;
return path$1.extname(fileName).replace(/^\./, "") || null;
}
function getExtensionFromContentType(contentType) {
return extensionForMime(contentType)?.replace(/^\./u, "") ?? null;
}
function getExtensionFromUrl(url) {
try {
const match = new URL(url).pathname.match(/\.([a-z0-9]+)$/i);
return match ? normalizeLowercaseStringOrEmpty(match[1]) : null;
} catch {
return null;
}
}
/**
* Download all images from a message and return attachment metadata.
* Format matches OpenClaw's expected attachment structure.
*/
async function downloadMessageImages(content, mediaDir) {
const images = extractImageBlocks(content);
if (images.length === 0) return [];
const attachments = [];
for (const image of images) {
const downloaded = await downloadMedia(image.url, mediaDir);
if (downloaded) attachments.push({
path: downloaded.localPath,
contentType: downloaded.contentType
});
}
return attachments;
}
//#endregion
//#region extensions/tlon/src/monitor/processed-messages.ts
function createProcessedMessageTracker(limit = 2e3) {
const dedupe = createDedupeCache({
ttlMs: 0,
maxSize: limit
});
const inFlight = /* @__PURE__ */ new Set();
const claim = (id) => {
const trimmed = id?.trim();
if (!trimmed) return { kind: "claimed" };
if (inFlight.has(trimmed) || dedupe.peek(trimmed)) return { kind: "duplicate" };
inFlight.add(trimmed);
return { kind: "claimed" };
};
const commit = (id) => {
const trimmed = id?.trim();
if (!trimmed) return;
inFlight.delete(trimmed);
dedupe.check(trimmed);
};
const release = (id) => {
const trimmed = id?.trim();
if (!trimmed) return;
inFlight.delete(trimmed);
};
const mark = (id) => {
if (claim(id).kind === "duplicate") return false;
commit(id);
return true;
};
const has = (id) => {
const trimmed = id?.trim();
if (!trimmed) return false;
return dedupe.peek(trimmed);
};
return {
claim,
commit,
release,
mark,
has,
size: () => dedupe.size()
};
}
async function runWithProcessedMessageClaim(params) {
const claim = params.tracker.claim(params.id);
if (claim.kind === "duplicate") return claim;
try {
const value = await params.task();
params.tracker.commit(params.id);
return {
kind: "processed",
value
};
} catch (error) {
params.tracker.release(params.id);
throw error;
}
}
//#endregion
//#region extensions/tlon/src/monitor/settings-helpers.ts
function buildTlonSettingsMigrations(account, currentSettings) {
return [
{
key: "dmAllowlist",
fileValue: account.dmAllowlist,
settingsValue: currentSettings.dmAllowlist
},
{
key: "groupInviteAllowlist",
fileValue: account.groupInviteAllowlist,
settingsValue: currentSettings.groupInviteAllowlist
},
{
key: "groupChannels",
fileValue: account.groupChannels,
settingsValue: currentSettings.groupChannels
},
{
key: "defaultAuthorizedShips",
fileValue: account.defaultAuthorizedShips,
settingsValue: currentSettings.defaultAuthorizedShips
},
{
key: "autoDiscoverChannels",
fileValue: account.autoDiscoverChannels,
settingsValue: currentSettings.autoDiscoverChannels
},
{
key: "autoAcceptDmInvites",
fileValue: account.autoAcceptDmInvites,
settingsValue: currentSettings.autoAcceptDmInvites
},
{
key: "autoAcceptGroupInvites",
fileValue: account.autoAcceptGroupInvites,
settingsValue: currentSettings.autoAcceptGroupInvites
},
{
key: "showModelSig",
fileValue: account.showModelSignature,
settingsValue: currentSettings.showModelSig
}
];
}
function shouldMigrateTlonSetting(fileValue, settingsValue) {
return (Array.isArray(fileValue) ? fileValue.length > 0 : fileValue != null) && !(settingsValue != null);
}
function applyTlonSettingsOverrides(params) {
let effectiveDmAllowlist = params.account.dmAllowlist;
let effectiveShowModelSig = params.account.showModelSignature ?? false;
let effectiveAutoAcceptDmInvites = params.account.autoAcceptDmInvites ?? false;
let effectiveAutoAcceptGroupInvites = params.account.autoAcceptGroupInvites ?? false;
let effectiveGroupInviteAllowlist = params.account.groupInviteAllowlist;
let effectiveAutoDiscoverChannels = params.account.autoDiscoverChannels ?? false;
let effectiveOwnerShip = params.account.ownerShip ? normalizeShip(params.account.ownerShip) : null;
let pendingApprovals = [];
if (params.currentSettings.defaultAuthorizedShips?.length) params.log?.(`[tlon] Using defaultAuthorizedShips from settings store: ${params.currentSettings.defaultAuthorizedShips.join(", ")}`);
if (params.currentSettings.autoDiscoverChannels !== void 0) {
effectiveAutoDiscoverChannels = params.currentSettings.autoDiscoverChannels;
params.log?.(`[tlon] Using autoDiscoverChannels from settings store: ${effectiveAutoDiscoverChannels}`);
}
if (params.currentSettings.dmAllowlist !== void 0) {
effectiveDmAllowlist = params.currentSettings.dmAllowlist;
params.log?.(`[tlon] Using dmAllowlist from settings store: ${effectiveDmAllowlist.join(", ")}`);
}
if (params.currentSettings.showModelSig !== void 0) effectiveShowModelSig = params.currentSettings.showModelSig;
if (params.currentSettings.autoAcceptDmInvites !== void 0) {
effectiveAutoAcceptDmInvites = params.currentSettings.autoAcceptDmInvites;
params.log?.(`[tlon] Using autoAcceptDmInvites from settings store: ${effectiveAutoAcceptDmInvites}`);
}
if (params.currentSettings.autoAcceptGroupInvites !== void 0) {
effectiveAutoAcceptGroupInvites = params.currentSettings.autoAcceptGroupInvites;
params.log?.(`[tlon] Using autoAcceptGroupInvites from settings store: ${effectiveAutoAcceptGroupInvites}`);
}
if (params.currentSettings.groupInviteAllowlist !== void 0) {
effectiveGroupInviteAllowlist = params.currentSettings.groupInviteAllowlist;
params.log?.(`[tlon] Using groupInviteAllowlist from settings store: ${effectiveGroupInviteAllowlist.join(", ")}`);
}
if (params.currentSettings.ownerShip) {
effectiveOwnerShip = normalizeShip(params.currentSettings.ownerShip);
params.log?.(`[tlon] Using ownerShip from settings store: ${effectiveOwnerShip}`);
}
if (params.currentSettings.pendingApprovals?.length) {
pendingApprovals = params.currentSettings.pendingApprovals;
params.log?.(`[tlon] Loaded ${pendingApprovals.length} pending approval(s) from settings`);
}
return {
effectiveDmAllowlist,
effectiveShowModelSig,
effectiveAutoAcceptDmInvites,
effectiveAutoAcceptGroupInvites,
effectiveGroupInviteAllowlist,
effectiveAutoDiscoverChannels,
effectiveOwnerShip,
pendingApprovals,
currentSettings: params.currentSettings
};
}
function mergeUniqueStrings(base, next) {
return uniqueStrings([...base, ...next ?? []]);
}
//#endregion
//#region extensions/tlon/src/monitor/index.ts
function readNumber(record, key) {
return asFiniteNumber(record?.[key]);
}
async function monitorTlonProvider(opts = {}) {
const core = getTlonRuntime();
const cfg = core.config.current();
if (cfg.channels?.tlon?.enabled === false) return;
const logger = core.logging.getChildLogger({ module: "tlon-auto-reply" });
const runtime = opts.runtime ?? createLoggerBackedRuntime({ logger });
const account = resolveTlonAccount(cfg, opts.accountId ?? void 0);
if (!account.enabled) return;
if (!account.configured || !account.ship || !account.url || !account.code) throw new Error("Tlon account not configured (ship/url/code required)");
const botShipName = normalizeShip(account.ship);
runtime.log?.(`[tlon] Starting monitor for ${botShipName}`);
const ssrfPolicy = ssrfPolicyFromDangerouslyAllowPrivateNetwork(account.dangerouslyAllowPrivateNetwork);
const accountUrl = account.url;
const accountCode = account.code;
async function authenticateWithRetry(maxAttempts = 10) {
for (const attempt of Array.from({ length: Math.max(1, maxAttempts) }, (_, index) => index + 1)) {
if (opts.abortSignal?.aborted) throw new Error("Aborted while waiting to authenticate");
try {
runtime.log?.(`[tlon] Attempting authentication to ${accountUrl}...`);
return await authenticate(accountUrl, accountCode, { ssrfPolicy });
} catch (error) {
runtime.error?.(`[tlon] Failed to authenticate (attempt ${attempt}): ${formatErrorMessage(error)}`);
if (attempt >= maxAttempts) throw error;
const delay = Math.min(3e4, 1e3 * 2 ** (attempt - 1));
runtime.log?.(`[tlon] Retrying authentication in ${delay}ms...`);
await new Promise((resolve, reject) => {
const timer = setTimeout(resolve, delay);
if (opts.abortSignal) {
const onAbort = () => {
clearTimeout(timer);
reject(/* @__PURE__ */ new Error("Aborted"));
};
opts.abortSignal.addEventListener("abort", onAbort, { once: true });
}
});
}
}
throw new Error("unreachable Tlon authentication retry loop exit");
}
let api = null;
const cookie = await authenticateWithRetry();
api = new UrbitSSEClient(account.url, cookie, {
ship: botShipName,
ssrfPolicy,
logger: {
log: (message) => runtime.log?.(message),
error: (message) => runtime.error?.(message)
},
onReconnect: async (client) => {
runtime.log?.("[tlon] Re-authenticating on SSE reconnect...");
const newCookie = await authenticateWithRetry(5);
client.updateCookie(newCookie);
runtime.log?.("[tlon] Re-authentication successful");
}
});
const processedTracker = createProcessedMessageTracker(2e3);
let groupChannels = [];
let botNickname = null;
const settingsManager = createSettingsManager(api, {
log: (msg) => runtime.log?.(msg),
error: (msg) => runtime.error?.(msg)
});
let effectiveDmAllowlist = account.dmAllowlist;
let effectiveShowModelSig = account.showModelSignature ?? false;
let effectiveAutoAcceptDmInvites = account.autoAcceptDmInvites ?? false;
let effectiveAutoAcceptGroupInvites = account.autoAcceptGroupInvites ?? false;
let effectiveGroupInviteAllowlist = account.groupInviteAllowlist;
let effectiveAutoDiscoverChannels = account.autoDiscoverChannels ?? false;
let effectiveOwnerShip = account.ownerShip ? normalizeShip(account.ownerShip) : null;
let pendingApprovals = [];
let currentSettings = {};
const participatedThreads = /* @__PURE__ */ new Set();
const dmSendersBySession = /* @__PURE__ */ new Map();
let sharedSessionWarningSent = false;
try {
const selfProfile = await api.scry("/contacts/v1/self.json");
if (selfProfile && typeof selfProfile === "object") {
botNickname = selfProfile.nickname?.value || null;
if (botNickname) runtime.log?.(`[tlon] Bot nickname: ${botNickname}`);
}
} catch (error) {
runtime.log?.(`[tlon] Could not fetch nickname: ${formatErrorMessage(error)}`);
}
let initForeigns = null;
async function migrateConfigToSettings() {
const migrations = buildTlonSettingsMigrations(account, currentSettings);
for (const { key, fileValue, settingsValue } of migrations) if (shouldMigrateTlonSetting(fileValue, settingsValue)) try {
await api.poke({
app: "settings",
mark: "settings-event",
json: { "put-entry": {
"bucket-key": "tlon",
"entry-key": key,
value: fileValue,
desk: "moltbot"
} }
});
runtime.log?.(`[tlon] Migrated ${key} from config to settings store`);
} catch (err) {
runtime.log?.(`[tlon] Failed to migrate ${key}: ${String(err)}`);
}
}
try {
currentSettings = await settingsManager.load();
await migrateConfigToSettings();
({effectiveDmAllowlist, effectiveShowModelSig, effectiveAutoAcceptDmInvites, effectiveAutoAcceptGroupInvites, effectiveGroupInviteAllowlist, effectiveAutoDiscoverChannels, effectiveOwnerShip, pendingApprovals, currentSettings} = applyTlonSettingsOverrides({
account,
currentSettings,
log: (message) => runtime.log?.(message)
}));
} catch (err) {
runtime.log?.(`[tlon] Settings store not available, using file config: ${String(err)}`);
}
if (effectiveAutoDiscoverChannels) try {
const initData = await fetchInitData(api, runtime);
if (initData.channels.length > 0) groupChannels = initData.channels;
initForeigns = initData.foreigns;
} catch (error) {
runtime.error?.(`[tlon] Auto-discovery failed: ${formatErrorMessage(error)}`);
}
if (account.groupChannels.length > 0) {
groupChannels = mergeUniqueStrings(groupChannels, account.groupChannels);
runtime.log?.(`[tlon] Added ${account.groupChannels.length} manual groupChannels to monitoring`);
}
groupChannels = mergeUniqueStrings(groupChannels, currentSettings.groupChannels);
if (groupChannels.length > 0) runtime.log?.(`[tlon] Monitoring ${groupChannels.length} group channel(s): ${groupChannels.join(", ")}`);
else runtime.log?.("[tlon] No group channels to monitor (DMs only)");
function isOwner(ship) {
if (!effectiveOwnerShip) return false;
return normalizeShip(ship) === effectiveOwnerShip;
}
/**
* Extract the DM partner ship from the 'whom' field.
* This is the canonical source for DM routing (more reliable than essay.author).
* Returns empty string if whom doesn't contain a valid patp-like value.
*/
function extractDmPartnerShip(whom) {
const normalized = normalizeShip(typeof whom === "string" ? whom : whom && typeof whom === "object" && "ship" in whom && typeof whom.ship === "string" ? whom.ship : "");
return /^~?[a-z-]+$/i.test(normalized) ? normalized : "";
}
const processMessage = async (params) => {
const { messageId, senderShip, isGroup, channelNest, hostShip: _hostShip, channelName: _channelName, timestamp, parentId, isThreadReply, messageContent } = params;
const groupChannel = channelNest;
let messageText = params.messageText;
let attachments = [];
if (messageContent) try {
attachments = await downloadMessageImages(messageContent);
if (attachments.length > 0) runtime.log?.(`[tlon] Downloaded ${attachments.length} image(s) from message`);
} catch (error) {
runtime.log?.(`[tlon] Failed to download images: ${formatErrorMessage(error)}`);
}
if (isThreadReply && parentId && groupChannel) try {
const threadHistory = await fetchThreadHistory(api, groupChannel, parentId, 20, runtime);
if (threadHistory.length > 0) {
const threadContext = threadHistory.slice(-10).map((msg) => `${msg.author}: ${msg.content}`).join("\n");
messageText = `${`[Thread conversation - ${threadHistory.length} previous replies. You are participating in this thread. Only respond if relevant or helpful - you don't need to reply to every message.]`}\n\n[Previous messages]\n${threadContext}\n\n[Current message]\n${messageText}`;
runtime?.log?.(`[tlon] Added thread context (${threadHistory.length} replies) to message`);
}
} catch (error) {
runtime?.log?.(`[tlon] Could not fetch thread context: ${formatErrorMessage(error)}`);
}
if (isGroup && groupChannel && isSummarizationRequest(messageText)) try {
const history = await getChannelHistory(api, groupChannel, 50, runtime);
if (history.length === 0) {
const noHistoryMsg = "I couldn't fetch any messages for this channel. It might be empty or there might be a permissions issue.";
if (isGroup) {
const parsed = parseChannelNest(groupChannel);
if (parsed) await sendGroupMessage({
api,
fromShip: botShipName,
hostShip: parsed.hostShip,
channelName: parsed.channelName,
text: noHistoryMsg
});
} else await sendDm({
api,
fromShip: botShipName,
toShip: senderShip,
text: noHistoryMsg
});
return;
}
const historyText = history.map((msg) => `[${new Date(msg.timestamp).toLocaleString()}] ${msg.author}: ${msg.content}`).join("\n");
messageText = `Please summarize this channel conversation (${history.length} recent messages):\n\n${historyText}\n\nProvide a concise summary highlighting:
1. Main topics discussed
2. Key decisions or conclusions
3. Action items if any
4. Notable participants`;
} catch (error) {
const errorMsg = `Sorry, I encountered an error while fetching the channel history: ${formatErrorMessage(error)}`;
if (isGroup && groupChannel) {
const parsed = parseChannelNest(groupChannel);
if (parsed) await sendGroupMessage({
api,
fromShip: botShipName,
hostShip: parsed.hostShip,
channelName: parsed.channelName,
text: errorMsg
});
} else await sendDm({
api,
fromShip: botShipName,
toShip: senderShip,
text: errorMsg
});
return;
}
const route = core.channel.routing.resolveAgentRoute({
cfg,
channel: "tlon",
accountId: opts.accountId ?? void 0,
peer: {
kind: isGroup ? "group" : "direct",
id: isGroup ? groupChannel ?? senderShip : senderShip
}
});
if (!isGroup) {
const sessionKey = route.sessionKey;
if (!dmSendersBySession.has(sessionKey)) dmSendersBySession.set(sessionKey, /* @__PURE__ */ new Set());
const senders = dmSendersBySession.get(sessionKey);
if (senders.size > 0 && !senders.has(senderShip)) {
runtime.log?.("[tlon] ⚠️ SECURITY: Multiple users sharing DM session. Configure \"session.dmScope: per-channel-peer\" in OpenClaw config.");
if (!sharedSessionWarningSent && effectiveOwnerShip) {
sharedSessionWarningSent = true;
sendDm({
api,
fromShip: botShipName,
toShip: effectiveOwnerShip,
text: "⚠️ Security Warning: Multiple users are sharing a DM session with this bot. This can leak conversation context between users.\n\nFix: Add to your OpenClaw config:\nsession:\n dmScope: \"per-channel-peer\"\n\nDocs: https://docs.openclaw.ai/concepts/session#secure-dm-mode"
}).catch((err) => runtime.error?.(`[tlon] Failed to send security warning to owner: ${formatErrorMessage(err)}`));
}
}
senders.add(senderShip);
}
const senderRole = isOwner(senderShip) ? "owner" : "user";
const fromLabel = isGroup ? `${senderShip} [${senderRole}] in ${channelNest}` : `${senderShip} [${senderRole}]`;
const shouldComputeAuth = core.channel.commands.shouldComputeCommandAuthorized(messageText, cfg);
let commandAuthorized = false;
if (shouldComputeAuth) {
const useAccessGroups = cfg.commands?.useAccessGroups !== false;
commandAuthorized = (await resolveTlonCommandAuthorizationWithIngress({
senderShip,
ownerShip: effectiveOwnerShip,
useAccessGroups
})).commandAccess.authorized;
if (!commandAuthorized) console.log(`[tlon] Command attempt denied: ${senderShip} is not owner (owner=${effectiveOwnerShip ?? "not configured"})`);
}
let bodyWithAttachments = messageText;
if (attachments.length > 0) bodyWithAttachments = attachments.map((a) => `[media attached: ${a.path} (${a.contentType}) | ${a.path}]`).join("\n") + "\n" + messageText;
const body = core.channel.reply.formatAgentEnvelope({
channel: "Tlon",
from: fromLabel,
timestamp,
body: bodyWithAttachments
});
const commandBody = isGroup ? stripBotMention(messageText, botShipName) : messageText;
const tlonConversationId = isGroup ? groupChannel ?? channelNest ?? senderShip : senderShip;
const ctxPayload = core.channel.inbound.buildContext({
channel: "tlon",
accountId: route.accountId,
messageId,
timestamp,
from: isGroup ? `tlon:group:${groupChannel}` : `tlon:${senderShip}`,
sender: {
id: senderShip,
name: senderShip,
roles: [senderRole]
},
conversation: {
kind: isGroup ? "group" : "direct",
id: tlonConversationId,
label: fromLabel
},
route: {
agentId: route.agentId,
accountId: route.accountId,
routeSessionKey: route.sessionKey
},
reply: {
to: `tlon:${botShipName}`,
originatingTo: `tlon:${isGroup ? groupChannel : botShipName}`,
replyToId: parentId ?? void 0
},
message: {
body,
bodyForAgent: commandBody,
rawBody: messageText,
commandBody
},
extra: {
GroupSubject: void 0,
SenderRole: senderRole,
CommandAuthorized: commandAuthorized,
CommandSource: "text",
...attachments.length > 0 && { Attachments: attachments },
...parentId && { ThreadId: parentId }
}
});
const dispatchStartTime = Date.now();
const responsePrefix = core.channel.reply.resolveEffectiveMessagesConfig(cfg, route.agentId).responsePrefix;
const humanDelay = core.channel.reply.resolveHumanDelayConfig(cfg, route.agentId);
const storePath = core.channel.session.resolveStorePath(cfg.session?.store, { agentId: route.agentId });
const deliveryTarget = isGroup ? groupChannel : senderShip;
const prepareReplyPayload = (payload) => {
const replyText = payload.text;
if (!replyText) return payload;
if (!effectiveShowModelSig) return payload;
const extPayload = payload;
const defaultModel = cfg.agents?.defaults?.model;
const modelInfo = extPayload.metadata?.model || extPayload.model || (typeof defaultModel === "string" ? defaultModel : defaultModel?.primary);
return {
...payload,
text: `${replyText}\n\n_[Generated by ${formatModelName(modelInfo)}]_`
};
};
const rememberThreadParticipation = (result) => {
if (!isGroup || !groupChannel || !parentId || result?.visibleReplySent === false) return;
participatedThreads.add(parentId);
runtime.log?.(`[tlon] Now tracking thread for future replies: ${parentId}`);
};
await core.channel.inbound.dispatchReply({
channel: "tlon",
accountId: route.accountId,
cfg,
agentId: route.agentId,
routeSessionKey: route.sessionKey,
storePath,
ctxPayload,
recordInboundSession: core.channel.session.recordInboundSession,
dispatchReplyWithBufferedBlockDispatcher: core.channel.reply.dispatchReplyWithBufferedBlockDispatcher,
delivery: {
preparePayload: prepareReplyPayload,
durable: deliveryTarget ? () => ({
to: deliveryTarget,
replyToId: parentId ?? void 0,
threadId: parentId ?? void 0
}) : false,
deliver: async (payload) => {
const replyText = payload.text;
if (!replyText) return { visibleReplySent: false };
if (isGroup && groupChannel) {
const parsed = parseChannelNest(groupChannel);
if (!parsed) return { visibleReplySent: false };
await sendGroupMessage({
api,
fromShip: botShipName,
hostShip: parsed.hostShip,
channelName: parsed.channelName,
text: replyText,
replyToId: parentId ?? void 0
});
return {
visibleReplySent: true,
replyToId: parentId ?? void 0
};
}
await sendDm({
api,
fromShip: botShipName,
toShip: senderShip,
text: replyText
});
return { visibleReplySent: true };
},
onDelivered: (_payload, _info, result) => {
rememberThreadParticipation(result);
},
onError: (err, info) => {
const dispatchDuration = Date.now() - dispatchStartTime;
runtime.error?.(`[tlon] ${info.kind} reply failed after ${dispatchDuration}ms: ${String(err)}`);
}
},
dispatcherOptions: {
responsePrefix,
humanDelay
},
record: { onRecordError: (err) => {
runtime.error?.(`[tlon] failed updating session meta: ${String(err)}`);
} }
});
};
const watchedChannels = new Set(groupChannels);
const refreshWatchedChannels = async () => {
const discoveredChannels = await fetchAllChannels(api, runtime);
let newCount = 0;
for (const channelNest of discoveredChannels) if (!watchedChannels.has(channelNest)) {
watchedChannels.add(channelNest);
newCount++;
}
return newCount;
};
const { resolveAllCites } = createTlonCitationResolver({
api: { scry: (path) => api.scry(path) },
runtime
});
const { queueApprovalRequest, handleApprovalResponse, handleAdminCommand } = createTlonApprovalRuntime({
api: {
poke: (payload) => api.poke(payload),
scry: (path) => api.scry(path)
},
runtime,
botShipName,
getPendingApprovals: () => pendingApprovals,
setPendingApprovals: (approvals) => {
pendingApprovals = approvals;
},
getCurrentSettings: () => currentSettings,
setCurrentSettings: (settings) => {
currentSettings = settings;
},
getEffectiveDmAllowlist: () => effectiveDmAllowlist,
setEffectiveDmAllowlist: (ships) => {
effectiveDmAllowlist = ships;
},
getEffectiveOwnerShip: () => effectiveOwnerShip,
processApprovedMessage: async (approval) => {
if (!approval.originalMessage) return;
if (approval.type === "dm") {
await processMessage({
messageId: approval.originalMessage.messageId,
senderShip: approval.requestingShip,
messageText: approval.originalMessage.messageText,
messageContent: approval.originalMessage.messageContent,
isGroup: false,
timestamp: approval.originalMessage.timestamp
});
return;
}
if (approval.type === "channel" && approval.channelNest) {
const parsedChannel = parseChannelNest(approval.channelNest);
await processMessage({
messageId: approval.originalMessage.messageId,
senderShip: approval.requestingShip,
messageText: approval.originalMessage.messageText,
messageContent: approval.originalMessage.messageContent,
isGroup: true,
channelNest: approval.channelNest,
hostShip: parsedChannel?.hostShip,
channelName: parsedChannel?.channelName,
timestamp: approval.originalMessage.timestamp,
parentId: approval.originalMessage.parentId,
isThreadReply: approval.originalMessage.isThreadReply
});
}
},
refreshWatchedChannels
});
const handleChannelsFirehose = async (event) => {
try {
const eventRecord = asRecord(event);
const nest = readString(eventRecord, "nest");
if (!nest) return;
if (!watchedChannels.has(nest)) return;
const response = asRecord(eventRecord?.response);
if (!response) return;
const post = asRecord(response.post);
const rPost = asRecord(post?.["r-post"]);
const set = asRecord(rPost?.set);
const reply = asRecord(rPost?.reply);
const replySet = asRecord(asRecord(reply?.["r-reply"])?.set);
const essay = asRecord(set?.essay);
const memo = asRecord(replySet?.memo);
if (!essay && !memo) return;
const content = memo ?? essay;
if (!content) return;
const isThreadReply = Boolean(memo);
const messageId = isThreadReply ? readString(reply, "id") : readString(post, "id");
if (!messageId) return;
await runWithProcessedMessageClaim({
tracker: processedTracker,
id: messageId,
task: async () => {
const senderShip = normalizeShip(readString(content, "author") ?? "");
if (!senderShip || senderShip === botShipName) return;
const rawText = extractMessageText(content.content);
if (!rawText.trim()) return;
const contentBody = content.content;
const sentAt = readNumber(content, "sent") ?? Date.now();
cacheMessage(nest, {
author: senderShip,
content: rawText,
timestamp: sentAt,
id: messageId
});
const seal = isThreadReply ? asRecord(replySet?.seal) : asRecord(set?.seal);
const parentId = readString(seal, "parent-id") ?? readString(seal, "parent") ?? null;
const mentioned = isBotMentioned(rawText, botShipName, botNickname ?? void 0);
const inParticipatedThread = isThreadReply && parentId && participatedThreads.has(parentId);
if (!mentioned && !inParticipatedThread) return;
if (inParticipatedThread && !mentioned) runtime.log?.(`[tlon] Responding to thread we participated in (no mention): ${parentId}`);
if (isOwner(senderShip)) runtime.log?.(`[tlon] Owner ${senderShip} is always allowed in channels`);
else {
const { mode, allowedShips } = resolveChannelAuthorization(cfg, nest, currentSettings);
if (mode === "restricted") {
if (!allowedShips.map(normalizeShip).includes(senderShip)) {
if (effectiveOwnerShip) await queueApprovalRequest(createPendingApproval({
type: "channel",
requestingShip: senderShip,
channelNest: nest,
messagePreview: rawText.slice(0, 100),
originalMessage: {
messageId: messageId ?? "",
messageText: rawText,
messageContent: contentBody,
timestamp: sentAt,
parentId: parentId ?? void 0,
isThreadReply
}
}));
else runtime.log?.(`[tlon] Access denied: ${senderShip} in ${nest} (allowed: ${allowedShips.join(", ")})`);
return;
}
}
}
const messageText = await resolveAuthorizedMessageText({
rawText,
content: contentBody,
authorizedForCites: true,
resolveAllCites
});
const parsed = parseChannelNest(nest);
await processMessage({
messageId: messageId ?? "",
senderShip,
messageText,
messageContent: contentBody,
isGroup: true,
channelNest: nest,
hostShip: parsed?.hostShip,
channelName: parsed?.channelName,
timestamp: sentAt,
parentId,
isThreadReply
});
}
});
} catch (error) {
runtime.error?.(`[tlon] Error handling channel firehose event: ${formatErrorMessage(error)}`);
}
};
const processedDmInvites = /* @__PURE__ */ new Set();
const handleChatFirehose = async (event) => {
try {
if (Array.isArray(event)) {
for (const invite of event) {
const ship = normalizeShip(invite.ship || "");
if (!ship || processedDmInvites.has(ship)) continue;
if (isOwner(ship)) {
try {
await api.poke({
app: "chat",
mark: "chat-dm-rsvp",
json: {
ship,
ok: true
}
});
processedDmInvites.add(ship);
runtime.log?.(`[tlon] Auto-accepted DM invite from owner ${ship}`);
} catch (err) {
runtime.error?.(`[tlon] Failed to auto-accept DM from owner: ${String(err)}`);
}
continue;
}
if (effectiveAutoAcceptDmInvites && await isDmAllowedWithIngress(ship, effectiveDmAllowlist)) {
try {
await api.poke({
app: "chat",
mark: "chat-dm-rsvp",
json: {
ship,
ok: true
}
});
processedDmInvites.add(ship);
runtime.log?.(`[tlon] Auto-accepted DM invite from ${ship}`);
} catch (err) {
runtime.error?.(`[tlon] Failed to auto-accept DM from ${ship}: ${String(err)}`);
}
continue;
}
if (effectiveOwnerShip && !await isDmAllowedWithIngress(ship, effectiveDmAllowlist)) {
await queueApprovalRequest(createPendingApproval({
type: "dm",
requestingShip: ship,
messagePreview: "(DM invite - no message yet)"
}));
processedDmInvites.add(ship);
}
}
return;
}
const eventRecord = asRecord(event);
if (!eventRecord) return;
const whom = eventRecord.whom;
const messageId = readString(eventRecord, "id");
const response = asRecord(eventRecord.response);
if (!messageId || !response) return;
const essay = asRecord(asRecord(response.add)?.essay);
if (!essay) return;
await runWithProcessedMessageClaim({
tracker: processedTracker,
id: messageId,
task: async () => {
const authorShip = normalizeShip(readString(essay, "author") ?? "");
const partnerShip = extractDmPartnerShip(whom);
const senderShip = partnerShip || authorShip;
if (authorShip === botShipName) return;
if (!senderShip || senderShip === botShipName) return;
if (authorShip && partnerShip && authorShip !== partnerShip) runtime.log?.(`[tlon] DM ship mismatch (author=${authorShip}, partner=${partnerShip}) - routing to partner`);
const rawText = extractMessageText(essay.content);
if (!rawText.trim()) return;
const messageText = rawText;
if (isOwner(senderShip) && isApprovalResponse(messageText)) {
if (await handleApprovalResponse(messageText)) {
runtime.log?.(`[tlon] Processed approval response from owner: ${messageText}`);
return;
}
}
if (isOwner(senderShip) && isAdminCommand(messageText)) {
if (await handleAdminCommand(messageText)) {
runtime.log?.(`[tlon] Processed admin command from owner: ${messageText}`);
return;
}
}
if (isOwner(senderShip)) {
const resolvedMessageText = await resolveAuthorizedMessageText({
rawText,
content: essay.content,
authorizedForCites: true,
resolveAllCites
});
runtime.log?.(`[tlon] Processing DM from owner ${senderShip}`);
await processMessage({
messageId: messageId ?? "",
senderShip,
messageText: resolvedMessageText,
messageContent: essay.content,
isGroup: false,
timestamp: readNumber(essay, "sent") ?? Date.now()
});
return;
}
if (!await isDmAllowedWithIngress(senderShip, effectiveDmAllowlist)) {
if (effectiveOwnerShip) await queueApprovalRequest(createPendingApproval({
type: "dm",
requestingShip: senderShip,
messagePreview: messageText.slice(0, 100),
originalMessage: {
messageId: messageId ?? "",
messageText,
messageContent: essay.content,
timestamp: readNumber(essay, "sent") ?? Date.now()
}
}));
else runtime.log?.(`[tlon] Blocked DM from ${senderShip}: not in allowlist`);
return;
}
await processMessage({
messageText: await resolveAuthorizedMessageText({
rawText,
content: essay.content,
authorizedForCites: true,
resolveAllCites
}),
messageId: messageId ?? "",
senderShip,
messageContent: essay.content,
isGroup: false,
timestamp: readNumber(essay, "sent") ?? Date.now()
});
}
});
} catch (error) {
runtime.error?.(`[tlon] Error handling chat firehose event: ${formatErrorMessage(error)}`);
}
};
try {
runtime.log?.("[tlon] Subscribing to firehose updates...");
await api.subscribe({
app: "channels",
path: "/v2",
event: (event) => {
handleChannelsFirehose(event);
},
err: (error) => {
runtime.error?.(`[tlon] Channels firehose error: ${String(error)}`);
},
quit: () => {
runtime.log?.("[tlon] Channels firehose subscription ended");
}
});
runtime.log?.("[tlon] Subscribed to channels firehose (/v2)");
await api.subscribe({
app: "chat",
path: "/v3",
event: (event) => {
handleChatFirehose(event);
},
err: (error) => {
runtime.error?.(`[tlon] Chat firehose error: ${String(error)}`);
},
quit: () => {
runtime.log?.("[tlon] Chat firehose subscription ended");
}
});
runtime.log?.("[tlon] Subscribed to chat firehose (/v3)");
await api.subscribe({
app: "contacts",
path: "/v1/news",
event: (event) => {
try {
const eventRecord = asRecord(event);
if (eventRecord?.self) {
const nickname = asRecord(asRecord(asRecord(eventRecord.self)?.contact)?.nickname);
if (nickname && "value" in nickname) {
const newNickname = readString(nickname, "value") ?? null;
if (newNickname !== botNickname) {
botNickname = newNickname;
runtime.log?.(`[tlon] Nickname updated: ${botNickname}`);
}
}
}
} catch (error) {
runtime.error?.(`[tlon] Error handling contacts event: ${formatErrorMessage(error)}`);
}
},
err: (error) => {
runtime.error?.(`[tlon] Contacts subscription error: ${String(error)}`);
},
quit: () => {
runtime.log?.("[tlon] Contacts subscription ended");
}
});
runtime.log?.("[tlon] Subscribed to contacts updates (/v1/news)");
settingsManager.onChange((newSettings) => {
currentSettings = newSettings;
if (newSettings.groupChannels?.length) {
const newChannels = newSettings.groupChannels;
for (const ch of newChannels) if (!watchedChannels.has(ch)) {
watchedChannels.add(ch);
runtime.log?.(`[tlon] Settings: now watching channel ${ch}`);
}
}
({effectiveDmAllowlist, effectiveShowModelSig, effectiveAutoAcceptDmInvites, effectiveAutoAcceptGroupInvites, effectiveGroupInviteAllowlist, effectiveAutoDiscoverChannels, effectiveOwnerShip, pendingApprovals} = applyTlonSettingsOverrides({
account,
currentSettings: newSettings,
log: (message) => runtime.log?.(message)
}));
});
try {
await settingsManager.startSubscription();
} catch (err) {
runtime.log?.(`[tlon] Settings subscription not available: ${String(err)}`);
}
try {
await api.subscribe({
app: "groups",
path: "/groups/ui",
event: (event) => {
(async () => {
try {
const eventRecord = asRecord(event);
if (eventRecord) {
const channels = asRecord(eventRecord.channels);
if (channels) for (const [channelNest, _channelData] of Object.entries(channels)) {
if (!channelNest.startsWith("chat/")) continue;
if (!watchedChannels.has(channelNest)) {
watchedChannels.add(channelNest);
runtime.log?.(`[tlon] Auto-detected new channel (invite accepted): ${channelNest}`);
if (effectiveAutoAcceptGroupInvites) try {
const currentChannels = currentSettings.groupChannels || [];
if (!currentChannels.includes(channelNest)) {
const updatedChannels = [...currentChannels, channelNest];
await api.poke({
app: "settings",
mark: "settings-event",
json: { "put-entry": {
"bucket-key": "tlon",
"entry-key": "groupChannels",
value: updatedChannels,
desk: "moltbot"
} }
});
runtime.log?.(`[tlon] Persisted ${channelNest} to settings store`);
}
} catch (err) {
runtime.error?.(`[tlon] Failed to persist channel to settings: ${String(err)}`);
}
}
}
const join = asRecord(eventRecord.join);
if (join) {
const joinChannels = Array.isArray(join.channels) ? join.channels : [];
if (joinChannels.length > 0) for (const channelNest of joinChannels) {
if (typeof channelNest !== "string") continue;
if (!channelNest.startsWith("chat/")) continue;
if (!watchedChannels.has(channelNest)) {
watchedChannels.add(channelNest);
runtime.log?.(`[tlon] Auto-detected joined channel: ${channelNest}`);
if (effectiveAutoAcceptGroupInvites) try {
const currentChannels = currentSettings.groupChannels || [];
if (!currentChannels.includes(channelNest)) {
const updatedChannels = [...currentChannels, channelNest];
await api.poke({
app: "settings",
mark: "settings-event",
json: { "put-entry": {
"bucket-key": "tlon",
"entry-key": "groupChannels",
value: updatedChannels,
desk: "moltbot"
} }
});
runtime.log?.(`[tlon] Persisted ${channelNest} to settings store`);
}
} catch (err) {
runtime.error?.(`[tlon] Failed to persist channel to settings: ${String(err)}`);
}
}
}
}
}
} catch (error) {
runtime.error?.(`[tlon] Error handling groups-ui event: ${formatErrorMessage(error)}`);
}
})();
},
err: (error) => {
runtime.error?.(`[tlon] Groups-ui subscription error: ${String(error)}`);
},
quit: () => {
runtime.log?.("[tlon] Groups-ui subscription ended");
}
});
runtime.log?.("[tlon] Subscribed to groups-ui for real-time channel detection");
} catch (err) {
runtime.log?.(`[tlon] Groups-ui subscription failed (will rely on polling): ${String(err)}`);
}
{
const processedGroupInvites = /* @__PURE__ */ new Set();
const processPendingInvites = async (foreigns) => {
if (!foreigns || typeof foreigns !== "object") return;
for (const [groupFlag, foreign] of Object.entries(foreigns)) {
if (processedGroupInvites.has(groupFlag)) continue;
if (!foreign.invites || foreign.invites.length === 0) continue;
const validInvite = foreign.invites.find((inv) => inv.valid);
if (!validInvite) continue;
const inviterShip = validInvite.from;
if (isOwner(inviterShip)) {
try {
await api.poke({
app: "groups",
mark: "group-join",
json: {
flag: groupFlag,
"join-all": true
}
});
processedGroupInvites.add(groupFlag);
runtime.log?.(`[tlon] Auto-accepted group invite from owner: ${groupFlag}`);
} catch (err) {
runtime.error?.(`[tlon] Failed to accept group invite from owner: ${String(err)}`);
}
continue;
}
if (!effectiveAutoAcceptGroupInvites) {
if (effectiveOwnerShip) {
await queueApprovalRequest(createPendingApproval({
type: "group",
requestingShip: inviterShip,
groupFlag
}));
processedGroupInvites.add(groupFlag);
}
continue;
}
if (!isGroupInviteAllowed(inviterShip, effectiveGroupInviteAllowlist)) {
if (effectiveOwnerShip) {
await queueApprovalRequest(createPendingApproval({
type: "group",
requestingShip: inviterShip,
groupFlag
}));
processedGroupInvites.add(groupFlag);
} else {
runtime.log?.(`[tlon] Rejected group invite from ${inviterShip} (not in groupInviteAllowlist): ${groupFlag}`);
processedGroupInvites.add(groupFlag);
}
continue;
}
try {
await api.poke({
app: "groups",
mark: "group-join",
json: {
flag: groupFlag,
"join-all": true
}
});
processedGroupInvites.add(groupFlag);
runtime.log?.(`[tlon] Auto-accepted group invite: ${groupFlag} (from ${validInvite.from})`);
} catch (err) {
runtime.error?.(`[tlon] Failed to auto-accept group ${groupFlag}: ${String(err)}`);
}
}
};
if (initForeigns) await processPendingInvites(initForeigns);
try {
await api.subscribe({
app: "groups",
path: "/v1/foreigns",
event: (data) => {
(async () => {
try {
await processPendingInvites(data);
} catch (error) {
runtime.error?.(`[tlon] Error handling foreigns event: ${formatErrorMessage(error)}`);
}
})();
},
err: (error) => {
runtime.error?.(`[tlon] Foreigns subscription error: ${String(error)}`);
},
quit: () => {
runtime.log?.("[tlon] Foreigns subscription ended");
}
});
runtime.log?.("[tlon] Subscribed to foreigns (/v1/foreigns) for auto-accepting group invites");
} catch (err) {
runtime.log?.(`[tlon] Foreigns subscription failed: ${String(err)}`);
}
}
if (effectiveAutoDiscoverChannels) {
const discoveredChannels = await fetchAllChannels(api, runtime);
for (const channelNest of discoveredChannels) watchedChannels.add(channelNest);
runtime.log?.(`[tlon] Watching ${watchedChannels.size} channel(s)`);
}
for (const channelNest of watchedChannels) runtime.log?.(`[tlon] Watching channel: ${channelNest}`);
runtime.log?.("[tlon] All subscriptions registered, connecting to SSE stream...");
await api.connect();
runtime.log?.("[tlon] Connected! Firehose subscriptions active");
const pollInterval = setInterval(() => {
(async () => {
if (!opts.abortSignal?.aborted) try {
if (effectiveAutoDiscoverChannels) {
const discoveredChannels = await fetchAllChannels(api, runtime);
for (const channelNest of discoveredChannels) if (!watchedChannels.has(channelNest)) {
watchedChannels.add(channelNest);
runtime.log?.(`[tlon] Now watching new channel: ${channelNest}`);
}
}
} catch (error) {
runtime.error?.(`[tlon] Channel refresh error: ${formatErrorMessage(error)}`);
}
})();
}, 120 * 1e3);
if (opts.abortSignal) {
const signal = opts.abortSignal;
await new Promise((resolve) => {
signal.addEventListener("abort", () => {
clearInterval(pollInterval);
resolve(null);
}, { once: true });
});
} else await new Promise(() => {});
} finally {
try {
await api?.close();
} catch (error) {
runtime.error?.(`[tlon] Cleanup error: ${formatErrorMessage(error)}`);
}
}
}
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-check-content-length-header/check-content-length-header.js
function checkContentLengthHeader() {
return (next, context) => async (args) => {
const { request } = args;
if (HttpRequest.isInstance(request)) {
if (!(CONTENT_LENGTH_HEADER in request.headers) && !(DECODED_CONTENT_LENGTH_HEADER in request.headers)) {
const message = `Are you using a Stream of unknown length as the Body of a PutObject request? Consider using Upload instead from @aws-sdk/lib-storage.`;
if (typeof context?.logger?.warn === "function" && !(context.logger instanceof NoOpLogger)) context.logger.warn(message);
else console.warn(message);
}
}
return next({ ...args });
};
}
var CONTENT_LENGTH_HEADER, DECODED_CONTENT_LENGTH_HEADER, checkContentLengthHeaderMiddlewareOptions, getCheckContentLengthHeaderPlugin;
var init_check_content_length_header = __esmMin((() => {
init_client$1();
init_protocols();
CONTENT_LENGTH_HEADER = "content-length";
DECODED_CONTENT_LENGTH_HEADER = "x-amz-decoded-content-length";
checkContentLengthHeaderMiddlewareOptions = {
step: "finalizeRequest",
tags: ["CHECK_CONTENT_LENGTH_HEADER"],
name: "getCheckContentLengthHeaderPlugin",
override: true
};
getCheckContentLengthHeaderPlugin = (unused) => ({ applyToStack: (clientStack) => {
clientStack.add(checkContentLengthHeader(), checkContentLengthHeaderMiddlewareOptions);
} });
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-region-redirect/region-redirect-endpoint-middleware.js
var regionRedirectEndpointMiddleware, regionRedirectEndpointMiddlewareOptions;
var init_region_redirect_endpoint_middleware = __esmMin((() => {
regionRedirectEndpointMiddleware = (config) => {
return (next, context) => async (args) => {
const originalRegion = await config.region();
const regionProviderRef = config.region;
let unlock = () => {};
if (context.__s3RegionRedirect) {
Object.defineProperty(config, "region", {
writable: false,
value: async () => {
return context.__s3RegionRedirect;
}
});
unlock = () => Object.defineProperty(config, "region", {
writable: true,
value: regionProviderRef
});
}
try {
const result = await next(args);
if (context.__s3RegionRedirect) {
unlock();
if (originalRegion !== await config.region()) throw new Error("Region was not restored following S3 region redirect.");
}
return result;
} catch (e) {
unlock();
throw e;
}
};
};
regionRedirectEndpointMiddlewareOptions = {
tags: ["REGION_REDIRECT", "S3"],
name: "regionRedirectEndpointMiddleware",
override: true,
relation: "before",
toMiddleware: "endpointV2Middleware"
};
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-region-redirect/region-redirect-middleware.js
function regionRedirectMiddleware(clientConfig) {
return (next, context) => async (args) => {
try {
return await next(args);
} catch (err) {
if (clientConfig.followRegionRedirects) {
const statusCode = err?.$metadata?.httpStatusCode;
const isHeadBucket = context.commandName === "HeadBucketCommand";
const bucketRegionHeader = err?.$response?.headers?.["x-amz-bucket-region"];
if (bucketRegionHeader) {
if (statusCode === 301 || statusCode === 400 && (err?.name === "IllegalLocationConstraintException" || isHeadBucket)) {
try {
const actualRegion = bucketRegionHeader;
context.logger?.debug(`Redirecting from ${await clientConfig.region()} to ${actualRegion}`);
context.__s3RegionRedirect = actualRegion;
} catch (e) {
throw new Error("Region redirect failed: " + e);
}
return next(args);
}
}
}
throw err;
}
};
}
var regionRedirectMiddlewareOptions, getRegionRedirectMiddlewarePlugin;
var init_region_redirect_middleware = __esmMin((() => {
init_region_redirect_endpoint_middleware();
regionRedirectMiddlewareOptions = {
step: "initialize",
tags: ["REGION_REDIRECT", "S3"],
name: "regionRedirectMiddleware",
override: true
};
getRegionRedirectMiddlewarePlugin = (clientConfig) => ({ applyToStack: (clientStack) => {
clientStack.add(regionRedirectMiddleware(clientConfig), regionRedirectMiddlewareOptions);
clientStack.addRelativeTo(regionRedirectEndpointMiddleware(clientConfig), regionRedirectEndpointMiddlewareOptions);
} });
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-s3-express/classes/S3ExpressIdentityCache.js
var S3ExpressIdentityCache;
var init_S3ExpressIdentityCache = __esmMin((() => {
S3ExpressIdentityCache = class S3ExpressIdentityCache {
data;
lastPurgeTime = Date.now();
static EXPIRED_CREDENTIAL_PURGE_INTERVAL_MS = 3e4;
constructor(data = {}) {
this.data = data;
}
get(key) {
const entry = this.data[key];
if (!entry) return;
return entry;
}
set(key, entry) {
this.data[key] = entry;
return entry;
}
delete(key) {
delete this.data[key];
}
async purgeExpired() {
const now = Date.now();
if (this.lastPurgeTime + S3ExpressIdentityCache.EXPIRED_CREDENTIAL_PURGE_INTERVAL_MS > now) return;
for (const key in this.data) {
const entry = this.data[key];
if (!entry.isRefreshing) {
const credential = await entry.identity;
if (credential.expiration) {
if (credential.expiration.getTime() < now) delete this.data[key];
}
}
}
}
};
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-s3-express/classes/S3ExpressIdentityCacheEntry.js
var S3ExpressIdentityCacheEntry;
var init_S3ExpressIdentityCacheEntry = __esmMin((() => {
S3ExpressIdentityCacheEntry = class {
_identity;
isRefreshing;
accessed;
constructor(_identity, isRefreshing = false, accessed = Date.now()) {
this._identity = _identity;
this.isRefreshing = isRefreshing;
this.accessed = accessed;
}
get identity() {
this.accessed = Date.now();
return this._identity;
}
};
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-s3-express/classes/S3ExpressIdentityProviderImpl.js
var S3ExpressIdentityProviderImpl;
var init_S3ExpressIdentityProviderImpl = __esmMin((() => {
init_S3ExpressIdentityCache();
init_S3ExpressIdentityCacheEntry();
S3ExpressIdentityProviderImpl = class S3ExpressIdentityProviderImpl {
createSessionFn;
cache;
static REFRESH_WINDOW_MS = 6e4;
constructor(createSessionFn, cache = new S3ExpressIdentityCache()) {
this.createSessionFn = createSessionFn;
this.cache = cache;
}
async getS3ExpressIdentity(awsIdentity, identityProperties) {
const key = identityProperties.Bucket;
const { cache } = this;
const entry = cache.get(key);
if (entry) return entry.identity.then((identity) => {
if ((identity.expiration?.getTime() ?? 0) < Date.now()) return cache.set(key, new S3ExpressIdentityCacheEntry(this.getIdentity(key))).identity;
if ((identity.expiration?.getTime() ?? 0) < Date.now() + S3ExpressIdentityProviderImpl.REFRESH_WINDOW_MS && !entry.isRefreshing) {
entry.isRefreshing = true;
this.getIdentity(key).then((id) => {
cache.set(key, new S3ExpressIdentityCacheEntry(Promise.resolve(id)));
});
}
return identity;
});
return cache.set(key, new S3ExpressIdentityCacheEntry(this.getIdentity(key))).identity;
}
async getIdentity(key) {
await this.cache.purgeExpired().catch((error) => {
console.warn("Error while clearing expired entries in S3ExpressIdentityCache: \n" + error);
});
const session = await this.createSessionFn(key);
if (!session.Credentials?.AccessKeyId || !session.Credentials?.SecretAccessKey) throw new Error("s3#createSession response credential missing AccessKeyId or SecretAccessKey.");
return {
accessKeyId: session.Credentials.AccessKeyId,
secretAccessKey: session.Credentials.SecretAccessKey,
sessionToken: session.Credentials.SessionToken,
expiration: session.Credentials.Expiration ? new Date(session.Credentials.Expiration) : void 0
};
}
};
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-s3-configuration/s3Configuration.js
var resolveS3Config;
var init_s3Configuration = __esmMin((() => {
init_S3ExpressIdentityProviderImpl();
resolveS3Config = (input, { session }) => {
const [s3ClientProvider, CreateSessionCommandCtor] = session;
const { forcePathStyle, useAccelerateEndpoint, disableMultiregionAccessPoints, followRegionRedirects, s3ExpressIdentityProvider, bucketEndpoint, expectContinueHeader } = input;
return Object.assign(input, {
forcePathStyle: forcePathStyle ?? false,
useAccelerateEndpoint: useAccelerateEndpoint ?? false,
disableMultiregionAccessPoints: disableMultiregionAccessPoints ?? false,
followRegionRedirects: followRegionRedirects ?? false,
s3ExpressIdentityProvider: s3ExpressIdentityProvider ?? new S3ExpressIdentityProviderImpl(async (key) => s3ClientProvider().send(new CreateSessionCommandCtor({ Bucket: key }))),
bucketEndpoint: bucketEndpoint ?? false,
expectContinueHeader: expectContinueHeader ?? 2097152
});
};
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-s3-expires/s3-expires-middleware.js
var s3ExpiresMiddleware, s3ExpiresMiddlewareOptions, getS3ExpiresMiddlewarePlugin;
var init_s3_expires_middleware = __esmMin((() => {
init_protocols();
init_serde();
s3ExpiresMiddleware = (config) => {
return (next, context) => async (args) => {
const result = await next(args);
const { response } = result;
if (HttpResponse.isInstance(response)) {
if (response.headers.expires) {
response.headers.expiresstring = response.headers.expires;
try {
parseRfc7231DateTime(response.headers.expires);
} catch (e) {
context.logger?.warn(`AWS SDK Warning for ${context.clientName}::${context.commandName} response parsing (${response.headers.expires}): ${e}`);
delete response.headers.expires;
}
}
}
return result;
};
};
s3ExpiresMiddlewareOptions = {
tags: ["S3"],
name: "s3ExpiresMiddleware",
override: true,
relation: "after",
toMiddleware: "deserializerMiddleware"
};
getS3ExpiresMiddlewarePlugin = (clientConfig) => ({ applyToStack: (clientStack) => {
clientStack.addRelativeTo(s3ExpiresMiddleware(clientConfig), s3ExpiresMiddlewareOptions);
} });
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-s3-express/classes/SignatureV4S3Express.js
var import_dist_cjs$2, SignatureV4S3Express;
var init_SignatureV4S3Express = __esmMin((() => {
import_dist_cjs$2 = require_dist_cjs$9();
SignatureV4S3Express = class extends import_dist_cjs$2.SignatureV4SignWithCredentials {};
})), S3_EXPRESS_AUTH_SCHEME, SESSION_TOKEN_QUERY_PARAM, SESSION_TOKEN_HEADER, NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_ENV_NAME, NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_INI_NAME, NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS;
var init_constants$1 = __esmMin((() => {
init_config();
S3_EXPRESS_AUTH_SCHEME = "sigv4-s3express";
SESSION_TOKEN_QUERY_PARAM = "X-Amz-S3session-Token";
SESSION_TOKEN_HEADER = SESSION_TOKEN_QUERY_PARAM.toLowerCase();
NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_ENV_NAME = "AWS_S3_DISABLE_EXPRESS_SESSION_AUTH";
NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_INI_NAME = "s3_disable_express_session_auth";
NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS = {
environmentVariableSelector: (env) => booleanSelector(env, NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_ENV_NAME, SelectorType.ENV),
configFileSelector: (profile) => booleanSelector(profile, NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_INI_NAME, SelectorType.CONFIG),
default: false
};
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-s3-express/functions/s3ExpressMiddleware.js
var s3ExpressMiddleware, s3ExpressMiddlewareOptions, getS3ExpressPlugin;
var init_s3ExpressMiddleware = __esmMin((() => {
init_client();
init_protocols();
init_constants$1();
s3ExpressMiddleware = (options) => {
return (next, context) => async (args) => {
if (context.endpointV2) {
const endpoint = context.endpointV2;
const isS3ExpressAuth = endpoint.properties?.authSchemes?.[0]?.name === S3_EXPRESS_AUTH_SCHEME;
if (endpoint.properties?.backend === "S3Express" || endpoint.properties?.bucketType === "Directory") {
setFeature(context, "S3_EXPRESS_BUCKET", "J");
context.isS3ExpressBucket = true;
}
if (isS3ExpressAuth) {
const requestBucket = args.input.Bucket;
if (requestBucket) {
const s3ExpressIdentity = await options.s3ExpressIdentityProvider.getS3ExpressIdentity(await options.credentials(), { Bucket: requestBucket });
context.s3ExpressIdentity = s3ExpressIdentity;
if (HttpRequest.isInstance(args.request) && s3ExpressIdentity.sessionToken) args.request.headers[SESSION_TOKEN_HEADER] = s3ExpressIdentity.sessionToken;
}
}
}
return next(args);
};
};
s3ExpressMiddlewareOptions = {
name: "s3ExpressMiddleware",
step: "build",
tags: ["S3", "S3_EXPRESS"],
override: true
};
getS3ExpressPlugin = (options) => ({ applyToStack: (clientStack) => {
clientStack.add(s3ExpressMiddleware(options), s3ExpressMiddlewareOptions);
} });
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-s3-express/functions/signS3Express.js
var signS3Express;
var init_signS3Express = __esmMin((() => {
signS3Express = async (s3ExpressIdentity, signingOptions, request, sigV4MultiRegionSigner) => {
const signedRequest = await sigV4MultiRegionSigner.signWithCredentials(request, s3ExpressIdentity, {});
if (signedRequest.headers["X-Amz-Security-Token"] || signedRequest.headers["x-amz-security-token"]) throw new Error("X-Amz-Security-Token must not be set for s3-express requests.");
return signedRequest;
};
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-s3-express/functions/s3ExpressHttpSigningMiddleware.js
var defaultErrorHandler, defaultSuccessHandler, s3ExpressHttpSigningMiddlewareOptions, s3ExpressHttpSigningMiddleware, getS3ExpressHttpSigningPlugin;
var init_s3ExpressHttpSigningMiddleware = __esmMin((() => {
init_dist_es$1();
init_client$1();
init_protocols();
init_signS3Express();
defaultErrorHandler = (signingProperties) => (error) => {
throw error;
};
defaultSuccessHandler = (httpResponse, signingProperties) => {};
s3ExpressHttpSigningMiddlewareOptions = httpSigningMiddlewareOptions;
s3ExpressHttpSigningMiddleware = (config) => (next, context) => async (args) => {
if (!HttpRequest.isInstance(args.request)) return next(args);
const scheme = getSmithyContext(context).selectedHttpAuthScheme;
if (!scheme) throw new Error(`No HttpAuthScheme was selected: unable to sign request`);
const { httpAuthOption: { signingProperties = {} }, identity, signer } = scheme;
let request;
if (context.s3ExpressIdentity) request = await signS3Express(context.s3ExpressIdentity, signingProperties, args.request, await config.signer());
else request = await signer.sign(args.request, identity, signingProperties);
const output = await next({
...args,
request
}).catch((signer.errorHandler || defaultErrorHandler)(signingProperties));
(signer.successHandler || defaultSuccessHandler)(output.response, signingProperties);
return output;
};
getS3ExpressHttpSigningPlugin = (config) => ({ applyToStack: (clientStack) => {
clientStack.addRelativeTo(s3ExpressHttpSigningMiddleware(config), httpSigningMiddlewareOptions);
} });
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/to-stream/toStream.js
function toStream(bytes) {
return Readable.from(Buffer.from(bytes));
}
var init_toStream = __esmMin((() => {}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-throw-200-exceptions/throw-200-exceptions.js
var THROW_IF_EMPTY_BODY, throw200ExceptionsMiddleware, collectBody, throw200ExceptionsMiddlewareOptions, getThrow200ExceptionsPlugin;
var init_throw_200_exceptions = __esmMin((() => {
init_protocols();
init_toStream();
THROW_IF_EMPTY_BODY = {
CopyObjectCommand: true,
UploadPartCopyCommand: true,
CompleteMultipartUploadCommand: true
};
throw200ExceptionsMiddleware = (config) => (next, context) => async (args) => {
const result = await next(args);
const { response } = result;
if (!HttpResponse.isInstance(response)) return result;
const { statusCode, body } = response;
if (statusCode < 200 || statusCode >= 300) return result;
const bodyBytes = await collectBody(body, config);
response.body = toStream(bodyBytes);
if (bodyBytes.length === 0 && THROW_IF_EMPTY_BODY[context.commandName]) {
const err = /* @__PURE__ */ new Error("S3 aborted request");
err.$metadata = { httpStatusCode: 503 };
err.name = "InternalError";
throw err;
}
const bodyStringTail = config.utf8Encoder(bodyBytes.subarray(bodyBytes.length - 16));
if (bodyStringTail && bodyStringTail.endsWith("</Error>")) response.statusCode = 503;
return result;
};
collectBody = (streamBody = new Uint8Array(), context) => {
if (streamBody instanceof Uint8Array) return Promise.resolve(streamBody);
return context.streamCollector(streamBody) || Promise.resolve(new Uint8Array());
};
throw200ExceptionsMiddlewareOptions = {
relation: "after",
toMiddleware: "deserializerMiddleware",
tags: ["THROW_200_EXCEPTIONS", "S3"],
name: "throw200ExceptionsMiddleware",
override: true
};
getThrow200ExceptionsPlugin = (config) => ({ applyToStack: (clientStack) => {
clientStack.addRelativeTo(throw200ExceptionsMiddleware(config), throw200ExceptionsMiddlewareOptions);
} });
}));
//#endregion
//#region node_modules/@aws-sdk/core/dist-es/submodules/util/util-arn-parser/arn.js
var validate, parse, build;
var init_arn = __esmMin((() => {
validate = (str) => typeof str === "string" && str.indexOf("arn:") === 0 && str.split(":").length >= 6;
parse = (arn) => {
const segments = arn.split(":");
if (segments.length < 6 || segments[0] !== "arn") throw new Error("Malformed ARN");
const [, partition, service, region, accountId, ...resource] = segments;
return {
partition,
service,
region,
accountId,
resource: resource.join(":")
};
};
build = (arnObject) => {
const { partition = "aws", service, region, accountId, resource } = arnObject;
if ([
service,
region,
accountId,
resource
].some((segment) => typeof segment !== "string")) throw new Error("Input ARN object is invalid");
return `arn:${partition}:${service}:${region}:${accountId}:${resource}`;
};
}));
//#endregion
//#region node_modules/@aws-sdk/core/dist-es/submodules/util/util-format-url/format-url.js
function formatUrl(request) {
const { port, query } = request;
let { protocol, path, hostname } = request;
if (protocol && protocol.slice(-1) !== ":") protocol += ":";
if (port) hostname += `:${port}`;
if (path && path.charAt(0) !== "/") path = `/${path}`;
let queryString = query ? buildQueryString(query) : "";
if (queryString && queryString[0] !== "?") queryString = `?${queryString}`;
let auth = "";
if (request.username != null || request.password != null) auth = `${request.username ?? ""}:${request.password ?? ""}@`;
let fragment = "";
if (request.fragment) fragment = `#${request.fragment}`;
return `${protocol}//${auth}${hostname}${path}${queryString}${fragment}`;
}
var init_format_url = __esmMin((() => {
init_protocols();
}));
//#endregion
//#region node_modules/@aws-sdk/core/dist-es/submodules/util/index.js
var util_exports = /* @__PURE__ */ __exportAll({
build: () => build,
formatUrl: () => formatUrl,
parse: () => parse,
validate: () => validate
});
var init_util = __esmMin((() => {
init_arn();
init_format_url();
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-region-redirect/bucket-endpoint-middleware.js
function bucketEndpointMiddleware$1(options) {
return (next, context) => async (args) => {
if (options.bucketEndpoint) {
const endpoint = context.endpointV2;
if (endpoint) {
const bucket = args.input.Bucket;
if (typeof bucket === "string") try {
const bucketEndpointUrl = new URL(bucket);
context.endpointV2 = {
...endpoint,
url: bucketEndpointUrl
};
} catch (e) {
const warning = `@aws-sdk/middleware-sdk-s3: bucketEndpoint=true was set but Bucket=${bucket} could not be parsed as URL.`;
if (context.logger?.constructor?.name === "NoOpLogger") console.warn(warning);
else context.logger?.warn?.(warning);
throw e;
}
}
}
return next(args);
};
}
var bucketEndpointMiddlewareOptions$1;
var init_bucket_endpoint_middleware = __esmMin((() => {
bucketEndpointMiddlewareOptions$1 = {
name: "bucketEndpointMiddleware",
override: true,
relation: "after",
toMiddleware: "endpointV2Middleware"
};
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-validate-bucket-name/validate-bucket-name.js
function validateBucketNameMiddleware({ bucketEndpoint }) {
return (next) => async (args) => {
const { input: { Bucket } } = args;
if (!bucketEndpoint && typeof Bucket === "string" && !validate(Bucket) && Bucket.indexOf("/") >= 0) {
const err = /* @__PURE__ */ new Error(`Bucket name shouldn't contain '/', received '${Bucket}'`);
err.name = "InvalidBucketName";
throw err;
}
return next({ ...args });
};
}
var validateBucketNameMiddlewareOptions, getValidateBucketNamePlugin;
var init_validate_bucket_name = __esmMin((() => {
init_util();
init_bucket_endpoint_middleware();
validateBucketNameMiddlewareOptions = {
step: "initialize",
tags: ["VALIDATE_BUCKET_NAME"],
name: "validateBucketNameMiddleware",
override: true
};
getValidateBucketNamePlugin = (options) => ({ applyToStack: (clientStack) => {
clientStack.add(validateBucketNameMiddleware(options), validateBucketNameMiddlewareOptions);
clientStack.addRelativeTo(bucketEndpointMiddleware$1(options), bucketEndpointMiddlewareOptions$1);
} });
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/protocol/S3RestXmlProtocol.js
var S3RestXmlProtocol;
var init_S3RestXmlProtocol = __esmMin((() => {
init_protocols$1();
init_schema();
S3RestXmlProtocol = class extends AwsRestXmlProtocol {
async serializeRequest(operationSchema, input, context) {
const request = await super.serializeRequest(operationSchema, input, context);
const ns = NormalizedSchema.of(operationSchema.input);
const staticStructureSchema = ns.getSchema();
let bucketMemberIndex = 0;
const requiredMemberCount = staticStructureSchema[6] ?? 0;
if (input && typeof input === "object") for (const [memberName, memberNs] of ns.structIterator()) {
if (++bucketMemberIndex > requiredMemberCount) break;
if (memberName === "Bucket") {
if (!input.Bucket && memberNs.getMergedTraits().httpLabel) throw new Error(`No value provided for input HTTP label: Bucket.`);
break;
}
}
return request;
}
};
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/NodeDisableMultiregionAccessPointConfigOptions.js
var NODE_DISABLE_MULTIREGION_ACCESS_POINT_ENV_NAME, NODE_DISABLE_MULTIREGION_ACCESS_POINT_INI_NAME, NODE_DISABLE_MULTIREGION_ACCESS_POINT_CONFIG_OPTIONS;
var init_NodeDisableMultiregionAccessPointConfigOptions = __esmMin((() => {
init_config();
NODE_DISABLE_MULTIREGION_ACCESS_POINT_ENV_NAME = "AWS_S3_DISABLE_MULTIREGION_ACCESS_POINTS";
NODE_DISABLE_MULTIREGION_ACCESS_POINT_INI_NAME = "s3_disable_multiregion_access_points";
NODE_DISABLE_MULTIREGION_ACCESS_POINT_CONFIG_OPTIONS = {
environmentVariableSelector: (env) => booleanSelector(env, NODE_DISABLE_MULTIREGION_ACCESS_POINT_ENV_NAME, SelectorType.ENV),
configFileSelector: (profile) => booleanSelector(profile, NODE_DISABLE_MULTIREGION_ACCESS_POINT_INI_NAME, SelectorType.CONFIG),
default: false
};
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/NodeUseArnRegionConfigOptions.js
var NODE_USE_ARN_REGION_ENV_NAME, NODE_USE_ARN_REGION_INI_NAME, NODE_USE_ARN_REGION_CONFIG_OPTIONS;
var init_NodeUseArnRegionConfigOptions = __esmMin((() => {
init_config();
NODE_USE_ARN_REGION_ENV_NAME = "AWS_S3_USE_ARN_REGION";
NODE_USE_ARN_REGION_INI_NAME = "s3_use_arn_region";
NODE_USE_ARN_REGION_CONFIG_OPTIONS = {
environmentVariableSelector: (env) => booleanSelector(env, NODE_USE_ARN_REGION_ENV_NAME, SelectorType.ENV),
configFileSelector: (profile) => booleanSelector(profile, NODE_USE_ARN_REGION_INI_NAME, SelectorType.CONFIG),
default: void 0
};
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-bucket-endpoint/bucketHostnameUtils.js
var DOMAIN_PATTERN, IP_ADDRESS_PATTERN, DOTS_PATTERN, DOT_PATTERN, S3_HOSTNAME_PATTERN, S3_US_EAST_1_ALTNAME_PATTERN, AWS_PARTITION_SUFFIX, isBucketNameOptions, isDnsCompatibleBucketName, getRegionalSuffix, getSuffix, getSuffixForArnEndpoint, validateArnEndpointOptions, validateService, validateS3Service, validateOutpostService, validatePartition, validateRegion, validateRegionalClient, validateAccountId, validateDNSHostLabel, validateCustomEndpoint, getArnResources, validateNoDualstack, validateNoFIPS, validateMrapAlias;
var init_bucketHostnameUtils = __esmMin((() => {
DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/;
IP_ADDRESS_PATTERN = /(\d+\.){3}\d+/;
DOTS_PATTERN = /\.\./;
DOT_PATTERN = /\./;
S3_HOSTNAME_PATTERN = /^(.+\.)?s3(-fips)?(\.dualstack)?[.-]([a-z0-9-]+)\./;
S3_US_EAST_1_ALTNAME_PATTERN = /^s3(-external-1)?\.amazonaws\.com$/;
AWS_PARTITION_SUFFIX = "amazonaws.com";
isBucketNameOptions = (options) => typeof options.bucketName === "string";
isDnsCompatibleBucketName = (bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName);
getRegionalSuffix = (hostname) => {
const parts = hostname.match(S3_HOSTNAME_PATTERN);
return [parts[4], hostname.replace(new RegExp(`^${parts[0]}`), "")];
};
getSuffix = (hostname) => S3_US_EAST_1_ALTNAME_PATTERN.test(hostname) ? ["us-east-1", AWS_PARTITION_SUFFIX] : getRegionalSuffix(hostname);
getSuffixForArnEndpoint = (hostname) => S3_US_EAST_1_ALTNAME_PATTERN.test(hostname) ? [hostname.replace(`.${AWS_PARTITION_SUFFIX}`, ""), AWS_PARTITION_SUFFIX] : getRegionalSuffix(hostname);
validateArnEndpointOptions = (options) => {
if (options.pathStyleEndpoint) throw new Error("Path-style S3 endpoint is not supported when bucket is an ARN");
if (options.accelerateEndpoint) throw new Error("Accelerate endpoint is not supported when bucket is an ARN");
if (!options.tlsCompatible) throw new Error("HTTPS is required when bucket is an ARN");
};
validateService = (service) => {
if (service !== "s3" && service !== "s3-outposts" && service !== "s3-object-lambda") throw new Error("Expect 's3' or 's3-outposts' or 's3-object-lambda' in ARN service component");
};
validateS3Service = (service) => {
if (service !== "s3") throw new Error("Expect 's3' in Accesspoint ARN service component");
};
validateOutpostService = (service) => {
if (service !== "s3-outposts") throw new Error("Expect 's3-posts' in Outpost ARN service component");
};
validatePartition = (partition, options) => {
if (partition !== options.clientPartition) throw new Error(`Partition in ARN is incompatible, got "${partition}" but expected "${options.clientPartition}"`);
};
validateRegion = (region, options) => {};
validateRegionalClient = (region) => {
if (["s3-external-1", "aws-global"].includes(region)) throw new Error(`Client region ${region} is not regional`);
};
validateAccountId = (accountId) => {
if (!/[0-9]{12}/.exec(accountId)) throw new Error("Access point ARN accountID does not match regex '[0-9]{12}'");
};
validateDNSHostLabel = (label, options = { tlsCompatible: true }) => {
if (label.length >= 64 || !/^[a-z0-9][a-z0-9.-]*[a-z0-9]$/.test(label) || /(\d+\.){3}\d+/.test(label) || /[.-]{2}/.test(label) || options?.tlsCompatible && DOT_PATTERN.test(label)) throw new Error(`Invalid DNS label ${label}`);
};
validateCustomEndpoint = (options) => {
if (options.isCustomEndpoint) {
if (options.dualstackEndpoint) throw new Error("Dualstack endpoint is not supported with custom endpoint");
if (options.accelerateEndpoint) throw new Error("Accelerate endpoint is not supported with custom endpoint");
}
};
getArnResources = (resource) => {
const delimiter = resource.includes(":") ? ":" : "/";
const [resourceType, ...rest] = resource.split(delimiter);
if (resourceType === "accesspoint") {
if (rest.length !== 1 || rest[0] === "") throw new Error(`Access Point ARN should have one resource accesspoint${delimiter}{accesspointname}`);
return { accesspointName: rest[0] };
} else if (resourceType === "outpost") {
if (!rest[0] || rest[1] !== "accesspoint" || !rest[2] || rest.length !== 3) throw new Error(`Outpost ARN should have resource outpost${delimiter}{outpostId}${delimiter}accesspoint${delimiter}{accesspointName}`);
const [outpostId, _, accesspointName] = rest;
return {
outpostId,
accesspointName
};
} else throw new Error(`ARN resource should begin with 'accesspoint${delimiter}' or 'outpost${delimiter}'`);
};
validateNoDualstack = (dualstackEndpoint) => {};
validateNoFIPS = (useFipsEndpoint) => {
if (useFipsEndpoint) throw new Error(`FIPS region is not supported with Outpost.`);
};
validateMrapAlias = (name) => {
try {
name.split(".").forEach((label) => {
validateDNSHostLabel(label);
});
} catch (e) {
throw new Error(`"${name}" is not a DNS compatible name.`);
}
};
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-bucket-endpoint/bucketHostname.js
var bucketHostname, getEndpointFromBucketName, getEndpointFromArn, getEndpointFromObjectLambdaArn, getEndpointFromMRAPArn, getEndpointFromOutpostArn, getEndpointFromAccessPointArn;
var init_bucketHostname = __esmMin((() => {
init_bucketHostnameUtils();
bucketHostname = (options) => {
validateCustomEndpoint(options);
return isBucketNameOptions(options) ? getEndpointFromBucketName(options) : getEndpointFromArn(options);
};
getEndpointFromBucketName = ({ accelerateEndpoint = false, clientRegion: region, baseHostname, bucketName, dualstackEndpoint = false, fipsEndpoint = false, pathStyleEndpoint = false, tlsCompatible = true, isCustomEndpoint = false }) => {
const [clientRegion, hostnameSuffix] = isCustomEndpoint ? [region, baseHostname] : getSuffix(baseHostname);
if (pathStyleEndpoint || !isDnsCompatibleBucketName(bucketName) || tlsCompatible && DOT_PATTERN.test(bucketName)) return {
bucketEndpoint: false,
hostname: dualstackEndpoint ? `s3.dualstack.${clientRegion}.${hostnameSuffix}` : baseHostname
};
if (accelerateEndpoint) baseHostname = `s3-accelerate${dualstackEndpoint ? ".dualstack" : ""}.${hostnameSuffix}`;
else if (dualstackEndpoint) baseHostname = `s3.dualstack.${clientRegion}.${hostnameSuffix}`;
return {
bucketEndpoint: true,
hostname: `${bucketName}.${baseHostname}`
};
};
getEndpointFromArn = (options) => {
const { isCustomEndpoint, baseHostname, clientRegion } = options;
const hostnameSuffix = isCustomEndpoint ? baseHostname : getSuffixForArnEndpoint(baseHostname)[1];
const { pathStyleEndpoint, accelerateEndpoint = false, fipsEndpoint = false, tlsCompatible = true, bucketName, clientPartition = "aws" } = options;
validateArnEndpointOptions({
pathStyleEndpoint,
accelerateEndpoint,
tlsCompatible
});
const { service, partition, accountId, region, resource } = bucketName;
validateService(service);
validatePartition(partition, { clientPartition });
validateAccountId(accountId);
const { accesspointName, outpostId } = getArnResources(resource);
if (service === "s3-object-lambda") return getEndpointFromObjectLambdaArn({
...options,
tlsCompatible,
bucketName,
accesspointName,
hostnameSuffix
});
if (region === "") return getEndpointFromMRAPArn({
...options,
clientRegion,
mrapAlias: accesspointName,
hostnameSuffix
});
if (outpostId) return getEndpointFromOutpostArn({
...options,
clientRegion,
outpostId,
accesspointName,
hostnameSuffix
});
return getEndpointFromAccessPointArn({
...options,
clientRegion,
accesspointName,
hostnameSuffix
});
};
getEndpointFromObjectLambdaArn = ({ dualstackEndpoint = false, fipsEndpoint = false, tlsCompatible = true, useArnRegion, clientRegion, clientSigningRegion = clientRegion, accesspointName, bucketName, hostnameSuffix }) => {
const { accountId, region, service } = bucketName;
validateRegionalClient(clientRegion);
const DNSHostLabel = `${accesspointName}-${accountId}`;
validateDNSHostLabel(DNSHostLabel, { tlsCompatible });
const endpointRegion = useArnRegion ? region : clientRegion;
const signingRegion = useArnRegion ? region : clientSigningRegion;
return {
bucketEndpoint: true,
hostname: `${DNSHostLabel}.${service}${fipsEndpoint ? "-fips" : ""}.${endpointRegion}.${hostnameSuffix}`,
signingRegion,
signingService: service
};
};
getEndpointFromMRAPArn = ({ disableMultiregionAccessPoints, dualstackEndpoint = false, isCustomEndpoint, mrapAlias, hostnameSuffix }) => {
if (disableMultiregionAccessPoints === true) throw new Error("SDK is attempting to use a MRAP ARN. Please enable to feature.");
validateMrapAlias(mrapAlias);
return {
bucketEndpoint: true,
hostname: `${mrapAlias}${isCustomEndpoint ? "" : `.accesspoint.s3-global`}.${hostnameSuffix}`,
signingRegion: "*"
};
};
getEndpointFromOutpostArn = ({ useArnRegion, clientRegion, clientSigningRegion = clientRegion, bucketName, outpostId, dualstackEndpoint = false, fipsEndpoint = false, tlsCompatible = true, accesspointName, isCustomEndpoint, hostnameSuffix }) => {
validateRegionalClient(clientRegion);
const DNSHostLabel = `${accesspointName}-${bucketName.accountId}`;
validateDNSHostLabel(DNSHostLabel, { tlsCompatible });
const endpointRegion = useArnRegion ? bucketName.region : clientRegion;
const signingRegion = useArnRegion ? bucketName.region : clientSigningRegion;
validateOutpostService(bucketName.service);
validateDNSHostLabel(outpostId, { tlsCompatible });
validateNoFIPS(fipsEndpoint);
return {
bucketEndpoint: true,
hostname: `${`${DNSHostLabel}.${outpostId}`}${isCustomEndpoint ? "" : `.s3-outposts.${endpointRegion}`}.${hostnameSuffix}`,
signingRegion,
signingService: "s3-outposts"
};
};
getEndpointFromAccessPointArn = ({ useArnRegion, clientRegion, clientSigningRegion = clientRegion, bucketName, dualstackEndpoint = false, fipsEndpoint = false, tlsCompatible = true, accesspointName, isCustomEndpoint, hostnameSuffix }) => {
validateRegionalClient(clientRegion);
const hostnamePrefix = `${accesspointName}-${bucketName.accountId}`;
validateDNSHostLabel(hostnamePrefix, { tlsCompatible });
const endpointRegion = useArnRegion ? bucketName.region : clientRegion;
const signingRegion = useArnRegion ? bucketName.region : clientSigningRegion;
validateS3Service(bucketName.service);
return {
bucketEndpoint: true,
hostname: `${hostnamePrefix}${isCustomEndpoint ? "" : `.s3-accesspoint${fipsEndpoint ? "-fips" : ""}${dualstackEndpoint ? ".dualstack" : ""}.${endpointRegion}`}.${hostnameSuffix}`,
signingRegion
};
};
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-bucket-endpoint/bucketEndpointMiddleware.js
var bucketEndpointMiddleware, bucketEndpointMiddlewareOptions, getBucketEndpointPlugin;
var init_bucketEndpointMiddleware = __esmMin((() => {
init_util();
init_protocols();
init_bucketHostname();
bucketEndpointMiddleware = (options) => (next, context) => async (args) => {
const { Bucket: bucketName } = args.input;
let replaceBucketInPath = options.bucketEndpoint;
const request = args.request;
if (HttpRequest.isInstance(request)) {
if (options.bucketEndpoint) request.hostname = bucketName;
else if (validate(bucketName)) {
const bucketArn = parse(bucketName);
const clientRegion = await options.region();
const useDualstackEndpoint = await options.useDualstackEndpoint();
const useFipsEndpoint = await options.useFipsEndpoint();
const { partition, signingRegion = clientRegion } = await options.regionInfoProvider(clientRegion, {
useDualstackEndpoint,
useFipsEndpoint
}) || {};
const useArnRegion = await options.useArnRegion();
const { hostname, bucketEndpoint, signingRegion: modifiedSigningRegion, signingService } = bucketHostname({
bucketName: bucketArn,
baseHostname: request.hostname,
accelerateEndpoint: options.useAccelerateEndpoint,
dualstackEndpoint: useDualstackEndpoint,
fipsEndpoint: useFipsEndpoint,
pathStyleEndpoint: options.forcePathStyle,
tlsCompatible: request.protocol === "https:",
useArnRegion,
clientPartition: partition,
clientSigningRegion: signingRegion,
clientRegion,
isCustomEndpoint: options.isCustomEndpoint,
disableMultiregionAccessPoints: await options.disableMultiregionAccessPoints()
});
if (modifiedSigningRegion && modifiedSigningRegion !== signingRegion) context["signing_region"] = modifiedSigningRegion;
if (signingService && signingService !== "s3") context["signing_service"] = signingService;
request.hostname = hostname;
replaceBucketInPath = bucketEndpoint;
} else {
const clientRegion = await options.region();
const dualstackEndpoint = await options.useDualstackEndpoint();
const fipsEndpoint = await options.useFipsEndpoint();
const { hostname, bucketEndpoint } = bucketHostname({
bucketName,
clientRegion,
baseHostname: request.hostname,
accelerateEndpoint: options.useAccelerateEndpoint,
dualstackEndpoint,
fipsEndpoint,
pathStyleEndpoint: options.forcePathStyle,
tlsCompatible: request.protocol === "https:",
isCustomEndpoint: options.isCustomEndpoint
});
request.hostname = hostname;
replaceBucketInPath = bucketEndpoint;
}
if (replaceBucketInPath) {
request.path = request.path.replace(/^(\/)?[^\/]+/, "");
if (request.path === "") request.path = "/";
}
}
return next({
...args,
request
});
};
bucketEndpointMiddlewareOptions = {
tags: ["BUCKET_ENDPOINT"],
name: "bucketEndpointMiddleware",
relation: "before",
toMiddleware: "hostHeaderMiddleware",
override: true
};
getBucketEndpointPlugin = (options) => ({ applyToStack: (clientStack) => {
clientStack.addRelativeTo(bucketEndpointMiddleware(options), bucketEndpointMiddlewareOptions);
} });
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-bucket-endpoint/configurations.js
function resolveBucketEndpointConfig(input) {
const { bucketEndpoint = false, forcePathStyle = false, useAccelerateEndpoint = false, useArnRegion, disableMultiregionAccessPoints = false } = input;
return Object.assign(input, {
bucketEndpoint,
forcePathStyle,
useAccelerateEndpoint,
useArnRegion: typeof useArnRegion === "function" ? useArnRegion : () => Promise.resolve(useArnRegion),
disableMultiregionAccessPoints: typeof disableMultiregionAccessPoints === "function" ? disableMultiregionAccessPoints : () => Promise.resolve(disableMultiregionAccessPoints)
});
}
var init_configurations = __esmMin((() => {}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-expect-continue/middleware-expect-continue.js
function addExpectContinueMiddleware(options) {
return (next) => async (args) => {
const { request } = args;
if (options.expectContinueHeader !== false && HttpRequest.isInstance(request) && request.body && options.runtime === "node" && options.requestHandler?.constructor?.name !== "FetchHttpHandler") {
let sendHeader = true;
if (typeof options.expectContinueHeader === "number") try {
sendHeader = (Number(request.headers?.["content-length"]) ?? options.bodyLengthChecker?.(request.body) ?? Infinity) >= options.expectContinueHeader;
} catch (e) {}
else sendHeader = !!options.expectContinueHeader;
if (sendHeader) request.headers.Expect = "100-continue";
}
return next({
...args,
request
});
};
}
var addExpectContinueMiddlewareOptions, getAddExpectContinuePlugin;
var init_middleware_expect_continue = __esmMin((() => {
init_protocols();
addExpectContinueMiddlewareOptions = {
step: "build",
tags: ["SET_EXPECT_HEADER", "EXPECT_HEADER"],
name: "addExpectContinueMiddleware",
override: true
};
getAddExpectContinuePlugin = (options) => ({ applyToStack: (clientStack) => {
clientStack.add(addExpectContinueMiddleware(options), addExpectContinueMiddlewareOptions);
} });
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-location-constraint/middleware-location-constraint.js
function locationConstraintMiddleware(options) {
return (next) => async (args) => {
const { CreateBucketConfiguration } = args.input;
const region = await options.region();
if (!CreateBucketConfiguration?.LocationConstraint && !CreateBucketConfiguration?.Location) {
if (region !== "us-east-1") {
args.input.CreateBucketConfiguration = args.input.CreateBucketConfiguration ?? {};
args.input.CreateBucketConfiguration.LocationConstraint = region;
}
}
return next(args);
};
}
var locationConstraintMiddlewareOptions, getLocationConstraintPlugin;
var init_middleware_location_constraint = __esmMin((() => {
locationConstraintMiddlewareOptions = {
step: "initialize",
tags: ["LOCATION_CONSTRAINT", "CREATE_BUCKET_CONFIGURATION"],
name: "locationConstraintMiddleware",
override: true
};
getLocationConstraintPlugin = (config) => ({ applyToStack: (clientStack) => {
clientStack.add(locationConstraintMiddleware(config), locationConstraintMiddlewareOptions);
} });
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-location-constraint/configuration.js
function resolveLocationConstraintConfig(input) {
return input;
}
var init_configuration = __esmMin((() => {}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/middleware-ssec/middleware-ssec.js
function ssecMiddleware(options) {
return (next) => async (args) => {
const input = { ...args.input };
for (const prop of [{
target: "SSECustomerKey",
hash: "SSECustomerKeyMD5"
}, {
target: "CopySourceSSECustomerKey",
hash: "CopySourceSSECustomerKeyMD5"
}]) {
const value = input[prop.target];
if (value) {
let valueForHash;
if (typeof value === "string") if (isValidBase64EncodedSSECustomerKey(value, options)) valueForHash = options.base64Decoder(value);
else {
valueForHash = options.utf8Decoder(value);
input[prop.target] = options.base64Encoder(valueForHash);
}
else {
valueForHash = ArrayBuffer.isView(value) ? new Uint8Array(value.buffer, value.byteOffset, value.byteLength) : new Uint8Array(value);
input[prop.target] = options.base64Encoder(valueForHash);
}
const hash = new options.md5();
hash.update(valueForHash);
input[prop.hash] = options.base64Encoder(await hash.digest());
}
}
return next({
...args,
input
});
};
}
function isValidBase64EncodedSSECustomerKey(str, options) {
if (!/^(?:[A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(str)) return false;
try {
return options.base64Decoder(str).length === 32;
} catch {
return false;
}
}
var ssecMiddlewareOptions, getSsecPlugin;
var init_middleware_ssec = __esmMin((() => {
ssecMiddlewareOptions = {
name: "ssecMiddleware",
step: "initialize",
tags: ["SSE"],
override: true
};
getSsecPlugin = (config) => ({ applyToStack: (clientStack) => {
clientStack.add(ssecMiddleware(config), ssecMiddlewareOptions);
} });
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/submodules/s3/index.js
var s3_exports = /* @__PURE__ */ __exportAll({
NODE_DISABLE_MULTIREGION_ACCESS_POINT_CONFIG_OPTIONS: () => NODE_DISABLE_MULTIREGION_ACCESS_POINT_CONFIG_OPTIONS,
NODE_DISABLE_MULTIREGION_ACCESS_POINT_ENV_NAME: () => NODE_DISABLE_MULTIREGION_ACCESS_POINT_ENV_NAME,
NODE_DISABLE_MULTIREGION_ACCESS_POINT_INI_NAME: () => NODE_DISABLE_MULTIREGION_ACCESS_POINT_INI_NAME,
NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS: () => NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS,
NODE_USE_ARN_REGION_CONFIG_OPTIONS: () => NODE_USE_ARN_REGION_CONFIG_OPTIONS,
NODE_USE_ARN_REGION_ENV_NAME: () => NODE_USE_ARN_REGION_ENV_NAME,
NODE_USE_ARN_REGION_INI_NAME: () => NODE_USE_ARN_REGION_INI_NAME,
S3ExpressIdentityCache: () => S3ExpressIdentityCache,
S3ExpressIdentityCacheEntry: () => S3ExpressIdentityCacheEntry,
S3ExpressIdentityProviderImpl: () => S3ExpressIdentityProviderImpl,
S3RestXmlProtocol: () => S3RestXmlProtocol,
SignatureV4S3Express: () => SignatureV4S3Express,
addExpectContinueMiddleware: () => addExpectContinueMiddleware,
addExpectContinueMiddlewareOptions: () => addExpectContinueMiddlewareOptions,
bucketEndpointMiddleware: () => bucketEndpointMiddleware,
bucketEndpointMiddlewareOptions: () => bucketEndpointMiddlewareOptions,
bucketHostname: () => bucketHostname,
checkContentLengthHeader: () => checkContentLengthHeader,
checkContentLengthHeaderMiddlewareOptions: () => checkContentLengthHeaderMiddlewareOptions,
getAddExpectContinuePlugin: () => getAddExpectContinuePlugin,
getArnResources: () => getArnResources,
getBucketEndpointPlugin: () => getBucketEndpointPlugin,
getCheckContentLengthHeaderPlugin: () => getCheckContentLengthHeaderPlugin,
getLocationConstraintPlugin: () => getLocationConstraintPlugin,
getRegionRedirectMiddlewarePlugin: () => getRegionRedirectMiddlewarePlugin,
getS3ExpiresMiddlewarePlugin: () => getS3ExpiresMiddlewarePlugin,
getS3ExpressHttpSigningPlugin: () => getS3ExpressHttpSigningPlugin,
getS3ExpressPlugin: () => getS3ExpressPlugin,
getSsecPlugin: () => getSsecPlugin,
getSuffixForArnEndpoint: () => getSuffixForArnEndpoint,
getThrow200ExceptionsPlugin: () => getThrow200ExceptionsPlugin,
getValidateBucketNamePlugin: () => getValidateBucketNamePlugin,
isValidBase64EncodedSSECustomerKey: () => isValidBase64EncodedSSECustomerKey,
locationConstraintMiddleware: () => locationConstraintMiddleware,
locationConstraintMiddlewareOptions: () => locationConstraintMiddlewareOptions,
regionRedirectEndpointMiddleware: () => regionRedirectEndpointMiddleware,
regionRedirectEndpointMiddlewareOptions: () => regionRedirectEndpointMiddlewareOptions,
regionRedirectMiddleware: () => regionRedirectMiddleware,
regionRedirectMiddlewareOptions: () => regionRedirectMiddlewareOptions,
resolveBucketEndpointConfig: () => resolveBucketEndpointConfig,
resolveLocationConstraintConfig: () => resolveLocationConstraintConfig,
resolveS3Config: () => resolveS3Config,
s3ExpiresMiddleware: () => s3ExpiresMiddleware,
s3ExpiresMiddlewareOptions: () => s3ExpiresMiddlewareOptions,
s3ExpressHttpSigningMiddleware: () => s3ExpressHttpSigningMiddleware,
s3ExpressHttpSigningMiddlewareOptions: () => s3ExpressHttpSigningMiddlewareOptions,
s3ExpressMiddleware: () => s3ExpressMiddleware,
s3ExpressMiddlewareOptions: () => s3ExpressMiddlewareOptions,
ssecMiddleware: () => ssecMiddleware,
ssecMiddlewareOptions: () => ssecMiddlewareOptions,
throw200ExceptionsMiddleware: () => throw200ExceptionsMiddleware,
throw200ExceptionsMiddlewareOptions: () => throw200ExceptionsMiddlewareOptions,
validateAccountId: () => validateAccountId,
validateBucketNameMiddleware: () => validateBucketNameMiddleware,
validateBucketNameMiddlewareOptions: () => validateBucketNameMiddlewareOptions,
validateDNSHostLabel: () => validateDNSHostLabel,
validateNoDualstack: () => validateNoDualstack,
validateNoFIPS: () => validateNoFIPS,
validateOutpostService: () => validateOutpostService,
validatePartition: () => validatePartition,
validateRegion: () => validateRegion
});
var init_s3 = __esmMin((() => {
init_check_content_length_header();
init_region_redirect_endpoint_middleware();
init_region_redirect_middleware();
init_s3Configuration();
init_s3_expires_middleware();
init_S3ExpressIdentityCache();
init_S3ExpressIdentityCacheEntry();
init_S3ExpressIdentityProviderImpl();
init_SignatureV4S3Express();
init_constants$1();
init_s3ExpressMiddleware();
init_s3ExpressHttpSigningMiddleware();
init_throw_200_exceptions();
init_validate_bucket_name();
init_S3RestXmlProtocol();
init_NodeDisableMultiregionAccessPointConfigOptions();
init_NodeUseArnRegionConfigOptions();
init_bucketEndpointMiddleware();
init_bucketHostname();
init_configurations();
init_bucketHostnameUtils();
init_middleware_expect_continue();
init_middleware_location_constraint();
init_configuration();
init_middleware_ssec();
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-expect-continue/dist-cjs/index.js
var require_dist_cjs$8 = /* @__PURE__ */ __commonJSMin(((exports) => {
var s3 = (init_s3(), __toCommonJS(s3_exports));
exports.addExpectContinueMiddleware = s3.addExpectContinueMiddleware;
exports.addExpectContinueMiddlewareOptions = s3.addExpectContinueMiddlewareOptions;
exports.getAddExpectContinuePlugin = s3.getAddExpectContinuePlugin;
}));
//#endregion
//#region node_modules/@aws-crypto/crc32c/build/main/aws_crc32c.js
var require_aws_crc32c = /* @__PURE__ */ __commonJSMin(((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.AwsCrc32c = void 0;
var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
var util_1 = require_main$1();
var index_1 = require_main();
exports.AwsCrc32c = function() {
function AwsCrc32c() {
this.crc32c = new index_1.Crc32c();
}
AwsCrc32c.prototype.update = function(toHash) {
if ((0, util_1.isEmptyData)(toHash)) return;
this.crc32c.update((0, util_1.convertToBuffer)(toHash));
};
AwsCrc32c.prototype.digest = function() {
return tslib_1.__awaiter(this, void 0, void 0, function() {
return tslib_1.__generator(this, function(_a) {
return [2, (0, util_1.numToUint8)(this.crc32c.digest())];
});
});
};
AwsCrc32c.prototype.reset = function() {
this.crc32c = new index_1.Crc32c();
};
return AwsCrc32c;
}();
}));
//#endregion
//#region node_modules/@aws-crypto/crc32c/build/main/index.js
var require_main = /* @__PURE__ */ __commonJSMin(((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.AwsCrc32c = exports.Crc32c = exports.crc32c = void 0;
var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
var util_1 = require_main$1();
function crc32c(data) {
return new Crc32c().update(data).digest();
}
exports.crc32c = crc32c;
var Crc32c = function() {
function Crc32c() {
this.checksum = 4294967295;
}
Crc32c.prototype.update = function(data) {
var e_1, _a;
try {
for (var data_1 = tslib_1.__values(data), data_1_1 = data_1.next(); !data_1_1.done; data_1_1 = data_1.next()) {
var byte = data_1_1.value;
this.checksum = this.checksum >>> 8 ^ lookupTable[(this.checksum ^ byte) & 255];
}
} catch (e_1_1) {
e_1 = { error: e_1_1 };
} finally {
try {
if (data_1_1 && !data_1_1.done && (_a = data_1.return)) _a.call(data_1);
} finally {
if (e_1) throw e_1.error;
}
}
return this;
};
Crc32c.prototype.digest = function() {
return (this.checksum ^ 4294967295) >>> 0;
};
return Crc32c;
}();
exports.Crc32c = Crc32c;
var lookupTable = (0, util_1.uint32ArrayFrom)([
0,
4067132163,
3778769143,
324072436,
3348797215,
904991772,
648144872,
3570033899,
2329499855,
2024987596,
1809983544,
2575936315,
1296289744,
3207089363,
2893594407,
1578318884,
274646895,
3795141740,
4049975192,
51262619,
3619967088,
632279923,
922689671,
3298075524,
2592579488,
1760304291,
2075979607,
2312596564,
1562183871,
2943781820,
3156637768,
1313733451,
549293790,
3537243613,
3246849577,
871202090,
3878099393,
357341890,
102525238,
4101499445,
2858735121,
1477399826,
1264559846,
3107202533,
1845379342,
2677391885,
2361733625,
2125378298,
820201905,
3263744690,
3520608582,
598981189,
4151959214,
85089709,
373468761,
3827903834,
3124367742,
1213305469,
1526817161,
2842354314,
2107672161,
2412447074,
2627466902,
1861252501,
1098587580,
3004210879,
2688576843,
1378610760,
2262928035,
1955203488,
1742404180,
2511436119,
3416409459,
969524848,
714683780,
3639785095,
205050476,
4266873199,
3976438427,
526918040,
1361435347,
2739821008,
2954799652,
1114974503,
2529119692,
1691668175,
2005155131,
2247081528,
3690758684,
697762079,
986182379,
3366744552,
476452099,
3993867776,
4250756596,
255256311,
1640403810,
2477592673,
2164122517,
1922457750,
2791048317,
1412925310,
1197962378,
3037525897,
3944729517,
427051182,
170179418,
4165941337,
746937522,
3740196785,
3451792453,
1070968646,
1905808397,
2213795598,
2426610938,
1657317369,
3053634322,
1147748369,
1463399397,
2773627110,
4215344322,
153784257,
444234805,
3893493558,
1021025245,
3467647198,
3722505002,
797665321,
2197175160,
1889384571,
1674398607,
2443626636,
1164749927,
3070701412,
2757221520,
1446797203,
137323447,
4198817972,
3910406976,
461344835,
3484808360,
1037989803,
781091935,
3705997148,
2460548119,
1623424788,
1939049696,
2180517859,
1429367560,
2807687179,
3020495871,
1180866812,
410100952,
3927582683,
4182430767,
186734380,
3756733383,
763408580,
1053836080,
3434856499,
2722870694,
1344288421,
1131464017,
2971354706,
1708204729,
2545590714,
2229949006,
1988219213,
680717673,
3673779818,
3383336350,
1002577565,
4010310262,
493091189,
238226049,
4233660802,
2987750089,
1082061258,
1395524158,
2705686845,
1972364758,
2279892693,
2494862625,
1725896226,
952904198,
3399985413,
3656866545,
731699698,
4283874585,
222117402,
510512622,
3959836397,
3280807620,
837199303,
582374963,
3504198960,
68661723,
4135334616,
3844915500,
390545967,
1230274059,
3141532936,
2825850620,
1510247935,
2395924756,
2091215383,
1878366691,
2644384480,
3553878443,
565732008,
854102364,
3229815391,
340358836,
3861050807,
4117890627,
119113024,
1493875044,
2875275879,
3090270611,
1247431312,
2660249211,
1828433272,
2141937292,
2378227087,
3811616794,
291187481,
34330861,
4032846830,
615137029,
3603020806,
3314634738,
939183345,
1776939221,
2609017814,
2295496738,
2058945313,
2926798794,
1545135305,
1330124605,
3173225534,
4084100981,
17165430,
307568514,
3762199681,
888469610,
3332340585,
3587147933,
665062302,
2042050490,
2346497209,
2559330125,
1793573966,
3190661285,
1279665062,
1595330642,
2910671697
]);
var aws_crc32c_1 = require_aws_crc32c();
Object.defineProperty(exports, "AwsCrc32c", {
enumerable: true,
get: function() {
return aws_crc32c_1.AwsCrc32c;
}
});
}));
//#endregion
//#region node_modules/@aws-sdk/checksums/dist-cjs/flexible-checksums/getCrc32ChecksumAlgorithmFunction.js
var require_getCrc32ChecksumAlgorithmFunction = /* @__PURE__ */ __commonJSMin(((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.getCrc32ChecksumAlgorithmFunction = void 0;
const tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
const crc32_1 = require_main$2();
const util_1 = require_main$1();
const zlib = tslib_1.__importStar(__require("node:zlib"));
var NodeCrc32 = class {
checksum = 0;
update(data) {
this.checksum = zlib.crc32(data, this.checksum);
}
async digest() {
return (0, util_1.numToUint8)(this.checksum);
}
reset() {
this.checksum = 0;
}
};
const getCrc32ChecksumAlgorithmFunction = () => {
if (typeof zlib.crc32 === "undefined") return crc32_1.AwsCrc32;
return NodeCrc32;
};
exports.getCrc32ChecksumAlgorithmFunction = getCrc32ChecksumAlgorithmFunction;
}));
//#endregion
//#region node_modules/@aws-sdk/checksums/dist-cjs/index.js
var require_dist_cjs$7 = /* @__PURE__ */ __commonJSMin(((exports) => {
var client = (init_client(), __toCommonJS(client_exports));
var protocols = (init_protocols(), __toCommonJS(protocols_exports));
var serde = (init_serde(), __toCommonJS(serde_exports));
var crc32c = require_main();
var getCrc32ChecksumAlgorithmFunction = require_getCrc32ChecksumAlgorithmFunction();
var client$1 = (init_client$1(), __toCommonJS(client_exports$1));
const generateCRC64NVMETable = () => {
const sliceLength = 8;
const tables = new Array(sliceLength);
for (let slice = 0; slice < sliceLength; slice++) {
const table = new Array(512);
for (let i = 0; i < 256; i++) {
let crc = BigInt(i);
for (let j = 0; j < 8 * (slice + 1); j++) if (crc & 1n) crc = crc >> 1n ^ 11127430586519243189n;
else crc = crc >> 1n;
table[i * 2] = Number(crc >> 32n & 4294967295n);
table[i * 2 + 1] = Number(crc & 4294967295n);
}
tables[slice] = new Uint32Array(table);
}
return tables;
};
let CRC64_NVME_REVERSED_TABLE;
let t0, t1, t2, t3;
let t4, t5, t6, t7;
const ensureTablesInitialized = () => {
if (!CRC64_NVME_REVERSED_TABLE) {
CRC64_NVME_REVERSED_TABLE = generateCRC64NVMETable();
[t0, t1, t2, t3, t4, t5, t6, t7] = CRC64_NVME_REVERSED_TABLE;
}
};
var Crc64Nvme = class {
c1 = 0;
c2 = 0;
constructor() {
ensureTablesInitialized();
this.reset();
}
update(data) {
const len = data.length;
let i = 0;
let crc1 = this.c1;
let crc2 = this.c2;
while (i + 8 <= len) {
const idx0 = ((crc2 ^ data[i++]) & 255) << 1;
const idx1 = ((crc2 >>> 8 ^ data[i++]) & 255) << 1;
const idx2 = ((crc2 >>> 16 ^ data[i++]) & 255) << 1;
const idx3 = ((crc2 >>> 24 ^ data[i++]) & 255) << 1;
const idx4 = ((crc1 ^ data[i++]) & 255) << 1;
const idx5 = ((crc1 >>> 8 ^ data[i++]) & 255) << 1;
const idx6 = ((crc1 >>> 16 ^ data[i++]) & 255) << 1;
const idx7 = ((crc1 >>> 24 ^ data[i++]) & 255) << 1;
crc1 = t7[idx0] ^ t6[idx1] ^ t5[idx2] ^ t4[idx3] ^ t3[idx4] ^ t2[idx5] ^ t1[idx6] ^ t0[idx7];
crc2 = t7[idx0 + 1] ^ t6[idx1 + 1] ^ t5[idx2 + 1] ^ t4[idx3 + 1] ^ t3[idx4 + 1] ^ t2[idx5 + 1] ^ t1[idx6 + 1] ^ t0[idx7 + 1];
}
while (i < len) {
const idx = ((crc2 ^ data[i]) & 255) << 1;
crc2 = (crc2 >>> 8 | (crc1 & 255) << 24) >>> 0;
crc1 = crc1 >>> 8 ^ t0[idx];
crc2 ^= t0[idx + 1];
i++;
}
this.c1 = crc1;
this.c2 = crc2;
}
async digest() {
const c1 = this.c1 ^ 4294967295;
const c2 = this.c2 ^ 4294967295;
return new Uint8Array([
c1 >>> 24,
c1 >>> 16 & 255,
c1 >>> 8 & 255,
c1 & 255,
c2 >>> 24,
c2 >>> 16 & 255,
c2 >>> 8 & 255,
c2 & 255
]);
}
reset() {
this.c1 = 4294967295;
this.c2 = 4294967295;
}
};
const crc64NvmeCrtContainer = { CrtCrc64Nvme: null };
const RequestChecksumCalculation = {
WHEN_SUPPORTED: "WHEN_SUPPORTED",
WHEN_REQUIRED: "WHEN_REQUIRED"
};
const DEFAULT_REQUEST_CHECKSUM_CALCULATION = RequestChecksumCalculation.WHEN_SUPPORTED;
const ResponseChecksumValidation = {
WHEN_SUPPORTED: "WHEN_SUPPORTED",
WHEN_REQUIRED: "WHEN_REQUIRED"
};
const DEFAULT_RESPONSE_CHECKSUM_VALIDATION = RequestChecksumCalculation.WHEN_SUPPORTED;
exports.ChecksumAlgorithm = void 0;
(function(ChecksumAlgorithm) {
ChecksumAlgorithm["MD5"] = "MD5";
ChecksumAlgorithm["CRC32"] = "CRC32";
ChecksumAlgorithm["CRC32C"] = "CRC32C";
ChecksumAlgorithm["CRC64NVME"] = "CRC64NVME";
ChecksumAlgorithm["SHA1"] = "SHA1";
ChecksumAlgorithm["SHA256"] = "SHA256";
})(exports.ChecksumAlgorithm || (exports.ChecksumAlgorithm = {}));
exports.ChecksumLocation = void 0;
(function(ChecksumLocation) {
ChecksumLocation["HEADER"] = "header";
ChecksumLocation["TRAILER"] = "trailer";
})(exports.ChecksumLocation || (exports.ChecksumLocation = {}));
const DEFAULT_CHECKSUM_ALGORITHM = exports.ChecksumAlgorithm.CRC32;
var SelectorType;
(function(SelectorType) {
SelectorType["ENV"] = "env";
SelectorType["CONFIG"] = "shared config entry";
})(SelectorType || (SelectorType = {}));
const stringUnionSelector = (obj, key, union, type) => {
if (!(key in obj)) return void 0;
const value = obj[key].toUpperCase();
if (!Object.values(union).includes(value)) throw new TypeError(`Cannot load ${type} '${key}'. Expected one of ${Object.values(union)}, got '${obj[key]}'.`);
return value;
};
const ENV_REQUEST_CHECKSUM_CALCULATION = "AWS_REQUEST_CHECKSUM_CALCULATION";
const CONFIG_REQUEST_CHECKSUM_CALCULATION = "request_checksum_calculation";
const NODE_REQUEST_CHECKSUM_CALCULATION_CONFIG_OPTIONS = {
environmentVariableSelector: (env) => stringUnionSelector(env, ENV_REQUEST_CHECKSUM_CALCULATION, RequestChecksumCalculation, SelectorType.ENV),
configFileSelector: (profile) => stringUnionSelector(profile, CONFIG_REQUEST_CHECKSUM_CALCULATION, RequestChecksumCalculation, SelectorType.CONFIG),
default: DEFAULT_REQUEST_CHECKSUM_CALCULATION
};
const ENV_RESPONSE_CHECKSUM_VALIDATION = "AWS_RESPONSE_CHECKSUM_VALIDATION";
const CONFIG_RESPONSE_CHECKSUM_VALIDATION = "response_checksum_validation";
const NODE_RESPONSE_CHECKSUM_VALIDATION_CONFIG_OPTIONS = {
environmentVariableSelector: (env) => stringUnionSelector(env, ENV_RESPONSE_CHECKSUM_VALIDATION, ResponseChecksumValidation, SelectorType.ENV),
configFileSelector: (profile) => stringUnionSelector(profile, CONFIG_RESPONSE_CHECKSUM_VALIDATION, ResponseChecksumValidation, SelectorType.CONFIG),
default: DEFAULT_RESPONSE_CHECKSUM_VALIDATION
};
const getChecksumAlgorithmForRequest = (input, { requestChecksumRequired, requestAlgorithmMember, requestChecksumCalculation }) => {
if (!requestAlgorithmMember) return requestChecksumCalculation === RequestChecksumCalculation.WHEN_SUPPORTED || requestChecksumRequired ? DEFAULT_CHECKSUM_ALGORITHM : void 0;
if (!input[requestAlgorithmMember]) return;
return input[requestAlgorithmMember];
};
const getChecksumLocationName = (algorithm) => algorithm === exports.ChecksumAlgorithm.MD5 ? "content-md5" : `x-amz-checksum-${algorithm.toLowerCase()}`;
const hasHeader = (header, headers) => {
const soughtHeader = header.toLowerCase();
for (const headerName of Object.keys(headers)) if (soughtHeader === headerName.toLowerCase()) return true;
return false;
};
const hasHeaderWithPrefix = (headerPrefix, headers) => {
const soughtHeaderPrefix = headerPrefix.toLowerCase();
for (const headerName of Object.keys(headers)) if (headerName.toLowerCase().startsWith(soughtHeaderPrefix)) return true;
return false;
};
const isStreaming = (body) => body !== void 0 && typeof body !== "string" && !ArrayBuffer.isView(body) && !serde.isArrayBuffer(body);
const CLIENT_SUPPORTED_ALGORITHMS = [
exports.ChecksumAlgorithm.CRC32,
exports.ChecksumAlgorithm.CRC32C,
exports.ChecksumAlgorithm.CRC64NVME,
exports.ChecksumAlgorithm.SHA1,
exports.ChecksumAlgorithm.SHA256
];
const PRIORITY_ORDER_ALGORITHMS = [
exports.ChecksumAlgorithm.SHA256,
exports.ChecksumAlgorithm.SHA1,
exports.ChecksumAlgorithm.CRC32,
exports.ChecksumAlgorithm.CRC32C,
exports.ChecksumAlgorithm.CRC64NVME
];
const selectChecksumAlgorithmFunction = (checksumAlgorithm, config) => {
const { checksumAlgorithms = {} } = config;
switch (checksumAlgorithm) {
case exports.ChecksumAlgorithm.MD5: return checksumAlgorithms?.MD5 ?? config.md5;
case exports.ChecksumAlgorithm.CRC32: return checksumAlgorithms?.CRC32 ?? getCrc32ChecksumAlgorithmFunction.getCrc32ChecksumAlgorithmFunction();
case exports.ChecksumAlgorithm.CRC32C: return checksumAlgorithms?.CRC32C ?? crc32c.AwsCrc32c;
case exports.ChecksumAlgorithm.CRC64NVME:
if (typeof crc64NvmeCrtContainer.CrtCrc64Nvme !== "function") return checksumAlgorithms?.CRC64NVME ?? Crc64Nvme;
return checksumAlgorithms?.CRC64NVME ?? crc64NvmeCrtContainer.CrtCrc64Nvme;
case exports.ChecksumAlgorithm.SHA1: return checksumAlgorithms?.SHA1 ?? config.sha1;
case exports.ChecksumAlgorithm.SHA256: return checksumAlgorithms?.SHA256 ?? config.sha256;
default:
if (checksumAlgorithms?.[checksumAlgorithm]) return checksumAlgorithms[checksumAlgorithm];
throw new Error(`The checksum algorithm "${checksumAlgorithm}" is not supported by the client. Select one of ${CLIENT_SUPPORTED_ALGORITHMS}, or provide an implementation to the client constructor checksums field.`);
}
};
const stringHasher = (checksumAlgorithmFn, body) => {
const hash = new checksumAlgorithmFn();
hash.update(serde.toUint8Array(body || ""));
return hash.digest();
};
const flexibleChecksumsMiddlewareOptions = {
name: "flexibleChecksumsMiddleware",
step: "build",
tags: ["BODY_CHECKSUM"],
override: true
};
const flexibleChecksumsMiddleware = (config, middlewareConfig) => (next, context) => async (args) => {
if (!protocols.HttpRequest.isInstance(args.request)) return next(args);
if (hasHeaderWithPrefix("x-amz-checksum-", args.request.headers)) return next(args);
const { request, input } = args;
const { body: requestBody, headers } = request;
const { base64Encoder, streamHasher } = config;
const { requestChecksumRequired, requestAlgorithmMember } = middlewareConfig;
const requestChecksumCalculation = await config.requestChecksumCalculation();
const requestAlgorithmMemberName = requestAlgorithmMember?.name;
const requestAlgorithmMemberHttpHeader = requestAlgorithmMember?.httpHeader;
if (requestAlgorithmMemberName && !input[requestAlgorithmMemberName]) {
if (requestChecksumCalculation === RequestChecksumCalculation.WHEN_SUPPORTED || requestChecksumRequired) {
input[requestAlgorithmMemberName] = DEFAULT_CHECKSUM_ALGORITHM;
if (requestAlgorithmMemberHttpHeader) headers[requestAlgorithmMemberHttpHeader] = DEFAULT_CHECKSUM_ALGORITHM;
}
}
const checksumAlgorithm = getChecksumAlgorithmForRequest(input, {
requestChecksumRequired,
requestAlgorithmMember: requestAlgorithmMember?.name,
requestChecksumCalculation
});
let updatedBody = requestBody;
let updatedHeaders = headers;
if (checksumAlgorithm) {
switch (checksumAlgorithm) {
case exports.ChecksumAlgorithm.CRC32:
client.setFeature(context, "FLEXIBLE_CHECKSUMS_REQ_CRC32", "U");
break;
case exports.ChecksumAlgorithm.CRC32C:
client.setFeature(context, "FLEXIBLE_CHECKSUMS_REQ_CRC32C", "V");
break;
case exports.ChecksumAlgorithm.CRC64NVME:
client.setFeature(context, "FLEXIBLE_CHECKSUMS_REQ_CRC64", "W");
break;
case exports.ChecksumAlgorithm.SHA1:
client.setFeature(context, "FLEXIBLE_CHECKSUMS_REQ_SHA1", "X");
break;
case exports.ChecksumAlgorithm.SHA256:
client.setFeature(context, "FLEXIBLE_CHECKSUMS_REQ_SHA256", "Y");
break;
}
const checksumLocationName = getChecksumLocationName(checksumAlgorithm);
const checksumAlgorithmFn = selectChecksumAlgorithmFunction(checksumAlgorithm, config);
if (isStreaming(requestBody)) {
const { getAwsChunkedEncodingStream, bodyLengthChecker } = config;
updatedBody = getAwsChunkedEncodingStream(typeof config.requestStreamBufferSize === "number" && config.requestStreamBufferSize >= 8 * 1024 ? serde.createBufferedReadable(requestBody, config.requestStreamBufferSize, context.logger) : requestBody, {
base64Encoder,
bodyLengthChecker,
checksumLocationName,
checksumAlgorithmFn,
streamHasher
});
updatedHeaders = {
...headers,
"content-encoding": headers["content-encoding"] ? `${headers["content-encoding"]},aws-chunked` : "aws-chunked",
"transfer-encoding": "chunked",
"x-amz-decoded-content-length": headers["content-length"],
"x-amz-content-sha256": "STREAMING-UNSIGNED-PAYLOAD-TRAILER",
"x-amz-trailer": checksumLocationName
};
delete updatedHeaders["content-length"];
} else if (!hasHeader(checksumLocationName, headers)) {
const rawChecksum = await stringHasher(checksumAlgorithmFn, requestBody);
updatedHeaders = {
...headers,
[checksumLocationName]: base64Encoder(rawChecksum)
};
}
}
try {
return await next({
...args,
request: {
...request,
headers: updatedHeaders,
body: updatedBody
}
});
} catch (e) {
if (e instanceof Error && e.name === "InvalidChunkSizeError") try {
if (!e.message.endsWith(".")) e.message += ".";
e.message += " Set [requestStreamBufferSize=number e.g. 65_536] in client constructor to instruct AWS SDK to buffer your input stream.";
} catch (ignored) {}
throw e;
}
};
const flexibleChecksumsInputMiddlewareOptions = {
name: "flexibleChecksumsInputMiddleware",
toMiddleware: "serializerMiddleware",
relation: "before",
tags: ["BODY_CHECKSUM"],
override: true
};
const flexibleChecksumsInputMiddleware = (config, middlewareConfig) => (next, context) => async (args) => {
const input = args.input;
const { requestValidationModeMember } = middlewareConfig;
const requestChecksumCalculation = await config.requestChecksumCalculation();
const responseChecksumValidation = await config.responseChecksumValidation();
switch (requestChecksumCalculation) {
case RequestChecksumCalculation.WHEN_REQUIRED:
client.setFeature(context, "FLEXIBLE_CHECKSUMS_REQ_WHEN_REQUIRED", "a");
break;
case RequestChecksumCalculation.WHEN_SUPPORTED:
client.setFeature(context, "FLEXIBLE_CHECKSUMS_REQ_WHEN_SUPPORTED", "Z");
break;
}
switch (responseChecksumValidation) {
case ResponseChecksumValidation.WHEN_REQUIRED:
client.setFeature(context, "FLEXIBLE_CHECKSUMS_RES_WHEN_REQUIRED", "c");
break;
case ResponseChecksumValidation.WHEN_SUPPORTED:
client.setFeature(context, "FLEXIBLE_CHECKSUMS_RES_WHEN_SUPPORTED", "b");
break;
}
if (requestValidationModeMember && !input[requestValidationModeMember]) {
if (responseChecksumValidation === ResponseChecksumValidation.WHEN_SUPPORTED) input[requestValidationModeMember] = "ENABLED";
}
return next(args);
};
const getChecksumAlgorithmListForResponse = (responseAlgorithms = []) => {
const validChecksumAlgorithms = [];
let i = PRIORITY_ORDER_ALGORITHMS.length;
for (const algorithm of responseAlgorithms) {
const priority = PRIORITY_ORDER_ALGORITHMS.indexOf(algorithm);
if (priority !== -1) validChecksumAlgorithms[priority] = algorithm;
else validChecksumAlgorithms[i++] = algorithm;
}
return validChecksumAlgorithms.filter(Boolean);
};
const isChecksumWithPartNumber = (checksum) => {
const lastHyphenIndex = checksum.lastIndexOf("-");
if (lastHyphenIndex !== -1) {
const numberPart = checksum.slice(lastHyphenIndex + 1);
if (!numberPart.startsWith("0")) {
const number = parseInt(numberPart, 10);
if (!isNaN(number) && number >= 1 && number <= 1e4) return true;
}
}
return false;
};
const getChecksum = async (body, { checksumAlgorithmFn, base64Encoder }) => base64Encoder(await stringHasher(checksumAlgorithmFn, body));
const validateChecksumFromResponse = async (response, { config, responseAlgorithms, logger }) => {
const checksumAlgorithms = getChecksumAlgorithmListForResponse(responseAlgorithms);
const { body: responseBody, headers: responseHeaders } = response;
for (const algorithm of checksumAlgorithms) {
const responseHeader = getChecksumLocationName(algorithm);
const checksumFromResponse = responseHeaders[responseHeader];
if (checksumFromResponse) {
let checksumAlgorithmFn;
try {
checksumAlgorithmFn = selectChecksumAlgorithmFunction(algorithm, config);
} catch (error) {
if (algorithm === exports.ChecksumAlgorithm.CRC64NVME) {
logger?.warn(`Skipping ${exports.ChecksumAlgorithm.CRC64NVME} checksum validation: ${error.message}`);
continue;
}
throw error;
}
const { base64Encoder } = config;
if (isStreaming(responseBody)) {
response.body = serde.createChecksumStream({
expectedChecksum: checksumFromResponse,
checksumSourceLocation: responseHeader,
checksum: new checksumAlgorithmFn(),
source: responseBody,
base64Encoder
});
return;
}
const checksum = await getChecksum(responseBody, {
checksumAlgorithmFn,
base64Encoder
});
if (checksum === checksumFromResponse) break;
throw new Error(`Checksum mismatch: expected "${checksum}" but received "${checksumFromResponse}" in response header "${responseHeader}".`);
}
}
};
const flexibleChecksumsResponseMiddlewareOptions = {
name: "flexibleChecksumsResponseMiddleware",
toMiddleware: "deserializerMiddleware",
relation: "after",
tags: ["BODY_CHECKSUM"],
override: true
};
const flexibleChecksumsResponseMiddleware = (config, middlewareConfig) => (next, context) => async (args) => {
if (!protocols.HttpRequest.isInstance(args.request)) return next(args);
const input = args.input;
const result = await next(args);
const response = result.response;
const { requestValidationModeMember, responseAlgorithms } = middlewareConfig;
if (requestValidationModeMember && input[requestValidationModeMember] === "ENABLED") {
const { clientName, commandName } = context;
const customChecksumAlgorithms = Object.keys(config.checksumAlgorithms ?? {}).filter((algorithm) => {
const responseHeader = getChecksumLocationName(algorithm);
return response.headers[responseHeader] !== void 0;
});
const algoList = getChecksumAlgorithmListForResponse([...responseAlgorithms ?? [], ...customChecksumAlgorithms]);
if (clientName === "S3Client" && commandName === "GetObjectCommand" && algoList.every((algorithm) => {
const responseHeader = getChecksumLocationName(algorithm);
const checksumFromResponse = response.headers[responseHeader];
return !checksumFromResponse || isChecksumWithPartNumber(checksumFromResponse);
})) return result;
await validateChecksumFromResponse(response, {
config,
responseAlgorithms: algoList,
logger: context.logger
});
}
return result;
};
const getFlexibleChecksumsPlugin = (config, middlewareConfig) => ({ applyToStack: (clientStack) => {
clientStack.add(flexibleChecksumsMiddleware(config, middlewareConfig), flexibleChecksumsMiddlewareOptions);
clientStack.addRelativeTo(flexibleChecksumsInputMiddleware(config, middlewareConfig), flexibleChecksumsInputMiddlewareOptions);
clientStack.addRelativeTo(flexibleChecksumsResponseMiddleware(config, middlewareConfig), flexibleChecksumsResponseMiddlewareOptions);
} });
const resolveFlexibleChecksumsConfig = (input) => {
const { requestChecksumCalculation, responseChecksumValidation, requestStreamBufferSize } = input;
return Object.assign(input, {
requestChecksumCalculation: client$1.normalizeProvider(requestChecksumCalculation ?? DEFAULT_REQUEST_CHECKSUM_CALCULATION),
responseChecksumValidation: client$1.normalizeProvider(responseChecksumValidation ?? DEFAULT_RESPONSE_CHECKSUM_VALIDATION),
requestStreamBufferSize: Number(requestStreamBufferSize ?? 0),
checksumAlgorithms: input.checksumAlgorithms ?? {}
});
};
exports.CONFIG_REQUEST_CHECKSUM_CALCULATION = CONFIG_REQUEST_CHECKSUM_CALCULATION;
exports.CONFIG_RESPONSE_CHECKSUM_VALIDATION = CONFIG_RESPONSE_CHECKSUM_VALIDATION;
exports.Crc64Nvme = Crc64Nvme;
exports.DEFAULT_CHECKSUM_ALGORITHM = DEFAULT_CHECKSUM_ALGORITHM;
exports.DEFAULT_REQUEST_CHECKSUM_CALCULATION = DEFAULT_REQUEST_CHECKSUM_CALCULATION;
exports.DEFAULT_RESPONSE_CHECKSUM_VALIDATION = DEFAULT_RESPONSE_CHECKSUM_VALIDATION;
exports.ENV_REQUEST_CHECKSUM_CALCULATION = ENV_REQUEST_CHECKSUM_CALCULATION;
exports.ENV_RESPONSE_CHECKSUM_VALIDATION = ENV_RESPONSE_CHECKSUM_VALIDATION;
exports.NODE_REQUEST_CHECKSUM_CALCULATION_CONFIG_OPTIONS = NODE_REQUEST_CHECKSUM_CALCULATION_CONFIG_OPTIONS;
exports.NODE_RESPONSE_CHECKSUM_VALIDATION_CONFIG_OPTIONS = NODE_RESPONSE_CHECKSUM_VALIDATION_CONFIG_OPTIONS;
exports.RequestChecksumCalculation = RequestChecksumCalculation;
exports.ResponseChecksumValidation = ResponseChecksumValidation;
exports.crc64NvmeCrtContainer = crc64NvmeCrtContainer;
exports.flexibleChecksumsMiddleware = flexibleChecksumsMiddleware;
exports.flexibleChecksumsMiddlewareOptions = flexibleChecksumsMiddlewareOptions;
exports.getFlexibleChecksumsPlugin = getFlexibleChecksumsPlugin;
exports.resolveFlexibleChecksumsConfig = resolveFlexibleChecksumsConfig;
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/index.js
var require_dist_cjs$6 = /* @__PURE__ */ __commonJSMin(((exports) => {
var checksums = require_dist_cjs$7();
exports.CONFIG_REQUEST_CHECKSUM_CALCULATION = checksums.CONFIG_REQUEST_CHECKSUM_CALCULATION;
exports.CONFIG_RESPONSE_CHECKSUM_VALIDATION = checksums.CONFIG_RESPONSE_CHECKSUM_VALIDATION;
exports.ChecksumAlgorithm = checksums.ChecksumAlgorithm;
exports.ChecksumLocation = checksums.ChecksumLocation;
exports.DEFAULT_CHECKSUM_ALGORITHM = checksums.DEFAULT_CHECKSUM_ALGORITHM;
exports.DEFAULT_REQUEST_CHECKSUM_CALCULATION = checksums.DEFAULT_REQUEST_CHECKSUM_CALCULATION;
exports.DEFAULT_RESPONSE_CHECKSUM_VALIDATION = checksums.DEFAULT_RESPONSE_CHECKSUM_VALIDATION;
exports.ENV_REQUEST_CHECKSUM_CALCULATION = checksums.ENV_REQUEST_CHECKSUM_CALCULATION;
exports.ENV_RESPONSE_CHECKSUM_VALIDATION = checksums.ENV_RESPONSE_CHECKSUM_VALIDATION;
exports.NODE_REQUEST_CHECKSUM_CALCULATION_CONFIG_OPTIONS = checksums.NODE_REQUEST_CHECKSUM_CALCULATION_CONFIG_OPTIONS;
exports.NODE_RESPONSE_CHECKSUM_VALIDATION_CONFIG_OPTIONS = checksums.NODE_RESPONSE_CHECKSUM_VALIDATION_CONFIG_OPTIONS;
exports.RequestChecksumCalculation = checksums.RequestChecksumCalculation;
exports.ResponseChecksumValidation = checksums.ResponseChecksumValidation;
exports.flexibleChecksumsMiddleware = checksums.flexibleChecksumsMiddleware;
exports.flexibleChecksumsMiddlewareOptions = checksums.flexibleChecksumsMiddlewareOptions;
exports.getFlexibleChecksumsPlugin = checksums.getFlexibleChecksumsPlugin;
exports.resolveFlexibleChecksumsConfig = checksums.resolveFlexibleChecksumsConfig;
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-sdk-s3/dist-es/index.js
var dist_es_exports = /* @__PURE__ */ __exportAll({
NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS: () => NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS,
S3ExpressIdentityCache: () => S3ExpressIdentityCache,
S3ExpressIdentityCacheEntry: () => S3ExpressIdentityCacheEntry,
S3ExpressIdentityProviderImpl: () => S3ExpressIdentityProviderImpl,
S3RestXmlProtocol: () => S3RestXmlProtocol,
SignatureV4S3Express: () => SignatureV4S3Express,
checkContentLengthHeader: () => checkContentLengthHeader,
checkContentLengthHeaderMiddlewareOptions: () => checkContentLengthHeaderMiddlewareOptions,
getCheckContentLengthHeaderPlugin: () => getCheckContentLengthHeaderPlugin,
getRegionRedirectMiddlewarePlugin: () => getRegionRedirectMiddlewarePlugin,
getS3ExpiresMiddlewarePlugin: () => getS3ExpiresMiddlewarePlugin,
getS3ExpressHttpSigningPlugin: () => getS3ExpressHttpSigningPlugin,
getS3ExpressPlugin: () => getS3ExpressPlugin,
getThrow200ExceptionsPlugin: () => getThrow200ExceptionsPlugin,
getValidateBucketNamePlugin: () => getValidateBucketNamePlugin,
regionRedirectEndpointMiddleware: () => regionRedirectEndpointMiddleware,
regionRedirectEndpointMiddlewareOptions: () => regionRedirectEndpointMiddlewareOptions,
regionRedirectMiddleware: () => regionRedirectMiddleware,
regionRedirectMiddlewareOptions: () => regionRedirectMiddlewareOptions,
resolveS3Config: () => resolveS3Config,
s3ExpiresMiddleware: () => s3ExpiresMiddleware,
s3ExpiresMiddlewareOptions: () => s3ExpiresMiddlewareOptions,
s3ExpressHttpSigningMiddleware: () => s3ExpressHttpSigningMiddleware,
s3ExpressHttpSigningMiddlewareOptions: () => s3ExpressHttpSigningMiddlewareOptions,
s3ExpressMiddleware: () => s3ExpressMiddleware,
s3ExpressMiddlewareOptions: () => s3ExpressMiddlewareOptions,
throw200ExceptionsMiddleware: () => throw200ExceptionsMiddleware,
throw200ExceptionsMiddlewareOptions: () => throw200ExceptionsMiddlewareOptions,
validateBucketNameMiddleware: () => validateBucketNameMiddleware,
validateBucketNameMiddlewareOptions: () => validateBucketNameMiddlewareOptions
});
var init_dist_es = __esmMin((() => {
init_s3();
}));
//#endregion
//#region node_modules/@aws-sdk/client-s3/dist-cjs/endpoint/bdd.js
var require_bdd = /* @__PURE__ */ __commonJSMin(((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.bdd = void 0;
const endpoints_1 = (init_endpoints(), __toCommonJS(endpoints_exports));
const aw = "ref", ax = "argv", ay = "backend", az = "authSchemes", aA = "disableDoubleEncoding", aB = "signingName", aC = "signingRegion", aD = "signingRegionSet";
const a = -1, b = true, c = false, d = "isSet", e = "booleanEquals", f = "stringEquals", g = "coalesce", h = "substring", i = "", j = "aws.partition", k = "partitionResult", l = "accessPointSuffix", m = "regionPrefix", n = (n) => "outpostId_ssa_" + n + i, o = "hardwareType", p = "ite", q = "isValidHostLabel", s = "sigv4", t = "aws.isVirtualHostableS3Bucket", u = "url", v = "getAttr", w = "bucketArn", x = "--", y = "arnType", z = "accesspoint", A = (n) => "accessPointName_ssa_" + n + i, B = "s3-object-lambda", C = "s3-outposts", D = "bucketPartition", E = "us-east-1", F = "outpostType", G = "name", H = "s3", I = "{url#scheme}://{Bucket}.{url#authority}{url#path}", J = "{url#scheme}://{url#authority}{url#path}", K = "{url#scheme}://{url#authority}{url#normalizedPath}{Bucket}", L = "https://{Bucket}.s3-accelerate.{partitionResult#dnsSuffix}", M = "https://{Bucket}.s3.{partitionResult#dnsSuffix}", N = (n) => "{url#scheme}://{accessPointName_ssa_" + n + "}-{bucketArn#accountId}.{url#authority}{url#path}", O = (n) => "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointName_ssa_" + n + "}`", P = "sigv4a", Q = "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", R = "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", S = "https://s3.{partitionResult#dnsSuffix}", T = { [aw]: "UseFIPS" }, U = { [aw]: "UseDualStack" }, V = { [aw]: "Bucket" }, W = {
"fn": v,
[ax]: [{ [aw]: k }, G]
}, X = { [aw]: u }, Y = { [aw]: "Region" }, Z = { [aw]: w }, aa = { [aw]: y }, ab = { [aw]: "accessPointName_ssa_1" }, ac = {
"fn": v,
[ax]: [Z, "region"]
}, ad = { [aw]: o }, ae = {
"fn": v,
[ax]: [Z, "service"]
}, af = {
"fn": v,
[ax]: [Z, "accountId"]
}, ag = {
[ay]: "S3Express",
[az]: [{
[aA]: true,
[G]: "{_s3e_auth}",
[aB]: "s3express",
[aC]: "{Region}"
}]
}, ah = {
[ay]: "S3Express",
[az]: [{
[aA]: true,
[G]: s,
[aB]: "s3express",
[aC]: "{Region}"
}]
}, ai = { [az]: [{
[aA]: true,
[G]: P,
[aB]: C,
[aD]: ["*"]
}, {
[aA]: true,
[G]: s,
[aB]: C,
[aC]: "{Region}"
}] }, aj = { [az]: [{
[aA]: true,
[G]: s,
[aB]: H,
[aC]: E
}] }, ak = { [az]: [{
[aA]: true,
[G]: s,
[aB]: H,
[aC]: "{Region}"
}] }, al = { [az]: [{
[aA]: true,
[G]: s,
[aB]: B,
[aC]: "{bucketArn#region}"
}] }, am = { [az]: [{
[aA]: true,
[G]: s,
[aB]: H,
[aC]: "{bucketArn#region}"
}] }, an = { [az]: [{
[aA]: true,
[G]: P,
[aB]: C,
[aD]: ["*"]
}, {
[aA]: true,
[G]: s,
[aB]: C,
[aC]: "{bucketArn#region}"
}] }, ao = { [az]: [{
[aA]: true,
[G]: s,
[aB]: B,
[aC]: "{Region}"
}] }, ap = [Y], aq = [{ [aw]: "Endpoint" }], as = [V], at = [
V,
0,
7,
true
], au = [Z, "resourceId[1]"], av = ["*"];
const _data = {
conditions: [
[d, ap],
[e, [{ [aw]: "Accelerate" }, b]],
[e, [T, b]],
[e, [U, b]],
[d, aq],
[d, as],
[f, [{
fn: g,
[ax]: [{
fn: h,
[ax]: [
V,
0,
6,
b
]
}, i]
}, "--x-s3"]],
[f, [{
fn: g,
[ax]: [{
fn: h,
[ax]: at
}, i]
}, "--xa-s3"]],
[
j,
ap,
k
],
[
h,
at,
l
],
[f, [{ [aw]: l }, "--op-s3"]],
[
h,
[
V,
8,
12,
b
],
m
],
[
h,
[
V,
32,
49,
b
],
n(2)
],
[
h,
[
V,
49,
50,
b
],
o
],
[e, [{ [aw]: "ForcePathStyle" }, b]],
[f, [W, "aws-cn"]],
[
p,
[
U,
".dualstack",
i
],
"_s3e_ds"
],
[q, [{ [aw]: n(2) }, c]],
[
p,
[
T,
"-fips",
i
],
"_s3e_fips"
],
[
p,
[
{
fn: g,
[ax]: [{ [aw]: "DisableS3ExpressSessionAuth" }, c]
},
s,
"sigv4-s3express"
],
"_s3e_auth"
],
[t, [V, c]],
[
"parseURL",
aq,
u
],
[e, [{
fn: g,
[ax]: [{ [aw]: "UseS3ExpressControlEndpoint" }, c]
}, b]],
[t, [V, b]],
[f, [{
fn: v,
[ax]: [X, "scheme"]
}, "http"]],
[q, [Y, c]],
[
"aws.parseArn",
as,
w
],
[
v,
[{
fn: "split",
[ax]: [
V,
x,
0
]
}, "[-2]"],
"s3expressAvailabilityZoneId"
],
[f, [{
fn: g,
[ax]: [{
fn: h,
[ax]: [
V,
0,
4,
c
]
}, i]
}, "arn:"]],
[f, [{
fn: g,
[ax]: [{
fn: h,
[ax]: [
V,
16,
18,
b
]
}, i]
}, x]],
[e, [{
fn: v,
[ax]: [X, "isIp"]
}, b]],
[f, [{
fn: g,
[ax]: [{
fn: h,
[ax]: [
V,
21,
23,
b
]
}, i]
}, x]],
[f, [{
fn: g,
[ax]: [{
fn: h,
[ax]: [
V,
27,
29,
b
]
}, i]
}, x]],
[f, [{ [aw]: m }, "beta"]],
[
"uriEncode",
as,
"uri_encoded_bucket"
],
[q, [Y, b]],
[e, [{
fn: g,
[ax]: [{ [aw]: "UseObjectLambdaEndpoint" }, c]
}, b]],
[
v,
[Z, "resourceId[0]"],
y
],
[f, [aa, i]],
[f, [aa, z]],
[
v,
au,
A(1)
],
[f, [ab, i]],
[f, [ac, i]],
[f, [{
fn: g,
[ax]: [{
fn: h,
[ax]: [
V,
14,
16,
b
]
}, i]
}, x]],
[f, [ad, "e"]],
[f, [ad, "o"]],
[f, [Y, "aws-global"]],
[f, [{
fn: g,
[ax]: [{
fn: h,
[ax]: [
V,
19,
21,
b
]
}, i]
}, x]],
[f, [ae, B]],
[e, [{
fn: g,
[ax]: [{ [aw]: "DisableAccessPoints" }, c]
}, b]],
[f, [ae, C]],
[
j,
[ac],
D
],
[q, [ab, b]],
[f, [{
fn: g,
[ax]: [{
fn: h,
[ax]: [
V,
26,
28,
b
]
}, i]
}, x]],
[f, [{
fn: g,
[ax]: [{
fn: h,
[ax]: [
V,
15,
17,
b
]
}, i]
}, x]],
[v, [Z, "resourceId[4]"]],
[f, [{
fn: g,
[ax]: [{
fn: h,
[ax]: [
V,
20,
22,
b
]
}, i]
}, x]],
[e, [{ [aw]: "UseGlobalEndpoint" }, b]],
[f, [Y, E]],
[
v,
au,
n(1)
],
[e, [{
fn: g,
[ax]: [{ [aw]: "UseArnRegion" }, b]
}, b]],
[q, [{ [aw]: n(1) }, c]],
[
v,
[Z, "resourceId[2]"],
F
],
[f, [Y, ac]],
[f, [{
fn: v,
[ax]: [{ [aw]: D }, G]
}, W]],
[e, [{ [aw]: "DisableMultiRegionAccessPoints" }, b]],
[q, [ac, b]],
[f, [{
fn: v,
[ax]: [Z, "partition"]
}, W]],
[f, [af, i]],
[f, [ae, H]],
[q, [af, c]],
[
v,
[Z, "resourceId[3]"],
A(2)
],
[q, [ab, c]],
[f, [{ [aw]: F }, z]],
[q, [{ [aw]: A(2) }, c]]
],
results: [
[a],
[a, "Accelerate cannot be used with FIPS"],
[a, "Cannot set dual-stack in combination with a custom endpoint."],
[a, "A custom endpoint cannot be combined with FIPS"],
[a, "A custom endpoint cannot be combined with S3 Accelerate"],
[a, "Partition does not support FIPS"],
[a, "S3Express does not support S3 Accelerate."],
["{url#scheme}://{url#authority}/{uri_encoded_bucket}{url#path}", ag],
[I, ag],
[a, "S3Express bucket name is not a valid virtual hostable name."],
["https://s3express-control{_s3e_fips}{_s3e_ds}.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", ah],
["https://{Bucket}.s3express{_s3e_fips}-{s3expressAvailabilityZoneId}{_s3e_ds}.{Region}.{partitionResult#dnsSuffix}", ag],
[a, "Unrecognized S3Express bucket name format."],
[J, ag],
["https://s3express-control{_s3e_fips}{_s3e_ds}.{Region}.{partitionResult#dnsSuffix}", ah],
[a, "Expected a endpoint to be specified but no endpoint was found"],
["https://{Bucket}.ec2.{url#authority}", ai],
["https://{Bucket}.ec2.s3-outposts.{Region}.{partitionResult#dnsSuffix}", ai],
["https://{Bucket}.op-{outpostId_ssa_2}.{url#authority}", ai],
["https://{Bucket}.op-{outpostId_ssa_2}.s3-outposts.{Region}.{partitionResult#dnsSuffix}", ai],
[a, "Unrecognized hardware type: \"Expected hardware type o or e but got {hardwareType}\""],
[a, "Invalid Outposts Bucket alias - it must be a valid bucket name."],
[a, "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`."],
[a, "Custom endpoint `{Endpoint}` was not a valid URI"],
[a, "S3 Accelerate cannot be used in this region"],
["https://{Bucket}.s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", aj],
["https://{Bucket}.s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", ak],
["https://{Bucket}.s3-fips.us-east-1.{partitionResult#dnsSuffix}", aj],
["https://{Bucket}.s3-fips.{Region}.{partitionResult#dnsSuffix}", ak],
["https://{Bucket}.s3-accelerate.dualstack.us-east-1.{partitionResult#dnsSuffix}", aj],
["https://{Bucket}.s3-accelerate.dualstack.{partitionResult#dnsSuffix}", ak],
["https://{Bucket}.s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", aj],
["https://{Bucket}.s3.dualstack.{Region}.{partitionResult#dnsSuffix}", ak],
[K, aj],
[I, aj],
[K, ak],
[I, ak],
[L, aj],
[L, ak],
[M, aj],
[M, ak],
["https://{Bucket}.s3.{Region}.{partitionResult#dnsSuffix}", ak],
[a, "Invalid region: region was not a valid DNS name."],
[a, "S3 Object Lambda does not support Dual-stack"],
[a, "S3 Object Lambda does not support S3 Accelerate"],
[a, "Access points are not supported for this operation"],
[a, "Invalid configuration: region from ARN `{bucketArn#region}` does not match client region `{Region}` and UseArnRegion is `false`"],
[a, "Invalid ARN: Missing account id"],
[N(1), al],
["https://{accessPointName_ssa_1}-{bucketArn#accountId}.s3-object-lambda-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}", al],
["https://{accessPointName_ssa_1}-{bucketArn#accountId}.s3-object-lambda.{bucketArn#region}.{bucketPartition#dnsSuffix}", al],
[a, O(1)],
[a, "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`"],
[a, "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)"],
[a, "Client was configured for partition `{partitionResult#name}` but ARN (`{Bucket}`) has `{bucketPartition#name}`"],
[a, "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`."],
[a, "Invalid ARN: bucket ARN is missing a region"],
[a, "Invalid ARN: Expected a resource of the format `accesspoint:<accesspoint name>` but no name was provided"],
[a, "Invalid ARN: Object Lambda ARNs only support `accesspoint` arn types, but found: `{arnType}`"],
[a, "Access Points do not support S3 Accelerate"],
["https://{accessPointName_ssa_1}-{bucketArn#accountId}.s3-accesspoint-fips.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}", am],
["https://{accessPointName_ssa_1}-{bucketArn#accountId}.s3-accesspoint-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}", am],
["https://{accessPointName_ssa_1}-{bucketArn#accountId}.s3-accesspoint.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}", am],
[N(1), am],
["https://{accessPointName_ssa_1}-{bucketArn#accountId}.s3-accesspoint.{bucketArn#region}.{bucketPartition#dnsSuffix}", am],
[a, "Invalid ARN: The ARN was not for the S3 service, found: {bucketArn#service}"],
[a, "S3 MRAP does not support dual-stack"],
[a, "S3 MRAP does not support FIPS"],
[a, "S3 MRAP does not support S3 Accelerate"],
[a, "Invalid configuration: Multi-Region Access Point ARNs are disabled."],
["https://{accessPointName_ssa_1}.accesspoint.s3-global.{partitionResult#dnsSuffix}", { [az]: [{
[aA]: b,
name: P,
[aB]: H,
[aD]: av
}] }],
[a, "Client was configured for partition `{partitionResult#name}` but bucket referred to partition `{bucketArn#partition}`"],
[a, "Invalid Access Point Name"],
[a, "S3 Outposts does not support Dual-stack"],
[a, "S3 Outposts does not support FIPS"],
[a, "S3 Outposts does not support S3 Accelerate"],
[a, "Invalid Arn: Outpost Access Point ARN contains sub resources"],
["https://{accessPointName_ssa_2}-{bucketArn#accountId}.{outpostId_ssa_1}.{url#authority}", an],
["https://{accessPointName_ssa_2}-{bucketArn#accountId}.{outpostId_ssa_1}.s3-outposts.{bucketArn#region}.{bucketPartition#dnsSuffix}", an],
[a, O(2)],
[a, "Expected an outpost type `accesspoint`, found {outpostType}"],
[a, "Invalid ARN: expected an access point name"],
[a, "Invalid ARN: Expected a 4-component resource"],
[a, "Invalid ARN: The outpost Id may only contain a-z, A-Z, 0-9 and `-`. Found: `{outpostId_ssa_1}`"],
[a, "Invalid ARN: The Outpost Id was not set"],
[a, "Invalid ARN: Unrecognized format: {Bucket} (type: {arnType})"],
[a, "Invalid ARN: No ARN type specified"],
[a, "Invalid ARN: `{Bucket}` was not a valid ARN"],
[a, "Path-style addressing cannot be used with ARN buckets"],
["https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", aj],
["https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", ak],
["https://s3-fips.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", aj],
["https://s3-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", ak],
["https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", aj],
["https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", ak],
[Q, aj],
[Q, ak],
[R, aj],
[R, ak],
["https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", ak],
[a, "Path-style addressing cannot be used with S3 Accelerate"],
[J, ao],
["https://s3-object-lambda-fips.{Region}.{partitionResult#dnsSuffix}", ao],
["https://s3-object-lambda.{Region}.{partitionResult#dnsSuffix}", ao],
["https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", aj],
["https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", ak],
["https://s3-fips.us-east-1.{partitionResult#dnsSuffix}", aj],
["https://s3-fips.{Region}.{partitionResult#dnsSuffix}", ak],
["https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", aj],
["https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}", ak],
[J, aj],
[J, ak],
[S, aj],
[S, ak],
["https://s3.{Region}.{partitionResult#dnsSuffix}", ak],
[a, "A region must be set when sending requests to S3."]
]
};
const root = 2;
const nodes = new Int32Array([
-1,
1,
-1,
0,
3,
100000115,
1,
424,
4,
2,
272,
5,
3,
233,
6,
4,
85,
7,
5,
15,
8,
8,
9,
100000115,
16,
10,
13,
18,
11,
13,
19,
12,
13,
22,
100000014,
13,
35,
14,
100000042,
36,
100000103,
435,
6,
271,
16,
7,
270,
17,
8,
19,
18,
14,
501,
106,
9,
20,
24,
10,
21,
24,
11,
22,
24,
12,
23,
24,
13,
547,
24,
14,
77,
25,
20,
73,
26,
26,
27,
78,
37,
28,
100000086,
38,
100000086,
29,
39,
47,
30,
48,
100000058,
31,
50,
32,
100000085,
51,
33,
136,
55,
100000076,
34,
59,
35,
100000084,
60,
39,
36,
61,
37,
100000083,
62,
38,
146,
63,
41,
100000046,
61,
40,
100000083,
62,
41,
150,
64,
42,
100000054,
66,
43,
100000053,
70,
44,
100000052,
71,
45,
100000081,
73,
46,
100000080,
74,
100000078,
100000079,
40,
48,
100000057,
41,
100000057,
49,
42,
185,
50,
48,
62,
51,
49,
100000045,
52,
51,
53,
526,
60,
56,
54,
62,
100000055,
55,
63,
57,
100000046,
62,
100000055,
57,
64,
58,
100000054,
66,
59,
100000053,
69,
60,
100000065,
70,
61,
100000052,
72,
100000064,
100000051,
49,
100000045,
63,
51,
64,
526,
60,
67,
65,
62,
100000055,
66,
63,
68,
100000046,
62,
100000055,
68,
64,
69,
100000054,
66,
70,
100000053,
68,
100000047,
71,
70,
72,
100000052,
72,
100000050,
100000051,
25,
74,
100000042,
46,
100000039,
75,
57,
76,
100000041,
58,
100000040,
100000041,
26,
100000088,
78,
28,
100000087,
79,
34,
82,
80,
35,
81,
545,
36,
100000103,
100000115,
46,
100000097,
83,
57,
84,
100000099,
58,
100000098,
100000099,
5,
101,
86,
8,
87,
100000115,
16,
88,
89,
18,
91,
89,
19,
90,
92,
21,
97,
95,
19,
93,
92,
21,
98,
95,
21,
97,
94,
22,
100000014,
95,
35,
96,
100000042,
36,
100000103,
100000042,
22,
100000013,
98,
35,
99,
100000042,
36,
100000101,
100,
46,
100000110,
100000111,
6,
214,
102,
7,
208,
103,
8,
119,
104,
14,
118,
105,
21,
106,
100000023,
26,
107,
502,
37,
108,
100000086,
38,
100000086,
109,
39,
112,
110,
48,
100000058,
111,
50,
136,
100000085,
40,
113,
100000057,
41,
100000057,
114,
42,
115,
500,
48,
100000056,
116,
52,
117,
100000072,
65,
100000069,
100000072,
21,
501,
100000023,
9,
120,
124,
10,
121,
124,
11,
122,
124,
12,
123,
124,
13,
202,
124,
14,
195,
125,
20,
190,
126,
21,
127,
100000023,
23,
128,
129,
24,
189,
129,
26,
130,
197,
37,
131,
100000086,
38,
100000086,
132,
39,
159,
133,
48,
100000058,
134,
50,
135,
100000085,
51,
141,
136,
55,
100000076,
137,
59,
138,
100000084,
60,
100000083,
139,
61,
140,
100000083,
63,
100000083,
100000046,
55,
100000076,
142,
59,
143,
100000084,
60,
148,
144,
61,
145,
100000083,
62,
147,
146,
63,
150,
100000046,
63,
153,
100000046,
61,
149,
100000083,
62,
153,
150,
64,
151,
100000054,
66,
152,
100000053,
70,
100000082,
100000052,
64,
154,
100000054,
66,
155,
100000053,
70,
156,
100000052,
71,
157,
100000081,
73,
158,
100000080,
74,
100000077,
100000079,
40,
160,
100000057,
41,
100000057,
161,
42,
185,
162,
48,
174,
163,
49,
100000045,
164,
51,
165,
526,
60,
168,
166,
62,
100000055,
167,
63,
169,
100000046,
62,
100000055,
169,
64,
170,
100000054,
66,
171,
100000053,
69,
172,
100000065,
70,
173,
100000052,
72,
100000063,
100000051,
49,
100000045,
175,
51,
176,
526,
60,
179,
177,
62,
100000055,
178,
63,
180,
100000046,
62,
100000055,
180,
64,
181,
100000054,
66,
182,
100000053,
68,
100000047,
183,
70,
184,
100000052,
72,
100000048,
100000051,
48,
100000056,
186,
52,
187,
100000072,
65,
100000069,
188,
67,
100000070,
100000071,
25,
100000036,
100000042,
21,
191,
100000023,
25,
192,
100000042,
30,
194,
193,
46,
100000034,
100000036,
46,
100000033,
100000035,
21,
196,
100000023,
26,
100000088,
197,
28,
100000087,
198,
34,
201,
199,
35,
200,
545,
36,
100000101,
100000115,
46,
100000095,
100000096,
17,
203,
100000022,
20,
204,
100000021,
21,
205,
550,
33,
206,
550,
44,
100000016,
207,
45,
100000018,
100000020,
8,
209,
215,
16,
210,
220,
18,
211,
220,
19,
212,
224,
20,
213,
227,
21,
231,
401,
8,
218,
215,
19,
216,
100000009,
20,
217,
227,
21,
231,
100000009,
16,
219,
220,
18,
223,
220,
19,
221,
224,
20,
222,
227,
21,
231,
100000012,
19,
226,
224,
20,
225,
100000009,
21,
100000009,
100000012,
20,
230,
227,
21,
228,
100000009,
30,
229,
100000009,
34,
100000007,
100000009,
21,
231,
415,
30,
232,
100000008,
34,
100000007,
100000008,
4,
100000002,
234,
5,
235,
480,
6,
271,
236,
7,
270,
237,
8,
238,
491,
9,
239,
243,
10,
240,
243,
11,
241,
243,
12,
242,
243,
13,
547,
243,
14,
266,
244,
20,
264,
245,
26,
246,
267,
37,
247,
100000086,
38,
100000086,
248,
39,
249,
518,
40,
250,
100000057,
41,
100000057,
251,
42,
538,
252,
48,
100000043,
253,
49,
100000045,
254,
51,
255,
526,
60,
258,
256,
62,
100000055,
257,
63,
259,
100000046,
62,
100000055,
259,
64,
260,
100000054,
66,
261,
100000053,
69,
262,
100000065,
70,
263,
100000052,
72,
100000062,
100000051,
25,
265,
100000042,
46,
100000031,
100000032,
26,
100000088,
267,
28,
100000087,
268,
34,
269,
544,
46,
100000093,
100000094,
8,
397,
100000009,
8,
407,
100000009,
3,
346,
273,
4,
100000003,
274,
5,
284,
275,
8,
276,
100000115,
15,
100000005,
277,
16,
278,
281,
18,
279,
281,
19,
280,
281,
22,
100000014,
281,
35,
282,
100000042,
36,
100000102,
283,
46,
100000106,
100000107,
6,
405,
285,
7,
395,
286,
8,
295,
287,
14,
501,
288,
26,
289,
502,
37,
290,
100000086,
38,
100000086,
291,
39,
292,
307,
40,
293,
100000057,
41,
100000057,
294,
42,
335,
500,
9,
296,
300,
10,
297,
300,
11,
298,
300,
12,
299,
300,
13,
394,
300,
14,
339,
301,
15,
100000005,
302,
20,
337,
303,
26,
304,
341,
37,
305,
100000086,
38,
100000086,
306,
39,
309,
307,
48,
100000058,
308,
50,
100000074,
100000085,
40,
310,
100000057,
41,
100000057,
311,
42,
335,
312,
48,
324,
313,
49,
100000045,
314,
51,
315,
526,
60,
318,
316,
62,
100000055,
317,
63,
319,
100000046,
62,
100000055,
319,
64,
320,
100000054,
66,
321,
100000053,
69,
322,
100000065,
70,
323,
100000052,
72,
100000061,
100000051,
49,
100000045,
325,
51,
326,
526,
60,
329,
327,
62,
100000055,
328,
63,
330,
100000046,
62,
100000055,
330,
64,
331,
100000054,
66,
332,
100000053,
68,
100000047,
333,
70,
334,
100000052,
72,
100000049,
100000051,
48,
100000056,
336,
52,
100000067,
100000072,
25,
338,
100000042,
46,
100000027,
100000028,
15,
100000005,
340,
26,
100000088,
341,
28,
100000087,
342,
34,
345,
343,
35,
344,
545,
36,
100000102,
100000115,
46,
100000091,
100000092,
4,
100000002,
347,
5,
357,
348,
8,
349,
100000115,
15,
100000005,
350,
16,
351,
354,
18,
352,
354,
19,
353,
354,
22,
100000014,
354,
35,
355,
100000042,
36,
100000043,
356,
46,
100000104,
100000105,
6,
405,
358,
7,
395,
359,
8,
360,
491,
9,
361,
365,
10,
362,
365,
11,
363,
365,
12,
364,
365,
13,
394,
365,
14,
389,
366,
15,
100000005,
367,
20,
387,
368,
26,
369,
391,
37,
370,
100000086,
38,
100000086,
371,
39,
372,
518,
40,
373,
100000057,
41,
100000057,
374,
42,
538,
375,
48,
100000043,
376,
49,
100000045,
377,
51,
378,
526,
60,
381,
379,
62,
100000055,
380,
63,
382,
100000046,
62,
100000055,
382,
64,
383,
100000054,
66,
384,
100000053,
69,
385,
100000065,
70,
386,
100000052,
72,
100000060,
100000051,
25,
388,
100000042,
46,
100000025,
100000026,
15,
100000005,
390,
26,
100000088,
391,
28,
100000087,
392,
34,
393,
544,
46,
100000089,
100000090,
15,
100000005,
547,
8,
396,
100000009,
15,
100000005,
397,
16,
398,
410,
18,
399,
410,
19,
400,
410,
20,
401,
100000009,
27,
402,
100000012,
29,
100000011,
403,
31,
100000011,
404,
32,
100000011,
422,
8,
406,
100000009,
15,
100000005,
407,
16,
408,
410,
18,
409,
410,
19,
411,
410,
20,
100000012,
100000009,
20,
414,
412,
22,
413,
100000009,
34,
100000010,
100000009,
22,
416,
415,
27,
419,
100000012,
27,
418,
417,
34,
100000010,
100000012,
34,
100000010,
419,
43,
100000011,
420,
47,
100000011,
421,
53,
100000011,
422,
54,
100000011,
423,
56,
100000011,
100000012,
2,
100000001,
425,
3,
478,
426,
4,
100000004,
427,
5,
438,
428,
8,
429,
100000115,
16,
430,
433,
18,
431,
433,
19,
432,
433,
22,
100000014,
433,
35,
434,
100000042,
36,
100000044,
435,
46,
100000112,
436,
57,
437,
100000114,
58,
100000113,
100000114,
6,
100000006,
439,
7,
100000006,
440,
8,
450,
441,
14,
501,
442,
26,
443,
502,
37,
444,
100000086,
38,
100000086,
445,
39,
446,
465,
40,
447,
100000057,
41,
100000057,
448,
42,
471,
449,
48,
100000044,
500,
9,
451,
455,
10,
452,
455,
11,
453,
455,
12,
454,
455,
13,
547,
455,
14,
473,
456,
15,
460,
457,
20,
458,
461,
25,
459,
100000042,
46,
100000037,
100000038,
20,
540,
461,
26,
462,
474,
37,
463,
100000086,
38,
100000086,
464,
39,
467,
465,
48,
100000058,
466,
50,
100000075,
100000085,
40,
468,
100000057,
41,
100000057,
469,
42,
471,
470,
48,
100000044,
524,
48,
100000044,
472,
52,
100000068,
100000072,
26,
100000088,
474,
28,
100000087,
475,
34,
100000100,
476,
35,
477,
545,
36,
100000044,
100000115,
4,
100000002,
479,
5,
488,
480,
8,
481,
100000115,
16,
482,
485,
18,
483,
485,
19,
484,
485,
22,
100000014,
485,
35,
486,
100000042,
36,
100000043,
487,
46,
100000108,
100000109,
6,
100000006,
489,
7,
100000006,
490,
8,
503,
491,
14,
501,
492,
26,
493,
502,
37,
494,
100000086,
38,
100000086,
495,
39,
496,
518,
40,
497,
100000057,
41,
100000057,
498,
42,
538,
499,
48,
100000043,
500,
49,
100000045,
526,
26,
100000088,
502,
28,
100000087,
100000115,
9,
504,
508,
10,
505,
508,
11,
506,
508,
12,
507,
508,
13,
547,
508,
14,
541,
509,
15,
513,
510,
20,
511,
514,
25,
512,
100000042,
46,
100000029,
100000030,
20,
540,
514,
26,
515,
542,
37,
516,
100000086,
38,
100000086,
517,
39,
520,
518,
48,
100000058,
519,
50,
100000073,
100000085,
40,
521,
100000057,
41,
100000057,
522,
42,
538,
523,
48,
100000043,
524,
49,
100000045,
525,
51,
529,
526,
60,
100000055,
527,
62,
100000055,
528,
63,
100000055,
100000046,
60,
532,
530,
62,
100000055,
531,
63,
533,
100000046,
62,
100000055,
533,
64,
534,
100000054,
66,
535,
100000053,
69,
536,
100000065,
70,
537,
100000052,
72,
100000059,
100000051,
48,
100000043,
539,
52,
100000066,
100000072,
25,
100000024,
100000042,
26,
100000088,
542,
28,
100000087,
543,
34,
100000100,
544,
35,
546,
545,
36,
100000042,
100000115,
36,
100000043,
100000115,
17,
548,
100000022,
20,
549,
100000021,
33,
552,
550,
44,
100000017,
551,
45,
100000019,
100000020,
44,
100000015,
553,
45,
100000015,
100000020
]);
exports.bdd = endpoints_1.BinaryDecisionDiagram.from(nodes, root, _data.conditions, _data.results);
}));
//#endregion
//#region node_modules/@aws-sdk/client-s3/dist-cjs/endpoint/endpointResolver.js
var require_endpointResolver = /* @__PURE__ */ __commonJSMin(((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.defaultEndpointResolver = void 0;
const client_1 = (init_client(), __toCommonJS(client_exports));
const endpoints_1 = (init_endpoints(), __toCommonJS(endpoints_exports));
const bdd_1 = require_bdd();
const cache = new endpoints_1.EndpointCache({
size: 50,
params: [
"Accelerate",
"Bucket",
"DisableAccessPoints",
"DisableMultiRegionAccessPoints",
"DisableS3ExpressSessionAuth",
"Endpoint",
"ForcePathStyle",
"Region",
"UseArnRegion",
"UseDualStack",
"UseFIPS",
"UseGlobalEndpoint",
"UseObjectLambdaEndpoint",
"UseS3ExpressControlEndpoint"
]
});
const defaultEndpointResolver = (endpointParams, context = {}) => {
return cache.get(endpointParams, () => (0, endpoints_1.decideEndpoint)(bdd_1.bdd, {
endpointParams,
logger: context.logger
}));
};
exports.defaultEndpointResolver = defaultEndpointResolver;
endpoints_1.customEndpointFunctions.aws = client_1.awsEndpointFunctions;
}));
//#endregion
//#region node_modules/@aws-sdk/client-s3/dist-cjs/auth/httpAuthSchemeProvider.js
var require_httpAuthSchemeProvider = /* @__PURE__ */ __commonJSMin(((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.resolveHttpAuthSchemeConfig = exports.defaultS3HttpAuthSchemeProvider = exports.defaultS3HttpAuthSchemeParametersProvider = void 0;
const httpAuthSchemes_1 = (init_httpAuthSchemes(), __toCommonJS(httpAuthSchemes_exports));
const signature_v4_multi_region_1 = require_dist_cjs$9();
const client_1 = (init_client$1(), __toCommonJS(client_exports$1));
const endpoints_1 = (init_endpoints(), __toCommonJS(endpoints_exports));
const endpointResolver_1 = require_endpointResolver();
const createEndpointRuleSetHttpAuthSchemeParametersProvider = (defaultHttpAuthSchemeParametersProvider) => async (config, context, input) => {
if (!input) throw new Error("Could not find `input` for `defaultEndpointRuleSetHttpAuthSchemeParametersProvider`");
const defaultParameters = await defaultHttpAuthSchemeParametersProvider(config, context, input);
const instructionsFn = (0, client_1.getSmithyContext)(context)?.commandInstance?.constructor?.getEndpointParameterInstructions;
if (!instructionsFn) throw new Error(`getEndpointParameterInstructions() is not defined on '${context.commandName}'`);
const endpointParameters = await (0, endpoints_1.resolveParams)(input, { getEndpointParameterInstructions: instructionsFn }, config);
return Object.assign(defaultParameters, endpointParameters);
};
const _defaultS3HttpAuthSchemeParametersProvider = async (config, context, input) => {
return {
operation: (0, client_1.getSmithyContext)(context).operation,
region: await (0, client_1.normalizeProvider)(config.region)() || (() => {
throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
})()
};
};
exports.defaultS3HttpAuthSchemeParametersProvider = createEndpointRuleSetHttpAuthSchemeParametersProvider(_defaultS3HttpAuthSchemeParametersProvider);
function createAwsAuthSigv4HttpAuthOption(authParameters) {
return {
schemeId: "aws.auth#sigv4",
signingProperties: {
name: "s3",
region: authParameters.region
},
propertiesExtractor: (config, context) => ({ signingProperties: {
config,
context
} })
};
}
function createAwsAuthSigv4aHttpAuthOption(authParameters) {
return {
schemeId: "aws.auth#sigv4a",
signingProperties: {
name: "s3",
region: authParameters.region
},
propertiesExtractor: (config, context) => ({ signingProperties: {
config,
context
} })
};
}
const createEndpointRuleSetHttpAuthSchemeProvider = (defaultEndpointResolver, defaultHttpAuthSchemeResolver, createHttpAuthOptionFunctions) => {
const endpointRuleSetHttpAuthSchemeProvider = (authParameters) => {
const authSchemes = defaultEndpointResolver(authParameters).properties?.authSchemes;
if (!authSchemes) return defaultHttpAuthSchemeResolver(authParameters);
const options = [];
for (const scheme of authSchemes) {
const { name: resolvedName, properties = {}, ...rest } = scheme;
const name = resolvedName.toLowerCase();
if (resolvedName !== name) console.warn(`HttpAuthScheme has been normalized with lowercasing: '${resolvedName}' to '${name}'`);
let schemeId;
if (name === "sigv4a") {
schemeId = "aws.auth#sigv4a";
const sigv4Present = authSchemes.find((s) => {
const name = s.name.toLowerCase();
return name !== "sigv4a" && name.startsWith("sigv4");
});
if (signature_v4_multi_region_1.SignatureV4MultiRegion.sigv4aDependency() === "none" && sigv4Present) continue;
} else if (name.startsWith("sigv4")) schemeId = "aws.auth#sigv4";
else throw new Error(`Unknown HttpAuthScheme found in '@smithy.rules#endpointRuleSet': '${name}'`);
const createOption = createHttpAuthOptionFunctions[schemeId];
if (!createOption) throw new Error(`Could not find HttpAuthOption create function for '${schemeId}'`);
const option = createOption(authParameters);
option.schemeId = schemeId;
option.signingProperties = {
...option.signingProperties || {},
...rest,
...properties
};
options.push(option);
}
return options;
};
return endpointRuleSetHttpAuthSchemeProvider;
};
const _defaultS3HttpAuthSchemeProvider = (authParameters) => {
const options = [];
switch (authParameters.operation) {
default:
options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
options.push(createAwsAuthSigv4aHttpAuthOption(authParameters));
}
return options;
};
exports.defaultS3HttpAuthSchemeProvider = createEndpointRuleSetHttpAuthSchemeProvider(endpointResolver_1.defaultEndpointResolver, _defaultS3HttpAuthSchemeProvider, {
"aws.auth#sigv4": createAwsAuthSigv4HttpAuthOption,
"aws.auth#sigv4a": createAwsAuthSigv4aHttpAuthOption
});
const resolveHttpAuthSchemeConfig = (config) => {
const config_0 = (0, httpAuthSchemes_1.resolveAwsSdkSigV4Config)(config);
const config_1 = (0, httpAuthSchemes_1.resolveAwsSdkSigV4AConfig)(config_0);
return Object.assign(config_1, { authSchemePreference: (0, client_1.normalizeProvider)(config.authSchemePreference ?? []) });
};
exports.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
}));
//#endregion
//#region node_modules/@aws-sdk/client-s3/dist-cjs/models/S3ServiceException.js
var require_S3ServiceException = /* @__PURE__ */ __commonJSMin(((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.S3ServiceException = exports.__ServiceException = void 0;
const client_1 = (init_client$1(), __toCommonJS(client_exports$1));
Object.defineProperty(exports, "__ServiceException", {
enumerable: true,
get: function() {
return client_1.ServiceException;
}
});
exports.S3ServiceException = class S3ServiceException extends client_1.ServiceException {
constructor(options) {
super(options);
Object.setPrototypeOf(this, S3ServiceException.prototype);
}
};
}));
//#endregion
//#region node_modules/@aws-sdk/client-s3/dist-cjs/models/errors.js
var require_errors = /* @__PURE__ */ __commonJSMin(((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.ObjectAlreadyInActiveTierError = exports.IdempotencyParameterMismatch = exports.TooManyParts = exports.InvalidWriteOffset = exports.InvalidRequest = exports.EncryptionTypeMismatch = exports.NotFound = exports.NoSuchKey = exports.InvalidObjectState = exports.NoSuchBucket = exports.BucketAlreadyOwnedByYou = exports.BucketAlreadyExists = exports.ObjectNotInActiveTierError = exports.AccessDenied = exports.NoSuchUpload = void 0;
const S3ServiceException_1 = require_S3ServiceException();
exports.NoSuchUpload = class NoSuchUpload extends S3ServiceException_1.S3ServiceException {
name = "NoSuchUpload";
$fault = "client";
constructor(opts) {
super({
name: "NoSuchUpload",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, NoSuchUpload.prototype);
}
};
exports.AccessDenied = class AccessDenied extends S3ServiceException_1.S3ServiceException {
name = "AccessDenied";
$fault = "client";
constructor(opts) {
super({
name: "AccessDenied",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, AccessDenied.prototype);
}
};
exports.ObjectNotInActiveTierError = class ObjectNotInActiveTierError extends S3ServiceException_1.S3ServiceException {
name = "ObjectNotInActiveTierError";
$fault = "client";
constructor(opts) {
super({
name: "ObjectNotInActiveTierError",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, ObjectNotInActiveTierError.prototype);
}
};
exports.BucketAlreadyExists = class BucketAlreadyExists extends S3ServiceException_1.S3ServiceException {
name = "BucketAlreadyExists";
$fault = "client";
constructor(opts) {
super({
name: "BucketAlreadyExists",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, BucketAlreadyExists.prototype);
}
};
exports.BucketAlreadyOwnedByYou = class BucketAlreadyOwnedByYou extends S3ServiceException_1.S3ServiceException {
name = "BucketAlreadyOwnedByYou";
$fault = "client";
constructor(opts) {
super({
name: "BucketAlreadyOwnedByYou",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, BucketAlreadyOwnedByYou.prototype);
}
};
exports.NoSuchBucket = class NoSuchBucket extends S3ServiceException_1.S3ServiceException {
name = "NoSuchBucket";
$fault = "client";
constructor(opts) {
super({
name: "NoSuchBucket",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, NoSuchBucket.prototype);
}
};
exports.InvalidObjectState = class InvalidObjectState extends S3ServiceException_1.S3ServiceException {
name = "InvalidObjectState";
$fault = "client";
StorageClass;
AccessTier;
constructor(opts) {
super({
name: "InvalidObjectState",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, InvalidObjectState.prototype);
this.StorageClass = opts.StorageClass;
this.AccessTier = opts.AccessTier;
}
};
exports.NoSuchKey = class NoSuchKey extends S3ServiceException_1.S3ServiceException {
name = "NoSuchKey";
$fault = "client";
constructor(opts) {
super({
name: "NoSuchKey",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, NoSuchKey.prototype);
}
};
exports.NotFound = class NotFound extends S3ServiceException_1.S3ServiceException {
name = "NotFound";
$fault = "client";
constructor(opts) {
super({
name: "NotFound",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, NotFound.prototype);
}
};
exports.EncryptionTypeMismatch = class EncryptionTypeMismatch extends S3ServiceException_1.S3ServiceException {
name = "EncryptionTypeMismatch";
$fault = "client";
constructor(opts) {
super({
name: "EncryptionTypeMismatch",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, EncryptionTypeMismatch.prototype);
}
};
exports.InvalidRequest = class InvalidRequest extends S3ServiceException_1.S3ServiceException {
name = "InvalidRequest";
$fault = "client";
constructor(opts) {
super({
name: "InvalidRequest",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, InvalidRequest.prototype);
}
};
exports.InvalidWriteOffset = class InvalidWriteOffset extends S3ServiceException_1.S3ServiceException {
name = "InvalidWriteOffset";
$fault = "client";
constructor(opts) {
super({
name: "InvalidWriteOffset",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, InvalidWriteOffset.prototype);
}
};
exports.TooManyParts = class TooManyParts extends S3ServiceException_1.S3ServiceException {
name = "TooManyParts";
$fault = "client";
constructor(opts) {
super({
name: "TooManyParts",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, TooManyParts.prototype);
}
};
exports.IdempotencyParameterMismatch = class IdempotencyParameterMismatch extends S3ServiceException_1.S3ServiceException {
name = "IdempotencyParameterMismatch";
$fault = "client";
constructor(opts) {
super({
name: "IdempotencyParameterMismatch",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, IdempotencyParameterMismatch.prototype);
}
};
exports.ObjectAlreadyInActiveTierError = class ObjectAlreadyInActiveTierError extends S3ServiceException_1.S3ServiceException {
name = "ObjectAlreadyInActiveTierError";
$fault = "client";
constructor(opts) {
super({
name: "ObjectAlreadyInActiveTierError",
$fault: "client",
...opts
});
Object.setPrototypeOf(this, ObjectAlreadyInActiveTierError.prototype);
}
};
}));
//#endregion
//#region node_modules/@aws-sdk/client-s3/dist-cjs/schemas/schemas_0.js
var require_schemas_0 = /* @__PURE__ */ __commonJSMin(((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.CreateBucketMetadataTableConfigurationRequest$ = exports.CreateBucketMetadataConfigurationRequest$ = exports.CreateBucketConfiguration$ = exports.CORSRule$ = exports.CORSConfiguration$ = exports.CopyPartResult$ = exports.CopyObjectResult$ = exports.CopyObjectRequest$ = exports.CopyObjectOutput$ = exports.ContinuationEvent$ = exports.Condition$ = exports.CompleteMultipartUploadRequest$ = exports.CompleteMultipartUploadOutput$ = exports.CompletedPart$ = exports.CompletedMultipartUpload$ = exports.CommonPrefix$ = exports.Checksum$ = exports.BucketLoggingStatus$ = exports.BucketLifecycleConfiguration$ = exports.BucketInfo$ = exports.Bucket$ = exports.BlockedEncryptionTypes$ = exports.AnalyticsS3BucketDestination$ = exports.AnalyticsExportDestination$ = exports.AnalyticsConfiguration$ = exports.AnalyticsAndOperator$ = exports.AccessControlTranslation$ = exports.AccessControlPolicy$ = exports.AccelerateConfiguration$ = exports.AbortMultipartUploadRequest$ = exports.AbortMultipartUploadOutput$ = exports.AbortIncompleteMultipartUpload$ = exports.AbacStatus$ = exports.errorTypeRegistries = exports.TooManyParts$ = exports.ObjectNotInActiveTierError$ = exports.ObjectAlreadyInActiveTierError$ = exports.NotFound$ = exports.NoSuchUpload$ = exports.NoSuchKey$ = exports.NoSuchBucket$ = exports.InvalidWriteOffset$ = exports.InvalidRequest$ = exports.InvalidObjectState$ = exports.IdempotencyParameterMismatch$ = exports.EncryptionTypeMismatch$ = exports.BucketAlreadyOwnedByYou$ = exports.BucketAlreadyExists$ = exports.AccessDenied$ = exports.S3ServiceException$ = void 0;
exports.GetBucketAccelerateConfigurationRequest$ = exports.GetBucketAccelerateConfigurationOutput$ = exports.GetBucketAbacRequest$ = exports.GetBucketAbacOutput$ = exports.FilterRule$ = exports.ExistingObjectReplication$ = exports.EventBridgeConfiguration$ = exports.ErrorDocument$ = exports.ErrorDetails$ = exports._Error$ = exports.EndEvent$ = exports.EncryptionConfiguration$ = exports.Encryption$ = exports.DestinationResult$ = exports.Destination$ = exports.DeletePublicAccessBlockRequest$ = exports.DeleteObjectTaggingRequest$ = exports.DeleteObjectTaggingOutput$ = exports.DeleteObjectsRequest$ = exports.DeleteObjectsOutput$ = exports.DeleteObjectRequest$ = exports.DeleteObjectOutput$ = exports.DeleteMarkerReplication$ = exports.DeleteMarkerEntry$ = exports.DeletedObject$ = exports.DeleteBucketWebsiteRequest$ = exports.DeleteBucketTaggingRequest$ = exports.DeleteBucketRequest$ = exports.DeleteBucketReplicationRequest$ = exports.DeleteBucketPolicyRequest$ = exports.DeleteBucketOwnershipControlsRequest$ = exports.DeleteBucketMetricsConfigurationRequest$ = exports.DeleteBucketMetadataTableConfigurationRequest$ = exports.DeleteBucketMetadataConfigurationRequest$ = exports.DeleteBucketLifecycleRequest$ = exports.DeleteBucketInventoryConfigurationRequest$ = exports.DeleteBucketIntelligentTieringConfigurationRequest$ = exports.DeleteBucketEncryptionRequest$ = exports.DeleteBucketCorsRequest$ = exports.DeleteBucketAnalyticsConfigurationRequest$ = exports.Delete$ = exports.DefaultRetention$ = exports.CSVOutput$ = exports.CSVInput$ = exports.CreateSessionRequest$ = exports.CreateSessionOutput$ = exports.CreateMultipartUploadRequest$ = exports.CreateMultipartUploadOutput$ = exports.CreateBucketRequest$ = exports.CreateBucketOutput$ = void 0;
exports.GetObjectLegalHoldRequest$ = exports.GetObjectLegalHoldOutput$ = exports.GetObjectAttributesRequest$ = exports.GetObjectAttributesParts$ = exports.GetObjectAttributesOutput$ = exports.GetObjectAclRequest$ = exports.GetObjectAclOutput$ = exports.GetBucketWebsiteRequest$ = exports.GetBucketWebsiteOutput$ = exports.GetBucketVersioningRequest$ = exports.GetBucketVersioningOutput$ = exports.GetBucketTaggingRequest$ = exports.GetBucketTaggingOutput$ = exports.GetBucketRequestPaymentRequest$ = exports.GetBucketRequestPaymentOutput$ = exports.GetBucketReplicationRequest$ = exports.GetBucketReplicationOutput$ = exports.GetBucketPolicyStatusRequest$ = exports.GetBucketPolicyStatusOutput$ = exports.GetBucketPolicyRequest$ = exports.GetBucketPolicyOutput$ = exports.GetBucketOwnershipControlsRequest$ = exports.GetBucketOwnershipControlsOutput$ = exports.GetBucketNotificationConfigurationRequest$ = exports.GetBucketMetricsConfigurationRequest$ = exports.GetBucketMetricsConfigurationOutput$ = exports.GetBucketMetadataTableConfigurationResult$ = exports.GetBucketMetadataTableConfigurationRequest$ = exports.GetBucketMetadataTableConfigurationOutput$ = exports.GetBucketMetadataConfigurationResult$ = exports.GetBucketMetadataConfigurationRequest$ = exports.GetBucketMetadataConfigurationOutput$ = exports.GetBucketLoggingRequest$ = exports.GetBucketLoggingOutput$ = exports.GetBucketLocationRequest$ = exports.GetBucketLocationOutput$ = exports.GetBucketLifecycleConfigurationRequest$ = exports.GetBucketLifecycleConfigurationOutput$ = exports.GetBucketInventoryConfigurationRequest$ = exports.GetBucketInventoryConfigurationOutput$ = exports.GetBucketIntelligentTieringConfigurationRequest$ = exports.GetBucketIntelligentTieringConfigurationOutput$ = exports.GetBucketEncryptionRequest$ = exports.GetBucketEncryptionOutput$ = exports.GetBucketCorsRequest$ = exports.GetBucketCorsOutput$ = exports.GetBucketAnalyticsConfigurationRequest$ = exports.GetBucketAnalyticsConfigurationOutput$ = exports.GetBucketAclRequest$ = exports.GetBucketAclOutput$ = void 0;
exports.ListBucketInventoryConfigurationsRequest$ = exports.ListBucketInventoryConfigurationsOutput$ = exports.ListBucketIntelligentTieringConfigurationsRequest$ = exports.ListBucketIntelligentTieringConfigurationsOutput$ = exports.ListBucketAnalyticsConfigurationsRequest$ = exports.ListBucketAnalyticsConfigurationsOutput$ = exports.LifecycleRuleFilter$ = exports.LifecycleRuleAndOperator$ = exports.LifecycleRule$ = exports.LifecycleExpiration$ = exports.LambdaFunctionConfiguration$ = exports.JSONOutput$ = exports.JSONInput$ = exports.JournalTableConfigurationUpdates$ = exports.JournalTableConfigurationResult$ = exports.JournalTableConfiguration$ = exports.InventoryTableConfigurationUpdates$ = exports.InventoryTableConfigurationResult$ = exports.InventoryTableConfiguration$ = exports.InventorySchedule$ = exports.InventoryS3BucketDestination$ = exports.InventoryFilter$ = exports.InventoryEncryption$ = exports.InventoryDestination$ = exports.InventoryConfiguration$ = exports.IntelligentTieringFilter$ = exports.IntelligentTieringConfiguration$ = exports.IntelligentTieringAndOperator$ = exports.InputSerialization$ = exports.Initiator$ = exports.IndexDocument$ = exports.HeadObjectRequest$ = exports.HeadObjectOutput$ = exports.HeadBucketRequest$ = exports.HeadBucketOutput$ = exports.Grantee$ = exports.Grant$ = exports.GlacierJobParameters$ = exports.GetPublicAccessBlockRequest$ = exports.GetPublicAccessBlockOutput$ = exports.GetObjectTorrentRequest$ = exports.GetObjectTorrentOutput$ = exports.GetObjectTaggingRequest$ = exports.GetObjectTaggingOutput$ = exports.GetObjectRetentionRequest$ = exports.GetObjectRetentionOutput$ = exports.GetObjectRequest$ = exports.GetObjectOutput$ = exports.GetObjectLockConfigurationRequest$ = exports.GetObjectLockConfigurationOutput$ = void 0;
exports.Progress$ = exports.PolicyStatus$ = exports.PartitionedPrefix$ = exports.Part$ = exports.ParquetInput$ = exports.OwnershipControlsRule$ = exports.OwnershipControls$ = exports.Owner$ = exports.OutputSerialization$ = exports.OutputLocation$ = exports.ObjectVersion$ = exports.ObjectPart$ = exports.ObjectLockRule$ = exports.ObjectLockRetention$ = exports.ObjectLockLegalHold$ = exports.ObjectLockConfiguration$ = exports.ObjectIdentifier$ = exports._Object$ = exports.NotificationConfigurationFilter$ = exports.NotificationConfiguration$ = exports.NoncurrentVersionTransition$ = exports.NoncurrentVersionExpiration$ = exports.MultipartUpload$ = exports.MetricsConfiguration$ = exports.MetricsAndOperator$ = exports.Metrics$ = exports.MetadataTableEncryptionConfiguration$ = exports.MetadataTableConfigurationResult$ = exports.MetadataTableConfiguration$ = exports.MetadataEntry$ = exports.MetadataConfigurationResult$ = exports.MetadataConfiguration$ = exports.LoggingEnabled$ = exports.LocationInfo$ = exports.ListPartsRequest$ = exports.ListPartsOutput$ = exports.ListObjectVersionsRequest$ = exports.ListObjectVersionsOutput$ = exports.ListObjectsV2Request$ = exports.ListObjectsV2Output$ = exports.ListObjectsRequest$ = exports.ListObjectsOutput$ = exports.ListMultipartUploadsRequest$ = exports.ListMultipartUploadsOutput$ = exports.ListDirectoryBucketsRequest$ = exports.ListDirectoryBucketsOutput$ = exports.ListBucketsRequest$ = exports.ListBucketsOutput$ = exports.ListBucketMetricsConfigurationsRequest$ = exports.ListBucketMetricsConfigurationsOutput$ = void 0;
exports.RequestPaymentConfiguration$ = exports.ReplicationTimeValue$ = exports.ReplicationTime$ = exports.ReplicationRuleFilter$ = exports.ReplicationRuleAndOperator$ = exports.ReplicationRule$ = exports.ReplicationConfiguration$ = exports.ReplicaModifications$ = exports.RenameObjectRequest$ = exports.RenameObjectOutput$ = exports.RedirectAllRequestsTo$ = exports.Redirect$ = exports.RecordsEvent$ = exports.RecordExpiration$ = exports.QueueConfiguration$ = exports.PutPublicAccessBlockRequest$ = exports.PutObjectTaggingRequest$ = exports.PutObjectTaggingOutput$ = exports.PutObjectRetentionRequest$ = exports.PutObjectRetentionOutput$ = exports.PutObjectRequest$ = exports.PutObjectOutput$ = exports.PutObjectLockConfigurationRequest$ = exports.PutObjectLockConfigurationOutput$ = exports.PutObjectLegalHoldRequest$ = exports.PutObjectLegalHoldOutput$ = exports.PutObjectAclRequest$ = exports.PutObjectAclOutput$ = exports.PutBucketWebsiteRequest$ = exports.PutBucketVersioningRequest$ = exports.PutBucketTaggingRequest$ = exports.PutBucketRequestPaymentRequest$ = exports.PutBucketReplicationRequest$ = exports.PutBucketPolicyRequest$ = exports.PutBucketOwnershipControlsRequest$ = exports.PutBucketNotificationConfigurationRequest$ = exports.PutBucketMetricsConfigurationRequest$ = exports.PutBucketLoggingRequest$ = exports.PutBucketLifecycleConfigurationRequest$ = exports.PutBucketLifecycleConfigurationOutput$ = exports.PutBucketInventoryConfigurationRequest$ = exports.PutBucketIntelligentTieringConfigurationRequest$ = exports.PutBucketEncryptionRequest$ = exports.PutBucketCorsRequest$ = exports.PutBucketAnalyticsConfigurationRequest$ = exports.PutBucketAclRequest$ = exports.PutBucketAccelerateConfigurationRequest$ = exports.PutBucketAbacRequest$ = exports.PublicAccessBlockConfiguration$ = exports.ProgressEvent$ = void 0;
exports.SelectObjectContentEventStream$ = exports.ObjectEncryption$ = exports.MetricsFilter$ = exports.AnalyticsFilter$ = exports.WriteGetObjectResponseRequest$ = exports.WebsiteConfiguration$ = exports.VersioningConfiguration$ = exports.UploadPartRequest$ = exports.UploadPartOutput$ = exports.UploadPartCopyRequest$ = exports.UploadPartCopyOutput$ = exports.UpdateObjectEncryptionResponse$ = exports.UpdateObjectEncryptionRequest$ = exports.UpdateBucketMetadataJournalTableConfigurationRequest$ = exports.UpdateBucketMetadataInventoryTableConfigurationRequest$ = exports.Transition$ = exports.TopicConfiguration$ = exports.Tiering$ = exports.TargetObjectKeyFormat$ = exports.TargetGrant$ = exports.Tagging$ = exports.Tag$ = exports.StorageClassAnalysisDataExport$ = exports.StorageClassAnalysis$ = exports.StatsEvent$ = exports.Stats$ = exports.SSES3$ = exports.SSEKMSEncryption$ = exports.SseKmsEncryptedObjects$ = exports.SSEKMS$ = exports.SourceSelectionCriteria$ = exports.SimplePrefix$ = exports.SessionCredentials$ = exports.ServerSideEncryptionRule$ = exports.ServerSideEncryptionConfiguration$ = exports.ServerSideEncryptionByDefault$ = exports.SelectParameters$ = exports.SelectObjectContentRequest$ = exports.SelectObjectContentOutput$ = exports.ScanRange$ = exports.S3TablesDestinationResult$ = exports.S3TablesDestination$ = exports.S3Location$ = exports.S3KeyFilter$ = exports.RoutingRule$ = exports.RestoreStatus$ = exports.RestoreRequest$ = exports.RestoreObjectRequest$ = exports.RestoreObjectOutput$ = exports.RequestProgress$ = void 0;
exports.GetBucketWebsite$ = exports.GetBucketVersioning$ = exports.GetBucketTagging$ = exports.GetBucketRequestPayment$ = exports.GetBucketReplication$ = exports.GetBucketPolicyStatus$ = exports.GetBucketPolicy$ = exports.GetBucketOwnershipControls$ = exports.GetBucketNotificationConfiguration$ = exports.GetBucketMetricsConfiguration$ = exports.GetBucketMetadataTableConfiguration$ = exports.GetBucketMetadataConfiguration$ = exports.GetBucketLogging$ = exports.GetBucketLocation$ = exports.GetBucketLifecycleConfiguration$ = exports.GetBucketInventoryConfiguration$ = exports.GetBucketIntelligentTieringConfiguration$ = exports.GetBucketEncryption$ = exports.GetBucketCors$ = exports.GetBucketAnalyticsConfiguration$ = exports.GetBucketAcl$ = exports.GetBucketAccelerateConfiguration$ = exports.GetBucketAbac$ = exports.DeletePublicAccessBlock$ = exports.DeleteObjectTagging$ = exports.DeleteObjects$ = exports.DeleteObject$ = exports.DeleteBucketWebsite$ = exports.DeleteBucketTagging$ = exports.DeleteBucketReplication$ = exports.DeleteBucketPolicy$ = exports.DeleteBucketOwnershipControls$ = exports.DeleteBucketMetricsConfiguration$ = exports.DeleteBucketMetadataTableConfiguration$ = exports.DeleteBucketMetadataConfiguration$ = exports.DeleteBucketLifecycle$ = exports.DeleteBucketInventoryConfiguration$ = exports.DeleteBucketIntelligentTieringConfiguration$ = exports.DeleteBucketEncryption$ = exports.DeleteBucketCors$ = exports.DeleteBucketAnalyticsConfiguration$ = exports.DeleteBucket$ = exports.CreateSession$ = exports.CreateMultipartUpload$ = exports.CreateBucketMetadataTableConfiguration$ = exports.CreateBucketMetadataConfiguration$ = exports.CreateBucket$ = exports.CopyObject$ = exports.CompleteMultipartUpload$ = exports.AbortMultipartUpload$ = void 0;
exports.RestoreObject$ = exports.RenameObject$ = exports.PutPublicAccessBlock$ = exports.PutObjectTagging$ = exports.PutObjectRetention$ = exports.PutObjectLockConfiguration$ = exports.PutObjectLegalHold$ = exports.PutObjectAcl$ = exports.PutObject$ = exports.PutBucketWebsite$ = exports.PutBucketVersioning$ = exports.PutBucketTagging$ = exports.PutBucketRequestPayment$ = exports.PutBucketReplication$ = exports.PutBucketPolicy$ = exports.PutBucketOwnershipControls$ = exports.PutBucketNotificationConfiguration$ = exports.PutBucketMetricsConfiguration$ = exports.PutBucketLogging$ = exports.PutBucketLifecycleConfiguration$ = exports.PutBucketInventoryConfiguration$ = exports.PutBucketIntelligentTieringConfiguration$ = exports.PutBucketEncryption$ = exports.PutBucketCors$ = exports.PutBucketAnalyticsConfiguration$ = exports.PutBucketAcl$ = exports.PutBucketAccelerateConfiguration$ = exports.PutBucketAbac$ = exports.ListParts$ = exports.ListObjectVersions$ = exports.ListObjectsV2$ = exports.ListObjects$ = exports.ListMultipartUploads$ = exports.ListDirectoryBuckets$ = exports.ListBuckets$ = exports.ListBucketMetricsConfigurations$ = exports.ListBucketInventoryConfigurations$ = exports.ListBucketIntelligentTieringConfigurations$ = exports.ListBucketAnalyticsConfigurations$ = exports.HeadObject$ = exports.HeadBucket$ = exports.GetPublicAccessBlock$ = exports.GetObjectTorrent$ = exports.GetObjectTagging$ = exports.GetObjectRetention$ = exports.GetObjectLockConfiguration$ = exports.GetObjectLegalHold$ = exports.GetObjectAttributes$ = exports.GetObjectAcl$ = exports.GetObject$ = void 0;
exports.WriteGetObjectResponse$ = exports.UploadPartCopy$ = exports.UploadPart$ = exports.UpdateObjectEncryption$ = exports.UpdateBucketMetadataJournalTableConfiguration$ = exports.UpdateBucketMetadataInventoryTableConfiguration$ = exports.SelectObjectContent$ = void 0;
const _A = "Account";
const _AAO = "AnalyticsAndOperator";
const _AC = "AccelerateConfiguration";
const _ACL = "AccessControlList";
const _ACL_ = "ACL";
const _ACLn = "AnalyticsConfigurationList";
const _ACP = "AccessControlPolicy";
const _ACT = "AccessControlTranslation";
const _ACn = "AnalyticsConfiguration";
const _AD = "AccessDenied";
const _ADb = "AbortDate";
const _AED = "AnalyticsExportDestination";
const _AF = "AnalyticsFilter";
const _AH = "AllowedHeaders";
const _AHl = "AllowedHeader";
const _AI = "AccountId";
const _AIMU = "AbortIncompleteMultipartUpload";
const _AKI = "AccessKeyId";
const _AM = "AllowedMethods";
const _AMU = "AbortMultipartUpload";
const _AMUO = "AbortMultipartUploadOutput";
const _AMUR = "AbortMultipartUploadRequest";
const _AMl = "AllowedMethod";
const _AO = "AllowedOrigins";
const _AOl = "AllowedOrigin";
const _APA = "AccessPointAlias";
const _APAc = "AccessPointArn";
const _AQRD = "AllowQuotedRecordDelimiter";
const _AR = "AcceptRanges";
const _ARI = "AbortRuleId";
const _AS = "AbacStatus";
const _ASBD = "AnalyticsS3BucketDestination";
const _ASSEBD = "ApplyServerSideEncryptionByDefault";
const _ASr = "ArchiveStatus";
const _AT = "AccessTier";
const _An = "And";
const _B = "Bucket";
const _BA = "BucketArn";
const _BAE = "BucketAlreadyExists";
const _BAI = "BucketAccountId";
const _BAOBY = "BucketAlreadyOwnedByYou";
const _BET = "BlockedEncryptionTypes";
const _BGR = "BypassGovernanceRetention";
const _BI = "BucketInfo";
const _BKE = "BucketKeyEnabled";
const _BLC = "BucketLifecycleConfiguration";
const _BLN = "BucketLocationName";
const _BLS = "BucketLoggingStatus";
const _BLT = "BucketLocationType";
const _BN = "BucketNamespace";
const _BNu = "BucketName";
const _BP = "BytesProcessed";
const _BPA = "BlockPublicAcls";
const _BPP = "BlockPublicPolicy";
const _BR = "BucketRegion";
const _BRy = "BytesReturned";
const _BS = "BytesScanned";
const _Bo = "Body";
const _Bu = "Buckets";
const _C = "Checksum";
const _CA = "ChecksumAlgorithm";
const _CACL = "CannedACL";
const _CB = "CreateBucket";
const _CBC = "CreateBucketConfiguration";
const _CBMC = "CreateBucketMetadataConfiguration";
const _CBMCR = "CreateBucketMetadataConfigurationRequest";
const _CBMTC = "CreateBucketMetadataTableConfiguration";
const _CBMTCR = "CreateBucketMetadataTableConfigurationRequest";
const _CBO = "CreateBucketOutput";
const _CBR = "CreateBucketRequest";
const _CC = "CacheControl";
const _CCRC = "ChecksumCRC32";
const _CCRCC = "ChecksumCRC32C";
const _CCRCNVME = "ChecksumCRC64NVME";
const _CC_ = "Cache-Control";
const _CD = "CreationDate";
const _CD_ = "Content-Disposition";
const _CDo = "ContentDisposition";
const _CE = "ContinuationEvent";
const _CE_ = "Content-Encoding";
const _CEo = "ContentEncoding";
const _CF = "CloudFunction";
const _CFC = "CloudFunctionConfiguration";
const _CL = "ContentLanguage";
const _CL_ = "Content-Language";
const _CL__ = "Content-Length";
const _CLo = "ContentLength";
const _CM = "Content-MD5";
const _CMD = "ChecksumMD5";
const _CMDo = "ContentMD5";
const _CMU = "CompletedMultipartUpload";
const _CMUO = "CompleteMultipartUploadOutput";
const _CMUOr = "CreateMultipartUploadOutput";
const _CMUR = "CompleteMultipartUploadResult";
const _CMURo = "CompleteMultipartUploadRequest";
const _CMURr = "CreateMultipartUploadRequest";
const _CMUo = "CompleteMultipartUpload";
const _CMUr = "CreateMultipartUpload";
const _CMh = "ChecksumMode";
const _CO = "CopyObject";
const _COO = "CopyObjectOutput";
const _COR = "CopyObjectResult";
const _CORSC = "CORSConfiguration";
const _CORSR = "CORSRules";
const _CORSRu = "CORSRule";
const _CORo = "CopyObjectRequest";
const _CP = "CommonPrefix";
const _CPL = "CommonPrefixList";
const _CPLo = "CompletedPartList";
const _CPR = "CopyPartResult";
const _CPo = "CompletedPart";
const _CPom = "CommonPrefixes";
const _CR = "ContentRange";
const _CRSBA = "ConfirmRemoveSelfBucketAccess";
const _CR_ = "Content-Range";
const _CS = "CopySource";
const _CSHA = "ChecksumSHA1";
const _CSHAh = "ChecksumSHA256";
const _CSHAhe = "ChecksumSHA512";
const _CSIM = "CopySourceIfMatch";
const _CSIMS = "CopySourceIfModifiedSince";
const _CSINM = "CopySourceIfNoneMatch";
const _CSIUS = "CopySourceIfUnmodifiedSince";
const _CSO = "CreateSessionOutput";
const _CSR = "CreateSessionResult";
const _CSRo = "CopySourceRange";
const _CSRr = "CreateSessionRequest";
const _CSSSECA = "CopySourceSSECustomerAlgorithm";
const _CSSSECK = "CopySourceSSECustomerKey";
const _CSSSECKMD = "CopySourceSSECustomerKeyMD5";
const _CSV = "CSV";
const _CSVI = "CopySourceVersionId";
const _CSVIn = "CSVInput";
const _CSVO = "CSVOutput";
const _CSo = "ConfigurationState";
const _CSr = "CreateSession";
const _CT = "ChecksumType";
const _CT_ = "Content-Type";
const _CTl = "ClientToken";
const _CTo = "ContentType";
const _CTom = "CompressionType";
const _CTon = "ContinuationToken";
const _CXXHASH = "ChecksumXXHASH64";
const _CXXHASHh = "ChecksumXXHASH3";
const _CXXHASHhe = "ChecksumXXHASH128";
const _Co = "Condition";
const _Cod = "Code";
const _Com = "Comments";
const _Con = "Contents";
const _Cont = "Cont";
const _Cr = "Credentials";
const _D = "Days";
const _DAI = "DaysAfterInitiation";
const _DB = "DeleteBucket";
const _DBAC = "DeleteBucketAnalyticsConfiguration";
const _DBACR = "DeleteBucketAnalyticsConfigurationRequest";
const _DBC = "DeleteBucketCors";
const _DBCR = "DeleteBucketCorsRequest";
const _DBE = "DeleteBucketEncryption";
const _DBER = "DeleteBucketEncryptionRequest";
const _DBIC = "DeleteBucketInventoryConfiguration";
const _DBICR = "DeleteBucketInventoryConfigurationRequest";
const _DBITC = "DeleteBucketIntelligentTieringConfiguration";
const _DBITCR = "DeleteBucketIntelligentTieringConfigurationRequest";
const _DBL = "DeleteBucketLifecycle";
const _DBLR = "DeleteBucketLifecycleRequest";
const _DBMC = "DeleteBucketMetadataConfiguration";
const _DBMCR = "DeleteBucketMetadataConfigurationRequest";
const _DBMCRe = "DeleteBucketMetricsConfigurationRequest";
const _DBMCe = "DeleteBucketMetricsConfiguration";
const _DBMTC = "DeleteBucketMetadataTableConfiguration";
const _DBMTCR = "DeleteBucketMetadataTableConfigurationRequest";
const _DBOC = "DeleteBucketOwnershipControls";
const _DBOCR = "DeleteBucketOwnershipControlsRequest";
const _DBP = "DeleteBucketPolicy";
const _DBPR = "DeleteBucketPolicyRequest";
const _DBR = "DeleteBucketRequest";
const _DBRR = "DeleteBucketReplicationRequest";
const _DBRe = "DeleteBucketReplication";
const _DBT = "DeleteBucketTagging";
const _DBTR = "DeleteBucketTaggingRequest";
const _DBW = "DeleteBucketWebsite";
const _DBWR = "DeleteBucketWebsiteRequest";
const _DE = "DataExport";
const _DIM = "DestinationIfMatch";
const _DIMS = "DestinationIfModifiedSince";
const _DINM = "DestinationIfNoneMatch";
const _DIUS = "DestinationIfUnmodifiedSince";
const _DM = "DeleteMarker";
const _DME = "DeleteMarkerEntry";
const _DMR = "DeleteMarkerReplication";
const _DMVI = "DeleteMarkerVersionId";
const _DMe = "DeleteMarkers";
const _DN = "DisplayName";
const _DO = "DeletedObject";
const _DOO = "DeleteObjectOutput";
const _DOOe = "DeleteObjectsOutput";
const _DOR = "DeleteObjectRequest";
const _DORe = "DeleteObjectsRequest";
const _DOT = "DeleteObjectTagging";
const _DOTO = "DeleteObjectTaggingOutput";
const _DOTR = "DeleteObjectTaggingRequest";
const _DOe = "DeletedObjects";
const _DOel = "DeleteObject";
const _DOele = "DeleteObjects";
const _DPAB = "DeletePublicAccessBlock";
const _DPABR = "DeletePublicAccessBlockRequest";
const _DR = "DataRedundancy";
const _DRe = "DefaultRetention";
const _DRel = "DeleteResult";
const _DRes = "DestinationResult";
const _Da = "Date";
const _De = "Delete";
const _Del = "Deleted";
const _Deli = "Delimiter";
const _Des = "Destination";
const _Desc = "Description";
const _Det = "Details";
const _E = "Expiration";
const _EA = "EmailAddress";
const _EBC = "EventBridgeConfiguration";
const _EBO = "ExpectedBucketOwner";
const _EC = "EncryptionConfiguration";
const _ECr = "ErrorCode";
const _ED = "ErrorDetails";
const _EDr = "ErrorDocument";
const _EE = "EndEvent";
const _EH = "ExposeHeaders";
const _EHx = "ExposeHeader";
const _EM = "ErrorMessage";
const _EODM = "ExpiredObjectDeleteMarker";
const _EOR = "ExistingObjectReplication";
const _ES = "ExpiresString";
const _ESBO = "ExpectedSourceBucketOwner";
const _ET = "EncryptionType";
const _ETL = "EncryptionTypeList";
const _ETM = "EncryptionTypeMismatch";
const _ETa = "ETag";
const _ETn = "EncodingType";
const _ETv = "EventThreshold";
const _ETx = "ExpressionType";
const _En = "Encryption";
const _Ena = "Enabled";
const _End = "End";
const _Er = "Errors";
const _Err = "Error";
const _Ev = "Events";
const _Eve = "Event";
const _Ex = "Expires";
const _Exp = "Expression";
const _F = "Filter";
const _FD = "FieldDelimiter";
const _FHI = "FileHeaderInfo";
const _FO = "FetchOwner";
const _FR = "FilterRule";
const _FRL = "FilterRuleList";
const _FRi = "FilterRules";
const _Fi = "Field";
const _Fo = "Format";
const _Fr = "Frequency";
const _G = "Grants";
const _GBA = "GetBucketAbac";
const _GBAC = "GetBucketAccelerateConfiguration";
const _GBACO = "GetBucketAccelerateConfigurationOutput";
const _GBACOe = "GetBucketAnalyticsConfigurationOutput";
const _GBACR = "GetBucketAccelerateConfigurationRequest";
const _GBACRe = "GetBucketAnalyticsConfigurationRequest";
const _GBACe = "GetBucketAnalyticsConfiguration";
const _GBAO = "GetBucketAbacOutput";
const _GBAOe = "GetBucketAclOutput";
const _GBAR = "GetBucketAbacRequest";
const _GBARe = "GetBucketAclRequest";
const _GBAe = "GetBucketAcl";
const _GBC = "GetBucketCors";
const _GBCO = "GetBucketCorsOutput";
const _GBCR = "GetBucketCorsRequest";
const _GBE = "GetBucketEncryption";
const _GBEO = "GetBucketEncryptionOutput";
const _GBER = "GetBucketEncryptionRequest";
const _GBIC = "GetBucketInventoryConfiguration";
const _GBICO = "GetBucketInventoryConfigurationOutput";
const _GBICR = "GetBucketInventoryConfigurationRequest";
const _GBITC = "GetBucketIntelligentTieringConfiguration";
const _GBITCO = "GetBucketIntelligentTieringConfigurationOutput";
const _GBITCR = "GetBucketIntelligentTieringConfigurationRequest";
const _GBL = "GetBucketLocation";
const _GBLC = "GetBucketLifecycleConfiguration";
const _GBLCO = "GetBucketLifecycleConfigurationOutput";
const _GBLCR = "GetBucketLifecycleConfigurationRequest";
const _GBLO = "GetBucketLocationOutput";
const _GBLOe = "GetBucketLoggingOutput";
const _GBLR = "GetBucketLocationRequest";
const _GBLRe = "GetBucketLoggingRequest";
const _GBLe = "GetBucketLogging";
const _GBMC = "GetBucketMetadataConfiguration";
const _GBMCO = "GetBucketMetadataConfigurationOutput";
const _GBMCOe = "GetBucketMetricsConfigurationOutput";
const _GBMCR = "GetBucketMetadataConfigurationResult";
const _GBMCRe = "GetBucketMetadataConfigurationRequest";
const _GBMCRet = "GetBucketMetricsConfigurationRequest";
const _GBMCe = "GetBucketMetricsConfiguration";
const _GBMTC = "GetBucketMetadataTableConfiguration";
const _GBMTCO = "GetBucketMetadataTableConfigurationOutput";
const _GBMTCR = "GetBucketMetadataTableConfigurationResult";
const _GBMTCRe = "GetBucketMetadataTableConfigurationRequest";
const _GBNC = "GetBucketNotificationConfiguration";
const _GBNCR = "GetBucketNotificationConfigurationRequest";
const _GBOC = "GetBucketOwnershipControls";
const _GBOCO = "GetBucketOwnershipControlsOutput";
const _GBOCR = "GetBucketOwnershipControlsRequest";
const _GBP = "GetBucketPolicy";
const _GBPO = "GetBucketPolicyOutput";
const _GBPR = "GetBucketPolicyRequest";
const _GBPS = "GetBucketPolicyStatus";
const _GBPSO = "GetBucketPolicyStatusOutput";
const _GBPSR = "GetBucketPolicyStatusRequest";
const _GBR = "GetBucketReplication";
const _GBRO = "GetBucketReplicationOutput";
const _GBRP = "GetBucketRequestPayment";
const _GBRPO = "GetBucketRequestPaymentOutput";
const _GBRPR = "GetBucketRequestPaymentRequest";
const _GBRR = "GetBucketReplicationRequest";
const _GBT = "GetBucketTagging";
const _GBTO = "GetBucketTaggingOutput";
const _GBTR = "GetBucketTaggingRequest";
const _GBV = "GetBucketVersioning";
const _GBVO = "GetBucketVersioningOutput";
const _GBVR = "GetBucketVersioningRequest";
const _GBW = "GetBucketWebsite";
const _GBWO = "GetBucketWebsiteOutput";
const _GBWR = "GetBucketWebsiteRequest";
const _GFC = "GrantFullControl";
const _GJP = "GlacierJobParameters";
const _GO = "GetObject";
const _GOA = "GetObjectAcl";
const _GOAO = "GetObjectAclOutput";
const _GOAOe = "GetObjectAttributesOutput";
const _GOAP = "GetObjectAttributesParts";
const _GOAR = "GetObjectAclRequest";
const _GOARe = "GetObjectAttributesResponse";
const _GOARet = "GetObjectAttributesRequest";
const _GOAe = "GetObjectAttributes";
const _GOLC = "GetObjectLockConfiguration";
const _GOLCO = "GetObjectLockConfigurationOutput";
const _GOLCR = "GetObjectLockConfigurationRequest";
const _GOLH = "GetObjectLegalHold";
const _GOLHO = "GetObjectLegalHoldOutput";
const _GOLHR = "GetObjectLegalHoldRequest";
const _GOO = "GetObjectOutput";
const _GOR = "GetObjectRequest";
const _GORO = "GetObjectRetentionOutput";
const _GORR = "GetObjectRetentionRequest";
const _GORe = "GetObjectRetention";
const _GOT = "GetObjectTagging";
const _GOTO = "GetObjectTaggingOutput";
const _GOTOe = "GetObjectTorrentOutput";
const _GOTR = "GetObjectTaggingRequest";
const _GOTRe = "GetObjectTorrentRequest";
const _GOTe = "GetObjectTorrent";
const _GPAB = "GetPublicAccessBlock";
const _GPABO = "GetPublicAccessBlockOutput";
const _GPABR = "GetPublicAccessBlockRequest";
const _GR = "GrantRead";
const _GRACP = "GrantReadACP";
const _GW = "GrantWrite";
const _GWACP = "GrantWriteACP";
const _Gr = "Grant";
const _Gra = "Grantee";
const _HB = "HeadBucket";
const _HBO = "HeadBucketOutput";
const _HBR = "HeadBucketRequest";
const _HECRE = "HttpErrorCodeReturnedEquals";
const _HN = "HostName";
const _HO = "HeadObject";
const _HOO = "HeadObjectOutput";
const _HOR = "HeadObjectRequest";
const _HRC = "HttpRedirectCode";
const _I = "Id";
const _IC = "InventoryConfiguration";
const _ICL = "InventoryConfigurationList";
const _ID = "ID";
const _IDn = "IndexDocument";
const _IDnv = "InventoryDestination";
const _IE = "IsEnabled";
const _IEn = "InventoryEncryption";
const _IF = "InventoryFilter";
const _IL = "IsLatest";
const _IM = "IfMatch";
const _IMIT = "IfMatchInitiatedTime";
const _IMLMT = "IfMatchLastModifiedTime";
const _IMS = "IfMatchSize";
const _IMS_ = "If-Modified-Since";
const _IMSf = "IfModifiedSince";
const _IMUR = "InitiateMultipartUploadResult";
const _IM_ = "If-Match";
const _INM = "IfNoneMatch";
const _INM_ = "If-None-Match";
const _IOF = "InventoryOptionalFields";
const _IOS = "InvalidObjectState";
const _IOV = "IncludedObjectVersions";
const _IP = "IsPublic";
const _IPA = "IgnorePublicAcls";
const _IPM = "IdempotencyParameterMismatch";
const _IR = "InvalidRequest";
const _IRIP = "IsRestoreInProgress";
const _IS = "InputSerialization";
const _ISBD = "InventoryS3BucketDestination";
const _ISn = "InventorySchedule";
const _IT = "IsTruncated";
const _ITAO = "IntelligentTieringAndOperator";
const _ITC = "IntelligentTieringConfiguration";
const _ITCL = "IntelligentTieringConfigurationList";
const _ITCR = "InventoryTableConfigurationResult";
const _ITCU = "InventoryTableConfigurationUpdates";
const _ITCn = "InventoryTableConfiguration";
const _ITF = "IntelligentTieringFilter";
const _IUS = "IfUnmodifiedSince";
const _IUS_ = "If-Unmodified-Since";
const _IWO = "InvalidWriteOffset";
const _In = "Initiator";
const _Ini = "Initiated";
const _JSON = "JSON";
const _JSONI = "JSONInput";
const _JSONO = "JSONOutput";
const _JTC = "JournalTableConfiguration";
const _JTCR = "JournalTableConfigurationResult";
const _JTCU = "JournalTableConfigurationUpdates";
const _K = "Key";
const _KC = "KeyCount";
const _KI = "KeyId";
const _KKA = "KmsKeyArn";
const _KM = "KeyMarker";
const _KMSC = "KMSContext";
const _KMSKA = "KMSKeyArn";
const _KMSKI = "KMSKeyId";
const _KMSMKID = "KMSMasterKeyID";
const _KPE = "KeyPrefixEquals";
const _L = "Location";
const _LAMBR = "ListAllMyBucketsResult";
const _LAMDBR = "ListAllMyDirectoryBucketsResult";
const _LB = "ListBuckets";
const _LBAC = "ListBucketAnalyticsConfigurations";
const _LBACO = "ListBucketAnalyticsConfigurationsOutput";
const _LBACR = "ListBucketAnalyticsConfigurationResult";
const _LBACRi = "ListBucketAnalyticsConfigurationsRequest";
const _LBIC = "ListBucketInventoryConfigurations";
const _LBICO = "ListBucketInventoryConfigurationsOutput";
const _LBICR = "ListBucketInventoryConfigurationsRequest";
const _LBITC = "ListBucketIntelligentTieringConfigurations";
const _LBITCO = "ListBucketIntelligentTieringConfigurationsOutput";
const _LBITCR = "ListBucketIntelligentTieringConfigurationsRequest";
const _LBMC = "ListBucketMetricsConfigurations";
const _LBMCO = "ListBucketMetricsConfigurationsOutput";
const _LBMCR = "ListBucketMetricsConfigurationsRequest";
const _LBO = "ListBucketsOutput";
const _LBR = "ListBucketsRequest";
const _LBRi = "ListBucketResult";
const _LC = "LocationConstraint";
const _LCi = "LifecycleConfiguration";
const _LDB = "ListDirectoryBuckets";
const _LDBO = "ListDirectoryBucketsOutput";
const _LDBR = "ListDirectoryBucketsRequest";
const _LE = "LoggingEnabled";
const _LEi = "LifecycleExpiration";
const _LFA = "LambdaFunctionArn";
const _LFC = "LambdaFunctionConfiguration";
const _LFCL = "LambdaFunctionConfigurationList";
const _LFCa = "LambdaFunctionConfigurations";
const _LH = "LegalHold";
const _LI = "LocationInfo";
const _LICR = "ListInventoryConfigurationsResult";
const _LM = "LastModified";
const _LMCR = "ListMetricsConfigurationsResult";
const _LMT = "LastModifiedTime";
const _LMU = "ListMultipartUploads";
const _LMUO = "ListMultipartUploadsOutput";
const _LMUR = "ListMultipartUploadsResult";
const _LMURi = "ListMultipartUploadsRequest";
const _LM_ = "Last-Modified";
const _LO = "ListObjects";
const _LOO = "ListObjectsOutput";
const _LOR = "ListObjectsRequest";
const _LOV = "ListObjectsV2";
const _LOVO = "ListObjectsV2Output";
const _LOVOi = "ListObjectVersionsOutput";
const _LOVR = "ListObjectsV2Request";
const _LOVRi = "ListObjectVersionsRequest";
const _LOVi = "ListObjectVersions";
const _LP = "ListParts";
const _LPO = "ListPartsOutput";
const _LPR = "ListPartsResult";
const _LPRi = "ListPartsRequest";
const _LR = "LifecycleRule";
const _LRAO = "LifecycleRuleAndOperator";
const _LRF = "LifecycleRuleFilter";
const _LRi = "LifecycleRules";
const _LVR = "ListVersionsResult";
const _M = "Metadata";
const _MAO = "MetricsAndOperator";
const _MAS = "MaxAgeSeconds";
const _MB = "MaxBuckets";
const _MC = "MetadataConfiguration";
const _MCL = "MetricsConfigurationList";
const _MCR = "MetadataConfigurationResult";
const _MCe = "MetricsConfiguration";
const _MD = "MetadataDirective";
const _MDB = "MaxDirectoryBuckets";
const _MDf = "MfaDelete";
const _ME = "MetadataEntry";
const _MF = "MetricsFilter";
const _MFA = "MFA";
const _MFAD = "MFADelete";
const _MK = "MaxKeys";
const _MM = "MissingMeta";
const _MOS = "MpuObjectSize";
const _MP = "MaxParts";
const _MTC = "MetadataTableConfiguration";
const _MTCR = "MetadataTableConfigurationResult";
const _MTEC = "MetadataTableEncryptionConfiguration";
const _MU = "MultipartUpload";
const _MUL = "MultipartUploadList";
const _MUa = "MaxUploads";
const _Ma = "Marker";
const _Me = "Metrics";
const _Mes = "Message";
const _Mi = "Minutes";
const _Mo = "Mode";
const _N = "Name";
const _NC = "NotificationConfiguration";
const _NCF = "NotificationConfigurationFilter";
const _NCT = "NextContinuationToken";
const _ND = "NoncurrentDays";
const _NEKKAS = "NonEmptyKmsKeyArnString";
const _NF = "NotFound";
const _NKM = "NextKeyMarker";
const _NM = "NextMarker";
const _NNV = "NewerNoncurrentVersions";
const _NPNM = "NextPartNumberMarker";
const _NSB = "NoSuchBucket";
const _NSK = "NoSuchKey";
const _NSU = "NoSuchUpload";
const _NUIM = "NextUploadIdMarker";
const _NVE = "NoncurrentVersionExpiration";
const _NVIM = "NextVersionIdMarker";
const _NVT = "NoncurrentVersionTransitions";
const _NVTL = "NoncurrentVersionTransitionList";
const _NVTo = "NoncurrentVersionTransition";
const _O = "Owner";
const _OA = "ObjectAttributes";
const _OAIATE = "ObjectAlreadyInActiveTierError";
const _OC = "OwnershipControls";
const _OCR = "OwnershipControlsRule";
const _OCRw = "OwnershipControlsRules";
const _OE = "ObjectEncryption";
const _OF = "OptionalFields";
const _OI = "ObjectIdentifier";
const _OIL = "ObjectIdentifierList";
const _OL = "OutputLocation";
const _OLC = "ObjectLockConfiguration";
const _OLE = "ObjectLockEnabled";
const _OLEFB = "ObjectLockEnabledForBucket";
const _OLLH = "ObjectLockLegalHold";
const _OLLHS = "ObjectLockLegalHoldStatus";
const _OLM = "ObjectLockMode";
const _OLR = "ObjectLockRetention";
const _OLRUD = "ObjectLockRetainUntilDate";
const _OLRb = "ObjectLockRule";
const _OLb = "ObjectList";
const _ONIATE = "ObjectNotInActiveTierError";
const _OO = "ObjectOwnership";
const _OOA = "OptionalObjectAttributes";
const _OP = "ObjectParts";
const _OPb = "ObjectPart";
const _OS = "ObjectSize";
const _OSGT = "ObjectSizeGreaterThan";
const _OSLT = "ObjectSizeLessThan";
const _OSV = "OutputSchemaVersion";
const _OSu = "OutputSerialization";
const _OV = "ObjectVersion";
const _OVL = "ObjectVersionList";
const _Ob = "Objects";
const _Obj = "Object";
const _P = "Prefix";
const _PABC = "PublicAccessBlockConfiguration";
const _PBA = "PutBucketAbac";
const _PBAC = "PutBucketAccelerateConfiguration";
const _PBACR = "PutBucketAccelerateConfigurationRequest";
const _PBACRu = "PutBucketAnalyticsConfigurationRequest";
const _PBACu = "PutBucketAnalyticsConfiguration";
const _PBAR = "PutBucketAbacRequest";
const _PBARu = "PutBucketAclRequest";
const _PBAu = "PutBucketAcl";
const _PBC = "PutBucketCors";
const _PBCR = "PutBucketCorsRequest";
const _PBE = "PutBucketEncryption";
const _PBER = "PutBucketEncryptionRequest";
const _PBIC = "PutBucketInventoryConfiguration";
const _PBICR = "PutBucketInventoryConfigurationRequest";
const _PBITC = "PutBucketIntelligentTieringConfiguration";
const _PBITCR = "PutBucketIntelligentTieringConfigurationRequest";
const _PBL = "PutBucketLogging";
const _PBLC = "PutBucketLifecycleConfiguration";
const _PBLCO = "PutBucketLifecycleConfigurationOutput";
const _PBLCR = "PutBucketLifecycleConfigurationRequest";
const _PBLR = "PutBucketLoggingRequest";
const _PBMC = "PutBucketMetricsConfiguration";
const _PBMCR = "PutBucketMetricsConfigurationRequest";
const _PBNC = "PutBucketNotificationConfiguration";
const _PBNCR = "PutBucketNotificationConfigurationRequest";
const _PBOC = "PutBucketOwnershipControls";
const _PBOCR = "PutBucketOwnershipControlsRequest";
const _PBP = "PutBucketPolicy";
const _PBPR = "PutBucketPolicyRequest";
const _PBR = "PutBucketReplication";
const _PBRP = "PutBucketRequestPayment";
const _PBRPR = "PutBucketRequestPaymentRequest";
const _PBRR = "PutBucketReplicationRequest";
const _PBT = "PutBucketTagging";
const _PBTR = "PutBucketTaggingRequest";
const _PBV = "PutBucketVersioning";
const _PBVR = "PutBucketVersioningRequest";
const _PBW = "PutBucketWebsite";
const _PBWR = "PutBucketWebsiteRequest";
const _PC = "PartsCount";
const _PDS = "PartitionDateSource";
const _PE = "ProgressEvent";
const _PI = "ParquetInput";
const _PL = "PartsList";
const _PN = "PartNumber";
const _PNM = "PartNumberMarker";
const _PO = "PutObject";
const _POA = "PutObjectAcl";
const _POAO = "PutObjectAclOutput";
const _POAR = "PutObjectAclRequest";
const _POLC = "PutObjectLockConfiguration";
const _POLCO = "PutObjectLockConfigurationOutput";
const _POLCR = "PutObjectLockConfigurationRequest";
const _POLH = "PutObjectLegalHold";
const _POLHO = "PutObjectLegalHoldOutput";
const _POLHR = "PutObjectLegalHoldRequest";
const _POO = "PutObjectOutput";
const _POR = "PutObjectRequest";
const _PORO = "PutObjectRetentionOutput";
const _PORR = "PutObjectRetentionRequest";
const _PORu = "PutObjectRetention";
const _POT = "PutObjectTagging";
const _POTO = "PutObjectTaggingOutput";
const _POTR = "PutObjectTaggingRequest";
const _PP = "PartitionedPrefix";
const _PPAB = "PutPublicAccessBlock";
const _PPABR = "PutPublicAccessBlockRequest";
const _PS = "PolicyStatus";
const _Pa = "Parts";
const _Par = "Part";
const _Parq = "Parquet";
const _Pay = "Payer";
const _Payl = "Payload";
const _Pe = "Permission";
const _Po = "Policy";
const _Pr = "Progress";
const _Pri = "Priority";
const _Pro = "Protocol";
const _Q = "Quiet";
const _QA = "QueueArn";
const _QC = "QuoteCharacter";
const _QCL = "QueueConfigurationList";
const _QCu = "QueueConfigurations";
const _QCue = "QueueConfiguration";
const _QEC = "QuoteEscapeCharacter";
const _QF = "QuoteFields";
const _Qu = "Queue";
const _R = "Rules";
const _RART = "RedirectAllRequestsTo";
const _RC = "RequestCharged";
const _RCC = "ResponseCacheControl";
const _RCD = "ResponseContentDisposition";
const _RCE = "ResponseContentEncoding";
const _RCL = "ResponseContentLanguage";
const _RCT = "ResponseContentType";
const _RCe = "ReplicationConfiguration";
const _RD = "RecordDelimiter";
const _RE = "ResponseExpires";
const _RED = "RestoreExpiryDate";
const _REe = "RecordExpiration";
const _REec = "RecordsEvent";
const _RKKID = "ReplicaKmsKeyID";
const _RKPW = "ReplaceKeyPrefixWith";
const _RKW = "ReplaceKeyWith";
const _RM = "ReplicaModifications";
const _RO = "RenameObject";
const _ROO = "RenameObjectOutput";
const _ROOe = "RestoreObjectOutput";
const _ROP = "RestoreOutputPath";
const _ROR = "RenameObjectRequest";
const _RORe = "RestoreObjectRequest";
const _ROe = "RestoreObject";
const _RP = "RequestPayer";
const _RPB = "RestrictPublicBuckets";
const _RPC = "RequestPaymentConfiguration";
const _RPe = "RequestProgress";
const _RR = "RoutingRules";
const _RRAO = "ReplicationRuleAndOperator";
const _RRF = "ReplicationRuleFilter";
const _RRe = "ReplicationRule";
const _RRep = "ReplicationRules";
const _RReq = "RequestRoute";
const _RRes = "RestoreRequest";
const _RRo = "RoutingRule";
const _RS = "ReplicationStatus";
const _RSe = "RestoreStatus";
const _RSen = "RenameSource";
const _RT = "ReplicationTime";
const _RTV = "ReplicationTimeValue";
const _RTe = "RequestToken";
const _RUD = "RetainUntilDate";
const _Ra = "Range";
const _Re = "Restore";
const _Rec = "Records";
const _Red = "Redirect";
const _Ret = "Retention";
const _Ro = "Role";
const _Ru = "Rule";
const _S = "Status";
const _SA = "StartAfter";
const _SAK = "SecretAccessKey";
const _SAs = "SseAlgorithm";
const _SB = "StreamingBlob";
const _SBD = "S3BucketDestination";
const _SC = "StorageClass";
const _SCA = "StorageClassAnalysis";
const _SCADE = "StorageClassAnalysisDataExport";
const _SCV = "SessionCredentialValue";
const _SCe = "SessionCredentials";
const _SCt = "StatusCode";
const _SDV = "SkipDestinationValidation";
const _SE = "StatsEvent";
const _SIM = "SourceIfMatch";
const _SIMS = "SourceIfModifiedSince";
const _SINM = "SourceIfNoneMatch";
const _SIUS = "SourceIfUnmodifiedSince";
const _SK = "SSE-KMS";
const _SKEO = "SseKmsEncryptedObjects";
const _SKF = "S3KeyFilter";
const _SKe = "S3Key";
const _SL = "S3Location";
const _SM = "SessionMode";
const _SOC = "SelectObjectContent";
const _SOCES = "SelectObjectContentEventStream";
const _SOCO = "SelectObjectContentOutput";
const _SOCR = "SelectObjectContentRequest";
const _SP = "SelectParameters";
const _SPi = "SimplePrefix";
const _SR = "ScanRange";
const _SS = "SSE-S3";
const _SSC = "SourceSelectionCriteria";
const _SSE = "ServerSideEncryption";
const _SSEA = "SSEAlgorithm";
const _SSEBD = "ServerSideEncryptionByDefault";
const _SSEC = "ServerSideEncryptionConfiguration";
const _SSECA = "SSECustomerAlgorithm";
const _SSECK = "SSECustomerKey";
const _SSECKMD = "SSECustomerKeyMD5";
const _SSEKMS = "SSEKMS";
const _SSEKMSE = "SSEKMSEncryption";
const _SSEKMSEC = "SSEKMSEncryptionContext";
const _SSEKMSKI = "SSEKMSKeyId";
const _SSER = "ServerSideEncryptionRule";
const _SSERe = "ServerSideEncryptionRules";
const _SSES = "SSES3";
const _ST = "SessionToken";
const _STD = "S3TablesDestination";
const _STDR = "S3TablesDestinationResult";
const _S_ = "S3";
const _Sc = "Schedule";
const _Si = "Size";
const _St = "Start";
const _Sta = "Stats";
const _Su = "Suffix";
const _T = "Tags";
const _TA = "TableArn";
const _TAo = "TopicArn";
const _TB = "TargetBucket";
const _TBA = "TableBucketArn";
const _TBT = "TableBucketType";
const _TC = "TagCount";
const _TCL = "TopicConfigurationList";
const _TCo = "TopicConfigurations";
const _TCop = "TopicConfiguration";
const _TD = "TaggingDirective";
const _TDMOS = "TransitionDefaultMinimumObjectSize";
const _TG = "TargetGrants";
const _TGa = "TargetGrant";
const _TL = "TieringList";
const _TLr = "TransitionList";
const _TMP = "TooManyParts";
const _TN = "TableNamespace";
const _TNa = "TableName";
const _TOKF = "TargetObjectKeyFormat";
const _TP = "TargetPrefix";
const _TPC = "TotalPartsCount";
const _TS = "TagSet";
const _TSa = "TableStatus";
const _Ta = "Tag";
const _Tag = "Tagging";
const _Ti = "Tier";
const _Tie = "Tierings";
const _Tier = "Tiering";
const _Tim = "Time";
const _To = "Token";
const _Top = "Topic";
const _Tr = "Transitions";
const _Tra = "Transition";
const _Ty = "Type";
const _U = "Uploads";
const _UBMITC = "UpdateBucketMetadataInventoryTableConfiguration";
const _UBMITCR = "UpdateBucketMetadataInventoryTableConfigurationRequest";
const _UBMJTC = "UpdateBucketMetadataJournalTableConfiguration";
const _UBMJTCR = "UpdateBucketMetadataJournalTableConfigurationRequest";
const _UI = "UploadId";
const _UIM = "UploadIdMarker";
const _UM = "UserMetadata";
const _UOE = "UpdateObjectEncryption";
const _UOER = "UpdateObjectEncryptionRequest";
const _UOERp = "UpdateObjectEncryptionResponse";
const _UP = "UploadPart";
const _UPC = "UploadPartCopy";
const _UPCO = "UploadPartCopyOutput";
const _UPCR = "UploadPartCopyRequest";
const _UPO = "UploadPartOutput";
const _UPR = "UploadPartRequest";
const _URI = "URI";
const _Up = "Upload";
const _V = "Value";
const _VC = "VersioningConfiguration";
const _VI = "VersionId";
const _VIM = "VersionIdMarker";
const _Ve = "Versions";
const _Ver = "Version";
const _WC = "WebsiteConfiguration";
const _WGOR = "WriteGetObjectResponse";
const _WGORR = "WriteGetObjectResponseRequest";
const _WOB = "WriteOffsetBytes";
const _WRL = "WebsiteRedirectLocation";
const _Y = "Years";
const _ar = "accept-ranges";
const _br = "bucket-region";
const _c = "client";
const _ct = "continuation-token";
const _d = "delimiter";
const _e = "error";
const _eP = "eventPayload";
const _en = "endpoint";
const _et = "encoding-type";
const _fo = "fetch-owner";
const _h = "http";
const _hC = "httpChecksum";
const _hE = "httpError";
const _hH = "httpHeader";
const _hL = "hostLabel";
const _hP = "httpPayload";
const _hPH = "httpPrefixHeaders";
const _hQ = "httpQuery";
const _hi = "http://www.w3.org/2001/XMLSchema-instance";
const _i = "id";
const _iT = "idempotencyToken";
const _km = "key-marker";
const _m = "marker";
const _mb = "max-buckets";
const _mdb = "max-directory-buckets";
const _mk = "max-keys";
const _mp = "max-parts";
const _mu = "max-uploads";
const _p = "prefix";
const _pN = "partNumber";
const _pnm = "part-number-marker";
const _rcc = "response-cache-control";
const _rcd = "response-content-disposition";
const _rce = "response-content-encoding";
const _rcl = "response-content-language";
const _rct = "response-content-type";
const _re = "response-expires";
const _s = "smithy.ts.sdk.synthetic.com.amazonaws.s3";
const _sa = "start-after";
const _st = "streaming";
const _uI = "uploadId";
const _uim = "upload-id-marker";
const _vI = "versionId";
const _vim = "version-id-marker";
const _x = "xsi";
const _xA = "xmlAttribute";
const _xF = "xmlFlattened";
const _xN = "xmlName";
const _xNm = "xmlNamespace";
const _xaa = "x-amz-acl";
const _xaad = "x-amz-abort-date";
const _xaapa = "x-amz-access-point-alias";
const _xaari = "x-amz-abort-rule-id";
const _xaas = "x-amz-archive-status";
const _xaba = "x-amz-bucket-arn";
const _xabgr = "x-amz-bypass-governance-retention";
const _xabln = "x-amz-bucket-location-name";
const _xablt = "x-amz-bucket-location-type";
const _xabn = "x-amz-bucket-namespace";
const _xabole = "x-amz-bucket-object-lock-enabled";
const _xabolt = "x-amz-bucket-object-lock-token";
const _xabr = "x-amz-bucket-region";
const _xaca = "x-amz-checksum-algorithm";
const _xacc = "x-amz-checksum-crc32";
const _xacc_ = "x-amz-checksum-crc32c";
const _xacc__ = "x-amz-checksum-crc64nvme";
const _xacm = "x-amz-checksum-md5";
const _xacm_ = "x-amz-checksum-mode";
const _xacrsba = "x-amz-confirm-remove-self-bucket-access";
const _xacs = "x-amz-checksum-sha1";
const _xacs_ = "x-amz-checksum-sha256";
const _xacs__ = "x-amz-checksum-sha512";
const _xacs___ = "x-amz-copy-source";
const _xacsim = "x-amz-copy-source-if-match";
const _xacsims = "x-amz-copy-source-if-modified-since";
const _xacsinm = "x-amz-copy-source-if-none-match";
const _xacsius = "x-amz-copy-source-if-unmodified-since";
const _xacsm = "x-amz-create-session-mode";
const _xacsr = "x-amz-copy-source-range";
const _xacssseca = "x-amz-copy-source-server-side-encryption-customer-algorithm";
const _xacssseck = "x-amz-copy-source-server-side-encryption-customer-key";
const _xacssseckM = "x-amz-copy-source-server-side-encryption-customer-key-MD5";
const _xacsvi = "x-amz-copy-source-version-id";
const _xact = "x-amz-checksum-type";
const _xact_ = "x-amz-client-token";
const _xacx = "x-amz-checksum-xxhash64";
const _xacx_ = "x-amz-checksum-xxhash3";
const _xacx__ = "x-amz-checksum-xxhash128";
const _xadm = "x-amz-delete-marker";
const _xae = "x-amz-expiration";
const _xaebo = "x-amz-expected-bucket-owner";
const _xafec = "x-amz-fwd-error-code";
const _xafem = "x-amz-fwd-error-message";
const _xafhCC = "x-amz-fwd-header-Cache-Control";
const _xafhCD = "x-amz-fwd-header-Content-Disposition";
const _xafhCE = "x-amz-fwd-header-Content-Encoding";
const _xafhCL = "x-amz-fwd-header-Content-Language";
const _xafhCR = "x-amz-fwd-header-Content-Range";
const _xafhCT = "x-amz-fwd-header-Content-Type";
const _xafhE = "x-amz-fwd-header-ETag";
const _xafhE_ = "x-amz-fwd-header-Expires";
const _xafhLM = "x-amz-fwd-header-Last-Modified";
const _xafhar = "x-amz-fwd-header-accept-ranges";
const _xafhxacc = "x-amz-fwd-header-x-amz-checksum-crc32";
const _xafhxacc_ = "x-amz-fwd-header-x-amz-checksum-crc32c";
const _xafhxacc__ = "x-amz-fwd-header-x-amz-checksum-crc64nvme";
const _xafhxacm = "x-amz-fwd-header-x-amz-checksum-md5";
const _xafhxacs = "x-amz-fwd-header-x-amz-checksum-sha1";
const _xafhxacs_ = "x-amz-fwd-header-x-amz-checksum-sha256";
const _xafhxacs__ = "x-amz-fwd-header-x-amz-checksum-sha512";
const _xafhxacx = "x-amz-fwd-header-x-amz-checksum-xxhash64";
const _xafhxacx_ = "x-amz-fwd-header-x-amz-checksum-xxhash3";
const _xafhxacx__ = "x-amz-fwd-header-x-amz-checksum-xxhash128";
const _xafhxadm = "x-amz-fwd-header-x-amz-delete-marker";
const _xafhxae = "x-amz-fwd-header-x-amz-expiration";
const _xafhxamm = "x-amz-fwd-header-x-amz-missing-meta";
const _xafhxampc = "x-amz-fwd-header-x-amz-mp-parts-count";
const _xafhxaollh = "x-amz-fwd-header-x-amz-object-lock-legal-hold";
const _xafhxaolm = "x-amz-fwd-header-x-amz-object-lock-mode";
const _xafhxaolrud = "x-amz-fwd-header-x-amz-object-lock-retain-until-date";
const _xafhxar = "x-amz-fwd-header-x-amz-restore";
const _xafhxarc = "x-amz-fwd-header-x-amz-request-charged";
const _xafhxars = "x-amz-fwd-header-x-amz-replication-status";
const _xafhxasc = "x-amz-fwd-header-x-amz-storage-class";
const _xafhxasse = "x-amz-fwd-header-x-amz-server-side-encryption";
const _xafhxasseakki = "x-amz-fwd-header-x-amz-server-side-encryption-aws-kms-key-id";
const _xafhxassebke = "x-amz-fwd-header-x-amz-server-side-encryption-bucket-key-enabled";
const _xafhxasseca = "x-amz-fwd-header-x-amz-server-side-encryption-customer-algorithm";
const _xafhxasseckM = "x-amz-fwd-header-x-amz-server-side-encryption-customer-key-MD5";
const _xafhxatc = "x-amz-fwd-header-x-amz-tagging-count";
const _xafhxavi = "x-amz-fwd-header-x-amz-version-id";
const _xafs = "x-amz-fwd-status";
const _xagfc = "x-amz-grant-full-control";
const _xagr = "x-amz-grant-read";
const _xagra = "x-amz-grant-read-acp";
const _xagw = "x-amz-grant-write";
const _xagwa = "x-amz-grant-write-acp";
const _xaimit = "x-amz-if-match-initiated-time";
const _xaimlmt = "x-amz-if-match-last-modified-time";
const _xaims = "x-amz-if-match-size";
const _xam = "x-amz-meta-";
const _xam_ = "x-amz-mfa";
const _xamd = "x-amz-metadata-directive";
const _xamm = "x-amz-missing-meta";
const _xamos = "x-amz-mp-object-size";
const _xamp = "x-amz-max-parts";
const _xampc = "x-amz-mp-parts-count";
const _xaoa = "x-amz-object-attributes";
const _xaollh = "x-amz-object-lock-legal-hold";
const _xaolm = "x-amz-object-lock-mode";
const _xaolrud = "x-amz-object-lock-retain-until-date";
const _xaoo = "x-amz-object-ownership";
const _xaooa = "x-amz-optional-object-attributes";
const _xaos = "x-amz-object-size";
const _xapnm = "x-amz-part-number-marker";
const _xar = "x-amz-restore";
const _xarc = "x-amz-request-charged";
const _xarop = "x-amz-restore-output-path";
const _xarp = "x-amz-request-payer";
const _xarr = "x-amz-request-route";
const _xars = "x-amz-replication-status";
const _xars_ = "x-amz-rename-source";
const _xarsim = "x-amz-rename-source-if-match";
const _xarsims = "x-amz-rename-source-if-modified-since";
const _xarsinm = "x-amz-rename-source-if-none-match";
const _xarsius = "x-amz-rename-source-if-unmodified-since";
const _xart = "x-amz-request-token";
const _xasc = "x-amz-storage-class";
const _xasca = "x-amz-sdk-checksum-algorithm";
const _xasdv = "x-amz-skip-destination-validation";
const _xasebo = "x-amz-source-expected-bucket-owner";
const _xasse = "x-amz-server-side-encryption";
const _xasseakki = "x-amz-server-side-encryption-aws-kms-key-id";
const _xassebke = "x-amz-server-side-encryption-bucket-key-enabled";
const _xassec = "x-amz-server-side-encryption-context";
const _xasseca = "x-amz-server-side-encryption-customer-algorithm";
const _xasseck = "x-amz-server-side-encryption-customer-key";
const _xasseckM = "x-amz-server-side-encryption-customer-key-MD5";
const _xat = "x-amz-tagging";
const _xatc = "x-amz-tagging-count";
const _xatd = "x-amz-tagging-directive";
const _xatdmos = "x-amz-transition-default-minimum-object-size";
const _xavi = "x-amz-version-id";
const _xawob = "x-amz-write-offset-bytes";
const _xawrl = "x-amz-website-redirect-location";
const _xs = "xsi:type";
const n0 = "com.amazonaws.s3";
const schema_1 = (init_schema(), __toCommonJS(schema_exports));
const errors_1 = require_errors();
const S3ServiceException_1 = require_S3ServiceException();
const _s_registry = schema_1.TypeRegistry.for(_s);
exports.S3ServiceException$ = [
-3,
_s,
"S3ServiceException",
0,
[],
[]
];
_s_registry.registerError(exports.S3ServiceException$, S3ServiceException_1.S3ServiceException);
const n0_registry = schema_1.TypeRegistry.for(n0);
exports.AccessDenied$ = [
-3,
n0,
_AD,
{
[_e]: _c,
[_hE]: 403
},
[],
[]
];
n0_registry.registerError(exports.AccessDenied$, errors_1.AccessDenied);
exports.BucketAlreadyExists$ = [
-3,
n0,
_BAE,
{
[_e]: _c,
[_hE]: 409
},
[],
[]
];
n0_registry.registerError(exports.BucketAlreadyExists$, errors_1.BucketAlreadyExists);
exports.BucketAlreadyOwnedByYou$ = [
-3,
n0,
_BAOBY,
{
[_e]: _c,
[_hE]: 409
},
[],
[]
];
n0_registry.registerError(exports.BucketAlreadyOwnedByYou$, errors_1.BucketAlreadyOwnedByYou);
exports.EncryptionTypeMismatch$ = [
-3,
n0,
_ETM,
{
[_e]: _c,
[_hE]: 400
},
[],
[]
];
n0_registry.registerError(exports.EncryptionTypeMismatch$, errors_1.EncryptionTypeMismatch);
exports.IdempotencyParameterMismatch$ = [
-3,
n0,
_IPM,
{
[_e]: _c,
[_hE]: 400
},
[],
[]
];
n0_registry.registerError(exports.IdempotencyParameterMismatch$, errors_1.IdempotencyParameterMismatch);
exports.InvalidObjectState$ = [
-3,
n0,
_IOS,
{
[_e]: _c,
[_hE]: 403
},
[_SC, _AT],
[0, 0]
];
n0_registry.registerError(exports.InvalidObjectState$, errors_1.InvalidObjectState);
exports.InvalidRequest$ = [
-3,
n0,
_IR,
{
[_e]: _c,
[_hE]: 400
},
[],
[]
];
n0_registry.registerError(exports.InvalidRequest$, errors_1.InvalidRequest);
exports.InvalidWriteOffset$ = [
-3,
n0,
_IWO,
{
[_e]: _c,
[_hE]: 400
},
[],
[]
];
n0_registry.registerError(exports.InvalidWriteOffset$, errors_1.InvalidWriteOffset);
exports.NoSuchBucket$ = [
-3,
n0,
_NSB,
{
[_e]: _c,
[_hE]: 404
},
[],
[]
];
n0_registry.registerError(exports.NoSuchBucket$, errors_1.NoSuchBucket);
exports.NoSuchKey$ = [
-3,
n0,
_NSK,
{
[_e]: _c,
[_hE]: 404
},
[],
[]
];
n0_registry.registerError(exports.NoSuchKey$, errors_1.NoSuchKey);
exports.NoSuchUpload$ = [
-3,
n0,
_NSU,
{
[_e]: _c,
[_hE]: 404
},
[],
[]
];
n0_registry.registerError(exports.NoSuchUpload$, errors_1.NoSuchUpload);
exports.NotFound$ = [
-3,
n0,
_NF,
{ [_e]: _c },
[],
[]
];
n0_registry.registerError(exports.NotFound$, errors_1.NotFound);
exports.ObjectAlreadyInActiveTierError$ = [
-3,
n0,
_OAIATE,
{
[_e]: _c,
[_hE]: 403
},
[],
[]
];
n0_registry.registerError(exports.ObjectAlreadyInActiveTierError$, errors_1.ObjectAlreadyInActiveTierError);
exports.ObjectNotInActiveTierError$ = [
-3,
n0,
_ONIATE,
{
[_e]: _c,
[_hE]: 403
},
[],
[]
];
n0_registry.registerError(exports.ObjectNotInActiveTierError$, errors_1.ObjectNotInActiveTierError);
exports.TooManyParts$ = [
-3,
n0,
_TMP,
{
[_e]: _c,
[_hE]: 400
},
[],
[]
];
n0_registry.registerError(exports.TooManyParts$, errors_1.TooManyParts);
exports.errorTypeRegistries = [_s_registry, n0_registry];
var CopySourceSSECustomerKey = [
0,
n0,
_CSSSECK,
8,
0
];
var NonEmptyKmsKeyArnString = [
0,
n0,
_NEKKAS,
8,
0
];
var SessionCredentialValue = [
0,
n0,
_SCV,
8,
0
];
var SSECustomerKey = [
0,
n0,
_SSECK,
8,
0
];
var SSEKMSEncryptionContext = [
0,
n0,
_SSEKMSEC,
8,
0
];
var SSEKMSKeyId = [
0,
n0,
_SSEKMSKI,
8,
0
];
var StreamingBlob = [
0,
n0,
_SB,
{ [_st]: 1 },
42
];
exports.AbacStatus$ = [
3,
n0,
_AS,
0,
[_S],
[0]
];
exports.AbortIncompleteMultipartUpload$ = [
3,
n0,
_AIMU,
0,
[_DAI],
[1]
];
exports.AbortMultipartUploadOutput$ = [
3,
n0,
_AMUO,
0,
[_RC],
[[0, { [_hH]: _xarc }]]
];
exports.AbortMultipartUploadRequest$ = [
3,
n0,
_AMUR,
0,
[
_B,
_K,
_UI,
_RP,
_EBO,
_IMIT
],
[
[0, 1],
[0, 1],
[0, { [_hQ]: _uI }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xaebo }],
[6, { [_hH]: _xaimit }]
],
3
];
exports.AccelerateConfiguration$ = [
3,
n0,
_AC,
0,
[_S],
[0]
];
exports.AccessControlPolicy$ = [
3,
n0,
_ACP,
0,
[_G, _O],
[[() => Grants, { [_xN]: _ACL }], () => exports.Owner$]
];
exports.AccessControlTranslation$ = [
3,
n0,
_ACT,
0,
[_O],
[0],
1
];
exports.AnalyticsAndOperator$ = [
3,
n0,
_AAO,
0,
[_P, _T],
[0, [() => TagSet, {
[_xF]: 1,
[_xN]: _Ta
}]]
];
exports.AnalyticsConfiguration$ = [
3,
n0,
_ACn,
0,
[
_I,
_SCA,
_F
],
[
0,
() => exports.StorageClassAnalysis$,
[() => exports.AnalyticsFilter$, 0]
],
2
];
exports.AnalyticsExportDestination$ = [
3,
n0,
_AED,
0,
[_SBD],
[() => exports.AnalyticsS3BucketDestination$],
1
];
exports.AnalyticsS3BucketDestination$ = [
3,
n0,
_ASBD,
0,
[
_Fo,
_B,
_BAI,
_P
],
[
0,
0,
0,
0
],
2
];
exports.BlockedEncryptionTypes$ = [
3,
n0,
_BET,
0,
[_ET],
[[() => EncryptionTypeList, { [_xF]: 1 }]]
];
exports.Bucket$ = [
3,
n0,
_B,
0,
[
_N,
_CD,
_BR,
_BA
],
[
0,
4,
0,
0
]
];
exports.BucketInfo$ = [
3,
n0,
_BI,
0,
[_DR, _Ty],
[0, 0]
];
exports.BucketLifecycleConfiguration$ = [
3,
n0,
_BLC,
0,
[_R],
[[() => LifecycleRules, {
[_xF]: 1,
[_xN]: _Ru
}]],
1
];
exports.BucketLoggingStatus$ = [
3,
n0,
_BLS,
0,
[_LE],
[[() => exports.LoggingEnabled$, 0]]
];
exports.Checksum$ = [
3,
n0,
_C,
0,
[
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe,
_CT
],
[
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
];
exports.CommonPrefix$ = [
3,
n0,
_CP,
0,
[_P],
[0]
];
exports.CompletedMultipartUpload$ = [
3,
n0,
_CMU,
0,
[_Pa],
[[() => CompletedPartList, {
[_xF]: 1,
[_xN]: _Par
}]]
];
exports.CompletedPart$ = [
3,
n0,
_CPo,
0,
[
_ETa,
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe,
_PN
],
[
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1
]
];
exports.CompleteMultipartUploadOutput$ = [
3,
n0,
_CMUO,
{ [_xN]: _CMUR },
[
_L,
_B,
_K,
_E,
_ETa,
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe,
_CT,
_SSE,
_VI,
_SSEKMSKI,
_BKE,
_RC
],
[
0,
0,
0,
[0, { [_hH]: _xae }],
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
[0, { [_hH]: _xasse }],
[0, { [_hH]: _xavi }],
[() => SSEKMSKeyId, { [_hH]: _xasseakki }],
[2, { [_hH]: _xassebke }],
[0, { [_hH]: _xarc }]
]
];
exports.CompleteMultipartUploadRequest$ = [
3,
n0,
_CMURo,
0,
[
_B,
_K,
_UI,
_MU,
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe,
_CT,
_MOS,
_RP,
_EBO,
_IM,
_INM,
_SSECA,
_SSECK,
_SSECKMD
],
[
[0, 1],
[0, 1],
[0, { [_hQ]: _uI }],
[() => exports.CompletedMultipartUpload$, {
[_hP]: 1,
[_xN]: _CMUo
}],
[0, { [_hH]: _xacc }],
[0, { [_hH]: _xacc_ }],
[0, { [_hH]: _xacc__ }],
[0, { [_hH]: _xacs }],
[0, { [_hH]: _xacs_ }],
[0, { [_hH]: _xacs__ }],
[0, { [_hH]: _xacm }],
[0, { [_hH]: _xacx }],
[0, { [_hH]: _xacx_ }],
[0, { [_hH]: _xacx__ }],
[0, { [_hH]: _xact }],
[1, { [_hH]: _xamos }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _IM_ }],
[0, { [_hH]: _INM_ }],
[0, { [_hH]: _xasseca }],
[() => SSECustomerKey, { [_hH]: _xasseck }],
[0, { [_hH]: _xasseckM }]
],
3
];
exports.Condition$ = [
3,
n0,
_Co,
0,
[_HECRE, _KPE],
[0, 0]
];
exports.ContinuationEvent$ = [
3,
n0,
_CE,
0,
[],
[]
];
exports.CopyObjectOutput$ = [
3,
n0,
_COO,
0,
[
_COR,
_E,
_CSVI,
_VI,
_SSE,
_SSECA,
_SSECKMD,
_SSEKMSKI,
_SSEKMSEC,
_BKE,
_RC
],
[
[() => exports.CopyObjectResult$, 16],
[0, { [_hH]: _xae }],
[0, { [_hH]: _xacsvi }],
[0, { [_hH]: _xavi }],
[0, { [_hH]: _xasse }],
[0, { [_hH]: _xasseca }],
[0, { [_hH]: _xasseckM }],
[() => SSEKMSKeyId, { [_hH]: _xasseakki }],
[() => SSEKMSEncryptionContext, { [_hH]: _xassec }],
[2, { [_hH]: _xassebke }],
[0, { [_hH]: _xarc }]
]
];
exports.CopyObjectRequest$ = [
3,
n0,
_CORo,
0,
[
_B,
_CS,
_K,
_ACL_,
_CC,
_CA,
_CDo,
_CEo,
_CL,
_CTo,
_CSIM,
_CSIMS,
_CSINM,
_CSIUS,
_Ex,
_GFC,
_GR,
_GRACP,
_GWACP,
_IM,
_INM,
_M,
_MD,
_TD,
_SSE,
_SC,
_WRL,
_SSECA,
_SSECK,
_SSECKMD,
_SSEKMSKI,
_SSEKMSEC,
_BKE,
_CSSSECA,
_CSSSECK,
_CSSSECKMD,
_RP,
_Tag,
_OLM,
_OLRUD,
_OLLHS,
_EBO,
_ESBO
],
[
[0, 1],
[0, { [_hH]: _xacs___ }],
[0, 1],
[0, { [_hH]: _xaa }],
[0, { [_hH]: _CC_ }],
[0, { [_hH]: _xaca }],
[0, { [_hH]: _CD_ }],
[0, { [_hH]: _CE_ }],
[0, { [_hH]: _CL_ }],
[0, { [_hH]: _CT_ }],
[0, { [_hH]: _xacsim }],
[4, { [_hH]: _xacsims }],
[0, { [_hH]: _xacsinm }],
[4, { [_hH]: _xacsius }],
[4, { [_hH]: _Ex }],
[0, { [_hH]: _xagfc }],
[0, { [_hH]: _xagr }],
[0, { [_hH]: _xagra }],
[0, { [_hH]: _xagwa }],
[0, { [_hH]: _IM_ }],
[0, { [_hH]: _INM_ }],
[128, { [_hPH]: _xam }],
[0, { [_hH]: _xamd }],
[0, { [_hH]: _xatd }],
[0, { [_hH]: _xasse }],
[0, { [_hH]: _xasc }],
[0, { [_hH]: _xawrl }],
[0, { [_hH]: _xasseca }],
[() => SSECustomerKey, { [_hH]: _xasseck }],
[0, { [_hH]: _xasseckM }],
[() => SSEKMSKeyId, { [_hH]: _xasseakki }],
[() => SSEKMSEncryptionContext, { [_hH]: _xassec }],
[2, { [_hH]: _xassebke }],
[0, { [_hH]: _xacssseca }],
[() => CopySourceSSECustomerKey, { [_hH]: _xacssseck }],
[0, { [_hH]: _xacssseckM }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xat }],
[0, { [_hH]: _xaolm }],
[5, { [_hH]: _xaolrud }],
[0, { [_hH]: _xaollh }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xasebo }]
],
3
];
exports.CopyObjectResult$ = [
3,
n0,
_COR,
0,
[
_ETa,
_LM,
_CT,
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe
],
[
0,
4,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
];
exports.CopyPartResult$ = [
3,
n0,
_CPR,
0,
[
_ETa,
_LM,
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe
],
[
0,
4,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
];
exports.CORSConfiguration$ = [
3,
n0,
_CORSC,
0,
[_CORSR],
[[() => CORSRules, {
[_xF]: 1,
[_xN]: _CORSRu
}]],
1
];
exports.CORSRule$ = [
3,
n0,
_CORSRu,
0,
[
_AM,
_AO,
_ID,
_AH,
_EH,
_MAS
],
[
[64, {
[_xF]: 1,
[_xN]: _AMl
}],
[64, {
[_xF]: 1,
[_xN]: _AOl
}],
0,
[64, {
[_xF]: 1,
[_xN]: _AHl
}],
[64, {
[_xF]: 1,
[_xN]: _EHx
}],
1
],
2
];
exports.CreateBucketConfiguration$ = [
3,
n0,
_CBC,
0,
[
_LC,
_L,
_B,
_T
],
[
0,
() => exports.LocationInfo$,
() => exports.BucketInfo$,
[() => TagSet, 0]
]
];
exports.CreateBucketMetadataConfigurationRequest$ = [
3,
n0,
_CBMCR,
0,
[
_B,
_MC,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[() => exports.MetadataConfiguration$, {
[_hP]: 1,
[_xN]: _MC
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.CreateBucketMetadataTableConfigurationRequest$ = [
3,
n0,
_CBMTCR,
0,
[
_B,
_MTC,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[() => exports.MetadataTableConfiguration$, {
[_hP]: 1,
[_xN]: _MTC
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.CreateBucketOutput$ = [
3,
n0,
_CBO,
0,
[_L, _BA],
[[0, { [_hH]: _L }], [0, { [_hH]: _xaba }]]
];
exports.CreateBucketRequest$ = [
3,
n0,
_CBR,
0,
[
_B,
_ACL_,
_CBC,
_GFC,
_GR,
_GRACP,
_GW,
_GWACP,
_OLEFB,
_OO,
_BN
],
[
[0, 1],
[0, { [_hH]: _xaa }],
[() => exports.CreateBucketConfiguration$, {
[_hP]: 1,
[_xN]: _CBC
}],
[0, { [_hH]: _xagfc }],
[0, { [_hH]: _xagr }],
[0, { [_hH]: _xagra }],
[0, { [_hH]: _xagw }],
[0, { [_hH]: _xagwa }],
[2, { [_hH]: _xabole }],
[0, { [_hH]: _xaoo }],
[0, { [_hH]: _xabn }]
],
1
];
exports.CreateMultipartUploadOutput$ = [
3,
n0,
_CMUOr,
{ [_xN]: _IMUR },
[
_ADb,
_ARI,
_B,
_K,
_UI,
_SSE,
_SSECA,
_SSECKMD,
_SSEKMSKI,
_SSEKMSEC,
_BKE,
_RC,
_CA,
_CT
],
[
[4, { [_hH]: _xaad }],
[0, { [_hH]: _xaari }],
[0, { [_xN]: _B }],
0,
0,
[0, { [_hH]: _xasse }],
[0, { [_hH]: _xasseca }],
[0, { [_hH]: _xasseckM }],
[() => SSEKMSKeyId, { [_hH]: _xasseakki }],
[() => SSEKMSEncryptionContext, { [_hH]: _xassec }],
[2, { [_hH]: _xassebke }],
[0, { [_hH]: _xarc }],
[0, { [_hH]: _xaca }],
[0, { [_hH]: _xact }]
]
];
exports.CreateMultipartUploadRequest$ = [
3,
n0,
_CMURr,
0,
[
_B,
_K,
_ACL_,
_CC,
_CDo,
_CEo,
_CL,
_CTo,
_Ex,
_GFC,
_GR,
_GRACP,
_GWACP,
_M,
_SSE,
_SC,
_WRL,
_SSECA,
_SSECK,
_SSECKMD,
_SSEKMSKI,
_SSEKMSEC,
_BKE,
_RP,
_Tag,
_OLM,
_OLRUD,
_OLLHS,
_EBO,
_CA,
_CT
],
[
[0, 1],
[0, 1],
[0, { [_hH]: _xaa }],
[0, { [_hH]: _CC_ }],
[0, { [_hH]: _CD_ }],
[0, { [_hH]: _CE_ }],
[0, { [_hH]: _CL_ }],
[0, { [_hH]: _CT_ }],
[4, { [_hH]: _Ex }],
[0, { [_hH]: _xagfc }],
[0, { [_hH]: _xagr }],
[0, { [_hH]: _xagra }],
[0, { [_hH]: _xagwa }],
[128, { [_hPH]: _xam }],
[0, { [_hH]: _xasse }],
[0, { [_hH]: _xasc }],
[0, { [_hH]: _xawrl }],
[0, { [_hH]: _xasseca }],
[() => SSECustomerKey, { [_hH]: _xasseck }],
[0, { [_hH]: _xasseckM }],
[() => SSEKMSKeyId, { [_hH]: _xasseakki }],
[() => SSEKMSEncryptionContext, { [_hH]: _xassec }],
[2, { [_hH]: _xassebke }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xat }],
[0, { [_hH]: _xaolm }],
[5, { [_hH]: _xaolrud }],
[0, { [_hH]: _xaollh }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xaca }],
[0, { [_hH]: _xact }]
],
2
];
exports.CreateSessionOutput$ = [
3,
n0,
_CSO,
{ [_xN]: _CSR },
[
_Cr,
_SSE,
_SSEKMSKI,
_SSEKMSEC,
_BKE
],
[
[() => exports.SessionCredentials$, { [_xN]: _Cr }],
[0, { [_hH]: _xasse }],
[() => SSEKMSKeyId, { [_hH]: _xasseakki }],
[() => SSEKMSEncryptionContext, { [_hH]: _xassec }],
[2, { [_hH]: _xassebke }]
],
1
];
exports.CreateSessionRequest$ = [
3,
n0,
_CSRr,
0,
[
_B,
_SM,
_SSE,
_SSEKMSKI,
_SSEKMSEC,
_BKE
],
[
[0, 1],
[0, { [_hH]: _xacsm }],
[0, { [_hH]: _xasse }],
[() => SSEKMSKeyId, { [_hH]: _xasseakki }],
[() => SSEKMSEncryptionContext, { [_hH]: _xassec }],
[2, { [_hH]: _xassebke }]
],
1
];
exports.CSVInput$ = [
3,
n0,
_CSVIn,
0,
[
_FHI,
_Com,
_QEC,
_RD,
_FD,
_QC,
_AQRD
],
[
0,
0,
0,
0,
0,
0,
2
]
];
exports.CSVOutput$ = [
3,
n0,
_CSVO,
0,
[
_QF,
_QEC,
_RD,
_FD,
_QC
],
[
0,
0,
0,
0,
0
]
];
exports.DefaultRetention$ = [
3,
n0,
_DRe,
0,
[
_Mo,
_D,
_Y
],
[
0,
1,
1
]
];
exports.Delete$ = [
3,
n0,
_De,
0,
[_Ob, _Q],
[[() => ObjectIdentifierList, {
[_xF]: 1,
[_xN]: _Obj
}], 2],
1
];
exports.DeleteBucketAnalyticsConfigurationRequest$ = [
3,
n0,
_DBACR,
0,
[
_B,
_I,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _i }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.DeleteBucketCorsRequest$ = [
3,
n0,
_DBCR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.DeleteBucketEncryptionRequest$ = [
3,
n0,
_DBER,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.DeleteBucketIntelligentTieringConfigurationRequest$ = [
3,
n0,
_DBITCR,
0,
[
_B,
_I,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _i }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.DeleteBucketInventoryConfigurationRequest$ = [
3,
n0,
_DBICR,
0,
[
_B,
_I,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _i }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.DeleteBucketLifecycleRequest$ = [
3,
n0,
_DBLR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.DeleteBucketMetadataConfigurationRequest$ = [
3,
n0,
_DBMCR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.DeleteBucketMetadataTableConfigurationRequest$ = [
3,
n0,
_DBMTCR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.DeleteBucketMetricsConfigurationRequest$ = [
3,
n0,
_DBMCRe,
0,
[
_B,
_I,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _i }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.DeleteBucketOwnershipControlsRequest$ = [
3,
n0,
_DBOCR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.DeleteBucketPolicyRequest$ = [
3,
n0,
_DBPR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.DeleteBucketReplicationRequest$ = [
3,
n0,
_DBRR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.DeleteBucketRequest$ = [
3,
n0,
_DBR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.DeleteBucketTaggingRequest$ = [
3,
n0,
_DBTR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.DeleteBucketWebsiteRequest$ = [
3,
n0,
_DBWR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.DeletedObject$ = [
3,
n0,
_DO,
0,
[
_K,
_VI,
_DM,
_DMVI
],
[
0,
0,
2,
0
]
];
exports.DeleteMarkerEntry$ = [
3,
n0,
_DME,
0,
[
_O,
_K,
_VI,
_IL,
_LM
],
[
() => exports.Owner$,
0,
0,
2,
4
]
];
exports.DeleteMarkerReplication$ = [
3,
n0,
_DMR,
0,
[_S],
[0]
];
exports.DeleteObjectOutput$ = [
3,
n0,
_DOO,
0,
[
_DM,
_VI,
_RC
],
[
[2, { [_hH]: _xadm }],
[0, { [_hH]: _xavi }],
[0, { [_hH]: _xarc }]
]
];
exports.DeleteObjectRequest$ = [
3,
n0,
_DOR,
0,
[
_B,
_K,
_MFA,
_VI,
_RP,
_BGR,
_EBO,
_IM,
_IMLMT,
_IMS
],
[
[0, 1],
[0, 1],
[0, { [_hH]: _xam_ }],
[0, { [_hQ]: _vI }],
[0, { [_hH]: _xarp }],
[2, { [_hH]: _xabgr }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _IM_ }],
[6, { [_hH]: _xaimlmt }],
[1, { [_hH]: _xaims }]
],
2
];
exports.DeleteObjectsOutput$ = [
3,
n0,
_DOOe,
{ [_xN]: _DRel },
[
_Del,
_RC,
_Er
],
[
[() => DeletedObjects, { [_xF]: 1 }],
[0, { [_hH]: _xarc }],
[() => Errors, {
[_xF]: 1,
[_xN]: _Err
}]
]
];
exports.DeleteObjectsRequest$ = [
3,
n0,
_DORe,
0,
[
_B,
_De,
_MFA,
_RP,
_BGR,
_EBO,
_CA
],
[
[0, 1],
[() => exports.Delete$, {
[_hP]: 1,
[_xN]: _De
}],
[0, { [_hH]: _xam_ }],
[0, { [_hH]: _xarp }],
[2, { [_hH]: _xabgr }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xasca }]
],
2
];
exports.DeleteObjectTaggingOutput$ = [
3,
n0,
_DOTO,
0,
[_VI],
[[0, { [_hH]: _xavi }]]
];
exports.DeleteObjectTaggingRequest$ = [
3,
n0,
_DOTR,
0,
[
_B,
_K,
_VI,
_EBO
],
[
[0, 1],
[0, 1],
[0, { [_hQ]: _vI }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.DeletePublicAccessBlockRequest$ = [
3,
n0,
_DPABR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.Destination$ = [
3,
n0,
_Des,
0,
[
_B,
_A,
_SC,
_ACT,
_EC,
_RT,
_Me
],
[
0,
0,
0,
() => exports.AccessControlTranslation$,
() => exports.EncryptionConfiguration$,
() => exports.ReplicationTime$,
() => exports.Metrics$
],
1
];
exports.DestinationResult$ = [
3,
n0,
_DRes,
0,
[
_TBT,
_TBA,
_TN
],
[
0,
0,
0
]
];
exports.Encryption$ = [
3,
n0,
_En,
0,
[
_ET,
_KMSKI,
_KMSC
],
[
0,
[() => SSEKMSKeyId, 0],
0
],
1
];
exports.EncryptionConfiguration$ = [
3,
n0,
_EC,
0,
[_RKKID],
[0]
];
exports.EndEvent$ = [
3,
n0,
_EE,
0,
[],
[]
];
exports._Error$ = [
3,
n0,
_Err,
0,
[
_K,
_VI,
_Cod,
_Mes
],
[
0,
0,
0,
0
]
];
exports.ErrorDetails$ = [
3,
n0,
_ED,
0,
[_ECr, _EM],
[0, 0]
];
exports.ErrorDocument$ = [
3,
n0,
_EDr,
0,
[_K],
[0],
1
];
exports.EventBridgeConfiguration$ = [
3,
n0,
_EBC,
0,
[],
[]
];
exports.ExistingObjectReplication$ = [
3,
n0,
_EOR,
0,
[_S],
[0],
1
];
exports.FilterRule$ = [
3,
n0,
_FR,
0,
[_N, _V],
[0, 0]
];
exports.GetBucketAbacOutput$ = [
3,
n0,
_GBAO,
0,
[_AS],
[[() => exports.AbacStatus$, 16]]
];
exports.GetBucketAbacRequest$ = [
3,
n0,
_GBAR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketAccelerateConfigurationOutput$ = [
3,
n0,
_GBACO,
{ [_xN]: _AC },
[_S, _RC],
[0, [0, { [_hH]: _xarc }]]
];
exports.GetBucketAccelerateConfigurationRequest$ = [
3,
n0,
_GBACR,
0,
[
_B,
_EBO,
_RP
],
[
[0, 1],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xarp }]
],
1
];
exports.GetBucketAclOutput$ = [
3,
n0,
_GBAOe,
{ [_xN]: _ACP },
[_O, _G],
[() => exports.Owner$, [() => Grants, { [_xN]: _ACL }]]
];
exports.GetBucketAclRequest$ = [
3,
n0,
_GBARe,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketAnalyticsConfigurationOutput$ = [
3,
n0,
_GBACOe,
0,
[_ACn],
[[() => exports.AnalyticsConfiguration$, 16]]
];
exports.GetBucketAnalyticsConfigurationRequest$ = [
3,
n0,
_GBACRe,
0,
[
_B,
_I,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _i }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.GetBucketCorsOutput$ = [
3,
n0,
_GBCO,
{ [_xN]: _CORSC },
[_CORSR],
[[() => CORSRules, {
[_xF]: 1,
[_xN]: _CORSRu
}]]
];
exports.GetBucketCorsRequest$ = [
3,
n0,
_GBCR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketEncryptionOutput$ = [
3,
n0,
_GBEO,
0,
[_SSEC],
[[() => exports.ServerSideEncryptionConfiguration$, 16]]
];
exports.GetBucketEncryptionRequest$ = [
3,
n0,
_GBER,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketIntelligentTieringConfigurationOutput$ = [
3,
n0,
_GBITCO,
0,
[_ITC],
[[() => exports.IntelligentTieringConfiguration$, 16]]
];
exports.GetBucketIntelligentTieringConfigurationRequest$ = [
3,
n0,
_GBITCR,
0,
[
_B,
_I,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _i }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.GetBucketInventoryConfigurationOutput$ = [
3,
n0,
_GBICO,
0,
[_IC],
[[() => exports.InventoryConfiguration$, 16]]
];
exports.GetBucketInventoryConfigurationRequest$ = [
3,
n0,
_GBICR,
0,
[
_B,
_I,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _i }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.GetBucketLifecycleConfigurationOutput$ = [
3,
n0,
_GBLCO,
{ [_xN]: _LCi },
[_R, _TDMOS],
[[() => LifecycleRules, {
[_xF]: 1,
[_xN]: _Ru
}], [0, { [_hH]: _xatdmos }]]
];
exports.GetBucketLifecycleConfigurationRequest$ = [
3,
n0,
_GBLCR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketLocationOutput$ = [
3,
n0,
_GBLO,
{ [_xN]: _LC },
[_LC],
[0]
];
exports.GetBucketLocationRequest$ = [
3,
n0,
_GBLR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketLoggingOutput$ = [
3,
n0,
_GBLOe,
{ [_xN]: _BLS },
[_LE],
[[() => exports.LoggingEnabled$, 0]]
];
exports.GetBucketLoggingRequest$ = [
3,
n0,
_GBLRe,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketMetadataConfigurationOutput$ = [
3,
n0,
_GBMCO,
0,
[_GBMCR],
[[() => exports.GetBucketMetadataConfigurationResult$, 16]]
];
exports.GetBucketMetadataConfigurationRequest$ = [
3,
n0,
_GBMCRe,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketMetadataConfigurationResult$ = [
3,
n0,
_GBMCR,
0,
[_MCR],
[() => exports.MetadataConfigurationResult$],
1
];
exports.GetBucketMetadataTableConfigurationOutput$ = [
3,
n0,
_GBMTCO,
0,
[_GBMTCR],
[[() => exports.GetBucketMetadataTableConfigurationResult$, 16]]
];
exports.GetBucketMetadataTableConfigurationRequest$ = [
3,
n0,
_GBMTCRe,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketMetadataTableConfigurationResult$ = [
3,
n0,
_GBMTCR,
0,
[
_MTCR,
_S,
_Err
],
[
() => exports.MetadataTableConfigurationResult$,
0,
() => exports.ErrorDetails$
],
2
];
exports.GetBucketMetricsConfigurationOutput$ = [
3,
n0,
_GBMCOe,
0,
[_MCe],
[[() => exports.MetricsConfiguration$, 16]]
];
exports.GetBucketMetricsConfigurationRequest$ = [
3,
n0,
_GBMCRet,
0,
[
_B,
_I,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _i }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.GetBucketNotificationConfigurationRequest$ = [
3,
n0,
_GBNCR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketOwnershipControlsOutput$ = [
3,
n0,
_GBOCO,
0,
[_OC],
[[() => exports.OwnershipControls$, 16]]
];
exports.GetBucketOwnershipControlsRequest$ = [
3,
n0,
_GBOCR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketPolicyOutput$ = [
3,
n0,
_GBPO,
0,
[_Po],
[[0, 16]]
];
exports.GetBucketPolicyRequest$ = [
3,
n0,
_GBPR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketPolicyStatusOutput$ = [
3,
n0,
_GBPSO,
0,
[_PS],
[[() => exports.PolicyStatus$, 16]]
];
exports.GetBucketPolicyStatusRequest$ = [
3,
n0,
_GBPSR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketReplicationOutput$ = [
3,
n0,
_GBRO,
0,
[_RCe],
[[() => exports.ReplicationConfiguration$, 16]]
];
exports.GetBucketReplicationRequest$ = [
3,
n0,
_GBRR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketRequestPaymentOutput$ = [
3,
n0,
_GBRPO,
{ [_xN]: _RPC },
[_Pay],
[0]
];
exports.GetBucketRequestPaymentRequest$ = [
3,
n0,
_GBRPR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketTaggingOutput$ = [
3,
n0,
_GBTO,
{ [_xN]: _Tag },
[_TS],
[[() => TagSet, 0]],
1
];
exports.GetBucketTaggingRequest$ = [
3,
n0,
_GBTR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketVersioningOutput$ = [
3,
n0,
_GBVO,
{ [_xN]: _VC },
[_S, _MFAD],
[0, [0, { [_xN]: _MDf }]]
];
exports.GetBucketVersioningRequest$ = [
3,
n0,
_GBVR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetBucketWebsiteOutput$ = [
3,
n0,
_GBWO,
{ [_xN]: _WC },
[
_RART,
_IDn,
_EDr,
_RR
],
[
() => exports.RedirectAllRequestsTo$,
() => exports.IndexDocument$,
() => exports.ErrorDocument$,
[() => RoutingRules, 0]
]
];
exports.GetBucketWebsiteRequest$ = [
3,
n0,
_GBWR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetObjectAclOutput$ = [
3,
n0,
_GOAO,
{ [_xN]: _ACP },
[
_O,
_G,
_RC
],
[
() => exports.Owner$,
[() => Grants, { [_xN]: _ACL }],
[0, { [_hH]: _xarc }]
]
];
exports.GetObjectAclRequest$ = [
3,
n0,
_GOAR,
0,
[
_B,
_K,
_VI,
_RP,
_EBO
],
[
[0, 1],
[0, 1],
[0, { [_hQ]: _vI }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.GetObjectAttributesOutput$ = [
3,
n0,
_GOAOe,
{ [_xN]: _GOARe },
[
_DM,
_LM,
_VI,
_RC,
_ETa,
_C,
_OP,
_SC,
_OS
],
[
[2, { [_hH]: _xadm }],
[4, { [_hH]: _LM_ }],
[0, { [_hH]: _xavi }],
[0, { [_hH]: _xarc }],
0,
() => exports.Checksum$,
[() => exports.GetObjectAttributesParts$, 0],
0,
1
]
];
exports.GetObjectAttributesParts$ = [
3,
n0,
_GOAP,
0,
[
_TPC,
_PNM,
_NPNM,
_MP,
_IT,
_Pa
],
[
[1, { [_xN]: _PC }],
0,
0,
1,
2,
[() => PartsList, {
[_xF]: 1,
[_xN]: _Par
}]
]
];
exports.GetObjectAttributesRequest$ = [
3,
n0,
_GOARet,
0,
[
_B,
_K,
_OA,
_VI,
_MP,
_PNM,
_SSECA,
_SSECK,
_SSECKMD,
_RP,
_EBO
],
[
[0, 1],
[0, 1],
[64, { [_hH]: _xaoa }],
[0, { [_hQ]: _vI }],
[1, { [_hH]: _xamp }],
[0, { [_hH]: _xapnm }],
[0, { [_hH]: _xasseca }],
[() => SSECustomerKey, { [_hH]: _xasseck }],
[0, { [_hH]: _xasseckM }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xaebo }]
],
3
];
exports.GetObjectLegalHoldOutput$ = [
3,
n0,
_GOLHO,
0,
[_LH],
[[() => exports.ObjectLockLegalHold$, {
[_hP]: 1,
[_xN]: _LH
}]]
];
exports.GetObjectLegalHoldRequest$ = [
3,
n0,
_GOLHR,
0,
[
_B,
_K,
_VI,
_RP,
_EBO
],
[
[0, 1],
[0, 1],
[0, { [_hQ]: _vI }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.GetObjectLockConfigurationOutput$ = [
3,
n0,
_GOLCO,
0,
[_OLC],
[[() => exports.ObjectLockConfiguration$, 16]]
];
exports.GetObjectLockConfigurationRequest$ = [
3,
n0,
_GOLCR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GetObjectOutput$ = [
3,
n0,
_GOO,
0,
[
_Bo,
_DM,
_AR,
_E,
_Re,
_LM,
_CLo,
_ETa,
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe,
_CT,
_MM,
_VI,
_CC,
_CDo,
_CEo,
_CL,
_CR,
_CTo,
_Ex,
_ES,
_WRL,
_SSE,
_M,
_SSECA,
_SSECKMD,
_SSEKMSKI,
_BKE,
_SC,
_RC,
_RS,
_PC,
_TC,
_OLM,
_OLRUD,
_OLLHS
],
[
[() => StreamingBlob, 16],
[2, { [_hH]: _xadm }],
[0, { [_hH]: _ar }],
[0, { [_hH]: _xae }],
[0, { [_hH]: _xar }],
[4, { [_hH]: _LM_ }],
[1, { [_hH]: _CL__ }],
[0, { [_hH]: _ETa }],
[0, { [_hH]: _xacc }],
[0, { [_hH]: _xacc_ }],
[0, { [_hH]: _xacc__ }],
[0, { [_hH]: _xacs }],
[0, { [_hH]: _xacs_ }],
[0, { [_hH]: _xacs__ }],
[0, { [_hH]: _xacm }],
[0, { [_hH]: _xacx }],
[0, { [_hH]: _xacx_ }],
[0, { [_hH]: _xacx__ }],
[0, { [_hH]: _xact }],
[1, { [_hH]: _xamm }],
[0, { [_hH]: _xavi }],
[0, { [_hH]: _CC_ }],
[0, { [_hH]: _CD_ }],
[0, { [_hH]: _CE_ }],
[0, { [_hH]: _CL_ }],
[0, { [_hH]: _CR_ }],
[0, { [_hH]: _CT_ }],
[4, { [_hH]: _Ex }],
[0, { [_hH]: _ES }],
[0, { [_hH]: _xawrl }],
[0, { [_hH]: _xasse }],
[128, { [_hPH]: _xam }],
[0, { [_hH]: _xasseca }],
[0, { [_hH]: _xasseckM }],
[() => SSEKMSKeyId, { [_hH]: _xasseakki }],
[2, { [_hH]: _xassebke }],
[0, { [_hH]: _xasc }],
[0, { [_hH]: _xarc }],
[0, { [_hH]: _xars }],
[1, { [_hH]: _xampc }],
[1, { [_hH]: _xatc }],
[0, { [_hH]: _xaolm }],
[5, { [_hH]: _xaolrud }],
[0, { [_hH]: _xaollh }]
]
];
exports.GetObjectRequest$ = [
3,
n0,
_GOR,
0,
[
_B,
_K,
_IM,
_IMSf,
_INM,
_IUS,
_Ra,
_RCC,
_RCD,
_RCE,
_RCL,
_RCT,
_RE,
_VI,
_SSECA,
_SSECK,
_SSECKMD,
_RP,
_PN,
_EBO,
_CMh
],
[
[0, 1],
[0, 1],
[0, { [_hH]: _IM_ }],
[4, { [_hH]: _IMS_ }],
[0, { [_hH]: _INM_ }],
[4, { [_hH]: _IUS_ }],
[0, { [_hH]: _Ra }],
[0, { [_hQ]: _rcc }],
[0, { [_hQ]: _rcd }],
[0, { [_hQ]: _rce }],
[0, { [_hQ]: _rcl }],
[0, { [_hQ]: _rct }],
[6, { [_hQ]: _re }],
[0, { [_hQ]: _vI }],
[0, { [_hH]: _xasseca }],
[() => SSECustomerKey, { [_hH]: _xasseck }],
[0, { [_hH]: _xasseckM }],
[0, { [_hH]: _xarp }],
[1, { [_hQ]: _pN }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xacm_ }]
],
2
];
exports.GetObjectRetentionOutput$ = [
3,
n0,
_GORO,
0,
[_Ret],
[[() => exports.ObjectLockRetention$, {
[_hP]: 1,
[_xN]: _Ret
}]]
];
exports.GetObjectRetentionRequest$ = [
3,
n0,
_GORR,
0,
[
_B,
_K,
_VI,
_RP,
_EBO
],
[
[0, 1],
[0, 1],
[0, { [_hQ]: _vI }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.GetObjectTaggingOutput$ = [
3,
n0,
_GOTO,
{ [_xN]: _Tag },
[_TS, _VI],
[[() => TagSet, 0], [0, { [_hH]: _xavi }]],
1
];
exports.GetObjectTaggingRequest$ = [
3,
n0,
_GOTR,
0,
[
_B,
_K,
_VI,
_EBO,
_RP
],
[
[0, 1],
[0, 1],
[0, { [_hQ]: _vI }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xarp }]
],
2
];
exports.GetObjectTorrentOutput$ = [
3,
n0,
_GOTOe,
0,
[_Bo, _RC],
[[() => StreamingBlob, 16], [0, { [_hH]: _xarc }]]
];
exports.GetObjectTorrentRequest$ = [
3,
n0,
_GOTRe,
0,
[
_B,
_K,
_RP,
_EBO
],
[
[0, 1],
[0, 1],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.GetPublicAccessBlockOutput$ = [
3,
n0,
_GPABO,
0,
[_PABC],
[[() => exports.PublicAccessBlockConfiguration$, 16]]
];
exports.GetPublicAccessBlockRequest$ = [
3,
n0,
_GPABR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.GlacierJobParameters$ = [
3,
n0,
_GJP,
0,
[_Ti],
[0],
1
];
exports.Grant$ = [
3,
n0,
_Gr,
0,
[_Gra, _Pe],
[[() => exports.Grantee$, { [_xNm]: [_x, _hi] }], 0]
];
exports.Grantee$ = [
3,
n0,
_Gra,
0,
[
_Ty,
_DN,
_EA,
_ID,
_URI
],
[
[0, {
[_xA]: 1,
[_xN]: _xs
}],
0,
0,
0,
0
],
1
];
exports.HeadBucketOutput$ = [
3,
n0,
_HBO,
0,
[
_BA,
_BLT,
_BLN,
_BR,
_APA
],
[
[0, { [_hH]: _xaba }],
[0, { [_hH]: _xablt }],
[0, { [_hH]: _xabln }],
[0, { [_hH]: _xabr }],
[2, { [_hH]: _xaapa }]
]
];
exports.HeadBucketRequest$ = [
3,
n0,
_HBR,
0,
[_B, _EBO],
[[0, 1], [0, { [_hH]: _xaebo }]],
1
];
exports.HeadObjectOutput$ = [
3,
n0,
_HOO,
0,
[
_DM,
_AR,
_E,
_Re,
_ASr,
_LM,
_CLo,
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe,
_CT,
_ETa,
_MM,
_VI,
_CC,
_CDo,
_CEo,
_CL,
_CTo,
_CR,
_Ex,
_ES,
_WRL,
_SSE,
_M,
_SSECA,
_SSECKMD,
_SSEKMSKI,
_BKE,
_SC,
_RC,
_RS,
_PC,
_TC,
_OLM,
_OLRUD,
_OLLHS
],
[
[2, { [_hH]: _xadm }],
[0, { [_hH]: _ar }],
[0, { [_hH]: _xae }],
[0, { [_hH]: _xar }],
[0, { [_hH]: _xaas }],
[4, { [_hH]: _LM_ }],
[1, { [_hH]: _CL__ }],
[0, { [_hH]: _xacc }],
[0, { [_hH]: _xacc_ }],
[0, { [_hH]: _xacc__ }],
[0, { [_hH]: _xacs }],
[0, { [_hH]: _xacs_ }],
[0, { [_hH]: _xacs__ }],
[0, { [_hH]: _xacm }],
[0, { [_hH]: _xacx }],
[0, { [_hH]: _xacx_ }],
[0, { [_hH]: _xacx__ }],
[0, { [_hH]: _xact }],
[0, { [_hH]: _ETa }],
[1, { [_hH]: _xamm }],
[0, { [_hH]: _xavi }],
[0, { [_hH]: _CC_ }],
[0, { [_hH]: _CD_ }],
[0, { [_hH]: _CE_ }],
[0, { [_hH]: _CL_ }],
[0, { [_hH]: _CT_ }],
[0, { [_hH]: _CR_ }],
[4, { [_hH]: _Ex }],
[0, { [_hH]: _ES }],
[0, { [_hH]: _xawrl }],
[0, { [_hH]: _xasse }],
[128, { [_hPH]: _xam }],
[0, { [_hH]: _xasseca }],
[0, { [_hH]: _xasseckM }],
[() => SSEKMSKeyId, { [_hH]: _xasseakki }],
[2, { [_hH]: _xassebke }],
[0, { [_hH]: _xasc }],
[0, { [_hH]: _xarc }],
[0, { [_hH]: _xars }],
[1, { [_hH]: _xampc }],
[1, { [_hH]: _xatc }],
[0, { [_hH]: _xaolm }],
[5, { [_hH]: _xaolrud }],
[0, { [_hH]: _xaollh }]
]
];
exports.HeadObjectRequest$ = [
3,
n0,
_HOR,
0,
[
_B,
_K,
_IM,
_IMSf,
_INM,
_IUS,
_Ra,
_RCC,
_RCD,
_RCE,
_RCL,
_RCT,
_RE,
_VI,
_SSECA,
_SSECK,
_SSECKMD,
_RP,
_PN,
_EBO,
_CMh
],
[
[0, 1],
[0, 1],
[0, { [_hH]: _IM_ }],
[4, { [_hH]: _IMS_ }],
[0, { [_hH]: _INM_ }],
[4, { [_hH]: _IUS_ }],
[0, { [_hH]: _Ra }],
[0, { [_hQ]: _rcc }],
[0, { [_hQ]: _rcd }],
[0, { [_hQ]: _rce }],
[0, { [_hQ]: _rcl }],
[0, { [_hQ]: _rct }],
[6, { [_hQ]: _re }],
[0, { [_hQ]: _vI }],
[0, { [_hH]: _xasseca }],
[() => SSECustomerKey, { [_hH]: _xasseck }],
[0, { [_hH]: _xasseckM }],
[0, { [_hH]: _xarp }],
[1, { [_hQ]: _pN }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xacm_ }]
],
2
];
exports.IndexDocument$ = [
3,
n0,
_IDn,
0,
[_Su],
[0],
1
];
exports.Initiator$ = [
3,
n0,
_In,
0,
[_ID, _DN],
[0, 0]
];
exports.InputSerialization$ = [
3,
n0,
_IS,
0,
[
_CSV,
_CTom,
_JSON,
_Parq
],
[
() => exports.CSVInput$,
0,
() => exports.JSONInput$,
() => exports.ParquetInput$
]
];
exports.IntelligentTieringAndOperator$ = [
3,
n0,
_ITAO,
0,
[_P, _T],
[0, [() => TagSet, {
[_xF]: 1,
[_xN]: _Ta
}]]
];
exports.IntelligentTieringConfiguration$ = [
3,
n0,
_ITC,
0,
[
_I,
_S,
_Tie,
_F
],
[
0,
0,
[() => TieringList, {
[_xF]: 1,
[_xN]: _Tier
}],
[() => exports.IntelligentTieringFilter$, 0]
],
3
];
exports.IntelligentTieringFilter$ = [
3,
n0,
_ITF,
0,
[
_P,
_Ta,
_An
],
[
0,
() => exports.Tag$,
[() => exports.IntelligentTieringAndOperator$, 0]
]
];
exports.InventoryConfiguration$ = [
3,
n0,
_IC,
0,
[
_Des,
_IE,
_I,
_IOV,
_Sc,
_F,
_OF
],
[
[() => exports.InventoryDestination$, 0],
2,
0,
0,
() => exports.InventorySchedule$,
() => exports.InventoryFilter$,
[() => InventoryOptionalFields, 0]
],
5
];
exports.InventoryDestination$ = [
3,
n0,
_IDnv,
0,
[_SBD],
[[() => exports.InventoryS3BucketDestination$, 0]],
1
];
exports.InventoryEncryption$ = [
3,
n0,
_IEn,
0,
[_SSES, _SSEKMS],
[[() => exports.SSES3$, { [_xN]: _SS }], [() => exports.SSEKMS$, { [_xN]: _SK }]]
];
exports.InventoryFilter$ = [
3,
n0,
_IF,
0,
[_P],
[0],
1
];
exports.InventoryS3BucketDestination$ = [
3,
n0,
_ISBD,
0,
[
_B,
_Fo,
_AI,
_P,
_En
],
[
0,
0,
0,
0,
[() => exports.InventoryEncryption$, 0]
],
2
];
exports.InventorySchedule$ = [
3,
n0,
_ISn,
0,
[_Fr],
[0],
1
];
exports.InventoryTableConfiguration$ = [
3,
n0,
_ITCn,
0,
[_CSo, _EC],
[0, () => exports.MetadataTableEncryptionConfiguration$],
1
];
exports.InventoryTableConfigurationResult$ = [
3,
n0,
_ITCR,
0,
[
_CSo,
_TSa,
_Err,
_TNa,
_TA
],
[
0,
0,
() => exports.ErrorDetails$,
0,
0
],
1
];
exports.InventoryTableConfigurationUpdates$ = [
3,
n0,
_ITCU,
0,
[_CSo, _EC],
[0, () => exports.MetadataTableEncryptionConfiguration$],
1
];
exports.JournalTableConfiguration$ = [
3,
n0,
_JTC,
0,
[_REe, _EC],
[() => exports.RecordExpiration$, () => exports.MetadataTableEncryptionConfiguration$],
1
];
exports.JournalTableConfigurationResult$ = [
3,
n0,
_JTCR,
0,
[
_TSa,
_TNa,
_REe,
_Err,
_TA
],
[
0,
0,
() => exports.RecordExpiration$,
() => exports.ErrorDetails$,
0
],
3
];
exports.JournalTableConfigurationUpdates$ = [
3,
n0,
_JTCU,
0,
[_REe],
[() => exports.RecordExpiration$],
1
];
exports.JSONInput$ = [
3,
n0,
_JSONI,
0,
[_Ty],
[0]
];
exports.JSONOutput$ = [
3,
n0,
_JSONO,
0,
[_RD],
[0]
];
exports.LambdaFunctionConfiguration$ = [
3,
n0,
_LFC,
0,
[
_LFA,
_Ev,
_I,
_F
],
[
[0, { [_xN]: _CF }],
[64, {
[_xF]: 1,
[_xN]: _Eve
}],
0,
[() => exports.NotificationConfigurationFilter$, 0]
],
2
];
exports.LifecycleExpiration$ = [
3,
n0,
_LEi,
0,
[
_Da,
_D,
_EODM
],
[
5,
1,
2
]
];
exports.LifecycleRule$ = [
3,
n0,
_LR,
0,
[
_S,
_E,
_ID,
_P,
_F,
_Tr,
_NVT,
_NVE,
_AIMU
],
[
0,
() => exports.LifecycleExpiration$,
0,
0,
[() => exports.LifecycleRuleFilter$, 0],
[() => TransitionList, {
[_xF]: 1,
[_xN]: _Tra
}],
[() => NoncurrentVersionTransitionList, {
[_xF]: 1,
[_xN]: _NVTo
}],
() => exports.NoncurrentVersionExpiration$,
() => exports.AbortIncompleteMultipartUpload$
],
1
];
exports.LifecycleRuleAndOperator$ = [
3,
n0,
_LRAO,
0,
[
_P,
_T,
_OSGT,
_OSLT
],
[
0,
[() => TagSet, {
[_xF]: 1,
[_xN]: _Ta
}],
1,
1
]
];
exports.LifecycleRuleFilter$ = [
3,
n0,
_LRF,
0,
[
_P,
_Ta,
_OSGT,
_OSLT,
_An
],
[
0,
() => exports.Tag$,
1,
1,
[() => exports.LifecycleRuleAndOperator$, 0]
]
];
exports.ListBucketAnalyticsConfigurationsOutput$ = [
3,
n0,
_LBACO,
{ [_xN]: _LBACR },
[
_IT,
_CTon,
_NCT,
_ACLn
],
[
2,
0,
0,
[() => AnalyticsConfigurationList, {
[_xF]: 1,
[_xN]: _ACn
}]
]
];
exports.ListBucketAnalyticsConfigurationsRequest$ = [
3,
n0,
_LBACRi,
0,
[
_B,
_CTon,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _ct }],
[0, { [_hH]: _xaebo }]
],
1
];
exports.ListBucketIntelligentTieringConfigurationsOutput$ = [
3,
n0,
_LBITCO,
0,
[
_IT,
_CTon,
_NCT,
_ITCL
],
[
2,
0,
0,
[() => IntelligentTieringConfigurationList, {
[_xF]: 1,
[_xN]: _ITC
}]
]
];
exports.ListBucketIntelligentTieringConfigurationsRequest$ = [
3,
n0,
_LBITCR,
0,
[
_B,
_CTon,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _ct }],
[0, { [_hH]: _xaebo }]
],
1
];
exports.ListBucketInventoryConfigurationsOutput$ = [
3,
n0,
_LBICO,
{ [_xN]: _LICR },
[
_CTon,
_ICL,
_IT,
_NCT
],
[
0,
[() => InventoryConfigurationList, {
[_xF]: 1,
[_xN]: _IC
}],
2,
0
]
];
exports.ListBucketInventoryConfigurationsRequest$ = [
3,
n0,
_LBICR,
0,
[
_B,
_CTon,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _ct }],
[0, { [_hH]: _xaebo }]
],
1
];
exports.ListBucketMetricsConfigurationsOutput$ = [
3,
n0,
_LBMCO,
{ [_xN]: _LMCR },
[
_IT,
_CTon,
_NCT,
_MCL
],
[
2,
0,
0,
[() => MetricsConfigurationList, {
[_xF]: 1,
[_xN]: _MCe
}]
]
];
exports.ListBucketMetricsConfigurationsRequest$ = [
3,
n0,
_LBMCR,
0,
[
_B,
_CTon,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _ct }],
[0, { [_hH]: _xaebo }]
],
1
];
exports.ListBucketsOutput$ = [
3,
n0,
_LBO,
{ [_xN]: _LAMBR },
[
_Bu,
_O,
_CTon,
_P
],
[
[() => Buckets, 0],
() => exports.Owner$,
0,
0
]
];
exports.ListBucketsRequest$ = [
3,
n0,
_LBR,
0,
[
_MB,
_CTon,
_P,
_BR
],
[
[1, { [_hQ]: _mb }],
[0, { [_hQ]: _ct }],
[0, { [_hQ]: _p }],
[0, { [_hQ]: _br }]
]
];
exports.ListDirectoryBucketsOutput$ = [
3,
n0,
_LDBO,
{ [_xN]: _LAMDBR },
[_Bu, _CTon],
[[() => Buckets, 0], 0]
];
exports.ListDirectoryBucketsRequest$ = [
3,
n0,
_LDBR,
0,
[_CTon, _MDB],
[[0, { [_hQ]: _ct }], [1, { [_hQ]: _mdb }]]
];
exports.ListMultipartUploadsOutput$ = [
3,
n0,
_LMUO,
{ [_xN]: _LMUR },
[
_B,
_KM,
_UIM,
_NKM,
_P,
_Deli,
_NUIM,
_MUa,
_IT,
_U,
_CPom,
_ETn,
_RC
],
[
0,
0,
0,
0,
0,
0,
0,
1,
2,
[() => MultipartUploadList, {
[_xF]: 1,
[_xN]: _Up
}],
[() => CommonPrefixList, { [_xF]: 1 }],
0,
[0, { [_hH]: _xarc }]
]
];
exports.ListMultipartUploadsRequest$ = [
3,
n0,
_LMURi,
0,
[
_B,
_Deli,
_ETn,
_KM,
_MUa,
_P,
_UIM,
_EBO,
_RP
],
[
[0, 1],
[0, { [_hQ]: _d }],
[0, { [_hQ]: _et }],
[0, { [_hQ]: _km }],
[1, { [_hQ]: _mu }],
[0, { [_hQ]: _p }],
[0, { [_hQ]: _uim }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xarp }]
],
1
];
exports.ListObjectsOutput$ = [
3,
n0,
_LOO,
{ [_xN]: _LBRi },
[
_IT,
_Ma,
_NM,
_Con,
_N,
_P,
_Deli,
_MK,
_CPom,
_ETn,
_RC
],
[
2,
0,
0,
[() => ObjectList, { [_xF]: 1 }],
0,
0,
0,
1,
[() => CommonPrefixList, { [_xF]: 1 }],
0,
[0, { [_hH]: _xarc }]
]
];
exports.ListObjectsRequest$ = [
3,
n0,
_LOR,
0,
[
_B,
_Deli,
_ETn,
_Ma,
_MK,
_P,
_RP,
_EBO,
_OOA
],
[
[0, 1],
[0, { [_hQ]: _d }],
[0, { [_hQ]: _et }],
[0, { [_hQ]: _m }],
[1, { [_hQ]: _mk }],
[0, { [_hQ]: _p }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xaebo }],
[64, { [_hH]: _xaooa }]
],
1
];
exports.ListObjectsV2Output$ = [
3,
n0,
_LOVO,
{ [_xN]: _LBRi },
[
_IT,
_Con,
_N,
_P,
_Deli,
_MK,
_CPom,
_ETn,
_KC,
_CTon,
_NCT,
_SA,
_RC
],
[
2,
[() => ObjectList, { [_xF]: 1 }],
0,
0,
0,
1,
[() => CommonPrefixList, { [_xF]: 1 }],
0,
1,
0,
0,
0,
[0, { [_hH]: _xarc }]
]
];
exports.ListObjectsV2Request$ = [
3,
n0,
_LOVR,
0,
[
_B,
_Deli,
_ETn,
_MK,
_P,
_CTon,
_FO,
_SA,
_RP,
_EBO,
_OOA
],
[
[0, 1],
[0, { [_hQ]: _d }],
[0, { [_hQ]: _et }],
[1, { [_hQ]: _mk }],
[0, { [_hQ]: _p }],
[0, { [_hQ]: _ct }],
[2, { [_hQ]: _fo }],
[0, { [_hQ]: _sa }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xaebo }],
[64, { [_hH]: _xaooa }]
],
1
];
exports.ListObjectVersionsOutput$ = [
3,
n0,
_LOVOi,
{ [_xN]: _LVR },
[
_IT,
_KM,
_VIM,
_NKM,
_NVIM,
_Ve,
_DMe,
_N,
_P,
_Deli,
_MK,
_CPom,
_ETn,
_RC
],
[
2,
0,
0,
0,
0,
[() => ObjectVersionList, {
[_xF]: 1,
[_xN]: _Ver
}],
[() => DeleteMarkers, {
[_xF]: 1,
[_xN]: _DM
}],
0,
0,
0,
1,
[() => CommonPrefixList, { [_xF]: 1 }],
0,
[0, { [_hH]: _xarc }]
]
];
exports.ListObjectVersionsRequest$ = [
3,
n0,
_LOVRi,
0,
[
_B,
_Deli,
_ETn,
_KM,
_MK,
_P,
_VIM,
_EBO,
_RP,
_OOA
],
[
[0, 1],
[0, { [_hQ]: _d }],
[0, { [_hQ]: _et }],
[0, { [_hQ]: _km }],
[1, { [_hQ]: _mk }],
[0, { [_hQ]: _p }],
[0, { [_hQ]: _vim }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xarp }],
[64, { [_hH]: _xaooa }]
],
1
];
exports.ListPartsOutput$ = [
3,
n0,
_LPO,
{ [_xN]: _LPR },
[
_ADb,
_ARI,
_B,
_K,
_UI,
_PNM,
_NPNM,
_MP,
_IT,
_Pa,
_In,
_O,
_SC,
_RC,
_CA,
_CT
],
[
[4, { [_hH]: _xaad }],
[0, { [_hH]: _xaari }],
0,
0,
0,
0,
0,
1,
2,
[() => Parts, {
[_xF]: 1,
[_xN]: _Par
}],
() => exports.Initiator$,
() => exports.Owner$,
0,
[0, { [_hH]: _xarc }],
0,
0
]
];
exports.ListPartsRequest$ = [
3,
n0,
_LPRi,
0,
[
_B,
_K,
_UI,
_MP,
_PNM,
_RP,
_EBO,
_SSECA,
_SSECK,
_SSECKMD
],
[
[0, 1],
[0, 1],
[0, { [_hQ]: _uI }],
[1, { [_hQ]: _mp }],
[0, { [_hQ]: _pnm }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xasseca }],
[() => SSECustomerKey, { [_hH]: _xasseck }],
[0, { [_hH]: _xasseckM }]
],
3
];
exports.LocationInfo$ = [
3,
n0,
_LI,
0,
[_Ty, _N],
[0, 0]
];
exports.LoggingEnabled$ = [
3,
n0,
_LE,
0,
[
_TB,
_TP,
_TG,
_TOKF
],
[
0,
0,
[() => TargetGrants, 0],
[() => exports.TargetObjectKeyFormat$, 0]
],
2
];
exports.MetadataConfiguration$ = [
3,
n0,
_MC,
0,
[_JTC, _ITCn],
[() => exports.JournalTableConfiguration$, () => exports.InventoryTableConfiguration$],
1
];
exports.MetadataConfigurationResult$ = [
3,
n0,
_MCR,
0,
[
_DRes,
_JTCR,
_ITCR
],
[
() => exports.DestinationResult$,
() => exports.JournalTableConfigurationResult$,
() => exports.InventoryTableConfigurationResult$
],
1
];
exports.MetadataEntry$ = [
3,
n0,
_ME,
0,
[_N, _V],
[0, 0]
];
exports.MetadataTableConfiguration$ = [
3,
n0,
_MTC,
0,
[_STD],
[() => exports.S3TablesDestination$],
1
];
exports.MetadataTableConfigurationResult$ = [
3,
n0,
_MTCR,
0,
[_STDR],
[() => exports.S3TablesDestinationResult$],
1
];
exports.MetadataTableEncryptionConfiguration$ = [
3,
n0,
_MTEC,
0,
[_SAs, _KKA],
[0, 0],
1
];
exports.Metrics$ = [
3,
n0,
_Me,
0,
[_S, _ETv],
[0, () => exports.ReplicationTimeValue$],
1
];
exports.MetricsAndOperator$ = [
3,
n0,
_MAO,
0,
[
_P,
_T,
_APAc
],
[
0,
[() => TagSet, {
[_xF]: 1,
[_xN]: _Ta
}],
0
]
];
exports.MetricsConfiguration$ = [
3,
n0,
_MCe,
0,
[_I, _F],
[0, [() => exports.MetricsFilter$, 0]],
1
];
exports.MultipartUpload$ = [
3,
n0,
_MU,
0,
[
_UI,
_K,
_Ini,
_SC,
_O,
_In,
_CA,
_CT
],
[
0,
0,
4,
0,
() => exports.Owner$,
() => exports.Initiator$,
0,
0
]
];
exports.NoncurrentVersionExpiration$ = [
3,
n0,
_NVE,
0,
[_ND, _NNV],
[1, 1]
];
exports.NoncurrentVersionTransition$ = [
3,
n0,
_NVTo,
0,
[
_ND,
_SC,
_NNV
],
[
1,
0,
1
]
];
exports.NotificationConfiguration$ = [
3,
n0,
_NC,
0,
[
_TCo,
_QCu,
_LFCa,
_EBC
],
[
[() => TopicConfigurationList, {
[_xF]: 1,
[_xN]: _TCop
}],
[() => QueueConfigurationList, {
[_xF]: 1,
[_xN]: _QCue
}],
[() => LambdaFunctionConfigurationList, {
[_xF]: 1,
[_xN]: _CFC
}],
() => exports.EventBridgeConfiguration$
]
];
exports.NotificationConfigurationFilter$ = [
3,
n0,
_NCF,
0,
[_K],
[[() => exports.S3KeyFilter$, { [_xN]: _SKe }]]
];
exports._Object$ = [
3,
n0,
_Obj,
0,
[
_K,
_LM,
_ETa,
_CA,
_CT,
_Si,
_SC,
_O,
_RSe
],
[
0,
4,
0,
[64, { [_xF]: 1 }],
0,
1,
0,
() => exports.Owner$,
() => exports.RestoreStatus$
]
];
exports.ObjectIdentifier$ = [
3,
n0,
_OI,
0,
[
_K,
_VI,
_ETa,
_LMT,
_Si
],
[
0,
0,
0,
6,
1
],
1
];
exports.ObjectLockConfiguration$ = [
3,
n0,
_OLC,
0,
[_OLE, _Ru],
[0, () => exports.ObjectLockRule$]
];
exports.ObjectLockLegalHold$ = [
3,
n0,
_OLLH,
0,
[_S],
[0]
];
exports.ObjectLockRetention$ = [
3,
n0,
_OLR,
0,
[_Mo, _RUD],
[0, 5]
];
exports.ObjectLockRule$ = [
3,
n0,
_OLRb,
0,
[_DRe],
[() => exports.DefaultRetention$]
];
exports.ObjectPart$ = [
3,
n0,
_OPb,
0,
[
_PN,
_Si,
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe
],
[
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
];
exports.ObjectVersion$ = [
3,
n0,
_OV,
0,
[
_ETa,
_CA,
_CT,
_Si,
_SC,
_K,
_VI,
_IL,
_LM,
_O,
_RSe
],
[
0,
[64, { [_xF]: 1 }],
0,
1,
0,
0,
0,
2,
4,
() => exports.Owner$,
() => exports.RestoreStatus$
]
];
exports.OutputLocation$ = [
3,
n0,
_OL,
0,
[_S_],
[[() => exports.S3Location$, 0]]
];
exports.OutputSerialization$ = [
3,
n0,
_OSu,
0,
[_CSV, _JSON],
[() => exports.CSVOutput$, () => exports.JSONOutput$]
];
exports.Owner$ = [
3,
n0,
_O,
0,
[_DN, _ID],
[0, 0]
];
exports.OwnershipControls$ = [
3,
n0,
_OC,
0,
[_R],
[[() => OwnershipControlsRules, {
[_xF]: 1,
[_xN]: _Ru
}]],
1
];
exports.OwnershipControlsRule$ = [
3,
n0,
_OCR,
0,
[_OO],
[0],
1
];
exports.ParquetInput$ = [
3,
n0,
_PI,
0,
[],
[]
];
exports.Part$ = [
3,
n0,
_Par,
0,
[
_PN,
_LM,
_ETa,
_Si,
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe
],
[
1,
4,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
];
exports.PartitionedPrefix$ = [
3,
n0,
_PP,
{ [_xN]: _PP },
[_PDS],
[0]
];
exports.PolicyStatus$ = [
3,
n0,
_PS,
0,
[_IP],
[[2, { [_xN]: _IP }]]
];
exports.Progress$ = [
3,
n0,
_Pr,
0,
[
_BS,
_BP,
_BRy
],
[
1,
1,
1
]
];
exports.ProgressEvent$ = [
3,
n0,
_PE,
0,
[_Det],
[[() => exports.Progress$, { [_eP]: 1 }]]
];
exports.PublicAccessBlockConfiguration$ = [
3,
n0,
_PABC,
0,
[
_BPA,
_IPA,
_BPP,
_RPB
],
[
[2, { [_xN]: _BPA }],
[2, { [_xN]: _IPA }],
[2, { [_xN]: _BPP }],
[2, { [_xN]: _RPB }]
]
];
exports.PutBucketAbacRequest$ = [
3,
n0,
_PBAR,
0,
[
_B,
_AS,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[() => exports.AbacStatus$, {
[_hP]: 1,
[_xN]: _AS
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.PutBucketAccelerateConfigurationRequest$ = [
3,
n0,
_PBACR,
0,
[
_B,
_AC,
_EBO,
_CA
],
[
[0, 1],
[() => exports.AccelerateConfiguration$, {
[_hP]: 1,
[_xN]: _AC
}],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xasca }]
],
2
];
exports.PutBucketAclRequest$ = [
3,
n0,
_PBARu,
0,
[
_B,
_ACL_,
_ACP,
_CMDo,
_CA,
_GFC,
_GR,
_GRACP,
_GW,
_GWACP,
_EBO
],
[
[0, 1],
[0, { [_hH]: _xaa }],
[() => exports.AccessControlPolicy$, {
[_hP]: 1,
[_xN]: _ACP
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xagfc }],
[0, { [_hH]: _xagr }],
[0, { [_hH]: _xagra }],
[0, { [_hH]: _xagw }],
[0, { [_hH]: _xagwa }],
[0, { [_hH]: _xaebo }]
],
1
];
exports.PutBucketAnalyticsConfigurationRequest$ = [
3,
n0,
_PBACRu,
0,
[
_B,
_I,
_ACn,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _i }],
[() => exports.AnalyticsConfiguration$, {
[_hP]: 1,
[_xN]: _ACn
}],
[0, { [_hH]: _xaebo }]
],
3
];
exports.PutBucketCorsRequest$ = [
3,
n0,
_PBCR,
0,
[
_B,
_CORSC,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[() => exports.CORSConfiguration$, {
[_hP]: 1,
[_xN]: _CORSC
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.PutBucketEncryptionRequest$ = [
3,
n0,
_PBER,
0,
[
_B,
_SSEC,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[() => exports.ServerSideEncryptionConfiguration$, {
[_hP]: 1,
[_xN]: _SSEC
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.PutBucketIntelligentTieringConfigurationRequest$ = [
3,
n0,
_PBITCR,
0,
[
_B,
_I,
_ITC,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _i }],
[() => exports.IntelligentTieringConfiguration$, {
[_hP]: 1,
[_xN]: _ITC
}],
[0, { [_hH]: _xaebo }]
],
3
];
exports.PutBucketInventoryConfigurationRequest$ = [
3,
n0,
_PBICR,
0,
[
_B,
_I,
_IC,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _i }],
[() => exports.InventoryConfiguration$, {
[_hP]: 1,
[_xN]: _IC
}],
[0, { [_hH]: _xaebo }]
],
3
];
exports.PutBucketLifecycleConfigurationOutput$ = [
3,
n0,
_PBLCO,
0,
[_TDMOS],
[[0, { [_hH]: _xatdmos }]]
];
exports.PutBucketLifecycleConfigurationRequest$ = [
3,
n0,
_PBLCR,
0,
[
_B,
_CA,
_LCi,
_EBO,
_TDMOS
],
[
[0, 1],
[0, { [_hH]: _xasca }],
[() => exports.BucketLifecycleConfiguration$, {
[_hP]: 1,
[_xN]: _LCi
}],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xatdmos }]
],
1
];
exports.PutBucketLoggingRequest$ = [
3,
n0,
_PBLR,
0,
[
_B,
_BLS,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[() => exports.BucketLoggingStatus$, {
[_hP]: 1,
[_xN]: _BLS
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.PutBucketMetricsConfigurationRequest$ = [
3,
n0,
_PBMCR,
0,
[
_B,
_I,
_MCe,
_EBO
],
[
[0, 1],
[0, { [_hQ]: _i }],
[() => exports.MetricsConfiguration$, {
[_hP]: 1,
[_xN]: _MCe
}],
[0, { [_hH]: _xaebo }]
],
3
];
exports.PutBucketNotificationConfigurationRequest$ = [
3,
n0,
_PBNCR,
0,
[
_B,
_NC,
_EBO,
_SDV
],
[
[0, 1],
[() => exports.NotificationConfiguration$, {
[_hP]: 1,
[_xN]: _NC
}],
[0, { [_hH]: _xaebo }],
[2, { [_hH]: _xasdv }]
],
2
];
exports.PutBucketOwnershipControlsRequest$ = [
3,
n0,
_PBOCR,
0,
[
_B,
_OC,
_CMDo,
_EBO,
_CA
],
[
[0, 1],
[() => exports.OwnershipControls$, {
[_hP]: 1,
[_xN]: _OC
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xasca }]
],
2
];
exports.PutBucketPolicyRequest$ = [
3,
n0,
_PBPR,
0,
[
_B,
_Po,
_CMDo,
_CA,
_CRSBA,
_EBO
],
[
[0, 1],
[0, 16],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[2, { [_hH]: _xacrsba }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.PutBucketReplicationRequest$ = [
3,
n0,
_PBRR,
0,
[
_B,
_RCe,
_CMDo,
_CA,
_To,
_EBO
],
[
[0, 1],
[() => exports.ReplicationConfiguration$, {
[_hP]: 1,
[_xN]: _RCe
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xabolt }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.PutBucketRequestPaymentRequest$ = [
3,
n0,
_PBRPR,
0,
[
_B,
_RPC,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[() => exports.RequestPaymentConfiguration$, {
[_hP]: 1,
[_xN]: _RPC
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.PutBucketTaggingRequest$ = [
3,
n0,
_PBTR,
0,
[
_B,
_Tag,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[() => exports.Tagging$, {
[_hP]: 1,
[_xN]: _Tag
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.PutBucketVersioningRequest$ = [
3,
n0,
_PBVR,
0,
[
_B,
_VC,
_CMDo,
_CA,
_MFA,
_EBO
],
[
[0, 1],
[() => exports.VersioningConfiguration$, {
[_hP]: 1,
[_xN]: _VC
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xam_ }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.PutBucketWebsiteRequest$ = [
3,
n0,
_PBWR,
0,
[
_B,
_WC,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[() => exports.WebsiteConfiguration$, {
[_hP]: 1,
[_xN]: _WC
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.PutObjectAclOutput$ = [
3,
n0,
_POAO,
0,
[_RC],
[[0, { [_hH]: _xarc }]]
];
exports.PutObjectAclRequest$ = [
3,
n0,
_POAR,
0,
[
_B,
_K,
_ACL_,
_ACP,
_CMDo,
_CA,
_GFC,
_GR,
_GRACP,
_GW,
_GWACP,
_RP,
_VI,
_EBO
],
[
[0, 1],
[0, 1],
[0, { [_hH]: _xaa }],
[() => exports.AccessControlPolicy$, {
[_hP]: 1,
[_xN]: _ACP
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xagfc }],
[0, { [_hH]: _xagr }],
[0, { [_hH]: _xagra }],
[0, { [_hH]: _xagw }],
[0, { [_hH]: _xagwa }],
[0, { [_hH]: _xarp }],
[0, { [_hQ]: _vI }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.PutObjectLegalHoldOutput$ = [
3,
n0,
_POLHO,
0,
[_RC],
[[0, { [_hH]: _xarc }]]
];
exports.PutObjectLegalHoldRequest$ = [
3,
n0,
_POLHR,
0,
[
_B,
_K,
_LH,
_RP,
_VI,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[0, 1],
[() => exports.ObjectLockLegalHold$, {
[_hP]: 1,
[_xN]: _LH
}],
[0, { [_hH]: _xarp }],
[0, { [_hQ]: _vI }],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.PutObjectLockConfigurationOutput$ = [
3,
n0,
_POLCO,
0,
[_RC],
[[0, { [_hH]: _xarc }]]
];
exports.PutObjectLockConfigurationRequest$ = [
3,
n0,
_POLCR,
0,
[
_B,
_OLC,
_RP,
_To,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[() => exports.ObjectLockConfiguration$, {
[_hP]: 1,
[_xN]: _OLC
}],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xabolt }],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
1
];
exports.PutObjectOutput$ = [
3,
n0,
_POO,
0,
[
_E,
_ETa,
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe,
_CT,
_SSE,
_VI,
_SSECA,
_SSECKMD,
_SSEKMSKI,
_SSEKMSEC,
_BKE,
_Si,
_RC
],
[
[0, { [_hH]: _xae }],
[0, { [_hH]: _ETa }],
[0, { [_hH]: _xacc }],
[0, { [_hH]: _xacc_ }],
[0, { [_hH]: _xacc__ }],
[0, { [_hH]: _xacs }],
[0, { [_hH]: _xacs_ }],
[0, { [_hH]: _xacs__ }],
[0, { [_hH]: _xacm }],
[0, { [_hH]: _xacx }],
[0, { [_hH]: _xacx_ }],
[0, { [_hH]: _xacx__ }],
[0, { [_hH]: _xact }],
[0, { [_hH]: _xasse }],
[0, { [_hH]: _xavi }],
[0, { [_hH]: _xasseca }],
[0, { [_hH]: _xasseckM }],
[() => SSEKMSKeyId, { [_hH]: _xasseakki }],
[() => SSEKMSEncryptionContext, { [_hH]: _xassec }],
[2, { [_hH]: _xassebke }],
[1, { [_hH]: _xaos }],
[0, { [_hH]: _xarc }]
]
];
exports.PutObjectRequest$ = [
3,
n0,
_POR,
0,
[
_B,
_K,
_ACL_,
_Bo,
_CC,
_CDo,
_CEo,
_CL,
_CLo,
_CMDo,
_CTo,
_CA,
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe,
_Ex,
_IM,
_INM,
_GFC,
_GR,
_GRACP,
_GWACP,
_WOB,
_M,
_SSE,
_SC,
_WRL,
_SSECA,
_SSECK,
_SSECKMD,
_SSEKMSKI,
_SSEKMSEC,
_BKE,
_RP,
_Tag,
_OLM,
_OLRUD,
_OLLHS,
_EBO
],
[
[0, 1],
[0, 1],
[0, { [_hH]: _xaa }],
[() => StreamingBlob, 16],
[0, { [_hH]: _CC_ }],
[0, { [_hH]: _CD_ }],
[0, { [_hH]: _CE_ }],
[0, { [_hH]: _CL_ }],
[1, { [_hH]: _CL__ }],
[0, { [_hH]: _CM }],
[0, { [_hH]: _CT_ }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xacc }],
[0, { [_hH]: _xacc_ }],
[0, { [_hH]: _xacc__ }],
[0, { [_hH]: _xacs }],
[0, { [_hH]: _xacs_ }],
[0, { [_hH]: _xacs__ }],
[0, { [_hH]: _xacm }],
[0, { [_hH]: _xacx }],
[0, { [_hH]: _xacx_ }],
[0, { [_hH]: _xacx__ }],
[4, { [_hH]: _Ex }],
[0, { [_hH]: _IM_ }],
[0, { [_hH]: _INM_ }],
[0, { [_hH]: _xagfc }],
[0, { [_hH]: _xagr }],
[0, { [_hH]: _xagra }],
[0, { [_hH]: _xagwa }],
[1, { [_hH]: _xawob }],
[128, { [_hPH]: _xam }],
[0, { [_hH]: _xasse }],
[0, { [_hH]: _xasc }],
[0, { [_hH]: _xawrl }],
[0, { [_hH]: _xasseca }],
[() => SSECustomerKey, { [_hH]: _xasseck }],
[0, { [_hH]: _xasseckM }],
[() => SSEKMSKeyId, { [_hH]: _xasseakki }],
[() => SSEKMSEncryptionContext, { [_hH]: _xassec }],
[2, { [_hH]: _xassebke }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xat }],
[0, { [_hH]: _xaolm }],
[5, { [_hH]: _xaolrud }],
[0, { [_hH]: _xaollh }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.PutObjectRetentionOutput$ = [
3,
n0,
_PORO,
0,
[_RC],
[[0, { [_hH]: _xarc }]]
];
exports.PutObjectRetentionRequest$ = [
3,
n0,
_PORR,
0,
[
_B,
_K,
_Ret,
_RP,
_VI,
_BGR,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[0, 1],
[() => exports.ObjectLockRetention$, {
[_hP]: 1,
[_xN]: _Ret
}],
[0, { [_hH]: _xarp }],
[0, { [_hQ]: _vI }],
[2, { [_hH]: _xabgr }],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.PutObjectTaggingOutput$ = [
3,
n0,
_POTO,
0,
[_VI],
[[0, { [_hH]: _xavi }]]
];
exports.PutObjectTaggingRequest$ = [
3,
n0,
_POTR,
0,
[
_B,
_K,
_Tag,
_VI,
_CMDo,
_CA,
_EBO,
_RP
],
[
[0, 1],
[0, 1],
[() => exports.Tagging$, {
[_hP]: 1,
[_xN]: _Tag
}],
[0, { [_hQ]: _vI }],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xarp }]
],
3
];
exports.PutPublicAccessBlockRequest$ = [
3,
n0,
_PPABR,
0,
[
_B,
_PABC,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[() => exports.PublicAccessBlockConfiguration$, {
[_hP]: 1,
[_xN]: _PABC
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.QueueConfiguration$ = [
3,
n0,
_QCue,
0,
[
_QA,
_Ev,
_I,
_F
],
[
[0, { [_xN]: _Qu }],
[64, {
[_xF]: 1,
[_xN]: _Eve
}],
0,
[() => exports.NotificationConfigurationFilter$, 0]
],
2
];
exports.RecordExpiration$ = [
3,
n0,
_REe,
0,
[_E, _D],
[0, 1],
1
];
exports.RecordsEvent$ = [
3,
n0,
_REec,
0,
[_Payl],
[[21, { [_eP]: 1 }]]
];
exports.Redirect$ = [
3,
n0,
_Red,
0,
[
_HN,
_HRC,
_Pro,
_RKPW,
_RKW
],
[
0,
0,
0,
0,
0
]
];
exports.RedirectAllRequestsTo$ = [
3,
n0,
_RART,
0,
[_HN, _Pro],
[0, 0],
1
];
exports.RenameObjectOutput$ = [
3,
n0,
_ROO,
0,
[],
[]
];
exports.RenameObjectRequest$ = [
3,
n0,
_ROR,
0,
[
_B,
_K,
_RSen,
_DIM,
_DINM,
_DIMS,
_DIUS,
_SIM,
_SINM,
_SIMS,
_SIUS,
_CTl
],
[
[0, 1],
[0, 1],
[0, { [_hH]: _xars_ }],
[0, { [_hH]: _IM_ }],
[0, { [_hH]: _INM_ }],
[4, { [_hH]: _IMS_ }],
[4, { [_hH]: _IUS_ }],
[0, { [_hH]: _xarsim }],
[0, { [_hH]: _xarsinm }],
[6, { [_hH]: _xarsims }],
[6, { [_hH]: _xarsius }],
[0, {
[_hH]: _xact_,
[_iT]: 1
}]
],
3
];
exports.ReplicaModifications$ = [
3,
n0,
_RM,
0,
[_S],
[0],
1
];
exports.ReplicationConfiguration$ = [
3,
n0,
_RCe,
0,
[_Ro, _R],
[0, [() => ReplicationRules, {
[_xF]: 1,
[_xN]: _Ru
}]],
2
];
exports.ReplicationRule$ = [
3,
n0,
_RRe,
0,
[
_S,
_Des,
_ID,
_Pri,
_P,
_F,
_SSC,
_EOR,
_DMR
],
[
0,
() => exports.Destination$,
0,
1,
0,
[() => exports.ReplicationRuleFilter$, 0],
() => exports.SourceSelectionCriteria$,
() => exports.ExistingObjectReplication$,
() => exports.DeleteMarkerReplication$
],
2
];
exports.ReplicationRuleAndOperator$ = [
3,
n0,
_RRAO,
0,
[_P, _T],
[0, [() => TagSet, {
[_xF]: 1,
[_xN]: _Ta
}]]
];
exports.ReplicationRuleFilter$ = [
3,
n0,
_RRF,
0,
[
_P,
_Ta,
_An
],
[
0,
() => exports.Tag$,
[() => exports.ReplicationRuleAndOperator$, 0]
]
];
exports.ReplicationTime$ = [
3,
n0,
_RT,
0,
[_S, _Tim],
[0, () => exports.ReplicationTimeValue$],
2
];
exports.ReplicationTimeValue$ = [
3,
n0,
_RTV,
0,
[_Mi],
[1]
];
exports.RequestPaymentConfiguration$ = [
3,
n0,
_RPC,
0,
[_Pay],
[0],
1
];
exports.RequestProgress$ = [
3,
n0,
_RPe,
0,
[_Ena],
[2]
];
exports.RestoreObjectOutput$ = [
3,
n0,
_ROOe,
0,
[_RC, _ROP],
[[0, { [_hH]: _xarc }], [0, { [_hH]: _xarop }]]
];
exports.RestoreObjectRequest$ = [
3,
n0,
_RORe,
0,
[
_B,
_K,
_VI,
_RRes,
_RP,
_CA,
_EBO
],
[
[0, 1],
[0, 1],
[0, { [_hQ]: _vI }],
[() => exports.RestoreRequest$, {
[_hP]: 1,
[_xN]: _RRes
}],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.RestoreRequest$ = [
3,
n0,
_RRes,
0,
[
_D,
_GJP,
_Ty,
_Ti,
_Desc,
_SP,
_OL
],
[
1,
() => exports.GlacierJobParameters$,
0,
0,
0,
() => exports.SelectParameters$,
[() => exports.OutputLocation$, 0]
]
];
exports.RestoreStatus$ = [
3,
n0,
_RSe,
0,
[_IRIP, _RED],
[2, 4]
];
exports.RoutingRule$ = [
3,
n0,
_RRo,
0,
[_Red, _Co],
[() => exports.Redirect$, () => exports.Condition$],
1
];
exports.S3KeyFilter$ = [
3,
n0,
_SKF,
0,
[_FRi],
[[() => FilterRuleList, {
[_xF]: 1,
[_xN]: _FR
}]]
];
exports.S3Location$ = [
3,
n0,
_SL,
0,
[
_BNu,
_P,
_En,
_CACL,
_ACL,
_Tag,
_UM,
_SC
],
[
0,
0,
[() => exports.Encryption$, 0],
0,
[() => Grants, 0],
[() => exports.Tagging$, 0],
[() => UserMetadata, 0],
0
],
2
];
exports.S3TablesDestination$ = [
3,
n0,
_STD,
0,
[_TBA, _TNa],
[0, 0],
2
];
exports.S3TablesDestinationResult$ = [
3,
n0,
_STDR,
0,
[
_TBA,
_TNa,
_TA,
_TN
],
[
0,
0,
0,
0
],
4
];
exports.ScanRange$ = [
3,
n0,
_SR,
0,
[_St, _End],
[1, 1]
];
exports.SelectObjectContentOutput$ = [
3,
n0,
_SOCO,
0,
[_Payl],
[[() => exports.SelectObjectContentEventStream$, 16]]
];
exports.SelectObjectContentRequest$ = [
3,
n0,
_SOCR,
0,
[
_B,
_K,
_Exp,
_ETx,
_IS,
_OSu,
_SSECA,
_SSECK,
_SSECKMD,
_RPe,
_SR,
_EBO
],
[
[0, 1],
[0, 1],
0,
0,
() => exports.InputSerialization$,
() => exports.OutputSerialization$,
[0, { [_hH]: _xasseca }],
[() => SSECustomerKey, { [_hH]: _xasseck }],
[0, { [_hH]: _xasseckM }],
() => exports.RequestProgress$,
() => exports.ScanRange$,
[0, { [_hH]: _xaebo }]
],
6
];
exports.SelectParameters$ = [
3,
n0,
_SP,
0,
[
_IS,
_ETx,
_Exp,
_OSu
],
[
() => exports.InputSerialization$,
0,
0,
() => exports.OutputSerialization$
],
4
];
exports.ServerSideEncryptionByDefault$ = [
3,
n0,
_SSEBD,
0,
[_SSEA, _KMSMKID],
[0, [() => SSEKMSKeyId, 0]],
1
];
exports.ServerSideEncryptionConfiguration$ = [
3,
n0,
_SSEC,
0,
[_R],
[[() => ServerSideEncryptionRules, {
[_xF]: 1,
[_xN]: _Ru
}]],
1
];
exports.ServerSideEncryptionRule$ = [
3,
n0,
_SSER,
0,
[
_ASSEBD,
_BKE,
_BET
],
[
[() => exports.ServerSideEncryptionByDefault$, 0],
2,
[() => exports.BlockedEncryptionTypes$, 0]
]
];
exports.SessionCredentials$ = [
3,
n0,
_SCe,
0,
[
_AKI,
_SAK,
_ST,
_E
],
[
[0, { [_xN]: _AKI }],
[() => SessionCredentialValue, { [_xN]: _SAK }],
[() => SessionCredentialValue, { [_xN]: _ST }],
[4, { [_xN]: _E }]
],
4
];
exports.SimplePrefix$ = [
3,
n0,
_SPi,
{ [_xN]: _SPi },
[],
[]
];
exports.SourceSelectionCriteria$ = [
3,
n0,
_SSC,
0,
[_SKEO, _RM],
[() => exports.SseKmsEncryptedObjects$, () => exports.ReplicaModifications$]
];
exports.SSEKMS$ = [
3,
n0,
_SSEKMS,
{ [_xN]: _SK },
[_KI],
[[() => SSEKMSKeyId, 0]],
1
];
exports.SseKmsEncryptedObjects$ = [
3,
n0,
_SKEO,
0,
[_S],
[0],
1
];
exports.SSEKMSEncryption$ = [
3,
n0,
_SSEKMSE,
{ [_xN]: _SK },
[_KMSKA, _BKE],
[[() => NonEmptyKmsKeyArnString, 0], 2],
1
];
exports.SSES3$ = [
3,
n0,
_SSES,
{ [_xN]: _SS },
[],
[]
];
exports.Stats$ = [
3,
n0,
_Sta,
0,
[
_BS,
_BP,
_BRy
],
[
1,
1,
1
]
];
exports.StatsEvent$ = [
3,
n0,
_SE,
0,
[_Det],
[[() => exports.Stats$, { [_eP]: 1 }]]
];
exports.StorageClassAnalysis$ = [
3,
n0,
_SCA,
0,
[_DE],
[() => exports.StorageClassAnalysisDataExport$]
];
exports.StorageClassAnalysisDataExport$ = [
3,
n0,
_SCADE,
0,
[_OSV, _Des],
[0, () => exports.AnalyticsExportDestination$],
2
];
exports.Tag$ = [
3,
n0,
_Ta,
0,
[_K, _V],
[0, 0],
2
];
exports.Tagging$ = [
3,
n0,
_Tag,
0,
[_TS],
[[() => TagSet, 0]],
1
];
exports.TargetGrant$ = [
3,
n0,
_TGa,
0,
[_Gra, _Pe],
[[() => exports.Grantee$, { [_xNm]: [_x, _hi] }], 0]
];
exports.TargetObjectKeyFormat$ = [
3,
n0,
_TOKF,
0,
[_SPi, _PP],
[[() => exports.SimplePrefix$, { [_xN]: _SPi }], [() => exports.PartitionedPrefix$, { [_xN]: _PP }]]
];
exports.Tiering$ = [
3,
n0,
_Tier,
0,
[_D, _AT],
[1, 0],
2
];
exports.TopicConfiguration$ = [
3,
n0,
_TCop,
0,
[
_TAo,
_Ev,
_I,
_F
],
[
[0, { [_xN]: _Top }],
[64, {
[_xF]: 1,
[_xN]: _Eve
}],
0,
[() => exports.NotificationConfigurationFilter$, 0]
],
2
];
exports.Transition$ = [
3,
n0,
_Tra,
0,
[
_Da,
_D,
_SC
],
[
5,
1,
0
]
];
exports.UpdateBucketMetadataInventoryTableConfigurationRequest$ = [
3,
n0,
_UBMITCR,
0,
[
_B,
_ITCn,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[() => exports.InventoryTableConfigurationUpdates$, {
[_hP]: 1,
[_xN]: _ITCn
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.UpdateBucketMetadataJournalTableConfigurationRequest$ = [
3,
n0,
_UBMJTCR,
0,
[
_B,
_JTC,
_CMDo,
_CA,
_EBO
],
[
[0, 1],
[() => exports.JournalTableConfigurationUpdates$, {
[_hP]: 1,
[_xN]: _JTC
}],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xaebo }]
],
2
];
exports.UpdateObjectEncryptionRequest$ = [
3,
n0,
_UOER,
0,
[
_B,
_K,
_OE,
_VI,
_RP,
_EBO,
_CMDo,
_CA
],
[
[0, 1],
[0, 1],
[() => exports.ObjectEncryption$, 16],
[0, { [_hQ]: _vI }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }]
],
3
];
exports.UpdateObjectEncryptionResponse$ = [
3,
n0,
_UOERp,
0,
[_RC],
[[0, { [_hH]: _xarc }]]
];
exports.UploadPartCopyOutput$ = [
3,
n0,
_UPCO,
0,
[
_CSVI,
_CPR,
_SSE,
_SSECA,
_SSECKMD,
_SSEKMSKI,
_BKE,
_RC
],
[
[0, { [_hH]: _xacsvi }],
[() => exports.CopyPartResult$, 16],
[0, { [_hH]: _xasse }],
[0, { [_hH]: _xasseca }],
[0, { [_hH]: _xasseckM }],
[() => SSEKMSKeyId, { [_hH]: _xasseakki }],
[2, { [_hH]: _xassebke }],
[0, { [_hH]: _xarc }]
]
];
exports.UploadPartCopyRequest$ = [
3,
n0,
_UPCR,
0,
[
_B,
_CS,
_K,
_PN,
_UI,
_CSIM,
_CSIMS,
_CSINM,
_CSIUS,
_CSRo,
_SSECA,
_SSECK,
_SSECKMD,
_CSSSECA,
_CSSSECK,
_CSSSECKMD,
_RP,
_EBO,
_ESBO
],
[
[0, 1],
[0, { [_hH]: _xacs___ }],
[0, 1],
[1, { [_hQ]: _pN }],
[0, { [_hQ]: _uI }],
[0, { [_hH]: _xacsim }],
[4, { [_hH]: _xacsims }],
[0, { [_hH]: _xacsinm }],
[4, { [_hH]: _xacsius }],
[0, { [_hH]: _xacsr }],
[0, { [_hH]: _xasseca }],
[() => SSECustomerKey, { [_hH]: _xasseck }],
[0, { [_hH]: _xasseckM }],
[0, { [_hH]: _xacssseca }],
[() => CopySourceSSECustomerKey, { [_hH]: _xacssseck }],
[0, { [_hH]: _xacssseckM }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xaebo }],
[0, { [_hH]: _xasebo }]
],
5
];
exports.UploadPartOutput$ = [
3,
n0,
_UPO,
0,
[
_SSE,
_ETa,
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe,
_SSECA,
_SSECKMD,
_SSEKMSKI,
_BKE,
_RC
],
[
[0, { [_hH]: _xasse }],
[0, { [_hH]: _ETa }],
[0, { [_hH]: _xacc }],
[0, { [_hH]: _xacc_ }],
[0, { [_hH]: _xacc__ }],
[0, { [_hH]: _xacs }],
[0, { [_hH]: _xacs_ }],
[0, { [_hH]: _xacs__ }],
[0, { [_hH]: _xacm }],
[0, { [_hH]: _xacx }],
[0, { [_hH]: _xacx_ }],
[0, { [_hH]: _xacx__ }],
[0, { [_hH]: _xasseca }],
[0, { [_hH]: _xasseckM }],
[() => SSEKMSKeyId, { [_hH]: _xasseakki }],
[2, { [_hH]: _xassebke }],
[0, { [_hH]: _xarc }]
]
];
exports.UploadPartRequest$ = [
3,
n0,
_UPR,
0,
[
_B,
_K,
_PN,
_UI,
_Bo,
_CLo,
_CMDo,
_CA,
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe,
_SSECA,
_SSECK,
_SSECKMD,
_RP,
_EBO
],
[
[0, 1],
[0, 1],
[1, { [_hQ]: _pN }],
[0, { [_hQ]: _uI }],
[() => StreamingBlob, 16],
[1, { [_hH]: _CL__ }],
[0, { [_hH]: _CM }],
[0, { [_hH]: _xasca }],
[0, { [_hH]: _xacc }],
[0, { [_hH]: _xacc_ }],
[0, { [_hH]: _xacc__ }],
[0, { [_hH]: _xacs }],
[0, { [_hH]: _xacs_ }],
[0, { [_hH]: _xacs__ }],
[0, { [_hH]: _xacm }],
[0, { [_hH]: _xacx }],
[0, { [_hH]: _xacx_ }],
[0, { [_hH]: _xacx__ }],
[0, { [_hH]: _xasseca }],
[() => SSECustomerKey, { [_hH]: _xasseck }],
[0, { [_hH]: _xasseckM }],
[0, { [_hH]: _xarp }],
[0, { [_hH]: _xaebo }]
],
4
];
exports.VersioningConfiguration$ = [
3,
n0,
_VC,
0,
[_MFAD, _S],
[[0, { [_xN]: _MDf }], 0]
];
exports.WebsiteConfiguration$ = [
3,
n0,
_WC,
0,
[
_EDr,
_IDn,
_RART,
_RR
],
[
() => exports.ErrorDocument$,
() => exports.IndexDocument$,
() => exports.RedirectAllRequestsTo$,
[() => RoutingRules, 0]
]
];
exports.WriteGetObjectResponseRequest$ = [
3,
n0,
_WGORR,
0,
[
_RReq,
_RTe,
_Bo,
_SCt,
_ECr,
_EM,
_AR,
_CC,
_CDo,
_CEo,
_CL,
_CLo,
_CR,
_CTo,
_CCRC,
_CCRCC,
_CCRCNVME,
_CSHA,
_CSHAh,
_CSHAhe,
_CMD,
_CXXHASH,
_CXXHASHh,
_CXXHASHhe,
_DM,
_ETa,
_Ex,
_E,
_LM,
_MM,
_M,
_OLM,
_OLLHS,
_OLRUD,
_PC,
_RS,
_RC,
_Re,
_SSE,
_SSECA,
_SSEKMSKI,
_SSECKMD,
_SC,
_TC,
_VI,
_BKE
],
[
[0, {
[_hL]: 1,
[_hH]: _xarr
}],
[0, { [_hH]: _xart }],
[() => StreamingBlob, 16],
[1, { [_hH]: _xafs }],
[0, { [_hH]: _xafec }],
[0, { [_hH]: _xafem }],
[0, { [_hH]: _xafhar }],
[0, { [_hH]: _xafhCC }],
[0, { [_hH]: _xafhCD }],
[0, { [_hH]: _xafhCE }],
[0, { [_hH]: _xafhCL }],
[1, { [_hH]: _CL__ }],
[0, { [_hH]: _xafhCR }],
[0, { [_hH]: _xafhCT }],
[0, { [_hH]: _xafhxacc }],
[0, { [_hH]: _xafhxacc_ }],
[0, { [_hH]: _xafhxacc__ }],
[0, { [_hH]: _xafhxacs }],
[0, { [_hH]: _xafhxacs_ }],
[0, { [_hH]: _xafhxacs__ }],
[0, { [_hH]: _xafhxacm }],
[0, { [_hH]: _xafhxacx }],
[0, { [_hH]: _xafhxacx_ }],
[0, { [_hH]: _xafhxacx__ }],
[2, { [_hH]: _xafhxadm }],
[0, { [_hH]: _xafhE }],
[4, { [_hH]: _xafhE_ }],
[0, { [_hH]: _xafhxae }],
[4, { [_hH]: _xafhLM }],
[1, { [_hH]: _xafhxamm }],
[128, { [_hPH]: _xam }],
[0, { [_hH]: _xafhxaolm }],
[0, { [_hH]: _xafhxaollh }],
[5, { [_hH]: _xafhxaolrud }],
[1, { [_hH]: _xafhxampc }],
[0, { [_hH]: _xafhxars }],
[0, { [_hH]: _xafhxarc }],
[0, { [_hH]: _xafhxar }],
[0, { [_hH]: _xafhxasse }],
[0, { [_hH]: _xafhxasseca }],
[() => SSEKMSKeyId, { [_hH]: _xafhxasseakki }],
[0, { [_hH]: _xafhxasseckM }],
[0, { [_hH]: _xafhxasc }],
[1, { [_hH]: _xafhxatc }],
[0, { [_hH]: _xafhxavi }],
[2, { [_hH]: _xafhxassebke }]
],
2
];
var __Unit = "unit";
var AnalyticsConfigurationList = [
1,
n0,
_ACLn,
0,
[() => exports.AnalyticsConfiguration$, 0]
];
var Buckets = [
1,
n0,
_Bu,
0,
[() => exports.Bucket$, { [_xN]: _B }]
];
var CommonPrefixList = [
1,
n0,
_CPL,
0,
() => exports.CommonPrefix$
];
var CompletedPartList = [
1,
n0,
_CPLo,
0,
() => exports.CompletedPart$
];
var CORSRules = [
1,
n0,
_CORSR,
0,
[() => exports.CORSRule$, 0]
];
var DeletedObjects = [
1,
n0,
_DOe,
0,
() => exports.DeletedObject$
];
var DeleteMarkers = [
1,
n0,
_DMe,
0,
() => exports.DeleteMarkerEntry$
];
var EncryptionTypeList = [
1,
n0,
_ETL,
0,
[0, { [_xN]: _ET }]
];
var Errors = [
1,
n0,
_Er,
0,
() => exports._Error$
];
var FilterRuleList = [
1,
n0,
_FRL,
0,
() => exports.FilterRule$
];
var Grants = [
1,
n0,
_G,
0,
[() => exports.Grant$, { [_xN]: _Gr }]
];
var IntelligentTieringConfigurationList = [
1,
n0,
_ITCL,
0,
[() => exports.IntelligentTieringConfiguration$, 0]
];
var InventoryConfigurationList = [
1,
n0,
_ICL,
0,
[() => exports.InventoryConfiguration$, 0]
];
var InventoryOptionalFields = [
1,
n0,
_IOF,
0,
[0, { [_xN]: _Fi }]
];
var LambdaFunctionConfigurationList = [
1,
n0,
_LFCL,
0,
[() => exports.LambdaFunctionConfiguration$, 0]
];
var LifecycleRules = [
1,
n0,
_LRi,
0,
[() => exports.LifecycleRule$, 0]
];
var MetricsConfigurationList = [
1,
n0,
_MCL,
0,
[() => exports.MetricsConfiguration$, 0]
];
var MultipartUploadList = [
1,
n0,
_MUL,
0,
() => exports.MultipartUpload$
];
var NoncurrentVersionTransitionList = [
1,
n0,
_NVTL,
0,
() => exports.NoncurrentVersionTransition$
];
var ObjectIdentifierList = [
1,
n0,
_OIL,
0,
() => exports.ObjectIdentifier$
];
var ObjectList = [
1,
n0,
_OLb,
0,
[() => exports._Object$, 0]
];
var ObjectVersionList = [
1,
n0,
_OVL,
0,
[() => exports.ObjectVersion$, 0]
];
var OwnershipControlsRules = [
1,
n0,
_OCRw,
0,
() => exports.OwnershipControlsRule$
];
var Parts = [
1,
n0,
_Pa,
0,
() => exports.Part$
];
var PartsList = [
1,
n0,
_PL,
0,
() => exports.ObjectPart$
];
var QueueConfigurationList = [
1,
n0,
_QCL,
0,
[() => exports.QueueConfiguration$, 0]
];
var ReplicationRules = [
1,
n0,
_RRep,
0,
[() => exports.ReplicationRule$, 0]
];
var RoutingRules = [
1,
n0,
_RR,
0,
[() => exports.RoutingRule$, { [_xN]: _RRo }]
];
var ServerSideEncryptionRules = [
1,
n0,
_SSERe,
0,
[() => exports.ServerSideEncryptionRule$, 0]
];
var TagSet = [
1,
n0,
_TS,
0,
[() => exports.Tag$, { [_xN]: _Ta }]
];
var TargetGrants = [
1,
n0,
_TG,
0,
[() => exports.TargetGrant$, { [_xN]: _Gr }]
];
var TieringList = [
1,
n0,
_TL,
0,
() => exports.Tiering$
];
var TopicConfigurationList = [
1,
n0,
_TCL,
0,
[() => exports.TopicConfiguration$, 0]
];
var TransitionList = [
1,
n0,
_TLr,
0,
() => exports.Transition$
];
var UserMetadata = [
1,
n0,
_UM,
0,
[() => exports.MetadataEntry$, { [_xN]: _ME }]
];
exports.AnalyticsFilter$ = [
4,
n0,
_AF,
0,
[
_P,
_Ta,
_An
],
[
0,
() => exports.Tag$,
[() => exports.AnalyticsAndOperator$, 0]
]
];
exports.MetricsFilter$ = [
4,
n0,
_MF,
0,
[
_P,
_Ta,
_APAc,
_An
],
[
0,
() => exports.Tag$,
0,
[() => exports.MetricsAndOperator$, 0]
]
];
exports.ObjectEncryption$ = [
4,
n0,
_OE,
0,
[_SSEKMS],
[[() => exports.SSEKMSEncryption$, { [_xN]: _SK }]]
];
exports.SelectObjectContentEventStream$ = [
4,
n0,
_SOCES,
{ [_st]: 1 },
[
_Rec,
_Sta,
_Pr,
_Cont,
_End
],
[
[() => exports.RecordsEvent$, 0],
[() => exports.StatsEvent$, 0],
[() => exports.ProgressEvent$, 0],
() => exports.ContinuationEvent$,
() => exports.EndEvent$
]
];
exports.AbortMultipartUpload$ = [
9,
n0,
_AMU,
{ [_h]: [
"DELETE",
"/{Key+}?x-id=AbortMultipartUpload",
204
] },
() => exports.AbortMultipartUploadRequest$,
() => exports.AbortMultipartUploadOutput$
];
exports.CompleteMultipartUpload$ = [
9,
n0,
_CMUo,
{ [_h]: [
"POST",
"/{Key+}",
200
] },
() => exports.CompleteMultipartUploadRequest$,
() => exports.CompleteMultipartUploadOutput$
];
exports.CopyObject$ = [
9,
n0,
_CO,
{ [_h]: [
"PUT",
"/{Key+}?x-id=CopyObject",
200
] },
() => exports.CopyObjectRequest$,
() => exports.CopyObjectOutput$
];
exports.CreateBucket$ = [
9,
n0,
_CB,
{ [_h]: [
"PUT",
"/",
200
] },
() => exports.CreateBucketRequest$,
() => exports.CreateBucketOutput$
];
exports.CreateBucketMetadataConfiguration$ = [
9,
n0,
_CBMC,
{
[_hC]: "-",
[_h]: [
"POST",
"/?metadataConfiguration",
200
]
},
() => exports.CreateBucketMetadataConfigurationRequest$,
() => __Unit
];
exports.CreateBucketMetadataTableConfiguration$ = [
9,
n0,
_CBMTC,
{
[_hC]: "-",
[_h]: [
"POST",
"/?metadataTable",
200
]
},
() => exports.CreateBucketMetadataTableConfigurationRequest$,
() => __Unit
];
exports.CreateMultipartUpload$ = [
9,
n0,
_CMUr,
{ [_h]: [
"POST",
"/{Key+}?uploads",
200
] },
() => exports.CreateMultipartUploadRequest$,
() => exports.CreateMultipartUploadOutput$
];
exports.CreateSession$ = [
9,
n0,
_CSr,
{ [_h]: [
"GET",
"/?session",
200
] },
() => exports.CreateSessionRequest$,
() => exports.CreateSessionOutput$
];
exports.DeleteBucket$ = [
9,
n0,
_DB,
{ [_h]: [
"DELETE",
"/",
204
] },
() => exports.DeleteBucketRequest$,
() => __Unit
];
exports.DeleteBucketAnalyticsConfiguration$ = [
9,
n0,
_DBAC,
{ [_h]: [
"DELETE",
"/?analytics",
204
] },
() => exports.DeleteBucketAnalyticsConfigurationRequest$,
() => __Unit
];
exports.DeleteBucketCors$ = [
9,
n0,
_DBC,
{ [_h]: [
"DELETE",
"/?cors",
204
] },
() => exports.DeleteBucketCorsRequest$,
() => __Unit
];
exports.DeleteBucketEncryption$ = [
9,
n0,
_DBE,
{ [_h]: [
"DELETE",
"/?encryption",
204
] },
() => exports.DeleteBucketEncryptionRequest$,
() => __Unit
];
exports.DeleteBucketIntelligentTieringConfiguration$ = [
9,
n0,
_DBITC,
{ [_h]: [
"DELETE",
"/?intelligent-tiering",
204
] },
() => exports.DeleteBucketIntelligentTieringConfigurationRequest$,
() => __Unit
];
exports.DeleteBucketInventoryConfiguration$ = [
9,
n0,
_DBIC,
{ [_h]: [
"DELETE",
"/?inventory",
204
] },
() => exports.DeleteBucketInventoryConfigurationRequest$,
() => __Unit
];
exports.DeleteBucketLifecycle$ = [
9,
n0,
_DBL,
{ [_h]: [
"DELETE",
"/?lifecycle",
204
] },
() => exports.DeleteBucketLifecycleRequest$,
() => __Unit
];
exports.DeleteBucketMetadataConfiguration$ = [
9,
n0,
_DBMC,
{ [_h]: [
"DELETE",
"/?metadataConfiguration",
204
] },
() => exports.DeleteBucketMetadataConfigurationRequest$,
() => __Unit
];
exports.DeleteBucketMetadataTableConfiguration$ = [
9,
n0,
_DBMTC,
{ [_h]: [
"DELETE",
"/?metadataTable",
204
] },
() => exports.DeleteBucketMetadataTableConfigurationRequest$,
() => __Unit
];
exports.DeleteBucketMetricsConfiguration$ = [
9,
n0,
_DBMCe,
{ [_h]: [
"DELETE",
"/?metrics",
204
] },
() => exports.DeleteBucketMetricsConfigurationRequest$,
() => __Unit
];
exports.DeleteBucketOwnershipControls$ = [
9,
n0,
_DBOC,
{ [_h]: [
"DELETE",
"/?ownershipControls",
204
] },
() => exports.DeleteBucketOwnershipControlsRequest$,
() => __Unit
];
exports.DeleteBucketPolicy$ = [
9,
n0,
_DBP,
{ [_h]: [
"DELETE",
"/?policy",
204
] },
() => exports.DeleteBucketPolicyRequest$,
() => __Unit
];
exports.DeleteBucketReplication$ = [
9,
n0,
_DBRe,
{ [_h]: [
"DELETE",
"/?replication",
204
] },
() => exports.DeleteBucketReplicationRequest$,
() => __Unit
];
exports.DeleteBucketTagging$ = [
9,
n0,
_DBT,
{ [_h]: [
"DELETE",
"/?tagging",
204
] },
() => exports.DeleteBucketTaggingRequest$,
() => __Unit
];
exports.DeleteBucketWebsite$ = [
9,
n0,
_DBW,
{ [_h]: [
"DELETE",
"/?website",
204
] },
() => exports.DeleteBucketWebsiteRequest$,
() => __Unit
];
exports.DeleteObject$ = [
9,
n0,
_DOel,
{ [_h]: [
"DELETE",
"/{Key+}?x-id=DeleteObject",
204
] },
() => exports.DeleteObjectRequest$,
() => exports.DeleteObjectOutput$
];
exports.DeleteObjects$ = [
9,
n0,
_DOele,
{
[_hC]: "-",
[_h]: [
"POST",
"/?delete",
200
]
},
() => exports.DeleteObjectsRequest$,
() => exports.DeleteObjectsOutput$
];
exports.DeleteObjectTagging$ = [
9,
n0,
_DOT,
{ [_h]: [
"DELETE",
"/{Key+}?tagging",
204
] },
() => exports.DeleteObjectTaggingRequest$,
() => exports.DeleteObjectTaggingOutput$
];
exports.DeletePublicAccessBlock$ = [
9,
n0,
_DPAB,
{ [_h]: [
"DELETE",
"/?publicAccessBlock",
204
] },
() => exports.DeletePublicAccessBlockRequest$,
() => __Unit
];
exports.GetBucketAbac$ = [
9,
n0,
_GBA,
{ [_h]: [
"GET",
"/?abac",
200
] },
() => exports.GetBucketAbacRequest$,
() => exports.GetBucketAbacOutput$
];
exports.GetBucketAccelerateConfiguration$ = [
9,
n0,
_GBAC,
{ [_h]: [
"GET",
"/?accelerate",
200
] },
() => exports.GetBucketAccelerateConfigurationRequest$,
() => exports.GetBucketAccelerateConfigurationOutput$
];
exports.GetBucketAcl$ = [
9,
n0,
_GBAe,
{ [_h]: [
"GET",
"/?acl",
200
] },
() => exports.GetBucketAclRequest$,
() => exports.GetBucketAclOutput$
];
exports.GetBucketAnalyticsConfiguration$ = [
9,
n0,
_GBACe,
{ [_h]: [
"GET",
"/?analytics&x-id=GetBucketAnalyticsConfiguration",
200
] },
() => exports.GetBucketAnalyticsConfigurationRequest$,
() => exports.GetBucketAnalyticsConfigurationOutput$
];
exports.GetBucketCors$ = [
9,
n0,
_GBC,
{ [_h]: [
"GET",
"/?cors",
200
] },
() => exports.GetBucketCorsRequest$,
() => exports.GetBucketCorsOutput$
];
exports.GetBucketEncryption$ = [
9,
n0,
_GBE,
{ [_h]: [
"GET",
"/?encryption",
200
] },
() => exports.GetBucketEncryptionRequest$,
() => exports.GetBucketEncryptionOutput$
];
exports.GetBucketIntelligentTieringConfiguration$ = [
9,
n0,
_GBITC,
{ [_h]: [
"GET",
"/?intelligent-tiering&x-id=GetBucketIntelligentTieringConfiguration",
200
] },
() => exports.GetBucketIntelligentTieringConfigurationRequest$,
() => exports.GetBucketIntelligentTieringConfigurationOutput$
];
exports.GetBucketInventoryConfiguration$ = [
9,
n0,
_GBIC,
{ [_h]: [
"GET",
"/?inventory&x-id=GetBucketInventoryConfiguration",
200
] },
() => exports.GetBucketInventoryConfigurationRequest$,
() => exports.GetBucketInventoryConfigurationOutput$
];
exports.GetBucketLifecycleConfiguration$ = [
9,
n0,
_GBLC,
{ [_h]: [
"GET",
"/?lifecycle",
200
] },
() => exports.GetBucketLifecycleConfigurationRequest$,
() => exports.GetBucketLifecycleConfigurationOutput$
];
exports.GetBucketLocation$ = [
9,
n0,
_GBL,
{ [_h]: [
"GET",
"/?location",
200
] },
() => exports.GetBucketLocationRequest$,
() => exports.GetBucketLocationOutput$
];
exports.GetBucketLogging$ = [
9,
n0,
_GBLe,
{ [_h]: [
"GET",
"/?logging",
200
] },
() => exports.GetBucketLoggingRequest$,
() => exports.GetBucketLoggingOutput$
];
exports.GetBucketMetadataConfiguration$ = [
9,
n0,
_GBMC,
{ [_h]: [
"GET",
"/?metadataConfiguration",
200
] },
() => exports.GetBucketMetadataConfigurationRequest$,
() => exports.GetBucketMetadataConfigurationOutput$
];
exports.GetBucketMetadataTableConfiguration$ = [
9,
n0,
_GBMTC,
{ [_h]: [
"GET",
"/?metadataTable",
200
] },
() => exports.GetBucketMetadataTableConfigurationRequest$,
() => exports.GetBucketMetadataTableConfigurationOutput$
];
exports.GetBucketMetricsConfiguration$ = [
9,
n0,
_GBMCe,
{ [_h]: [
"GET",
"/?metrics&x-id=GetBucketMetricsConfiguration",
200
] },
() => exports.GetBucketMetricsConfigurationRequest$,
() => exports.GetBucketMetricsConfigurationOutput$
];
exports.GetBucketNotificationConfiguration$ = [
9,
n0,
_GBNC,
{ [_h]: [
"GET",
"/?notification",
200
] },
() => exports.GetBucketNotificationConfigurationRequest$,
() => exports.NotificationConfiguration$
];
exports.GetBucketOwnershipControls$ = [
9,
n0,
_GBOC,
{ [_h]: [
"GET",
"/?ownershipControls",
200
] },
() => exports.GetBucketOwnershipControlsRequest$,
() => exports.GetBucketOwnershipControlsOutput$
];
exports.GetBucketPolicy$ = [
9,
n0,
_GBP,
{ [_h]: [
"GET",
"/?policy",
200
] },
() => exports.GetBucketPolicyRequest$,
() => exports.GetBucketPolicyOutput$
];
exports.GetBucketPolicyStatus$ = [
9,
n0,
_GBPS,
{ [_h]: [
"GET",
"/?policyStatus",
200
] },
() => exports.GetBucketPolicyStatusRequest$,
() => exports.GetBucketPolicyStatusOutput$
];
exports.GetBucketReplication$ = [
9,
n0,
_GBR,
{ [_h]: [
"GET",
"/?replication",
200
] },
() => exports.GetBucketReplicationRequest$,
() => exports.GetBucketReplicationOutput$
];
exports.GetBucketRequestPayment$ = [
9,
n0,
_GBRP,
{ [_h]: [
"GET",
"/?requestPayment",
200
] },
() => exports.GetBucketRequestPaymentRequest$,
() => exports.GetBucketRequestPaymentOutput$
];
exports.GetBucketTagging$ = [
9,
n0,
_GBT,
{ [_h]: [
"GET",
"/?tagging",
200
] },
() => exports.GetBucketTaggingRequest$,
() => exports.GetBucketTaggingOutput$
];
exports.GetBucketVersioning$ = [
9,
n0,
_GBV,
{ [_h]: [
"GET",
"/?versioning",
200
] },
() => exports.GetBucketVersioningRequest$,
() => exports.GetBucketVersioningOutput$
];
exports.GetBucketWebsite$ = [
9,
n0,
_GBW,
{ [_h]: [
"GET",
"/?website",
200
] },
() => exports.GetBucketWebsiteRequest$,
() => exports.GetBucketWebsiteOutput$
];
exports.GetObject$ = [
9,
n0,
_GO,
{
[_hC]: "-",
[_h]: [
"GET",
"/{Key+}?x-id=GetObject",
200
]
},
() => exports.GetObjectRequest$,
() => exports.GetObjectOutput$
];
exports.GetObjectAcl$ = [
9,
n0,
_GOA,
{ [_h]: [
"GET",
"/{Key+}?acl",
200
] },
() => exports.GetObjectAclRequest$,
() => exports.GetObjectAclOutput$
];
exports.GetObjectAttributes$ = [
9,
n0,
_GOAe,
{ [_h]: [
"GET",
"/{Key+}?attributes",
200
] },
() => exports.GetObjectAttributesRequest$,
() => exports.GetObjectAttributesOutput$
];
exports.GetObjectLegalHold$ = [
9,
n0,
_GOLH,
{ [_h]: [
"GET",
"/{Key+}?legal-hold",
200
] },
() => exports.GetObjectLegalHoldRequest$,
() => exports.GetObjectLegalHoldOutput$
];
exports.GetObjectLockConfiguration$ = [
9,
n0,
_GOLC,
{ [_h]: [
"GET",
"/?object-lock",
200
] },
() => exports.GetObjectLockConfigurationRequest$,
() => exports.GetObjectLockConfigurationOutput$
];
exports.GetObjectRetention$ = [
9,
n0,
_GORe,
{ [_h]: [
"GET",
"/{Key+}?retention",
200
] },
() => exports.GetObjectRetentionRequest$,
() => exports.GetObjectRetentionOutput$
];
exports.GetObjectTagging$ = [
9,
n0,
_GOT,
{ [_h]: [
"GET",
"/{Key+}?tagging",
200
] },
() => exports.GetObjectTaggingRequest$,
() => exports.GetObjectTaggingOutput$
];
exports.GetObjectTorrent$ = [
9,
n0,
_GOTe,
{ [_h]: [
"GET",
"/{Key+}?torrent",
200
] },
() => exports.GetObjectTorrentRequest$,
() => exports.GetObjectTorrentOutput$
];
exports.GetPublicAccessBlock$ = [
9,
n0,
_GPAB,
{ [_h]: [
"GET",
"/?publicAccessBlock",
200
] },
() => exports.GetPublicAccessBlockRequest$,
() => exports.GetPublicAccessBlockOutput$
];
exports.HeadBucket$ = [
9,
n0,
_HB,
{ [_h]: [
"HEAD",
"/",
200
] },
() => exports.HeadBucketRequest$,
() => exports.HeadBucketOutput$
];
exports.HeadObject$ = [
9,
n0,
_HO,
{ [_h]: [
"HEAD",
"/{Key+}",
200
] },
() => exports.HeadObjectRequest$,
() => exports.HeadObjectOutput$
];
exports.ListBucketAnalyticsConfigurations$ = [
9,
n0,
_LBAC,
{ [_h]: [
"GET",
"/?analytics&x-id=ListBucketAnalyticsConfigurations",
200
] },
() => exports.ListBucketAnalyticsConfigurationsRequest$,
() => exports.ListBucketAnalyticsConfigurationsOutput$
];
exports.ListBucketIntelligentTieringConfigurations$ = [
9,
n0,
_LBITC,
{ [_h]: [
"GET",
"/?intelligent-tiering&x-id=ListBucketIntelligentTieringConfigurations",
200
] },
() => exports.ListBucketIntelligentTieringConfigurationsRequest$,
() => exports.ListBucketIntelligentTieringConfigurationsOutput$
];
exports.ListBucketInventoryConfigurations$ = [
9,
n0,
_LBIC,
{ [_h]: [
"GET",
"/?inventory&x-id=ListBucketInventoryConfigurations",
200
] },
() => exports.ListBucketInventoryConfigurationsRequest$,
() => exports.ListBucketInventoryConfigurationsOutput$
];
exports.ListBucketMetricsConfigurations$ = [
9,
n0,
_LBMC,
{ [_h]: [
"GET",
"/?metrics&x-id=ListBucketMetricsConfigurations",
200
] },
() => exports.ListBucketMetricsConfigurationsRequest$,
() => exports.ListBucketMetricsConfigurationsOutput$
];
exports.ListBuckets$ = [
9,
n0,
_LB,
{ [_h]: [
"GET",
"/?x-id=ListBuckets",
200
] },
() => exports.ListBucketsRequest$,
() => exports.ListBucketsOutput$
];
exports.ListDirectoryBuckets$ = [
9,
n0,
_LDB,
{ [_h]: [
"GET",
"/?x-id=ListDirectoryBuckets",
200
] },
() => exports.ListDirectoryBucketsRequest$,
() => exports.ListDirectoryBucketsOutput$
];
exports.ListMultipartUploads$ = [
9,
n0,
_LMU,
{ [_h]: [
"GET",
"/?uploads",
200
] },
() => exports.ListMultipartUploadsRequest$,
() => exports.ListMultipartUploadsOutput$
];
exports.ListObjects$ = [
9,
n0,
_LO,
{ [_h]: [
"GET",
"/",
200
] },
() => exports.ListObjectsRequest$,
() => exports.ListObjectsOutput$
];
exports.ListObjectsV2$ = [
9,
n0,
_LOV,
{ [_h]: [
"GET",
"/?list-type=2",
200
] },
() => exports.ListObjectsV2Request$,
() => exports.ListObjectsV2Output$
];
exports.ListObjectVersions$ = [
9,
n0,
_LOVi,
{ [_h]: [
"GET",
"/?versions",
200
] },
() => exports.ListObjectVersionsRequest$,
() => exports.ListObjectVersionsOutput$
];
exports.ListParts$ = [
9,
n0,
_LP,
{ [_h]: [
"GET",
"/{Key+}?x-id=ListParts",
200
] },
() => exports.ListPartsRequest$,
() => exports.ListPartsOutput$
];
exports.PutBucketAbac$ = [
9,
n0,
_PBA,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?abac",
200
]
},
() => exports.PutBucketAbacRequest$,
() => __Unit
];
exports.PutBucketAccelerateConfiguration$ = [
9,
n0,
_PBAC,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?accelerate",
200
]
},
() => exports.PutBucketAccelerateConfigurationRequest$,
() => __Unit
];
exports.PutBucketAcl$ = [
9,
n0,
_PBAu,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?acl",
200
]
},
() => exports.PutBucketAclRequest$,
() => __Unit
];
exports.PutBucketAnalyticsConfiguration$ = [
9,
n0,
_PBACu,
{ [_h]: [
"PUT",
"/?analytics",
200
] },
() => exports.PutBucketAnalyticsConfigurationRequest$,
() => __Unit
];
exports.PutBucketCors$ = [
9,
n0,
_PBC,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?cors",
200
]
},
() => exports.PutBucketCorsRequest$,
() => __Unit
];
exports.PutBucketEncryption$ = [
9,
n0,
_PBE,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?encryption",
200
]
},
() => exports.PutBucketEncryptionRequest$,
() => __Unit
];
exports.PutBucketIntelligentTieringConfiguration$ = [
9,
n0,
_PBITC,
{ [_h]: [
"PUT",
"/?intelligent-tiering",
200
] },
() => exports.PutBucketIntelligentTieringConfigurationRequest$,
() => __Unit
];
exports.PutBucketInventoryConfiguration$ = [
9,
n0,
_PBIC,
{ [_h]: [
"PUT",
"/?inventory",
200
] },
() => exports.PutBucketInventoryConfigurationRequest$,
() => __Unit
];
exports.PutBucketLifecycleConfiguration$ = [
9,
n0,
_PBLC,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?lifecycle",
200
]
},
() => exports.PutBucketLifecycleConfigurationRequest$,
() => exports.PutBucketLifecycleConfigurationOutput$
];
exports.PutBucketLogging$ = [
9,
n0,
_PBL,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?logging",
200
]
},
() => exports.PutBucketLoggingRequest$,
() => __Unit
];
exports.PutBucketMetricsConfiguration$ = [
9,
n0,
_PBMC,
{ [_h]: [
"PUT",
"/?metrics",
200
] },
() => exports.PutBucketMetricsConfigurationRequest$,
() => __Unit
];
exports.PutBucketNotificationConfiguration$ = [
9,
n0,
_PBNC,
{ [_h]: [
"PUT",
"/?notification",
200
] },
() => exports.PutBucketNotificationConfigurationRequest$,
() => __Unit
];
exports.PutBucketOwnershipControls$ = [
9,
n0,
_PBOC,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?ownershipControls",
200
]
},
() => exports.PutBucketOwnershipControlsRequest$,
() => __Unit
];
exports.PutBucketPolicy$ = [
9,
n0,
_PBP,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?policy",
200
]
},
() => exports.PutBucketPolicyRequest$,
() => __Unit
];
exports.PutBucketReplication$ = [
9,
n0,
_PBR,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?replication",
200
]
},
() => exports.PutBucketReplicationRequest$,
() => __Unit
];
exports.PutBucketRequestPayment$ = [
9,
n0,
_PBRP,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?requestPayment",
200
]
},
() => exports.PutBucketRequestPaymentRequest$,
() => __Unit
];
exports.PutBucketTagging$ = [
9,
n0,
_PBT,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?tagging",
200
]
},
() => exports.PutBucketTaggingRequest$,
() => __Unit
];
exports.PutBucketVersioning$ = [
9,
n0,
_PBV,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?versioning",
200
]
},
() => exports.PutBucketVersioningRequest$,
() => __Unit
];
exports.PutBucketWebsite$ = [
9,
n0,
_PBW,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?website",
200
]
},
() => exports.PutBucketWebsiteRequest$,
() => __Unit
];
exports.PutObject$ = [
9,
n0,
_PO,
{
[_hC]: "-",
[_h]: [
"PUT",
"/{Key+}?x-id=PutObject",
200
]
},
() => exports.PutObjectRequest$,
() => exports.PutObjectOutput$
];
exports.PutObjectAcl$ = [
9,
n0,
_POA,
{
[_hC]: "-",
[_h]: [
"PUT",
"/{Key+}?acl",
200
]
},
() => exports.PutObjectAclRequest$,
() => exports.PutObjectAclOutput$
];
exports.PutObjectLegalHold$ = [
9,
n0,
_POLH,
{
[_hC]: "-",
[_h]: [
"PUT",
"/{Key+}?legal-hold",
200
]
},
() => exports.PutObjectLegalHoldRequest$,
() => exports.PutObjectLegalHoldOutput$
];
exports.PutObjectLockConfiguration$ = [
9,
n0,
_POLC,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?object-lock",
200
]
},
() => exports.PutObjectLockConfigurationRequest$,
() => exports.PutObjectLockConfigurationOutput$
];
exports.PutObjectRetention$ = [
9,
n0,
_PORu,
{
[_hC]: "-",
[_h]: [
"PUT",
"/{Key+}?retention",
200
]
},
() => exports.PutObjectRetentionRequest$,
() => exports.PutObjectRetentionOutput$
];
exports.PutObjectTagging$ = [
9,
n0,
_POT,
{
[_hC]: "-",
[_h]: [
"PUT",
"/{Key+}?tagging",
200
]
},
() => exports.PutObjectTaggingRequest$,
() => exports.PutObjectTaggingOutput$
];
exports.PutPublicAccessBlock$ = [
9,
n0,
_PPAB,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?publicAccessBlock",
200
]
},
() => exports.PutPublicAccessBlockRequest$,
() => __Unit
];
exports.RenameObject$ = [
9,
n0,
_RO,
{ [_h]: [
"PUT",
"/{Key+}?renameObject",
200
] },
() => exports.RenameObjectRequest$,
() => exports.RenameObjectOutput$
];
exports.RestoreObject$ = [
9,
n0,
_ROe,
{
[_hC]: "-",
[_h]: [
"POST",
"/{Key+}?restore",
200
]
},
() => exports.RestoreObjectRequest$,
() => exports.RestoreObjectOutput$
];
exports.SelectObjectContent$ = [
9,
n0,
_SOC,
{ [_h]: [
"POST",
"/{Key+}?select&select-type=2",
200
] },
() => exports.SelectObjectContentRequest$,
() => exports.SelectObjectContentOutput$
];
exports.UpdateBucketMetadataInventoryTableConfiguration$ = [
9,
n0,
_UBMITC,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?metadataInventoryTable",
200
]
},
() => exports.UpdateBucketMetadataInventoryTableConfigurationRequest$,
() => __Unit
];
exports.UpdateBucketMetadataJournalTableConfiguration$ = [
9,
n0,
_UBMJTC,
{
[_hC]: "-",
[_h]: [
"PUT",
"/?metadataJournalTable",
200
]
},
() => exports.UpdateBucketMetadataJournalTableConfigurationRequest$,
() => __Unit
];
exports.UpdateObjectEncryption$ = [
9,
n0,
_UOE,
{
[_hC]: "-",
[_h]: [
"PUT",
"/{Key+}?encryption",
200
]
},
() => exports.UpdateObjectEncryptionRequest$,
() => exports.UpdateObjectEncryptionResponse$
];
exports.UploadPart$ = [
9,
n0,
_UP,
{
[_hC]: "-",
[_h]: [
"PUT",
"/{Key+}?x-id=UploadPart",
200
]
},
() => exports.UploadPartRequest$,
() => exports.UploadPartOutput$
];
exports.UploadPartCopy$ = [
9,
n0,
_UPC,
{ [_h]: [
"PUT",
"/{Key+}?x-id=UploadPartCopy",
200
] },
() => exports.UploadPartCopyRequest$,
() => exports.UploadPartCopyOutput$
];
exports.WriteGetObjectResponse$ = [
9,
n0,
_WGOR,
{
[_en]: ["{RequestRoute}."],
[_h]: [
"POST",
"/WriteGetObjectResponse",
200
]
},
() => exports.WriteGetObjectResponseRequest$,
() => __Unit
];
}));
//#endregion
//#region node_modules/@aws-sdk/client-s3/package.json
var require_package = /* @__PURE__ */ __commonJSMin(((exports, module) => {
module.exports = {
"name": "@aws-sdk/client-s3",
"description": "AWS SDK for JavaScript S3 Client for Node.js, Browser and React Native",
"version": "3.1056.0",
"scripts": {
"build": "concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs",
"build:cjs": "node ../../scripts/compilation/inline client-s3",
"build:es": "tsc -p tsconfig.es.json",
"build:include:deps": "yarn g:turbo run build -F=\"$npm_package_name\"",
"build:types": "tsc -p tsconfig.types.json",
"build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
"clean": "premove dist-cjs dist-es dist-types tsconfig.cjs.tsbuildinfo tsconfig.es.tsbuildinfo tsconfig.types.tsbuildinfo",
"extract:docs": "api-extractor run --local",
"generate:client": "node ../../scripts/generate-clients/single-service --solo s3",
"test": "yarn g:vitest run",
"test:browser": "node ./test/browser-build/esbuild && yarn g:vitest run -c vitest.config.browser.mts",
"test:browser:watch": "node ./test/browser-build/esbuild && yarn g:vitest watch -c vitest.config.browser.mts",
"test:e2e": "yarn g:vitest run -c vitest.config.e2e.mts && yarn test:browser",
"test:e2e:watch": "yarn g:vitest watch -c vitest.config.e2e.mts",
"test:index": "tsc --noEmit ./test/index-types.ts && node ./test/index-objects.spec.mjs",
"test:integration": "yarn g:vitest run -c vitest.config.integ.mts",
"test:integration:watch": "yarn g:vitest watch -c vitest.config.integ.mts",
"test:watch": "yarn g:vitest watch"
},
"main": "./dist-cjs/index.js",
"types": "./dist-types/index.d.ts",
"module": "./dist-es/index.js",
"sideEffects": false,
"dependencies": {
"@aws-crypto/sha1-browser": "5.2.0",
"@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0",
"@aws-sdk/core": "^3.974.15",
"@aws-sdk/credential-provider-node": "^3.972.46",
"@aws-sdk/middleware-bucket-endpoint": "^3.972.17",
"@aws-sdk/middleware-expect-continue": "^3.972.14",
"@aws-sdk/middleware-flexible-checksums": "^3.974.23",
"@aws-sdk/middleware-location-constraint": "^3.972.11",
"@aws-sdk/middleware-sdk-s3": "^3.972.44",
"@aws-sdk/middleware-ssec": "^3.972.11",
"@aws-sdk/signature-v4-multi-region": "^3.996.30",
"@aws-sdk/types": "^3.973.9",
"@smithy/core": "^3.24.5",
"@smithy/fetch-http-handler": "^5.4.5",
"@smithy/node-http-handler": "^4.7.5",
"@smithy/types": "^4.14.2",
"tslib": "^2.6.2"
},
"devDependencies": {
"@aws-sdk/signature-v4-crt": "3.1056.0",
"@smithy/snapshot-testing": "^2.1.5",
"@tsconfig/node20": "20.1.8",
"@types/node": "^20.14.8",
"concurrently": "7.0.0",
"downlevel-dts": "0.10.1",
"premove": "4.0.0",
"typescript": "~5.8.3",
"vitest": "^4.0.17"
},
"engines": { "node": ">=20.0.0" },
"typesVersions": { "<4.5": { "dist-types/*": ["dist-types/ts3.4/*"] } },
"files": ["dist-*/**"],
"author": {
"name": "AWS SDK for JavaScript Team",
"url": "https://aws.amazon.com/javascript/"
},
"license": "Apache-2.0",
"browser": { "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser" },
"react-native": { "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native" },
"homepage": "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-s3",
"repository": {
"type": "git",
"url": "https://github.com/aws/aws-sdk-js-v3.git",
"directory": "clients/client-s3"
}
};
}));
//#endregion
//#region node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js
var require_dist_cjs$5 = /* @__PURE__ */ __commonJSMin(((exports) => {
var credentialProviderEnv = require_dist_cjs$10();
var config = (init_config(), __toCommonJS(config_exports));
const ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
const remoteProvider = async (init) => {
const { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata } = await import("./dist-cjs-DG_yopAP.js").then((m) => /* @__PURE__ */ __toESM(m.default));
if (process.env[ENV_CMDS_RELATIVE_URI] || process.env[ENV_CMDS_FULL_URI]) {
init.logger?.debug("@aws-sdk/credential-provider-node - remoteProvider::fromHttp/fromContainerMetadata");
const { fromHttp } = await import("./dist-cjs-Bp0J3E_X.js").then((m) => /* @__PURE__ */ __toESM(m.default));
return config.chain(fromHttp(init), fromContainerMetadata(init));
}
if (process.env[ENV_IMDS_DISABLED] && process.env[ENV_IMDS_DISABLED] !== "false") return async () => {
throw new config.CredentialsProviderError("EC2 Instance Metadata Service access disabled", { logger: init.logger });
};
init.logger?.debug("@aws-sdk/credential-provider-node - remoteProvider::fromInstanceMetadata");
return fromInstanceMetadata(init);
};
function memoizeChain(providers, treatAsExpired) {
const chain = internalCreateChain(providers);
let activeLock;
let passiveLock;
let credentials;
let forceRefreshLock;
const provider = async (options) => {
if (options?.forceRefresh) {
if (!forceRefreshLock) forceRefreshLock = chain(options).then((c) => {
credentials = c;
}).finally(() => {
forceRefreshLock = void 0;
});
await forceRefreshLock;
return credentials;
}
if (credentials?.expiration) {
if (credentials?.expiration?.getTime() < Date.now()) credentials = void 0;
}
if (activeLock) await activeLock;
else if (!credentials || treatAsExpired?.(credentials)) if (credentials) {
if (!passiveLock) passiveLock = chain(options).then((c) => {
credentials = c;
}).finally(() => {
passiveLock = void 0;
});
} else {
activeLock = chain(options).then((c) => {
credentials = c;
}).finally(() => {
activeLock = void 0;
});
return provider(options);
}
return credentials;
};
return provider;
}
const internalCreateChain = (providers) => async (awsIdentityProperties) => {
let lastProviderError;
for (const provider of providers) try {
return await provider(awsIdentityProperties);
} catch (err) {
lastProviderError = err;
if (err?.tryNextLink) continue;
throw err;
}
throw lastProviderError;
};
let multipleCredentialSourceWarningEmitted = false;
const defaultProvider = (init = {}) => memoizeChain([
async () => {
if (init.profile ?? process.env[config.ENV_PROFILE]) {
if (process.env[credentialProviderEnv.ENV_KEY] && process.env[credentialProviderEnv.ENV_SECRET]) {
if (!multipleCredentialSourceWarningEmitted) {
(init.logger?.warn && init.logger?.constructor?.name !== "NoOpLogger" ? init.logger.warn.bind(init.logger) : console.warn)(`@aws-sdk/credential-provider-node - defaultProvider::fromEnv WARNING:
Multiple credential sources detected:
Both AWS_PROFILE and the pair AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY static credentials are set.
This SDK will proceed with the AWS_PROFILE value.
However, a future version may change this behavior to prefer the ENV static credentials.
Please ensure that your environment only sets either the AWS_PROFILE or the
AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair.
`);
multipleCredentialSourceWarningEmitted = true;
}
}
throw new config.CredentialsProviderError("AWS_PROFILE is set, skipping fromEnv provider.", {
logger: init.logger,
tryNextLink: true
});
}
init.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv");
return credentialProviderEnv.fromEnv(init)();
},
async (awsIdentityProperties) => {
init.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");
const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;
if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) throw new config.CredentialsProviderError("Skipping SSO provider in default chain (inputs do not include SSO fields).", { logger: init.logger });
const { fromSSO } = await import("./dist-cjs-DEahOQo0.js").then((m) => /* @__PURE__ */ __toESM(m.default));
return fromSSO(init)(awsIdentityProperties);
},
async (awsIdentityProperties) => {
init.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");
const { fromIni } = await import("./dist-cjs-DPNhmEwt.js").then((m) => /* @__PURE__ */ __toESM(m.default));
return fromIni(init)(awsIdentityProperties);
},
async (awsIdentityProperties) => {
init.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");
const { fromProcess } = await import("./dist-cjs-DJBb9-fe.js").then((m) => /* @__PURE__ */ __toESM(m.default));
return fromProcess(init)(awsIdentityProperties);
},
async (awsIdentityProperties) => {
init.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");
const { fromTokenFile } = await import("./dist-cjs-096yFk39.js").then((m) => /* @__PURE__ */ __toESM(m.default));
return fromTokenFile(init)(awsIdentityProperties);
},
async () => {
init.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider");
return (await remoteProvider(init))();
},
async () => {
throw new config.CredentialsProviderError("Could not load credentials from any providers", {
tryNextLink: false,
logger: init.logger
});
}
], credentialsTreatedAsExpired);
const credentialsWillNeedRefresh = (credentials) => credentials?.expiration !== void 0;
const credentialsTreatedAsExpired = (credentials) => credentials?.expiration !== void 0 && credentials.expiration.getTime() - Date.now() < 3e5;
exports.credentialsTreatedAsExpired = credentialsTreatedAsExpired;
exports.credentialsWillNeedRefresh = credentialsWillNeedRefresh;
exports.defaultProvider = defaultProvider;
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/index.js
var require_dist_cjs$4 = /* @__PURE__ */ __commonJSMin(((exports) => {
var s3 = (init_s3(), __toCommonJS(s3_exports));
exports.NODE_DISABLE_MULTIREGION_ACCESS_POINT_CONFIG_OPTIONS = s3.NODE_DISABLE_MULTIREGION_ACCESS_POINT_CONFIG_OPTIONS;
exports.NODE_DISABLE_MULTIREGION_ACCESS_POINT_ENV_NAME = s3.NODE_DISABLE_MULTIREGION_ACCESS_POINT_ENV_NAME;
exports.NODE_DISABLE_MULTIREGION_ACCESS_POINT_INI_NAME = s3.NODE_DISABLE_MULTIREGION_ACCESS_POINT_INI_NAME;
exports.NODE_USE_ARN_REGION_CONFIG_OPTIONS = s3.NODE_USE_ARN_REGION_CONFIG_OPTIONS;
exports.NODE_USE_ARN_REGION_ENV_NAME = s3.NODE_USE_ARN_REGION_ENV_NAME;
exports.NODE_USE_ARN_REGION_INI_NAME = s3.NODE_USE_ARN_REGION_INI_NAME;
exports.bucketEndpointMiddleware = s3.bucketEndpointMiddleware;
exports.bucketEndpointMiddlewareOptions = s3.bucketEndpointMiddlewareOptions;
exports.bucketHostname = s3.bucketHostname;
exports.getArnResources = s3.getArnResources;
exports.getBucketEndpointPlugin = s3.getBucketEndpointPlugin;
exports.getSuffixForArnEndpoint = s3.getSuffixForArnEndpoint;
exports.resolveBucketEndpointConfig = s3.resolveBucketEndpointConfig;
exports.validateAccountId = s3.validateAccountId;
exports.validateDNSHostLabel = s3.validateDNSHostLabel;
exports.validateNoDualstack = s3.validateNoDualstack;
exports.validateNoFIPS = s3.validateNoFIPS;
exports.validateOutpostService = s3.validateOutpostService;
exports.validatePartition = s3.validatePartition;
exports.validateRegion = s3.validateRegion;
}));
//#endregion
//#region node_modules/@smithy/core/dist-es/submodules/checksum/chunked-blob-reader/chunked-blob-reader.js
async function blobReader(blob, onChunk, chunkSize = 1024 * 1024) {
const size = blob.size;
let totalBytesRead = 0;
while (totalBytesRead < size) {
const slice = blob.slice(totalBytesRead, Math.min(size, totalBytesRead + chunkSize));
onChunk(new Uint8Array(await slice.arrayBuffer()));
totalBytesRead += slice.size;
}
}
var init_chunked_blob_reader = __esmMin((() => {}));
//#endregion
//#region node_modules/@smithy/core/dist-es/submodules/checksum/hash-blob-browser/blobHasher.js
var blobHasher;
var init_blobHasher = __esmMin((() => {
init_chunked_blob_reader();
blobHasher = async function blobHasher(hashCtor, blob) {
const hash = new hashCtor();
await blobReader(blob, (chunk) => {
hash.update(chunk);
});
return hash.digest();
};
}));
//#endregion
//#region node_modules/@smithy/core/dist-es/submodules/checksum/hash-stream-node/HashCalculator.js
var HashCalculator;
var init_HashCalculator = __esmMin((() => {
init_serde();
HashCalculator = class extends Writable {
hash;
constructor(hash, options) {
super(options);
this.hash = hash;
}
_write(chunk, encoding, callback) {
try {
this.hash.update(toUint8Array(chunk));
} catch (err) {
return callback(err);
}
callback();
}
};
}));
//#endregion
//#region node_modules/@smithy/core/dist-es/submodules/checksum/hash-stream-node/fileStreamHasher.js
var fileStreamHasher, isReadStream;
var init_fileStreamHasher = __esmMin((() => {
init_HashCalculator();
fileStreamHasher = (hashCtor, fileStream) => new Promise((resolve, reject) => {
if (!isReadStream(fileStream)) {
reject(/* @__PURE__ */ new Error("Unable to calculate hash for non-file streams."));
return;
}
const fileStreamTee = createReadStream(fileStream.path, {
start: fileStream.start,
end: fileStream.end
});
const hash = new hashCtor();
const hashCalculator = new HashCalculator(hash);
fileStreamTee.pipe(hashCalculator);
fileStreamTee.on("error", (err) => {
hashCalculator.end();
reject(err);
});
hashCalculator.on("error", reject);
hashCalculator.on("finish", function() {
hash.digest().then(resolve).catch(reject);
});
});
isReadStream = (stream) => typeof stream.path === "string";
}));
//#endregion
//#region node_modules/@smithy/core/dist-es/submodules/checksum/hash-stream-node/readableStreamHasher.js
var readableStreamHasher;
var init_readableStreamHasher = __esmMin((() => {
init_HashCalculator();
readableStreamHasher = (hashCtor, readableStream) => {
if (readableStream.readableFlowing !== null) throw new Error("Unable to calculate hash for flowing readable stream");
const hash = new hashCtor();
const hashCalculator = new HashCalculator(hash);
readableStream.pipe(hashCalculator);
return new Promise((resolve, reject) => {
readableStream.on("error", (err) => {
hashCalculator.end();
reject(err);
});
hashCalculator.on("error", reject);
hashCalculator.on("finish", () => {
hash.digest().then(resolve).catch(reject);
});
});
};
}));
//#endregion
//#region node_modules/@smithy/core/dist-es/submodules/checksum/md5-js/constants.js
var INIT;
var init_constants = __esmMin((() => {
INIT = [
1732584193,
4023233417,
2562383102,
271733878
];
}));
//#endregion
//#region node_modules/@smithy/core/dist-es/submodules/checksum/md5-js/md5.js
function cmn(q, a, b, x, s, t) {
a = (a + q & 4294967295) + (x + t & 4294967295) & 4294967295;
return (a << s | a >>> 32 - s) + b & 4294967295;
}
function ff(a, b, c, d, x, s, t) {
return cmn(b & c | ~b & d, a, b, x, s, t);
}
function gg(a, b, c, d, x, s, t) {
return cmn(b & d | c & ~d, a, b, x, s, t);
}
function hh(a, b, c, d, x, s, t) {
return cmn(b ^ c ^ d, a, b, x, s, t);
}
function ii(a, b, c, d, x, s, t) {
return cmn(c ^ (b | ~d), a, b, x, s, t);
}
function isEmptyData(data) {
if (typeof data === "string") return data.length === 0;
return data.byteLength === 0;
}
function convertToBuffer(data) {
if (typeof data === "string") return fromUtf8(data);
if (ArrayBuffer.isView(data)) return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);
return new Uint8Array(data);
}
var Md5;
var init_md5 = __esmMin((() => {
init_serde();
init_constants();
Md5 = class {
state;
buffer;
bufferLength;
bytesHashed;
finished;
constructor() {
this.reset();
}
update(sourceData) {
if (isEmptyData(sourceData)) return;
else if (this.finished) throw new Error("Attempted to update an already finished hash.");
const data = convertToBuffer(sourceData);
let position = 0;
let { byteLength } = data;
this.bytesHashed += byteLength;
while (byteLength > 0) {
this.buffer.setUint8(this.bufferLength++, data[position++]);
byteLength--;
if (this.bufferLength === 64) {
this.hashBuffer();
this.bufferLength = 0;
}
}
}
async digest() {
if (!this.finished) {
const { buffer, bufferLength: undecoratedLength, bytesHashed } = this;
const bitsHashed = bytesHashed * 8;
buffer.setUint8(this.bufferLength++, 128);
if (undecoratedLength % 64 >= 56) {
for (let i = this.bufferLength; i < 64; i++) buffer.setUint8(i, 0);
this.hashBuffer();
this.bufferLength = 0;
}
for (let i = this.bufferLength; i < 56; i++) buffer.setUint8(i, 0);
buffer.setUint32(56, bitsHashed >>> 0, true);
buffer.setUint32(60, Math.floor(bitsHashed / 4294967296), true);
this.hashBuffer();
this.finished = true;
}
const out = /* @__PURE__ */ new DataView(/* @__PURE__ */ new ArrayBuffer(16));
for (let i = 0; i < 4; i++) out.setUint32(i * 4, this.state[i], true);
return new Uint8Array(out.buffer, out.byteOffset, out.byteLength);
}
hashBuffer() {
const { buffer, state } = this;
let a = state[0], b = state[1], c = state[2], d = state[3];
a = ff(a, b, c, d, buffer.getUint32(0, true), 7, 3614090360);
d = ff(d, a, b, c, buffer.getUint32(4, true), 12, 3905402710);
c = ff(c, d, a, b, buffer.getUint32(8, true), 17, 606105819);
b = ff(b, c, d, a, buffer.getUint32(12, true), 22, 3250441966);
a = ff(a, b, c, d, buffer.getUint32(16, true), 7, 4118548399);
d = ff(d, a, b, c, buffer.getUint32(20, true), 12, 1200080426);
c = ff(c, d, a, b, buffer.getUint32(24, true), 17, 2821735955);
b = ff(b, c, d, a, buffer.getUint32(28, true), 22, 4249261313);
a = ff(a, b, c, d, buffer.getUint32(32, true), 7, 1770035416);
d = ff(d, a, b, c, buffer.getUint32(36, true), 12, 2336552879);
c = ff(c, d, a, b, buffer.getUint32(40, true), 17, 4294925233);
b = ff(b, c, d, a, buffer.getUint32(44, true), 22, 2304563134);
a = ff(a, b, c, d, buffer.getUint32(48, true), 7, 1804603682);
d = ff(d, a, b, c, buffer.getUint32(52, true), 12, 4254626195);
c = ff(c, d, a, b, buffer.getUint32(56, true), 17, 2792965006);
b = ff(b, c, d, a, buffer.getUint32(60, true), 22, 1236535329);
a = gg(a, b, c, d, buffer.getUint32(4, true), 5, 4129170786);
d = gg(d, a, b, c, buffer.getUint32(24, true), 9, 3225465664);
c = gg(c, d, a, b, buffer.getUint32(44, true), 14, 643717713);
b = gg(b, c, d, a, buffer.getUint32(0, true), 20, 3921069994);
a = gg(a, b, c, d, buffer.getUint32(20, true), 5, 3593408605);
d = gg(d, a, b, c, buffer.getUint32(40, true), 9, 38016083);
c = gg(c, d, a, b, buffer.getUint32(60, true), 14, 3634488961);
b = gg(b, c, d, a, buffer.getUint32(16, true), 20, 3889429448);
a = gg(a, b, c, d, buffer.getUint32(36, true), 5, 568446438);
d = gg(d, a, b, c, buffer.getUint32(56, true), 9, 3275163606);
c = gg(c, d, a, b, buffer.getUint32(12, true), 14, 4107603335);
b = gg(b, c, d, a, buffer.getUint32(32, true), 20, 1163531501);
a = gg(a, b, c, d, buffer.getUint32(52, true), 5, 2850285829);
d = gg(d, a, b, c, buffer.getUint32(8, true), 9, 4243563512);
c = gg(c, d, a, b, buffer.getUint32(28, true), 14, 1735328473);
b = gg(b, c, d, a, buffer.getUint32(48, true), 20, 2368359562);
a = hh(a, b, c, d, buffer.getUint32(20, true), 4, 4294588738);
d = hh(d, a, b, c, buffer.getUint32(32, true), 11, 2272392833);
c = hh(c, d, a, b, buffer.getUint32(44, true), 16, 1839030562);
b = hh(b, c, d, a, buffer.getUint32(56, true), 23, 4259657740);
a = hh(a, b, c, d, buffer.getUint32(4, true), 4, 2763975236);
d = hh(d, a, b, c, buffer.getUint32(16, true), 11, 1272893353);
c = hh(c, d, a, b, buffer.getUint32(28, true), 16, 4139469664);
b = hh(b, c, d, a, buffer.getUint32(40, true), 23, 3200236656);
a = hh(a, b, c, d, buffer.getUint32(52, true), 4, 681279174);
d = hh(d, a, b, c, buffer.getUint32(0, true), 11, 3936430074);
c = hh(c, d, a, b, buffer.getUint32(12, true), 16, 3572445317);
b = hh(b, c, d, a, buffer.getUint32(24, true), 23, 76029189);
a = hh(a, b, c, d, buffer.getUint32(36, true), 4, 3654602809);
d = hh(d, a, b, c, buffer.getUint32(48, true), 11, 3873151461);
c = hh(c, d, a, b, buffer.getUint32(60, true), 16, 530742520);
b = hh(b, c, d, a, buffer.getUint32(8, true), 23, 3299628645);
a = ii(a, b, c, d, buffer.getUint32(0, true), 6, 4096336452);
d = ii(d, a, b, c, buffer.getUint32(28, true), 10, 1126891415);
c = ii(c, d, a, b, buffer.getUint32(56, true), 15, 2878612391);
b = ii(b, c, d, a, buffer.getUint32(20, true), 21, 4237533241);
a = ii(a, b, c, d, buffer.getUint32(48, true), 6, 1700485571);
d = ii(d, a, b, c, buffer.getUint32(12, true), 10, 2399980690);
c = ii(c, d, a, b, buffer.getUint32(40, true), 15, 4293915773);
b = ii(b, c, d, a, buffer.getUint32(4, true), 21, 2240044497);
a = ii(a, b, c, d, buffer.getUint32(32, true), 6, 1873313359);
d = ii(d, a, b, c, buffer.getUint32(60, true), 10, 4264355552);
c = ii(c, d, a, b, buffer.getUint32(24, true), 15, 2734768916);
b = ii(b, c, d, a, buffer.getUint32(52, true), 21, 1309151649);
a = ii(a, b, c, d, buffer.getUint32(16, true), 6, 4149444226);
d = ii(d, a, b, c, buffer.getUint32(44, true), 10, 3174756917);
c = ii(c, d, a, b, buffer.getUint32(8, true), 15, 718787259);
b = ii(b, c, d, a, buffer.getUint32(36, true), 21, 3951481745);
state[0] = a + state[0] & 4294967295;
state[1] = b + state[1] & 4294967295;
state[2] = c + state[2] & 4294967295;
state[3] = d + state[3] & 4294967295;
}
reset() {
this.state = Uint32Array.from(INIT);
this.buffer = /* @__PURE__ */ new DataView(/* @__PURE__ */ new ArrayBuffer(64));
this.bufferLength = 0;
this.bytesHashed = 0;
this.finished = false;
}
};
}));
//#endregion
//#region node_modules/@smithy/core/dist-es/submodules/checksum/index.js
var checksum_exports = /* @__PURE__ */ __exportAll({
Md5: () => Md5,
blobHasher: () => blobHasher,
blobReader: () => blobReader,
fileStreamHasher: () => fileStreamHasher,
readableStreamHasher: () => readableStreamHasher
});
var init_checksum = __esmMin((() => {
init_blobHasher();
init_fileStreamHasher();
init_readableStreamHasher();
init_md5();
init_chunked_blob_reader();
}));
//#endregion
//#region node_modules/@aws-sdk/client-s3/dist-cjs/runtimeConfig.shared.js
var require_runtimeConfig_shared = /* @__PURE__ */ __commonJSMin(((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.getRuntimeConfig = void 0;
const httpAuthSchemes_1 = (init_httpAuthSchemes(), __toCommonJS(httpAuthSchemes_exports));
const middleware_sdk_s3_1 = (init_dist_es(), __toCommonJS(dist_es_exports));
const signature_v4_multi_region_1 = require_dist_cjs$9();
const client_1 = (init_client$1(), __toCommonJS(client_exports$1));
const protocols_1 = (init_protocols(), __toCommonJS(protocols_exports));
const serde_1 = (init_serde(), __toCommonJS(serde_exports));
const httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider();
const endpointResolver_1 = require_endpointResolver();
const schemas_0_1 = require_schemas_0();
const getRuntimeConfig = (config) => {
return {
apiVersion: "2006-03-01",
base64Decoder: config?.base64Decoder ?? serde_1.fromBase64,
base64Encoder: config?.base64Encoder ?? serde_1.toBase64,
disableHostPrefix: config?.disableHostPrefix ?? false,
endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
extensions: config?.extensions ?? [],
getAwsChunkedEncodingStream: config?.getAwsChunkedEncodingStream ?? serde_1.getAwsChunkedEncodingStream,
httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultS3HttpAuthSchemeProvider,
httpAuthSchemes: config?.httpAuthSchemes ?? [{
schemeId: "aws.auth#sigv4",
identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
signer: new httpAuthSchemes_1.AwsSdkSigV4Signer()
}, {
schemeId: "aws.auth#sigv4a",
identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4a"),
signer: new httpAuthSchemes_1.AwsSdkSigV4ASigner()
}],
logger: config?.logger ?? new client_1.NoOpLogger(),
protocol: config?.protocol ?? middleware_sdk_s3_1.S3RestXmlProtocol,
protocolSettings: config?.protocolSettings ?? {
defaultNamespace: "com.amazonaws.s3",
errorTypeRegistries: schemas_0_1.errorTypeRegistries,
xmlNamespace: "http://s3.amazonaws.com/doc/2006-03-01/",
version: "2006-03-01",
serviceTarget: "AmazonS3"
},
sdkStreamMixin: config?.sdkStreamMixin ?? serde_1.sdkStreamMixin,
serviceId: config?.serviceId ?? "S3",
signerConstructor: config?.signerConstructor ?? signature_v4_multi_region_1.SignatureV4MultiRegion,
signingEscapePath: config?.signingEscapePath ?? false,
urlParser: config?.urlParser ?? protocols_1.parseUrl,
useArnRegion: config?.useArnRegion ?? void 0,
utf8Decoder: config?.utf8Decoder ?? serde_1.fromUtf8,
utf8Encoder: config?.utf8Encoder ?? serde_1.toUtf8
};
};
exports.getRuntimeConfig = getRuntimeConfig;
}));
//#endregion
//#region node_modules/@aws-sdk/client-s3/dist-cjs/runtimeConfig.js
var require_runtimeConfig = /* @__PURE__ */ __commonJSMin(((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.getRuntimeConfig = void 0;
const package_json_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)).__importDefault(require_package());
const client_1 = (init_client(), __toCommonJS(client_exports));
const httpAuthSchemes_1 = (init_httpAuthSchemes(), __toCommonJS(httpAuthSchemes_exports));
const credential_provider_node_1 = require_dist_cjs$5();
const middleware_bucket_endpoint_1 = require_dist_cjs$4();
const middleware_flexible_checksums_1 = require_dist_cjs$6();
const middleware_sdk_s3_1 = (init_dist_es(), __toCommonJS(dist_es_exports));
const checksum_1 = (init_checksum(), __toCommonJS(checksum_exports));
const client_2 = (init_client$1(), __toCommonJS(client_exports$1));
const config_1 = (init_config(), __toCommonJS(config_exports));
const event_streams_1 = (init_event_streams(), __toCommonJS(event_streams_exports));
const retry_1 = (init_retry(), __toCommonJS(retry_exports));
const serde_1 = (init_serde(), __toCommonJS(serde_exports));
const node_http_handler_1 = require_dist_cjs$11();
const runtimeConfig_shared_1 = require_runtimeConfig_shared();
const getRuntimeConfig = (config) => {
(0, client_2.emitWarningIfUnsupportedVersion)(process.version);
const defaultsMode = (0, config_1.resolveDefaultsModeConfig)(config);
const defaultConfigProvider = () => defaultsMode().then(client_2.loadConfigsForDefaultMode);
const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
(0, client_1.emitWarningIfUnsupportedVersion)(process.version);
const loaderConfig = {
profile: config?.profile,
logger: clientSharedValues.logger
};
return {
...clientSharedValues,
...config,
runtime: "node",
defaultsMode,
authSchemePreference: config?.authSchemePreference ?? (0, config_1.loadConfig)(httpAuthSchemes_1.NODE_AUTH_SCHEME_PREFERENCE_OPTIONS, loaderConfig),
bodyLengthChecker: config?.bodyLengthChecker ?? serde_1.calculateBodyLength,
credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, client_1.createDefaultUserAgentProvider)({
serviceId: clientSharedValues.serviceId,
clientVersion: package_json_1.default.version
}),
disableS3ExpressSessionAuth: config?.disableS3ExpressSessionAuth ?? (0, config_1.loadConfig)(middleware_sdk_s3_1.NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS, loaderConfig),
eventStreamSerdeProvider: config?.eventStreamSerdeProvider ?? event_streams_1.eventStreamSerdeProvider,
maxAttempts: config?.maxAttempts ?? (0, config_1.loadConfig)(retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS, config),
md5: config?.md5 ?? serde_1.Hash.bind(null, "md5"),
region: config?.region ?? (0, config_1.loadConfig)(config_1.NODE_REGION_CONFIG_OPTIONS, {
...config_1.NODE_REGION_CONFIG_FILE_OPTIONS,
...loaderConfig
}),
requestChecksumCalculation: config?.requestChecksumCalculation ?? (0, config_1.loadConfig)(middleware_flexible_checksums_1.NODE_REQUEST_CHECKSUM_CALCULATION_CONFIG_OPTIONS, loaderConfig),
requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
responseChecksumValidation: config?.responseChecksumValidation ?? (0, config_1.loadConfig)(middleware_flexible_checksums_1.NODE_RESPONSE_CHECKSUM_VALIDATION_CONFIG_OPTIONS, loaderConfig),
retryMode: config?.retryMode ?? (0, config_1.loadConfig)({
...retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
default: async () => (await defaultConfigProvider()).retryMode || retry_1.DEFAULT_RETRY_MODE
}, config),
sha1: config?.sha1 ?? serde_1.Hash.bind(null, "sha1"),
sha256: config?.sha256 ?? serde_1.Hash.bind(null, "sha256"),
sigv4aSigningRegionSet: config?.sigv4aSigningRegionSet ?? (0, config_1.loadConfig)(httpAuthSchemes_1.NODE_SIGV4A_CONFIG_OPTIONS, loaderConfig),
streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
streamHasher: config?.streamHasher ?? checksum_1.readableStreamHasher,
useArnRegion: config?.useArnRegion ?? (0, config_1.loadConfig)(middleware_bucket_endpoint_1.NODE_USE_ARN_REGION_CONFIG_OPTIONS, loaderConfig),
useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, config_1.loadConfig)(config_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, loaderConfig),
useFipsEndpoint: config?.useFipsEndpoint ?? (0, config_1.loadConfig)(config_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, loaderConfig),
userAgentAppId: config?.userAgentAppId ?? (0, config_1.loadConfig)(client_1.NODE_APP_ID_CONFIG_OPTIONS, loaderConfig)
};
};
exports.getRuntimeConfig = getRuntimeConfig;
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-ssec/dist-cjs/index.js
var require_dist_cjs$3 = /* @__PURE__ */ __commonJSMin(((exports) => {
var s3 = (init_s3(), __toCommonJS(s3_exports));
exports.getSsecPlugin = s3.getSsecPlugin;
exports.isValidBase64EncodedSSECustomerKey = s3.isValidBase64EncodedSSECustomerKey;
exports.ssecMiddleware = s3.ssecMiddleware;
exports.ssecMiddlewareOptions = s3.ssecMiddlewareOptions;
}));
//#endregion
//#region node_modules/@aws-sdk/middleware-location-constraint/dist-cjs/index.js
var require_dist_cjs$2 = /* @__PURE__ */ __commonJSMin(((exports) => {
var s3 = (init_s3(), __toCommonJS(s3_exports));
exports.getLocationConstraintPlugin = s3.getLocationConstraintPlugin;
exports.locationConstraintMiddleware = s3.locationConstraintMiddleware;
exports.locationConstraintMiddlewareOptions = s3.locationConstraintMiddlewareOptions;
}));
//#endregion
//#region node_modules/@aws-sdk/client-s3/dist-cjs/index.js
var require_dist_cjs$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
var client$1 = (init_client(), __toCommonJS(client_exports));
var middlewareExpectContinue = require_dist_cjs$8();
var middlewareFlexibleChecksums = require_dist_cjs$6();
var middlewareSdkS3 = (init_dist_es(), __toCommonJS(dist_es_exports));
var core = (init_dist_es$1(), __toCommonJS(dist_es_exports$1));
var client = (init_client$1(), __toCommonJS(client_exports$1));
var config = (init_config(), __toCommonJS(config_exports));
var endpoints = (init_endpoints(), __toCommonJS(endpoints_exports));
var eventStreams = (init_event_streams(), __toCommonJS(event_streams_exports));
var protocols = (init_protocols(), __toCommonJS(protocols_exports));
var retry = (init_retry(), __toCommonJS(retry_exports));
var schema = (init_schema(), __toCommonJS(schema_exports));
var httpAuthSchemeProvider = require_httpAuthSchemeProvider();
var schemas_0 = require_schemas_0();
var runtimeConfig = require_runtimeConfig();
var middlewareSsec = require_dist_cjs$3();
var middlewareLocationConstraint = require_dist_cjs$2();
var errors = require_errors();
var S3ServiceException = require_S3ServiceException();
const resolveClientEndpointParameters = (options) => {
return Object.assign(options, {
useFipsEndpoint: options.useFipsEndpoint ?? false,
useDualstackEndpoint: options.useDualstackEndpoint ?? false,
forcePathStyle: options.forcePathStyle ?? false,
useAccelerateEndpoint: options.useAccelerateEndpoint ?? false,
useGlobalEndpoint: options.useGlobalEndpoint ?? false,
disableMultiregionAccessPoints: options.disableMultiregionAccessPoints ?? false,
defaultSigningName: "s3",
clientContextParams: options.clientContextParams ?? {}
});
};
const commonParams = {
ForcePathStyle: {
type: "clientContextParams",
name: "forcePathStyle"
},
UseArnRegion: {
type: "clientContextParams",
name: "useArnRegion"
},
DisableMultiRegionAccessPoints: {
type: "clientContextParams",
name: "disableMultiregionAccessPoints"
},
Accelerate: {
type: "clientContextParams",
name: "useAccelerateEndpoint"
},
DisableS3ExpressSessionAuth: {
type: "clientContextParams",
name: "disableS3ExpressSessionAuth"
},
UseGlobalEndpoint: {
type: "builtInParams",
name: "useGlobalEndpoint"
},
UseFIPS: {
type: "builtInParams",
name: "useFipsEndpoint"
},
Endpoint: {
type: "builtInParams",
name: "endpoint"
},
Region: {
type: "builtInParams",
name: "region"
},
UseDualStack: {
type: "builtInParams",
name: "useDualstackEndpoint"
}
};
var CreateSessionCommand = class extends client.Command.classBuilder().ep({
...commonParams,
DisableS3ExpressSessionAuth: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "CreateSession", {}).n("S3Client", "CreateSessionCommand").sc(schemas_0.CreateSession$).build() {};
const getHttpAuthExtensionConfiguration = (runtimeConfig) => {
const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
let _credentials = runtimeConfig.credentials;
return {
setHttpAuthScheme(httpAuthScheme) {
const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
if (index === -1) _httpAuthSchemes.push(httpAuthScheme);
else _httpAuthSchemes.splice(index, 1, httpAuthScheme);
},
httpAuthSchemes() {
return _httpAuthSchemes;
},
setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
_httpAuthSchemeProvider = httpAuthSchemeProvider;
},
httpAuthSchemeProvider() {
return _httpAuthSchemeProvider;
},
setCredentials(credentials) {
_credentials = credentials;
},
credentials() {
return _credentials;
}
};
};
const resolveHttpAuthRuntimeConfig = (config) => {
return {
httpAuthSchemes: config.httpAuthSchemes(),
httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
credentials: config.credentials()
};
};
const resolveRuntimeExtensions = (runtimeConfig, extensions) => {
const extensionConfiguration = Object.assign(client$1.getAwsRegionExtensionConfiguration(runtimeConfig), client.getDefaultExtensionConfiguration(runtimeConfig), protocols.getHttpHandlerExtensionConfiguration(runtimeConfig), getHttpAuthExtensionConfiguration(runtimeConfig));
extensions.forEach((extension) => extension.configure(extensionConfiguration));
return Object.assign(runtimeConfig, client$1.resolveAwsRegionExtensionConfiguration(extensionConfiguration), client.resolveDefaultRuntimeConfig(extensionConfiguration), protocols.resolveHttpHandlerRuntimeConfig(extensionConfiguration), resolveHttpAuthRuntimeConfig(extensionConfiguration));
};
var S3Client = class extends client.Client {
config;
constructor(...[configuration]) {
const _config_0 = runtimeConfig.getRuntimeConfig(configuration || {});
super(_config_0);
this.initConfig = _config_0;
const _config_1 = resolveClientEndpointParameters(_config_0);
const _config_2 = client$1.resolveUserAgentConfig(_config_1);
const _config_3 = middlewareFlexibleChecksums.resolveFlexibleChecksumsConfig(_config_2);
const _config_4 = retry.resolveRetryConfig(_config_3);
const _config_5 = config.resolveRegionConfig(_config_4);
const _config_6 = client$1.resolveHostHeaderConfig(_config_5);
const _config_7 = endpoints.resolveEndpointConfig(_config_6);
const _config_8 = eventStreams.resolveEventStreamSerdeConfig(_config_7);
const _config_9 = httpAuthSchemeProvider.resolveHttpAuthSchemeConfig(_config_8);
const _config_11 = resolveRuntimeExtensions(middlewareSdkS3.resolveS3Config(_config_9, { session: [() => this, CreateSessionCommand] }), configuration?.extensions || []);
this.config = _config_11;
this.middlewareStack.use(schema.getSchemaSerdePlugin(this.config));
this.middlewareStack.use(client$1.getUserAgentPlugin(this.config));
this.middlewareStack.use(retry.getRetryPlugin(this.config));
this.middlewareStack.use(protocols.getContentLengthPlugin(this.config));
this.middlewareStack.use(client$1.getHostHeaderPlugin(this.config));
this.middlewareStack.use(client$1.getLoggerPlugin(this.config));
this.middlewareStack.use(client$1.getRecursionDetectionPlugin(this.config));
this.middlewareStack.use(core.getHttpAuthSchemeEndpointRuleSetPlugin(this.config, {
httpAuthSchemeParametersProvider: httpAuthSchemeProvider.defaultS3HttpAuthSchemeParametersProvider,
identityProviderConfigProvider: async (config) => new core.DefaultIdentityProviderConfig({
"aws.auth#sigv4": config.credentials,
"aws.auth#sigv4a": config.credentials
})
}));
this.middlewareStack.use(core.getHttpSigningPlugin(this.config));
this.middlewareStack.use(middlewareSdkS3.getValidateBucketNamePlugin(this.config));
this.middlewareStack.use(middlewareExpectContinue.getAddExpectContinuePlugin(this.config));
this.middlewareStack.use(middlewareSdkS3.getRegionRedirectMiddlewarePlugin(this.config));
this.middlewareStack.use(middlewareSdkS3.getS3ExpressPlugin(this.config));
this.middlewareStack.use(middlewareSdkS3.getS3ExpressHttpSigningPlugin(this.config));
}
destroy() {
super.destroy();
}
};
var AbortMultipartUploadCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Key: {
type: "contextParams",
name: "Key"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "AbortMultipartUpload", {}).n("S3Client", "AbortMultipartUploadCommand").sc(schemas_0.AbortMultipartUpload$).build() {};
var CompleteMultipartUploadCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Key: {
type: "contextParams",
name: "Key"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareSdkS3.getThrow200ExceptionsPlugin(config),
middlewareSsec.getSsecPlugin(config)
];
}).s("AmazonS3", "CompleteMultipartUpload", {}).n("S3Client", "CompleteMultipartUploadCommand").sc(schemas_0.CompleteMultipartUpload$).build() {};
var CopyObjectCommand = class extends client.Command.classBuilder().ep({
...commonParams,
DisableS3ExpressSessionAuth: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
},
Key: {
type: "contextParams",
name: "Key"
},
CopySource: {
type: "contextParams",
name: "CopySource"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareSdkS3.getThrow200ExceptionsPlugin(config),
middlewareSsec.getSsecPlugin(config)
];
}).s("AmazonS3", "CopyObject", {}).n("S3Client", "CopyObjectCommand").sc(schemas_0.CopyObject$).build() {};
var CreateBucketCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
DisableAccessPoints: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareSdkS3.getThrow200ExceptionsPlugin(config),
middlewareLocationConstraint.getLocationConstraintPlugin(config)
];
}).s("AmazonS3", "CreateBucket", {}).n("S3Client", "CreateBucketCommand").sc(schemas_0.CreateBucket$).build() {};
var CreateBucketMetadataConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "CreateBucketMetadataConfiguration", {}).n("S3Client", "CreateBucketMetadataConfigurationCommand").sc(schemas_0.CreateBucketMetadataConfiguration$).build() {};
var CreateBucketMetadataTableConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "CreateBucketMetadataTableConfiguration", {}).n("S3Client", "CreateBucketMetadataTableConfigurationCommand").sc(schemas_0.CreateBucketMetadataTableConfiguration$).build() {};
var CreateMultipartUploadCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Key: {
type: "contextParams",
name: "Key"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareSdkS3.getThrow200ExceptionsPlugin(config),
middlewareSsec.getSsecPlugin(config)
];
}).s("AmazonS3", "CreateMultipartUpload", {}).n("S3Client", "CreateMultipartUploadCommand").sc(schemas_0.CreateMultipartUpload$).build() {};
var DeleteBucketAnalyticsConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucketAnalyticsConfiguration", {}).n("S3Client", "DeleteBucketAnalyticsConfigurationCommand").sc(schemas_0.DeleteBucketAnalyticsConfiguration$).build() {};
var DeleteBucketCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucket", {}).n("S3Client", "DeleteBucketCommand").sc(schemas_0.DeleteBucket$).build() {};
var DeleteBucketCorsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucketCors", {}).n("S3Client", "DeleteBucketCorsCommand").sc(schemas_0.DeleteBucketCors$).build() {};
var DeleteBucketEncryptionCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucketEncryption", {}).n("S3Client", "DeleteBucketEncryptionCommand").sc(schemas_0.DeleteBucketEncryption$).build() {};
var DeleteBucketIntelligentTieringConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucketIntelligentTieringConfiguration", {}).n("S3Client", "DeleteBucketIntelligentTieringConfigurationCommand").sc(schemas_0.DeleteBucketIntelligentTieringConfiguration$).build() {};
var DeleteBucketInventoryConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucketInventoryConfiguration", {}).n("S3Client", "DeleteBucketInventoryConfigurationCommand").sc(schemas_0.DeleteBucketInventoryConfiguration$).build() {};
var DeleteBucketLifecycleCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucketLifecycle", {}).n("S3Client", "DeleteBucketLifecycleCommand").sc(schemas_0.DeleteBucketLifecycle$).build() {};
var DeleteBucketMetadataConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucketMetadataConfiguration", {}).n("S3Client", "DeleteBucketMetadataConfigurationCommand").sc(schemas_0.DeleteBucketMetadataConfiguration$).build() {};
var DeleteBucketMetadataTableConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucketMetadataTableConfiguration", {}).n("S3Client", "DeleteBucketMetadataTableConfigurationCommand").sc(schemas_0.DeleteBucketMetadataTableConfiguration$).build() {};
var DeleteBucketMetricsConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucketMetricsConfiguration", {}).n("S3Client", "DeleteBucketMetricsConfigurationCommand").sc(schemas_0.DeleteBucketMetricsConfiguration$).build() {};
var DeleteBucketOwnershipControlsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucketOwnershipControls", {}).n("S3Client", "DeleteBucketOwnershipControlsCommand").sc(schemas_0.DeleteBucketOwnershipControls$).build() {};
var DeleteBucketPolicyCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucketPolicy", {}).n("S3Client", "DeleteBucketPolicyCommand").sc(schemas_0.DeleteBucketPolicy$).build() {};
var DeleteBucketReplicationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucketReplication", {}).n("S3Client", "DeleteBucketReplicationCommand").sc(schemas_0.DeleteBucketReplication$).build() {};
var DeleteBucketTaggingCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucketTagging", {}).n("S3Client", "DeleteBucketTaggingCommand").sc(schemas_0.DeleteBucketTagging$).build() {};
var DeleteBucketWebsiteCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeleteBucketWebsite", {}).n("S3Client", "DeleteBucketWebsiteCommand").sc(schemas_0.DeleteBucketWebsite$).build() {};
var DeleteObjectCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Key: {
type: "contextParams",
name: "Key"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "DeleteObject", {}).n("S3Client", "DeleteObjectCommand").sc(schemas_0.DeleteObject$).build() {};
var DeleteObjectsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
}),
middlewareSdkS3.getThrow200ExceptionsPlugin(config)
];
}).s("AmazonS3", "DeleteObjects", {}).n("S3Client", "DeleteObjectsCommand").sc(schemas_0.DeleteObjects$).build() {};
var DeleteObjectTaggingCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "DeleteObjectTagging", {}).n("S3Client", "DeleteObjectTaggingCommand").sc(schemas_0.DeleteObjectTagging$).build() {};
var DeletePublicAccessBlockCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "DeletePublicAccessBlock", {}).n("S3Client", "DeletePublicAccessBlockCommand").sc(schemas_0.DeletePublicAccessBlock$).build() {};
var GetBucketAbacCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketAbac", {}).n("S3Client", "GetBucketAbacCommand").sc(schemas_0.GetBucketAbac$).build() {};
var GetBucketAccelerateConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketAccelerateConfiguration", {}).n("S3Client", "GetBucketAccelerateConfigurationCommand").sc(schemas_0.GetBucketAccelerateConfiguration$).build() {};
var GetBucketAclCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketAcl", {}).n("S3Client", "GetBucketAclCommand").sc(schemas_0.GetBucketAcl$).build() {};
var GetBucketAnalyticsConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketAnalyticsConfiguration", {}).n("S3Client", "GetBucketAnalyticsConfigurationCommand").sc(schemas_0.GetBucketAnalyticsConfiguration$).build() {};
var GetBucketCorsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketCors", {}).n("S3Client", "GetBucketCorsCommand").sc(schemas_0.GetBucketCors$).build() {};
var GetBucketEncryptionCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketEncryption", {}).n("S3Client", "GetBucketEncryptionCommand").sc(schemas_0.GetBucketEncryption$).build() {};
var GetBucketIntelligentTieringConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketIntelligentTieringConfiguration", {}).n("S3Client", "GetBucketIntelligentTieringConfigurationCommand").sc(schemas_0.GetBucketIntelligentTieringConfiguration$).build() {};
var GetBucketInventoryConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketInventoryConfiguration", {}).n("S3Client", "GetBucketInventoryConfigurationCommand").sc(schemas_0.GetBucketInventoryConfiguration$).build() {};
var GetBucketLifecycleConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketLifecycleConfiguration", {}).n("S3Client", "GetBucketLifecycleConfigurationCommand").sc(schemas_0.GetBucketLifecycleConfiguration$).build() {};
var GetBucketLocationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketLocation", {}).n("S3Client", "GetBucketLocationCommand").sc(schemas_0.GetBucketLocation$).build() {};
var GetBucketLoggingCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketLogging", {}).n("S3Client", "GetBucketLoggingCommand").sc(schemas_0.GetBucketLogging$).build() {};
var GetBucketMetadataConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketMetadataConfiguration", {}).n("S3Client", "GetBucketMetadataConfigurationCommand").sc(schemas_0.GetBucketMetadataConfiguration$).build() {};
var GetBucketMetadataTableConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketMetadataTableConfiguration", {}).n("S3Client", "GetBucketMetadataTableConfigurationCommand").sc(schemas_0.GetBucketMetadataTableConfiguration$).build() {};
var GetBucketMetricsConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketMetricsConfiguration", {}).n("S3Client", "GetBucketMetricsConfigurationCommand").sc(schemas_0.GetBucketMetricsConfiguration$).build() {};
var GetBucketNotificationConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketNotificationConfiguration", {}).n("S3Client", "GetBucketNotificationConfigurationCommand").sc(schemas_0.GetBucketNotificationConfiguration$).build() {};
var GetBucketOwnershipControlsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketOwnershipControls", {}).n("S3Client", "GetBucketOwnershipControlsCommand").sc(schemas_0.GetBucketOwnershipControls$).build() {};
var GetBucketPolicyCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "GetBucketPolicy", {}).n("S3Client", "GetBucketPolicyCommand").sc(schemas_0.GetBucketPolicy$).build() {};
var GetBucketPolicyStatusCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketPolicyStatus", {}).n("S3Client", "GetBucketPolicyStatusCommand").sc(schemas_0.GetBucketPolicyStatus$).build() {};
var GetBucketReplicationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketReplication", {}).n("S3Client", "GetBucketReplicationCommand").sc(schemas_0.GetBucketReplication$).build() {};
var GetBucketRequestPaymentCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketRequestPayment", {}).n("S3Client", "GetBucketRequestPaymentCommand").sc(schemas_0.GetBucketRequestPayment$).build() {};
var GetBucketTaggingCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketTagging", {}).n("S3Client", "GetBucketTaggingCommand").sc(schemas_0.GetBucketTagging$).build() {};
var GetBucketVersioningCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketVersioning", {}).n("S3Client", "GetBucketVersioningCommand").sc(schemas_0.GetBucketVersioning$).build() {};
var GetBucketWebsiteCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetBucketWebsite", {}).n("S3Client", "GetBucketWebsiteCommand").sc(schemas_0.GetBucketWebsite$).build() {};
var GetObjectAclCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Key: {
type: "contextParams",
name: "Key"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetObjectAcl", {}).n("S3Client", "GetObjectAclCommand").sc(schemas_0.GetObjectAcl$).build() {};
var GetObjectAttributesCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareSdkS3.getThrow200ExceptionsPlugin(config),
middlewareSsec.getSsecPlugin(config)
];
}).s("AmazonS3", "GetObjectAttributes", {}).n("S3Client", "GetObjectAttributesCommand").sc(schemas_0.GetObjectAttributes$).build() {};
var GetObjectCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Key: {
type: "contextParams",
name: "Key"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestChecksumRequired: false,
requestValidationModeMember: "ChecksumMode",
"responseAlgorithms": [
"CRC64NVME",
"CRC32",
"CRC32C",
"SHA256",
"SHA1",
"SHA512",
"MD5",
"XXHASH64",
"XXHASH3",
"XXHASH128"
]
}),
middlewareSsec.getSsecPlugin(config),
middlewareSdkS3.getS3ExpiresMiddlewarePlugin(config)
];
}).s("AmazonS3", "GetObject", {}).n("S3Client", "GetObjectCommand").sc(schemas_0.GetObject$).build() {};
var GetObjectLegalHoldCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetObjectLegalHold", {}).n("S3Client", "GetObjectLegalHoldCommand").sc(schemas_0.GetObjectLegalHold$).build() {};
var GetObjectLockConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetObjectLockConfiguration", {}).n("S3Client", "GetObjectLockConfigurationCommand").sc(schemas_0.GetObjectLockConfiguration$).build() {};
var GetObjectRetentionCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetObjectRetention", {}).n("S3Client", "GetObjectRetentionCommand").sc(schemas_0.GetObjectRetention$).build() {};
var GetObjectTaggingCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetObjectTagging", {}).n("S3Client", "GetObjectTaggingCommand").sc(schemas_0.GetObjectTagging$).build() {};
var GetObjectTorrentCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "GetObjectTorrent", {}).n("S3Client", "GetObjectTorrentCommand").sc(schemas_0.GetObjectTorrent$).build() {};
var GetPublicAccessBlockCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "GetPublicAccessBlock", {}).n("S3Client", "GetPublicAccessBlockCommand").sc(schemas_0.GetPublicAccessBlock$).build() {};
var HeadBucketCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "HeadBucket", {}).n("S3Client", "HeadBucketCommand").sc(schemas_0.HeadBucket$).build() {};
var HeadObjectCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Key: {
type: "contextParams",
name: "Key"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareSdkS3.getThrow200ExceptionsPlugin(config),
middlewareSsec.getSsecPlugin(config),
middlewareSdkS3.getS3ExpiresMiddlewarePlugin(config)
];
}).s("AmazonS3", "HeadObject", {}).n("S3Client", "HeadObjectCommand").sc(schemas_0.HeadObject$).build() {};
var ListBucketAnalyticsConfigurationsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "ListBucketAnalyticsConfigurations", {}).n("S3Client", "ListBucketAnalyticsConfigurationsCommand").sc(schemas_0.ListBucketAnalyticsConfigurations$).build() {};
var ListBucketIntelligentTieringConfigurationsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "ListBucketIntelligentTieringConfigurations", {}).n("S3Client", "ListBucketIntelligentTieringConfigurationsCommand").sc(schemas_0.ListBucketIntelligentTieringConfigurations$).build() {};
var ListBucketInventoryConfigurationsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "ListBucketInventoryConfigurations", {}).n("S3Client", "ListBucketInventoryConfigurationsCommand").sc(schemas_0.ListBucketInventoryConfigurations$).build() {};
var ListBucketMetricsConfigurationsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "ListBucketMetricsConfigurations", {}).n("S3Client", "ListBucketMetricsConfigurationsCommand").sc(schemas_0.ListBucketMetricsConfigurations$).build() {};
var ListBucketsCommand = class extends client.Command.classBuilder().ep(commonParams).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "ListBuckets", {}).n("S3Client", "ListBucketsCommand").sc(schemas_0.ListBuckets$).build() {};
var ListDirectoryBucketsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "ListDirectoryBuckets", {}).n("S3Client", "ListDirectoryBucketsCommand").sc(schemas_0.ListDirectoryBuckets$).build() {};
var ListMultipartUploadsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Prefix: {
type: "contextParams",
name: "Prefix"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "ListMultipartUploads", {}).n("S3Client", "ListMultipartUploadsCommand").sc(schemas_0.ListMultipartUploads$).build() {};
var ListObjectsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Prefix: {
type: "contextParams",
name: "Prefix"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "ListObjects", {}).n("S3Client", "ListObjectsCommand").sc(schemas_0.ListObjects$).build() {};
var ListObjectsV2Command = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Prefix: {
type: "contextParams",
name: "Prefix"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "ListObjectsV2", {}).n("S3Client", "ListObjectsV2Command").sc(schemas_0.ListObjectsV2$).build() {};
var ListObjectVersionsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Prefix: {
type: "contextParams",
name: "Prefix"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "ListObjectVersions", {}).n("S3Client", "ListObjectVersionsCommand").sc(schemas_0.ListObjectVersions$).build() {};
var ListPartsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Key: {
type: "contextParams",
name: "Key"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareSdkS3.getThrow200ExceptionsPlugin(config),
middlewareSsec.getSsecPlugin(config)
];
}).s("AmazonS3", "ListParts", {}).n("S3Client", "ListPartsCommand").sc(schemas_0.ListParts$).build() {};
var PutBucketAbacCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: false
})];
}).s("AmazonS3", "PutBucketAbac", {}).n("S3Client", "PutBucketAbacCommand").sc(schemas_0.PutBucketAbac$).build() {};
var PutBucketAccelerateConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: false
})];
}).s("AmazonS3", "PutBucketAccelerateConfiguration", {}).n("S3Client", "PutBucketAccelerateConfigurationCommand").sc(schemas_0.PutBucketAccelerateConfiguration$).build() {};
var PutBucketAclCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "PutBucketAcl", {}).n("S3Client", "PutBucketAclCommand").sc(schemas_0.PutBucketAcl$).build() {};
var PutBucketAnalyticsConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "PutBucketAnalyticsConfiguration", {}).n("S3Client", "PutBucketAnalyticsConfigurationCommand").sc(schemas_0.PutBucketAnalyticsConfiguration$).build() {};
var PutBucketCorsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "PutBucketCors", {}).n("S3Client", "PutBucketCorsCommand").sc(schemas_0.PutBucketCors$).build() {};
var PutBucketEncryptionCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "PutBucketEncryption", {}).n("S3Client", "PutBucketEncryptionCommand").sc(schemas_0.PutBucketEncryption$).build() {};
var PutBucketIntelligentTieringConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "PutBucketIntelligentTieringConfiguration", {}).n("S3Client", "PutBucketIntelligentTieringConfigurationCommand").sc(schemas_0.PutBucketIntelligentTieringConfiguration$).build() {};
var PutBucketInventoryConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "PutBucketInventoryConfiguration", {}).n("S3Client", "PutBucketInventoryConfigurationCommand").sc(schemas_0.PutBucketInventoryConfiguration$).build() {};
var PutBucketLifecycleConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
}),
middlewareSdkS3.getThrow200ExceptionsPlugin(config)
];
}).s("AmazonS3", "PutBucketLifecycleConfiguration", {}).n("S3Client", "PutBucketLifecycleConfigurationCommand").sc(schemas_0.PutBucketLifecycleConfiguration$).build() {};
var PutBucketLoggingCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "PutBucketLogging", {}).n("S3Client", "PutBucketLoggingCommand").sc(schemas_0.PutBucketLogging$).build() {};
var PutBucketMetricsConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "PutBucketMetricsConfiguration", {}).n("S3Client", "PutBucketMetricsConfigurationCommand").sc(schemas_0.PutBucketMetricsConfiguration$).build() {};
var PutBucketNotificationConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "PutBucketNotificationConfiguration", {}).n("S3Client", "PutBucketNotificationConfigurationCommand").sc(schemas_0.PutBucketNotificationConfiguration$).build() {};
var PutBucketOwnershipControlsCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "PutBucketOwnershipControls", {}).n("S3Client", "PutBucketOwnershipControlsCommand").sc(schemas_0.PutBucketOwnershipControls$).build() {};
var PutBucketPolicyCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "PutBucketPolicy", {}).n("S3Client", "PutBucketPolicyCommand").sc(schemas_0.PutBucketPolicy$).build() {};
var PutBucketReplicationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "PutBucketReplication", {}).n("S3Client", "PutBucketReplicationCommand").sc(schemas_0.PutBucketReplication$).build() {};
var PutBucketRequestPaymentCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "PutBucketRequestPayment", {}).n("S3Client", "PutBucketRequestPaymentCommand").sc(schemas_0.PutBucketRequestPayment$).build() {};
var PutBucketTaggingCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "PutBucketTagging", {}).n("S3Client", "PutBucketTaggingCommand").sc(schemas_0.PutBucketTagging$).build() {};
var PutBucketVersioningCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "PutBucketVersioning", {}).n("S3Client", "PutBucketVersioningCommand").sc(schemas_0.PutBucketVersioning$).build() {};
var PutBucketWebsiteCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "PutBucketWebsite", {}).n("S3Client", "PutBucketWebsiteCommand").sc(schemas_0.PutBucketWebsite$).build() {};
var PutObjectAclCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Key: {
type: "contextParams",
name: "Key"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
}),
middlewareSdkS3.getThrow200ExceptionsPlugin(config)
];
}).s("AmazonS3", "PutObjectAcl", {}).n("S3Client", "PutObjectAclCommand").sc(schemas_0.PutObjectAcl$).build() {};
var PutObjectCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Key: {
type: "contextParams",
name: "Key"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: false
}),
middlewareSdkS3.getCheckContentLengthHeaderPlugin(config),
middlewareSdkS3.getThrow200ExceptionsPlugin(config),
middlewareSsec.getSsecPlugin(config)
];
}).s("AmazonS3", "PutObject", {}).n("S3Client", "PutObjectCommand").sc(schemas_0.PutObject$).build() {};
var PutObjectLegalHoldCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
}),
middlewareSdkS3.getThrow200ExceptionsPlugin(config)
];
}).s("AmazonS3", "PutObjectLegalHold", {}).n("S3Client", "PutObjectLegalHoldCommand").sc(schemas_0.PutObjectLegalHold$).build() {};
var PutObjectLockConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
}),
middlewareSdkS3.getThrow200ExceptionsPlugin(config)
];
}).s("AmazonS3", "PutObjectLockConfiguration", {}).n("S3Client", "PutObjectLockConfigurationCommand").sc(schemas_0.PutObjectLockConfiguration$).build() {};
var PutObjectRetentionCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
}),
middlewareSdkS3.getThrow200ExceptionsPlugin(config)
];
}).s("AmazonS3", "PutObjectRetention", {}).n("S3Client", "PutObjectRetentionCommand").sc(schemas_0.PutObjectRetention$).build() {};
var PutObjectTaggingCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
}),
middlewareSdkS3.getThrow200ExceptionsPlugin(config)
];
}).s("AmazonS3", "PutObjectTagging", {}).n("S3Client", "PutObjectTaggingCommand").sc(schemas_0.PutObjectTagging$).build() {};
var PutPublicAccessBlockCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "PutPublicAccessBlock", {}).n("S3Client", "PutPublicAccessBlockCommand").sc(schemas_0.PutPublicAccessBlock$).build() {};
var RenameObjectCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Key: {
type: "contextParams",
name: "Key"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSdkS3.getThrow200ExceptionsPlugin(config)];
}).s("AmazonS3", "RenameObject", {}).n("S3Client", "RenameObjectCommand").sc(schemas_0.RenameObject$).build() {};
var RestoreObjectCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: false
}),
middlewareSdkS3.getThrow200ExceptionsPlugin(config)
];
}).s("AmazonS3", "RestoreObject", {}).n("S3Client", "RestoreObjectCommand").sc(schemas_0.RestoreObject$).build() {};
var SelectObjectContentCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareSsec.getSsecPlugin(config)];
}).s("AmazonS3", "SelectObjectContent", { eventStream: { output: true } }).n("S3Client", "SelectObjectContentCommand").sc(schemas_0.SelectObjectContent$).build() {};
var UpdateBucketMetadataInventoryTableConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "UpdateBucketMetadataInventoryTableConfiguration", {}).n("S3Client", "UpdateBucketMetadataInventoryTableConfigurationCommand").sc(schemas_0.UpdateBucketMetadataInventoryTableConfiguration$).build() {};
var UpdateBucketMetadataJournalTableConfigurationCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseS3ExpressControlEndpoint: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()), middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
})];
}).s("AmazonS3", "UpdateBucketMetadataJournalTableConfiguration", {}).n("S3Client", "UpdateBucketMetadataJournalTableConfigurationCommand").sc(schemas_0.UpdateBucketMetadataJournalTableConfiguration$).build() {};
var UpdateObjectEncryptionCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: true
}),
middlewareSdkS3.getThrow200ExceptionsPlugin(config)
];
}).s("AmazonS3", "UpdateObjectEncryption", {}).n("S3Client", "UpdateObjectEncryptionCommand").sc(schemas_0.UpdateObjectEncryption$).build() {};
var UploadPartCommand = class extends client.Command.classBuilder().ep({
...commonParams,
Bucket: {
type: "contextParams",
name: "Bucket"
},
Key: {
type: "contextParams",
name: "Key"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareFlexibleChecksums.getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: {
"httpHeader": "x-amz-sdk-checksum-algorithm",
"name": "ChecksumAlgorithm"
},
requestChecksumRequired: false
}),
middlewareSdkS3.getThrow200ExceptionsPlugin(config),
middlewareSsec.getSsecPlugin(config)
];
}).s("AmazonS3", "UploadPart", {}).n("S3Client", "UploadPartCommand").sc(schemas_0.UploadPart$).build() {};
var UploadPartCopyCommand = class extends client.Command.classBuilder().ep({
...commonParams,
DisableS3ExpressSessionAuth: {
type: "staticContextParams",
value: true
},
Bucket: {
type: "contextParams",
name: "Bucket"
}
}).m(function(Command, cs, config, o) {
return [
endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
middlewareSdkS3.getThrow200ExceptionsPlugin(config),
middlewareSsec.getSsecPlugin(config)
];
}).s("AmazonS3", "UploadPartCopy", {}).n("S3Client", "UploadPartCopyCommand").sc(schemas_0.UploadPartCopy$).build() {};
var WriteGetObjectResponseCommand = class extends client.Command.classBuilder().ep({
...commonParams,
UseObjectLambdaEndpoint: {
type: "staticContextParams",
value: true
}
}).m(function(Command, cs, config, o) {
return [endpoints.getEndpointPlugin(config, Command.getEndpointParameterInstructions())];
}).s("AmazonS3", "WriteGetObjectResponse", {}).n("S3Client", "WriteGetObjectResponseCommand").sc(schemas_0.WriteGetObjectResponse$).build() {};
const paginateListBuckets = core.createPaginator(S3Client, ListBucketsCommand, "ContinuationToken", "ContinuationToken", "MaxBuckets");
const paginateListDirectoryBuckets = core.createPaginator(S3Client, ListDirectoryBucketsCommand, "ContinuationToken", "ContinuationToken", "MaxDirectoryBuckets");
const paginateListObjectsV2 = core.createPaginator(S3Client, ListObjectsV2Command, "ContinuationToken", "NextContinuationToken", "MaxKeys");
const paginateListParts = core.createPaginator(S3Client, ListPartsCommand, "PartNumberMarker", "NextPartNumberMarker", "MaxParts");
const checkState$3 = async (client$1, input) => {
let reason;
try {
reason = await client$1.send(new HeadBucketCommand(input));
return {
state: client.WaiterState.SUCCESS,
reason
};
} catch (exception) {
reason = exception;
if (exception.name === "NotFound") return {
state: client.WaiterState.RETRY,
reason
};
}
return {
state: client.WaiterState.RETRY,
reason
};
};
const waitForBucketExists = async (params, input) => {
return client.createWaiter({
minDelay: 5,
maxDelay: 120,
...params
}, input, checkState$3);
};
const waitUntilBucketExists = async (params, input) => {
const result = await client.createWaiter({
minDelay: 5,
maxDelay: 120,
...params
}, input, checkState$3);
return client.checkExceptions(result);
};
const checkState$2 = async (client$1, input) => {
let reason;
try {
reason = await client$1.send(new HeadBucketCommand(input));
} catch (exception) {
reason = exception;
if (exception.name === "NotFound") return {
state: client.WaiterState.SUCCESS,
reason
};
}
return {
state: client.WaiterState.RETRY,
reason
};
};
const waitForBucketNotExists = async (params, input) => {
return client.createWaiter({
minDelay: 5,
maxDelay: 120,
...params
}, input, checkState$2);
};
const waitUntilBucketNotExists = async (params, input) => {
const result = await client.createWaiter({
minDelay: 5,
maxDelay: 120,
...params
}, input, checkState$2);
return client.checkExceptions(result);
};
const checkState$1 = async (client$1, input) => {
let reason;
try {
reason = await client$1.send(new HeadObjectCommand(input));
return {
state: client.WaiterState.SUCCESS,
reason
};
} catch (exception) {
reason = exception;
if (exception.name === "NotFound") return {
state: client.WaiterState.RETRY,
reason
};
}
return {
state: client.WaiterState.RETRY,
reason
};
};
const waitForObjectExists = async (params, input) => {
return client.createWaiter({
minDelay: 5,
maxDelay: 120,
...params
}, input, checkState$1);
};
const waitUntilObjectExists = async (params, input) => {
const result = await client.createWaiter({
minDelay: 5,
maxDelay: 120,
...params
}, input, checkState$1);
return client.checkExceptions(result);
};
const checkState = async (client$1, input) => {
let reason;
try {
reason = await client$1.send(new HeadObjectCommand(input));
} catch (exception) {
reason = exception;
if (exception.name === "NotFound") return {
state: client.WaiterState.SUCCESS,
reason
};
}
return {
state: client.WaiterState.RETRY,
reason
};
};
const waitForObjectNotExists = async (params, input) => {
return client.createWaiter({
minDelay: 5,
maxDelay: 120,
...params
}, input, checkState);
};
const waitUntilObjectNotExists = async (params, input) => {
const result = await client.createWaiter({
minDelay: 5,
maxDelay: 120,
...params
}, input, checkState);
return client.checkExceptions(result);
};
const commands = {
AbortMultipartUploadCommand,
CompleteMultipartUploadCommand,
CopyObjectCommand,
CreateBucketCommand,
CreateBucketMetadataConfigurationCommand,
CreateBucketMetadataTableConfigurationCommand,
CreateMultipartUploadCommand,
CreateSessionCommand,
DeleteBucketCommand,
DeleteBucketAnalyticsConfigurationCommand,
DeleteBucketCorsCommand,
DeleteBucketEncryptionCommand,
DeleteBucketIntelligentTieringConfigurationCommand,
DeleteBucketInventoryConfigurationCommand,
DeleteBucketLifecycleCommand,
DeleteBucketMetadataConfigurationCommand,
DeleteBucketMetadataTableConfigurationCommand,
DeleteBucketMetricsConfigurationCommand,
DeleteBucketOwnershipControlsCommand,
DeleteBucketPolicyCommand,
DeleteBucketReplicationCommand,
DeleteBucketTaggingCommand,
DeleteBucketWebsiteCommand,
DeleteObjectCommand,
DeleteObjectsCommand,
DeleteObjectTaggingCommand,
DeletePublicAccessBlockCommand,
GetBucketAbacCommand,
GetBucketAccelerateConfigurationCommand,
GetBucketAclCommand,
GetBucketAnalyticsConfigurationCommand,
GetBucketCorsCommand,
GetBucketEncryptionCommand,
GetBucketIntelligentTieringConfigurationCommand,
GetBucketInventoryConfigurationCommand,
GetBucketLifecycleConfigurationCommand,
GetBucketLocationCommand,
GetBucketLoggingCommand,
GetBucketMetadataConfigurationCommand,
GetBucketMetadataTableConfigurationCommand,
GetBucketMetricsConfigurationCommand,
GetBucketNotificationConfigurationCommand,
GetBucketOwnershipControlsCommand,
GetBucketPolicyCommand,
GetBucketPolicyStatusCommand,
GetBucketReplicationCommand,
GetBucketRequestPaymentCommand,
GetBucketTaggingCommand,
GetBucketVersioningCommand,
GetBucketWebsiteCommand,
GetObjectCommand,
GetObjectAclCommand,
GetObjectAttributesCommand,
GetObjectLegalHoldCommand,
GetObjectLockConfigurationCommand,
GetObjectRetentionCommand,
GetObjectTaggingCommand,
GetObjectTorrentCommand,
GetPublicAccessBlockCommand,
HeadBucketCommand,
HeadObjectCommand,
ListBucketAnalyticsConfigurationsCommand,
ListBucketIntelligentTieringConfigurationsCommand,
ListBucketInventoryConfigurationsCommand,
ListBucketMetricsConfigurationsCommand,
ListBucketsCommand,
ListDirectoryBucketsCommand,
ListMultipartUploadsCommand,
ListObjectsCommand,
ListObjectsV2Command,
ListObjectVersionsCommand,
ListPartsCommand,
PutBucketAbacCommand,
PutBucketAccelerateConfigurationCommand,
PutBucketAclCommand,
PutBucketAnalyticsConfigurationCommand,
PutBucketCorsCommand,
PutBucketEncryptionCommand,
PutBucketIntelligentTieringConfigurationCommand,
PutBucketInventoryConfigurationCommand,
PutBucketLifecycleConfigurationCommand,
PutBucketLoggingCommand,
PutBucketMetricsConfigurationCommand,
PutBucketNotificationConfigurationCommand,
PutBucketOwnershipControlsCommand,
PutBucketPolicyCommand,
PutBucketReplicationCommand,
PutBucketRequestPaymentCommand,
PutBucketTaggingCommand,
PutBucketVersioningCommand,
PutBucketWebsiteCommand,
PutObjectCommand,
PutObjectAclCommand,
PutObjectLegalHoldCommand,
PutObjectLockConfigurationCommand,
PutObjectRetentionCommand,
PutObjectTaggingCommand,
PutPublicAccessBlockCommand,
RenameObjectCommand,
RestoreObjectCommand,
SelectObjectContentCommand,
UpdateBucketMetadataInventoryTableConfigurationCommand,
UpdateBucketMetadataJournalTableConfigurationCommand,
UpdateObjectEncryptionCommand,
UploadPartCommand,
UploadPartCopyCommand,
WriteGetObjectResponseCommand
};
const paginators = {
paginateListBuckets,
paginateListDirectoryBuckets,
paginateListObjectsV2,
paginateListParts
};
const waiters = {
waitUntilBucketExists,
waitUntilBucketNotExists,
waitUntilObjectExists,
waitUntilObjectNotExists
};
var S3 = class extends S3Client {};
client.createAggregatedClient(commands, S3, {
paginators,
waiters
});
const BucketAbacStatus = {
Disabled: "Disabled",
Enabled: "Enabled"
};
const RequestCharged = { requester: "requester" };
const RequestPayer = { requester: "requester" };
const BucketAccelerateStatus = {
Enabled: "Enabled",
Suspended: "Suspended"
};
const Type = {
AmazonCustomerByEmail: "AmazonCustomerByEmail",
CanonicalUser: "CanonicalUser",
Group: "Group"
};
const Permission = {
FULL_CONTROL: "FULL_CONTROL",
READ: "READ",
READ_ACP: "READ_ACP",
WRITE: "WRITE",
WRITE_ACP: "WRITE_ACP"
};
const OwnerOverride = { Destination: "Destination" };
const ChecksumType = {
COMPOSITE: "COMPOSITE",
FULL_OBJECT: "FULL_OBJECT"
};
const ServerSideEncryption = {
AES256: "AES256",
aws_fsx: "aws:fsx",
aws_kms: "aws:kms",
aws_kms_dsse: "aws:kms:dsse"
};
const ObjectCannedACL = {
authenticated_read: "authenticated-read",
aws_exec_read: "aws-exec-read",
bucket_owner_full_control: "bucket-owner-full-control",
bucket_owner_read: "bucket-owner-read",
private: "private",
public_read: "public-read",
public_read_write: "public-read-write"
};
const ChecksumAlgorithm = {
CRC32: "CRC32",
CRC32C: "CRC32C",
CRC64NVME: "CRC64NVME",
MD5: "MD5",
SHA1: "SHA1",
SHA256: "SHA256",
SHA512: "SHA512",
XXHASH128: "XXHASH128",
XXHASH3: "XXHASH3",
XXHASH64: "XXHASH64"
};
const MetadataDirective = {
COPY: "COPY",
REPLACE: "REPLACE"
};
const ObjectLockLegalHoldStatus = {
OFF: "OFF",
ON: "ON"
};
const ObjectLockMode = {
COMPLIANCE: "COMPLIANCE",
GOVERNANCE: "GOVERNANCE"
};
const StorageClass = {
DEEP_ARCHIVE: "DEEP_ARCHIVE",
EXPRESS_ONEZONE: "EXPRESS_ONEZONE",
FSX_ONTAP: "FSX_ONTAP",
FSX_OPENZFS: "FSX_OPENZFS",
GLACIER: "GLACIER",
GLACIER_IR: "GLACIER_IR",
INTELLIGENT_TIERING: "INTELLIGENT_TIERING",
ONEZONE_IA: "ONEZONE_IA",
OUTPOSTS: "OUTPOSTS",
REDUCED_REDUNDANCY: "REDUCED_REDUNDANCY",
SNOW: "SNOW",
STANDARD: "STANDARD",
STANDARD_IA: "STANDARD_IA"
};
const TaggingDirective = {
COPY: "COPY",
REPLACE: "REPLACE"
};
const BucketCannedACL = {
authenticated_read: "authenticated-read",
private: "private",
public_read: "public-read",
public_read_write: "public-read-write"
};
const BucketNamespace = {
ACCOUNT_REGIONAL: "account-regional",
GLOBAL: "global"
};
const DataRedundancy = {
SingleAvailabilityZone: "SingleAvailabilityZone",
SingleLocalZone: "SingleLocalZone"
};
const BucketType = { Directory: "Directory" };
const LocationType = {
AvailabilityZone: "AvailabilityZone",
LocalZone: "LocalZone"
};
const BucketLocationConstraint = {
EU: "EU",
af_south_1: "af-south-1",
ap_east_1: "ap-east-1",
ap_east_2: "ap-east-2",
ap_northeast_1: "ap-northeast-1",
ap_northeast_2: "ap-northeast-2",
ap_northeast_3: "ap-northeast-3",
ap_south_1: "ap-south-1",
ap_south_2: "ap-south-2",
ap_southeast_1: "ap-southeast-1",
ap_southeast_2: "ap-southeast-2",
ap_southeast_3: "ap-southeast-3",
ap_southeast_4: "ap-southeast-4",
ap_southeast_5: "ap-southeast-5",
ap_southeast_6: "ap-southeast-6",
ap_southeast_7: "ap-southeast-7",
ca_central_1: "ca-central-1",
ca_west_1: "ca-west-1",
cn_north_1: "cn-north-1",
cn_northwest_1: "cn-northwest-1",
eu_central_1: "eu-central-1",
eu_central_2: "eu-central-2",
eu_north_1: "eu-north-1",
eu_south_1: "eu-south-1",
eu_south_2: "eu-south-2",
eu_west_1: "eu-west-1",
eu_west_2: "eu-west-2",
eu_west_3: "eu-west-3",
il_central_1: "il-central-1",
me_central_1: "me-central-1",
me_south_1: "me-south-1",
mx_central_1: "mx-central-1",
sa_east_1: "sa-east-1",
us_east_2: "us-east-2",
us_gov_east_1: "us-gov-east-1",
us_gov_west_1: "us-gov-west-1",
us_west_1: "us-west-1",
us_west_2: "us-west-2"
};
const ObjectOwnership = {
BucketOwnerEnforced: "BucketOwnerEnforced",
BucketOwnerPreferred: "BucketOwnerPreferred",
ObjectWriter: "ObjectWriter"
};
const InventoryConfigurationState = {
DISABLED: "DISABLED",
ENABLED: "ENABLED"
};
const TableSseAlgorithm = {
AES256: "AES256",
aws_kms: "aws:kms"
};
const ExpirationState = {
DISABLED: "DISABLED",
ENABLED: "ENABLED"
};
const SessionMode = {
ReadOnly: "ReadOnly",
ReadWrite: "ReadWrite"
};
const AnalyticsS3ExportFileFormat = { CSV: "CSV" };
const StorageClassAnalysisSchemaVersion = { V_1: "V_1" };
const EncryptionType = {
NONE: "NONE",
SSE_C: "SSE-C"
};
const IntelligentTieringStatus = {
Disabled: "Disabled",
Enabled: "Enabled"
};
const IntelligentTieringAccessTier = {
ARCHIVE_ACCESS: "ARCHIVE_ACCESS",
DEEP_ARCHIVE_ACCESS: "DEEP_ARCHIVE_ACCESS"
};
const InventoryFormat = {
CSV: "CSV",
ORC: "ORC",
Parquet: "Parquet"
};
const InventoryIncludedObjectVersions = {
All: "All",
Current: "Current"
};
const InventoryOptionalField = {
BucketKeyStatus: "BucketKeyStatus",
ChecksumAlgorithm: "ChecksumAlgorithm",
ETag: "ETag",
EncryptionStatus: "EncryptionStatus",
IntelligentTieringAccessTier: "IntelligentTieringAccessTier",
IsMultipartUploaded: "IsMultipartUploaded",
LastModifiedDate: "LastModifiedDate",
LifecycleExpirationDate: "LifecycleExpirationDate",
ObjectAccessControlList: "ObjectAccessControlList",
ObjectLockLegalHoldStatus: "ObjectLockLegalHoldStatus",
ObjectLockMode: "ObjectLockMode",
ObjectLockRetainUntilDate: "ObjectLockRetainUntilDate",
ObjectOwner: "ObjectOwner",
ReplicationStatus: "ReplicationStatus",
Size: "Size",
StorageClass: "StorageClass"
};
const InventoryFrequency = {
Daily: "Daily",
Weekly: "Weekly"
};
const TransitionStorageClass = {
DEEP_ARCHIVE: "DEEP_ARCHIVE",
GLACIER: "GLACIER",
GLACIER_IR: "GLACIER_IR",
INTELLIGENT_TIERING: "INTELLIGENT_TIERING",
ONEZONE_IA: "ONEZONE_IA",
STANDARD_IA: "STANDARD_IA"
};
const ExpirationStatus = {
Disabled: "Disabled",
Enabled: "Enabled"
};
const TransitionDefaultMinimumObjectSize = {
all_storage_classes_128K: "all_storage_classes_128K",
varies_by_storage_class: "varies_by_storage_class"
};
const BucketLogsPermission = {
FULL_CONTROL: "FULL_CONTROL",
READ: "READ",
WRITE: "WRITE"
};
const PartitionDateSource = {
DeliveryTime: "DeliveryTime",
EventTime: "EventTime"
};
const S3TablesBucketType = {
aws: "aws",
customer: "customer"
};
const Event = {
s3_IntelligentTiering: "s3:IntelligentTiering",
s3_LifecycleExpiration_: "s3:LifecycleExpiration:*",
s3_LifecycleExpiration_Delete: "s3:LifecycleExpiration:Delete",
s3_LifecycleExpiration_DeleteMarkerCreated: "s3:LifecycleExpiration:DeleteMarkerCreated",
s3_LifecycleTransition: "s3:LifecycleTransition",
s3_ObjectAcl_Put: "s3:ObjectAcl:Put",
s3_ObjectCreated_: "s3:ObjectCreated:*",
s3_ObjectCreated_CompleteMultipartUpload: "s3:ObjectCreated:CompleteMultipartUpload",
s3_ObjectCreated_Copy: "s3:ObjectCreated:Copy",
s3_ObjectCreated_Post: "s3:ObjectCreated:Post",
s3_ObjectCreated_Put: "s3:ObjectCreated:Put",
s3_ObjectRemoved_: "s3:ObjectRemoved:*",
s3_ObjectRemoved_Delete: "s3:ObjectRemoved:Delete",
s3_ObjectRemoved_DeleteMarkerCreated: "s3:ObjectRemoved:DeleteMarkerCreated",
s3_ObjectRestore_: "s3:ObjectRestore:*",
s3_ObjectRestore_Completed: "s3:ObjectRestore:Completed",
s3_ObjectRestore_Delete: "s3:ObjectRestore:Delete",
s3_ObjectRestore_Post: "s3:ObjectRestore:Post",
s3_ObjectTagging_: "s3:ObjectTagging:*",
s3_ObjectTagging_Delete: "s3:ObjectTagging:Delete",
s3_ObjectTagging_Put: "s3:ObjectTagging:Put",
s3_ReducedRedundancyLostObject: "s3:ReducedRedundancyLostObject",
s3_Replication_: "s3:Replication:*",
s3_Replication_OperationFailedReplication: "s3:Replication:OperationFailedReplication",
s3_Replication_OperationMissedThreshold: "s3:Replication:OperationMissedThreshold",
s3_Replication_OperationNotTracked: "s3:Replication:OperationNotTracked",
s3_Replication_OperationReplicatedAfterThreshold: "s3:Replication:OperationReplicatedAfterThreshold"
};
const FilterRuleName = {
prefix: "prefix",
suffix: "suffix"
};
const DeleteMarkerReplicationStatus = {
Disabled: "Disabled",
Enabled: "Enabled"
};
const MetricsStatus = {
Disabled: "Disabled",
Enabled: "Enabled"
};
const ReplicationTimeStatus = {
Disabled: "Disabled",
Enabled: "Enabled"
};
const ExistingObjectReplicationStatus = {
Disabled: "Disabled",
Enabled: "Enabled"
};
const ReplicaModificationsStatus = {
Disabled: "Disabled",
Enabled: "Enabled"
};
const SseKmsEncryptedObjectsStatus = {
Disabled: "Disabled",
Enabled: "Enabled"
};
const ReplicationRuleStatus = {
Disabled: "Disabled",
Enabled: "Enabled"
};
const Payer = {
BucketOwner: "BucketOwner",
Requester: "Requester"
};
const MFADeleteStatus = {
Disabled: "Disabled",
Enabled: "Enabled"
};
const BucketVersioningStatus = {
Enabled: "Enabled",
Suspended: "Suspended"
};
const Protocol = {
http: "http",
https: "https"
};
const ReplicationStatus = {
COMPLETE: "COMPLETE",
COMPLETED: "COMPLETED",
FAILED: "FAILED",
PENDING: "PENDING",
REPLICA: "REPLICA"
};
const ChecksumMode = { ENABLED: "ENABLED" };
const ObjectAttributes = {
CHECKSUM: "Checksum",
ETAG: "ETag",
OBJECT_PARTS: "ObjectParts",
OBJECT_SIZE: "ObjectSize",
STORAGE_CLASS: "StorageClass"
};
const ObjectLockEnabled = { Enabled: "Enabled" };
const ObjectLockRetentionMode = {
COMPLIANCE: "COMPLIANCE",
GOVERNANCE: "GOVERNANCE"
};
const ArchiveStatus = {
ARCHIVE_ACCESS: "ARCHIVE_ACCESS",
DEEP_ARCHIVE_ACCESS: "DEEP_ARCHIVE_ACCESS"
};
const EncodingType = { url: "url" };
const ObjectStorageClass = {
DEEP_ARCHIVE: "DEEP_ARCHIVE",
EXPRESS_ONEZONE: "EXPRESS_ONEZONE",
FSX_ONTAP: "FSX_ONTAP",
FSX_OPENZFS: "FSX_OPENZFS",
GLACIER: "GLACIER",
GLACIER_IR: "GLACIER_IR",
INTELLIGENT_TIERING: "INTELLIGENT_TIERING",
ONEZONE_IA: "ONEZONE_IA",
OUTPOSTS: "OUTPOSTS",
REDUCED_REDUNDANCY: "REDUCED_REDUNDANCY",
SNOW: "SNOW",
STANDARD: "STANDARD",
STANDARD_IA: "STANDARD_IA"
};
const OptionalObjectAttributes = { RESTORE_STATUS: "RestoreStatus" };
const ObjectVersionStorageClass = { STANDARD: "STANDARD" };
const MFADelete = {
Disabled: "Disabled",
Enabled: "Enabled"
};
const Tier = {
Bulk: "Bulk",
Expedited: "Expedited",
Standard: "Standard"
};
const ExpressionType = { SQL: "SQL" };
const CompressionType = {
BZIP2: "BZIP2",
GZIP: "GZIP",
NONE: "NONE"
};
const FileHeaderInfo = {
IGNORE: "IGNORE",
NONE: "NONE",
USE: "USE"
};
const JSONType = {
DOCUMENT: "DOCUMENT",
LINES: "LINES"
};
const QuoteFields = {
ALWAYS: "ALWAYS",
ASNEEDED: "ASNEEDED"
};
const RestoreRequestType = { SELECT: "SELECT" };
exports.$Command = client.Command;
exports.__Client = client.Client;
exports.S3ServiceException = S3ServiceException.S3ServiceException;
exports.AbortMultipartUploadCommand = AbortMultipartUploadCommand;
exports.AnalyticsS3ExportFileFormat = AnalyticsS3ExportFileFormat;
exports.ArchiveStatus = ArchiveStatus;
exports.BucketAbacStatus = BucketAbacStatus;
exports.BucketAccelerateStatus = BucketAccelerateStatus;
exports.BucketCannedACL = BucketCannedACL;
exports.BucketLocationConstraint = BucketLocationConstraint;
exports.BucketLogsPermission = BucketLogsPermission;
exports.BucketNamespace = BucketNamespace;
exports.BucketType = BucketType;
exports.BucketVersioningStatus = BucketVersioningStatus;
exports.ChecksumAlgorithm = ChecksumAlgorithm;
exports.ChecksumMode = ChecksumMode;
exports.ChecksumType = ChecksumType;
exports.CompleteMultipartUploadCommand = CompleteMultipartUploadCommand;
exports.CompressionType = CompressionType;
exports.CopyObjectCommand = CopyObjectCommand;
exports.CreateBucketCommand = CreateBucketCommand;
exports.CreateBucketMetadataConfigurationCommand = CreateBucketMetadataConfigurationCommand;
exports.CreateBucketMetadataTableConfigurationCommand = CreateBucketMetadataTableConfigurationCommand;
exports.CreateMultipartUploadCommand = CreateMultipartUploadCommand;
exports.CreateSessionCommand = CreateSessionCommand;
exports.DataRedundancy = DataRedundancy;
exports.DeleteBucketAnalyticsConfigurationCommand = DeleteBucketAnalyticsConfigurationCommand;
exports.DeleteBucketCommand = DeleteBucketCommand;
exports.DeleteBucketCorsCommand = DeleteBucketCorsCommand;
exports.DeleteBucketEncryptionCommand = DeleteBucketEncryptionCommand;
exports.DeleteBucketIntelligentTieringConfigurationCommand = DeleteBucketIntelligentTieringConfigurationCommand;
exports.DeleteBucketInventoryConfigurationCommand = DeleteBucketInventoryConfigurationCommand;
exports.DeleteBucketLifecycleCommand = DeleteBucketLifecycleCommand;
exports.DeleteBucketMetadataConfigurationCommand = DeleteBucketMetadataConfigurationCommand;
exports.DeleteBucketMetadataTableConfigurationCommand = DeleteBucketMetadataTableConfigurationCommand;
exports.DeleteBucketMetricsConfigurationCommand = DeleteBucketMetricsConfigurationCommand;
exports.DeleteBucketOwnershipControlsCommand = DeleteBucketOwnershipControlsCommand;
exports.DeleteBucketPolicyCommand = DeleteBucketPolicyCommand;
exports.DeleteBucketReplicationCommand = DeleteBucketReplicationCommand;
exports.DeleteBucketTaggingCommand = DeleteBucketTaggingCommand;
exports.DeleteBucketWebsiteCommand = DeleteBucketWebsiteCommand;
exports.DeleteMarkerReplicationStatus = DeleteMarkerReplicationStatus;
exports.DeleteObjectCommand = DeleteObjectCommand;
exports.DeleteObjectTaggingCommand = DeleteObjectTaggingCommand;
exports.DeleteObjectsCommand = DeleteObjectsCommand;
exports.DeletePublicAccessBlockCommand = DeletePublicAccessBlockCommand;
exports.EncodingType = EncodingType;
exports.EncryptionType = EncryptionType;
exports.Event = Event;
exports.ExistingObjectReplicationStatus = ExistingObjectReplicationStatus;
exports.ExpirationState = ExpirationState;
exports.ExpirationStatus = ExpirationStatus;
exports.ExpressionType = ExpressionType;
exports.FileHeaderInfo = FileHeaderInfo;
exports.FilterRuleName = FilterRuleName;
exports.GetBucketAbacCommand = GetBucketAbacCommand;
exports.GetBucketAccelerateConfigurationCommand = GetBucketAccelerateConfigurationCommand;
exports.GetBucketAclCommand = GetBucketAclCommand;
exports.GetBucketAnalyticsConfigurationCommand = GetBucketAnalyticsConfigurationCommand;
exports.GetBucketCorsCommand = GetBucketCorsCommand;
exports.GetBucketEncryptionCommand = GetBucketEncryptionCommand;
exports.GetBucketIntelligentTieringConfigurationCommand = GetBucketIntelligentTieringConfigurationCommand;
exports.GetBucketInventoryConfigurationCommand = GetBucketInventoryConfigurationCommand;
exports.GetBucketLifecycleConfigurationCommand = GetBucketLifecycleConfigurationCommand;
exports.GetBucketLocationCommand = GetBucketLocationCommand;
exports.GetBucketLoggingCommand = GetBucketLoggingCommand;
exports.GetBucketMetadataConfigurationCommand = GetBucketMetadataConfigurationCommand;
exports.GetBucketMetadataTableConfigurationCommand = GetBucketMetadataTableConfigurationCommand;
exports.GetBucketMetricsConfigurationCommand = GetBucketMetricsConfigurationCommand;
exports.GetBucketNotificationConfigurationCommand = GetBucketNotificationConfigurationCommand;
exports.GetBucketOwnershipControlsCommand = GetBucketOwnershipControlsCommand;
exports.GetBucketPolicyCommand = GetBucketPolicyCommand;
exports.GetBucketPolicyStatusCommand = GetBucketPolicyStatusCommand;
exports.GetBucketReplicationCommand = GetBucketReplicationCommand;
exports.GetBucketRequestPaymentCommand = GetBucketRequestPaymentCommand;
exports.GetBucketTaggingCommand = GetBucketTaggingCommand;
exports.GetBucketVersioningCommand = GetBucketVersioningCommand;
exports.GetBucketWebsiteCommand = GetBucketWebsiteCommand;
exports.GetObjectAclCommand = GetObjectAclCommand;
exports.GetObjectAttributesCommand = GetObjectAttributesCommand;
exports.GetObjectCommand = GetObjectCommand;
exports.GetObjectLegalHoldCommand = GetObjectLegalHoldCommand;
exports.GetObjectLockConfigurationCommand = GetObjectLockConfigurationCommand;
exports.GetObjectRetentionCommand = GetObjectRetentionCommand;
exports.GetObjectTaggingCommand = GetObjectTaggingCommand;
exports.GetObjectTorrentCommand = GetObjectTorrentCommand;
exports.GetPublicAccessBlockCommand = GetPublicAccessBlockCommand;
exports.HeadBucketCommand = HeadBucketCommand;
exports.HeadObjectCommand = HeadObjectCommand;
exports.IntelligentTieringAccessTier = IntelligentTieringAccessTier;
exports.IntelligentTieringStatus = IntelligentTieringStatus;
exports.InventoryConfigurationState = InventoryConfigurationState;
exports.InventoryFormat = InventoryFormat;
exports.InventoryFrequency = InventoryFrequency;
exports.InventoryIncludedObjectVersions = InventoryIncludedObjectVersions;
exports.InventoryOptionalField = InventoryOptionalField;
exports.JSONType = JSONType;
exports.ListBucketAnalyticsConfigurationsCommand = ListBucketAnalyticsConfigurationsCommand;
exports.ListBucketIntelligentTieringConfigurationsCommand = ListBucketIntelligentTieringConfigurationsCommand;
exports.ListBucketInventoryConfigurationsCommand = ListBucketInventoryConfigurationsCommand;
exports.ListBucketMetricsConfigurationsCommand = ListBucketMetricsConfigurationsCommand;
exports.ListBucketsCommand = ListBucketsCommand;
exports.ListDirectoryBucketsCommand = ListDirectoryBucketsCommand;
exports.ListMultipartUploadsCommand = ListMultipartUploadsCommand;
exports.ListObjectVersionsCommand = ListObjectVersionsCommand;
exports.ListObjectsCommand = ListObjectsCommand;
exports.ListObjectsV2Command = ListObjectsV2Command;
exports.ListPartsCommand = ListPartsCommand;
exports.LocationType = LocationType;
exports.MFADelete = MFADelete;
exports.MFADeleteStatus = MFADeleteStatus;
exports.MetadataDirective = MetadataDirective;
exports.MetricsStatus = MetricsStatus;
exports.ObjectAttributes = ObjectAttributes;
exports.ObjectCannedACL = ObjectCannedACL;
exports.ObjectLockEnabled = ObjectLockEnabled;
exports.ObjectLockLegalHoldStatus = ObjectLockLegalHoldStatus;
exports.ObjectLockMode = ObjectLockMode;
exports.ObjectLockRetentionMode = ObjectLockRetentionMode;
exports.ObjectOwnership = ObjectOwnership;
exports.ObjectStorageClass = ObjectStorageClass;
exports.ObjectVersionStorageClass = ObjectVersionStorageClass;
exports.OptionalObjectAttributes = OptionalObjectAttributes;
exports.OwnerOverride = OwnerOverride;
exports.PartitionDateSource = PartitionDateSource;
exports.Payer = Payer;
exports.Permission = Permission;
exports.Protocol = Protocol;
exports.PutBucketAbacCommand = PutBucketAbacCommand;
exports.PutBucketAccelerateConfigurationCommand = PutBucketAccelerateConfigurationCommand;
exports.PutBucketAclCommand = PutBucketAclCommand;
exports.PutBucketAnalyticsConfigurationCommand = PutBucketAnalyticsConfigurationCommand;
exports.PutBucketCorsCommand = PutBucketCorsCommand;
exports.PutBucketEncryptionCommand = PutBucketEncryptionCommand;
exports.PutBucketIntelligentTieringConfigurationCommand = PutBucketIntelligentTieringConfigurationCommand;
exports.PutBucketInventoryConfigurationCommand = PutBucketInventoryConfigurationCommand;
exports.PutBucketLifecycleConfigurationCommand = PutBucketLifecycleConfigurationCommand;
exports.PutBucketLoggingCommand = PutBucketLoggingCommand;
exports.PutBucketMetricsConfigurationCommand = PutBucketMetricsConfigurationCommand;
exports.PutBucketNotificationConfigurationCommand = PutBucketNotificationConfigurationCommand;
exports.PutBucketOwnershipControlsCommand = PutBucketOwnershipControlsCommand;
exports.PutBucketPolicyCommand = PutBucketPolicyCommand;
exports.PutBucketReplicationCommand = PutBucketReplicationCommand;
exports.PutBucketRequestPaymentCommand = PutBucketRequestPaymentCommand;
exports.PutBucketTaggingCommand = PutBucketTaggingCommand;
exports.PutBucketVersioningCommand = PutBucketVersioningCommand;
exports.PutBucketWebsiteCommand = PutBucketWebsiteCommand;
exports.PutObjectAclCommand = PutObjectAclCommand;
exports.PutObjectCommand = PutObjectCommand;
exports.PutObjectLegalHoldCommand = PutObjectLegalHoldCommand;
exports.PutObjectLockConfigurationCommand = PutObjectLockConfigurationCommand;
exports.PutObjectRetentionCommand = PutObjectRetentionCommand;
exports.PutObjectTaggingCommand = PutObjectTaggingCommand;
exports.PutPublicAccessBlockCommand = PutPublicAccessBlockCommand;
exports.QuoteFields = QuoteFields;
exports.RenameObjectCommand = RenameObjectCommand;
exports.ReplicaModificationsStatus = ReplicaModificationsStatus;
exports.ReplicationRuleStatus = ReplicationRuleStatus;
exports.ReplicationStatus = ReplicationStatus;
exports.ReplicationTimeStatus = ReplicationTimeStatus;
exports.RequestCharged = RequestCharged;
exports.RequestPayer = RequestPayer;
exports.RestoreObjectCommand = RestoreObjectCommand;
exports.RestoreRequestType = RestoreRequestType;
exports.S3 = S3;
exports.S3Client = S3Client;
exports.S3TablesBucketType = S3TablesBucketType;
exports.SelectObjectContentCommand = SelectObjectContentCommand;
exports.ServerSideEncryption = ServerSideEncryption;
exports.SessionMode = SessionMode;
exports.SseKmsEncryptedObjectsStatus = SseKmsEncryptedObjectsStatus;
exports.StorageClass = StorageClass;
exports.StorageClassAnalysisSchemaVersion = StorageClassAnalysisSchemaVersion;
exports.TableSseAlgorithm = TableSseAlgorithm;
exports.TaggingDirective = TaggingDirective;
exports.Tier = Tier;
exports.TransitionDefaultMinimumObjectSize = TransitionDefaultMinimumObjectSize;
exports.TransitionStorageClass = TransitionStorageClass;
exports.Type = Type;
exports.UpdateBucketMetadataInventoryTableConfigurationCommand = UpdateBucketMetadataInventoryTableConfigurationCommand;
exports.UpdateBucketMetadataJournalTableConfigurationCommand = UpdateBucketMetadataJournalTableConfigurationCommand;
exports.UpdateObjectEncryptionCommand = UpdateObjectEncryptionCommand;
exports.UploadPartCommand = UploadPartCommand;
exports.UploadPartCopyCommand = UploadPartCopyCommand;
exports.WriteGetObjectResponseCommand = WriteGetObjectResponseCommand;
exports.paginateListBuckets = paginateListBuckets;
exports.paginateListDirectoryBuckets = paginateListDirectoryBuckets;
exports.paginateListObjectsV2 = paginateListObjectsV2;
exports.paginateListParts = paginateListParts;
exports.waitForBucketExists = waitForBucketExists;
exports.waitForBucketNotExists = waitForBucketNotExists;
exports.waitForObjectExists = waitForObjectExists;
exports.waitForObjectNotExists = waitForObjectNotExists;
exports.waitUntilBucketExists = waitUntilBucketExists;
exports.waitUntilBucketNotExists = waitUntilBucketNotExists;
exports.waitUntilObjectExists = waitUntilObjectExists;
exports.waitUntilObjectNotExists = waitUntilObjectNotExists;
Object.prototype.hasOwnProperty.call(schemas_0, "__proto__") && !Object.prototype.hasOwnProperty.call(exports, "__proto__") && Object.defineProperty(exports, "__proto__", {
enumerable: true,
value: schemas_0["__proto__"]
});
Object.keys(schemas_0).forEach(function(k) {
if (k !== "default" && !Object.prototype.hasOwnProperty.call(exports, k)) exports[k] = schemas_0[k];
});
Object.prototype.hasOwnProperty.call(errors, "__proto__") && !Object.prototype.hasOwnProperty.call(exports, "__proto__") && Object.defineProperty(exports, "__proto__", {
enumerable: true,
value: errors["__proto__"]
});
Object.keys(errors).forEach(function(k) {
if (k !== "default" && !Object.prototype.hasOwnProperty.call(exports, k)) exports[k] = errors[k];
});
}));
//#endregion
//#region node_modules/@aws-sdk/s3-request-presigner/dist-cjs/index.js
var require_dist_cjs = /* @__PURE__ */ __commonJSMin(((exports) => {
var util = (init_util(), __toCommonJS(util_exports));
var endpoints = (init_endpoints(), __toCommonJS(endpoints_exports));
var protocols = (init_protocols(), __toCommonJS(protocols_exports));
var signatureV4MultiRegion = require_dist_cjs$9();
const UNSIGNED_PAYLOAD = "UNSIGNED-PAYLOAD";
const SHA256_HEADER = "X-Amz-Content-Sha256";
var S3RequestPresigner = class {
signer;
constructor(options) {
const resolvedOptions = {
service: options.signingName || options.service || "s3",
uriEscapePath: options.uriEscapePath || false,
applyChecksum: options.applyChecksum || false,
...options
};
this.signer = new signatureV4MultiRegion.SignatureV4MultiRegion(resolvedOptions);
}
presign(requestToSign, { unsignableHeaders = /* @__PURE__ */ new Set(), hoistableHeaders = /* @__PURE__ */ new Set(), unhoistableHeaders = /* @__PURE__ */ new Set(), ...options } = {}) {
this.prepareRequest(requestToSign, {
unsignableHeaders,
unhoistableHeaders,
hoistableHeaders
});
return this.signer.presign(requestToSign, {
expiresIn: 900,
unsignableHeaders,
unhoistableHeaders,
...options
});
}
presignWithCredentials(requestToSign, credentials, { unsignableHeaders = /* @__PURE__ */ new Set(), hoistableHeaders = /* @__PURE__ */ new Set(), unhoistableHeaders = /* @__PURE__ */ new Set(), ...options } = {}) {
this.prepareRequest(requestToSign, {
unsignableHeaders,
unhoistableHeaders,
hoistableHeaders
});
return this.signer.presignWithCredentials(requestToSign, credentials, {
expiresIn: 900,
unsignableHeaders,
unhoistableHeaders,
...options
});
}
prepareRequest(requestToSign, { unsignableHeaders = /* @__PURE__ */ new Set(), unhoistableHeaders = /* @__PURE__ */ new Set(), hoistableHeaders = /* @__PURE__ */ new Set() } = {}) {
unsignableHeaders.add("content-type");
Object.keys(requestToSign.headers).map((header) => header.toLowerCase()).filter((header) => header.startsWith("x-amz-server-side-encryption")).forEach((header) => {
if (!hoistableHeaders.has(header)) unhoistableHeaders.add(header);
});
requestToSign.headers[SHA256_HEADER] = UNSIGNED_PAYLOAD;
const currentHostHeader = requestToSign.headers.host;
const port = requestToSign.port;
const expectedHostHeader = `${requestToSign.hostname}${requestToSign.port != null ? ":" + port : ""}`;
if (!currentHostHeader || currentHostHeader === requestToSign.hostname && requestToSign.port != null) requestToSign.headers.host = expectedHostHeader;
}
};
const getSignedUrl = async (client, command, options = {}) => {
let s3Presigner;
let region;
if (typeof client.config.endpointProvider === "function") {
const authScheme = (await endpoints.getEndpointFromInstructions(command.input, command.constructor, client.config)).properties?.authSchemes?.[0];
if (authScheme?.name === "sigv4a") region = authScheme?.signingRegionSet?.join(",");
else region = authScheme?.signingRegion;
s3Presigner = new S3RequestPresigner({
...client.config,
signingName: authScheme?.signingName,
region: async () => region
});
} else s3Presigner = new S3RequestPresigner(client.config);
const presignInterceptMiddleware = (next, context) => async (args) => {
const { request } = args;
if (!protocols.HttpRequest.isInstance(request)) throw new Error("Request to be presigned is not an valid HTTP request.");
delete request.headers["amz-sdk-invocation-id"];
delete request.headers["amz-sdk-request"];
delete request.headers["x-amz-user-agent"];
let presigned;
const presignerOptions = {
...options,
signingRegion: options.signingRegion ?? context["signing_region"] ?? region,
signingService: options.signingService ?? context["signing_service"]
};
if (context.s3ExpressIdentity) presigned = await s3Presigner.presignWithCredentials(request, context.s3ExpressIdentity, presignerOptions);
else presigned = await s3Presigner.presign(request, presignerOptions);
return {
response: {},
output: {
$metadata: { httpStatusCode: 200 },
presigned
}
};
};
const middlewareName = "presignInterceptMiddleware";
const clientStack = client.middlewareStack.clone();
clientStack.addRelativeTo(presignInterceptMiddleware, {
name: middlewareName,
relation: "before",
toMiddleware: "awsAuthMiddleware",
override: true
});
const { output } = await command.resolveMiddleware(clientStack, client.config, {})({ input: command.input });
const { presigned } = output;
return util.formatUrl(presigned);
};
exports.getSignedUrl = getSignedUrl;
}));
//#endregion
//#region extensions/tlon/src/tlon-api.ts
var import_dist_cjs = require_dist_cjs$1();
var import_dist_cjs$1 = require_dist_cjs();
const MEMEX_BASE_URL = "https://memex.tlon.network";
let currentClientConfig = null;
function configureClient(params) {
currentClientConfig = {
...params,
shipName: params.shipName.replace(/^~/, "")
};
}
function requireClientConfig() {
if (!currentClientConfig) throw new Error("Tlon client not configured");
return currentClientConfig;
}
function getExtensionFromMimeType(mimeType) {
return extensionForMime(mimeType) || ".jpg";
}
function hasCustomS3Creds(credentials) {
return Boolean(credentials?.accessKeyId && credentials?.endpoint && credentials?.secretAccessKey);
}
function isStorageCredentials(value) {
if (!value || typeof value !== "object") return false;
const record = value;
return typeof record.endpoint === "string" && typeof record.accessKeyId === "string" && typeof record.secretAccessKey === "string";
}
function hostnameMatchesDomainBoundary(hostname, domain) {
return hostname === domain || hostname.endsWith(`.${domain}`);
}
function isHostedShipUrl(shipUrl) {
const hostname = extractShipHostname(shipUrl);
return hostname !== null && isHostedTlonHostname(hostname);
}
function extractShipHostname(shipUrl) {
const trimmed = shipUrl.trim();
if (!trimmed) return null;
const normalized = /^[a-zA-Z][\w+.-]*:\/\//.test(trimmed) ? trimmed : `https://${trimmed}`;
try {
return new URL(normalized).hostname;
} catch {
return null;
}
}
function isHostedTlonHostname(hostname) {
return hostnameMatchesDomainBoundary(hostname, "tlon.network") || hostnameMatchesDomainBoundary(hostname, "test.tlon.systems");
}
function assertTrustedMemexUploadUrl(rawUrl, label) {
let parsed;
try {
parsed = new URL(rawUrl);
} catch {
throw new Error(`${label} must be a valid https URL`);
}
if (parsed.protocol !== "https:") throw new Error(`${label} must use https`);
if (!isHostedTlonHostname(parsed.hostname)) throw new Error(`${label} must target a trusted hosted Tlon domain`);
if (parsed.port && parsed.port !== "443") throw new Error(`${label} must not specify a non-standard port`);
return parsed.toString();
}
function assertSafeUploadResultUrl(rawUrl, label) {
let parsed;
try {
parsed = new URL(rawUrl);
} catch {
throw new Error(`${label} must be a valid http(s) URL`);
}
if (parsed.protocol !== "http:" && parsed.protocol !== "https:") throw new Error(`${label} must use http or https`);
return parsed.toString();
}
function prefixEndpoint(endpoint) {
return /https?:\/\//.test(endpoint) ? endpoint : `https://${endpoint}`;
}
function sanitizeFileName(fileName) {
return fileName.split(/[/\\]/).pop() || fileName;
}
async function getAuthCookie(config) {
return await authenticate(config.shipUrl, await config.getCode(), { ssrfPolicy: ssrfPolicyFromDangerouslyAllowPrivateNetwork(config.dangerouslyAllowPrivateNetwork) });
}
async function scryJson(config, cookie, path) {
return await scryUrbitPath({
baseUrl: config.shipUrl,
cookie,
ssrfPolicy: ssrfPolicyFromDangerouslyAllowPrivateNetwork(config.dangerouslyAllowPrivateNetwork)
}, {
path,
auditContext: "tlon-storage-scry"
});
}
async function getStorageConfiguration(config, cookie) {
const result = await scryJson(config, cookie, "/storage/configuration.json");
if ("storage-update" in result && result["storage-update"]?.configuration) return result["storage-update"].configuration;
if ("currentBucket" in result) return result;
throw new Error("Invalid storage configuration response");
}
async function getStorageCredentials(config, cookie) {
const result = await scryJson(config, cookie, "/storage/credentials.json");
if ("storage-update" in result) return result["storage-update"]?.credentials ?? null;
if (isStorageCredentials(result)) return result;
return null;
}
async function getMemexUploadUrl(params) {
const token = await scryJson(params.config, params.cookie, "/genuine/secret.json");
const resolvedToken = typeof token === "string" ? token : token.secret;
if (!resolvedToken) throw new Error("Missing genuine secret");
const endpoint = `${MEMEX_BASE_URL}/v1/${params.config.shipName}/upload`;
let release;
try {
const guarded = await fetchWithSsrFGuard({
url: endpoint,
init: {
method: "PUT",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
token: resolvedToken,
contentLength: params.contentLength,
contentType: params.contentType,
fileName: params.fileName
})
},
auditContext: "tlon-memex-upload-url",
capture: false,
maxRedirects: 0
});
release = guarded.release;
if (!guarded.response.ok) throw new Error(`Memex upload request failed: ${guarded.response.status}`);
const data = await guarded.response.json();
if (!data?.url || !data.filePath) throw new Error("Invalid response from Memex");
return {
hostedUrl: data.filePath,
uploadUrl: data.url
};
} finally {
await release?.();
}
}
async function uploadFile(params) {
const config = requireClientConfig();
const cookie = await getAuthCookie(config);
const privateNetworkPolicy = ssrfPolicyFromDangerouslyAllowPrivateNetwork(config.dangerouslyAllowPrivateNetwork);
const [storageConfig, credentials] = await Promise.all([getStorageConfiguration(config, cookie), getStorageCredentials(config, cookie)]);
const contentType = params.contentType || params.blob.type || "application/octet-stream";
const extension = getExtensionFromMimeType(contentType);
const fileName = sanitizeFileName(params.fileName || `upload${extension}`);
const fileKey = `${config.shipName}/${Date.now()}-${crypto.randomUUID()}-${fileName}`;
if (isHostedShipUrl(config.shipUrl) && (storageConfig.service === "presigned-url" || !hasCustomS3Creds(credentials))) {
const { hostedUrl, uploadUrl } = await getMemexUploadUrl({
config,
cookie,
contentLength: params.blob.size,
contentType,
fileName: fileKey
});
const trustedUploadUrl = assertTrustedMemexUploadUrl(uploadUrl, "Memex upload URL");
let release;
try {
const guarded = await fetchWithSsrFGuard({
url: trustedUploadUrl,
init: {
method: "PUT",
body: params.blob,
headers: {
"Cache-Control": "public, max-age=3600",
"Content-Type": contentType
}
},
auditContext: "tlon-memex-upload",
capture: false,
maxRedirects: 0
});
release = guarded.release;
assertTrustedMemexUploadUrl(guarded.finalUrl, "Memex final upload URL");
if (!guarded.response.ok) throw new Error(`Upload failed: ${guarded.response.status}`);
} finally {
await release?.();
}
return { url: assertTrustedMemexUploadUrl(hostedUrl, "Memex hosted URL") };
}
if (!hasCustomS3Creds(credentials)) throw new Error("No storage credentials configured");
const endpoint = new URL(prefixEndpoint(credentials.endpoint));
const client = new import_dist_cjs.S3Client({
endpoint: {
protocol: endpoint.protocol.slice(0, -1),
hostname: endpoint.host,
path: endpoint.pathname || "/"
},
region: storageConfig.region || "us-east-1",
credentials: {
accessKeyId: credentials.accessKeyId,
secretAccessKey: credentials.secretAccessKey
},
forcePathStyle: true
});
const headers = {
"Cache-Control": "public, max-age=3600",
"Content-Type": contentType,
"x-amz-acl": "public-read"
};
const signedUrl = await (0, import_dist_cjs$1.getSignedUrl)(client, new import_dist_cjs.PutObjectCommand({
Bucket: storageConfig.currentBucket,
Key: fileKey,
ContentType: headers["Content-Type"],
CacheControl: headers["Cache-Control"],
ACL: "public-read"
}), {
expiresIn: 3600,
signableHeaders: new Set(Object.keys(headers))
});
let release;
try {
const guarded = await fetchWithSsrFGuard({
url: signedUrl,
init: {
method: "PUT",
body: params.blob,
headers: signedUrl.includes("digitaloceanspaces.com") ? headers : void 0
},
auditContext: "tlon-custom-s3-upload",
capture: false,
maxRedirects: 0,
policy: privateNetworkPolicy
});
release = guarded.release;
if (!guarded.response.ok) throw new Error(`Upload failed: ${guarded.response.status}`);
} finally {
await release?.();
}
return { url: assertSafeUploadResultUrl(storageConfig.publicUrlBase ? new URL(fileKey, storageConfig.publicUrlBase).toString() : signedUrl.split("?")[0], "Upload result URL") };
}
//#endregion
//#region extensions/tlon/src/urbit/upload.ts
/**
* Upload an image from a URL to Tlon storage.
*/
/**
* Fetch an image from a URL and upload it to Tlon storage.
* Returns the uploaded URL, or falls back to the original URL on error.
*
* Note: configureClient must be called before using this function.
*/
async function uploadImageFromUrl(imageUrl) {
try {
const url = new URL(imageUrl);
if (url.protocol !== "http:" && url.protocol !== "https:") {
console.warn(`[tlon] Rejected non-http(s) URL: ${imageUrl}`);
return imageUrl;
}
const { response, release } = await fetchWithSsrFGuard({
url: imageUrl,
init: { method: "GET" },
policy: void 0,
auditContext: "tlon-upload-image"
});
try {
if (!response.ok) {
console.warn(`[tlon] Failed to fetch image from ${imageUrl}: ${response.status}`);
return imageUrl;
}
const contentType = response.headers.get("content-type") || "image/png";
return (await uploadFile({
blob: await response.blob(),
fileName: new URL(imageUrl).pathname.split("/").pop() || `upload-${Date.now()}.png`,
contentType
})).url;
} finally {
await release();
}
} catch (err) {
console.warn(`[tlon] Failed to upload image, using original URL: ${String(err)}`);
return imageUrl;
}
}
//#endregion
//#region extensions/tlon/src/channel.runtime.ts
async function createHttpPokeApi(params) {
const ssrfPolicy = ssrfPolicyFromDangerouslyAllowPrivateNetwork(params.dangerouslyAllowPrivateNetwork);
const cookie = await authenticate(params.url, params.code, { ssrfPolicy });
const channelPath = `/~/channel/${`${Math.floor(Date.now() / 1e3)}-${crypto.randomUUID()}`}`;
const shipName = params.ship.replace(/^~/, "");
return {
poke: async (pokeParams) => {
const pokeId = Date.now();
const pokeData = {
id: pokeId,
action: "poke",
ship: shipName,
app: pokeParams.app,
mark: pokeParams.mark,
json: pokeParams.json
};
const { response, release } = await urbitFetch({
baseUrl: params.url,
path: channelPath,
init: {
method: "PUT",
headers: {
"Content-Type": "application/json",
Cookie: cookie.split(";")[0]
},
body: JSON.stringify([pokeData])
},
ssrfPolicy,
auditContext: "tlon-poke"
});
try {
if (!response.ok && response.status !== 204) {
const errorText = await response.text();
throw new Error(`Poke failed: ${response.status} - ${errorText}`);
}
return pokeId;
} finally {
await release();
}
},
delete: async () => {}
};
}
function resolveOutboundContext(params) {
const account = resolveTlonAccount(params.cfg, params.accountId ?? void 0);
if (!account.configured || !account.ship || !account.url || !account.code) throw new Error("Tlon account not configured");
const parsed = parseTlonTarget(params.to);
if (!parsed) throw new Error(`Invalid Tlon target. Use ${formatTargetHint()}`);
return {
account,
parsed
};
}
function resolveReplyId(replyToId, threadId) {
return replyToId ?? threadId ? String(replyToId ?? threadId) : void 0;
}
async function withHttpPokeAccountApi(account, run) {
const api = await createHttpPokeApi({
url: account.url,
ship: account.ship,
code: account.code,
dangerouslyAllowPrivateNetwork: account.dangerouslyAllowPrivateNetwork ?? void 0
});
try {
return await run(api);
} finally {
try {
await api.delete();
} catch {}
}
}
const tlonRuntimeOutbound = {
deliveryMode: "direct",
textChunkLimit: 1e4,
resolveTarget: ({ to }) => resolveTlonOutboundTarget(to),
deliveryCapabilities: { durableFinal: {
text: true,
media: true,
replyTo: true,
thread: true,
messageSendingHooks: true
} },
sendText: async ({ cfg, to, text, accountId, replyToId, threadId }) => {
const { account, parsed } = resolveOutboundContext({
cfg,
accountId,
to
});
return withHttpPokeAccountApi(account, async (api) => {
const fromShip = normalizeShip(account.ship);
if (parsed.kind === "dm") return await sendDm({
api,
fromShip,
toShip: parsed.ship,
text
});
return await sendGroupMessage({
api,
fromShip,
hostShip: parsed.hostShip,
channelName: parsed.channelName,
text,
replyToId: resolveReplyId(replyToId, threadId)
});
});
},
sendMedia: async ({ cfg, to, text, mediaUrl, accountId, replyToId, threadId }) => {
const { account, parsed } = resolveOutboundContext({
cfg,
accountId,
to
});
configureClient({
shipUrl: account.url,
shipName: account.ship.replace(/^~/, ""),
verbose: false,
getCode: async () => account.code,
dangerouslyAllowPrivateNetwork: account.dangerouslyAllowPrivateNetwork ?? void 0
});
const uploadedUrl = mediaUrl ? await uploadImageFromUrl(mediaUrl) : void 0;
return withHttpPokeAccountApi(account, async (api) => {
const fromShip = normalizeShip(account.ship);
const story = buildMediaStory(text, uploadedUrl);
if (parsed.kind === "dm") return await sendDmWithStory({
api,
fromShip,
toShip: parsed.ship,
story,
kind: "media"
});
return await sendGroupMessageWithStory({
api,
fromShip,
hostShip: parsed.hostShip,
channelName: parsed.channelName,
story,
replyToId: resolveReplyId(replyToId, threadId),
kind: "media"
});
});
}
};
async function probeTlonAccount(account) {
try {
const ssrfPolicy = ssrfPolicyFromDangerouslyAllowPrivateNetwork(account.dangerouslyAllowPrivateNetwork);
const cookie = await authenticate(account.url, account.code, { ssrfPolicy });
const { response, release } = await urbitFetch({
baseUrl: account.url,
path: "/~/name",
init: {
method: "GET",
headers: { Cookie: cookie }
},
ssrfPolicy,
timeoutMs: 3e4,
auditContext: "tlon-probe-account"
});
try {
if (!response.ok) return {
ok: false,
error: `Name request failed: ${response.status}`
};
return { ok: true };
} finally {
await release();
}
} catch (error) {
return {
ok: false,
error: error?.message ?? String(error)
};
}
}
async function startTlonGatewayAccount(ctx) {
const account = ctx.account;
ctx.setStatus({
accountId: account.accountId,
ship: account.ship,
url: account.url
});
ctx.log?.info(`[${account.accountId}] starting Tlon provider for ${account.ship ?? "tlon"}`);
return monitorTlonProvider({
runtime: ctx.runtime,
abortSignal: ctx.abortSignal,
accountId: account.accountId
});
}
//#endregion
export { probeTlonAccount, startTlonGatewayAccount, tlonRuntimeOutbound, tlonSetupWizard };