@jerome-benoit/sap-ai-provider-v2 4.8.0 → 4.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/dist/{chunk-TQXCNZBC.js → chunk-5EDF6MHL.js} +4 -4
  2. package/dist/chunk-5EDF6MHL.js.map +1 -0
  3. package/dist/{chunk-BVDSJ4IZ.js → chunk-5JVF4555.js} +3 -3
  4. package/dist/{chunk-3ZSXTKOK.js → chunk-5ZKQJNHO.js} +399 -101
  5. package/dist/{chunk-3ZSXTKOK.js.map → chunk-5ZKQJNHO.js.map} +1 -1
  6. package/dist/{chunk-KVOLFUQJ.js → chunk-RJFB6VFO.js} +2 -2
  7. package/dist/{chunk-H5KD4EPO.js → chunk-VHZSAQBJ.js} +2 -2
  8. package/dist/{foundation-models-embedding-model-strategy-SWRJNFD4.js → foundation-models-embedding-model-strategy-VKBRG7RT.js} +4 -4
  9. package/dist/{foundation-models-language-model-strategy-LRAC25ZY.js → foundation-models-language-model-strategy-FBGKZSTU.js} +4 -4
  10. package/dist/index.cjs +413 -106
  11. package/dist/index.cjs.map +1 -1
  12. package/dist/index.d.cts +6 -4
  13. package/dist/index.d.ts +6 -4
  14. package/dist/index.js +6 -6
  15. package/dist/index.js.map +1 -1
  16. package/dist/{orchestration-embedding-model-strategy-C5G735Q2.js → orchestration-embedding-model-strategy-DVPO2TP3.js} +5 -5
  17. package/dist/{orchestration-language-model-strategy-NUHYRIXH.js → orchestration-language-model-strategy-KEJWB4E2.js} +18 -9
  18. package/dist/orchestration-language-model-strategy-KEJWB4E2.js.map +1 -0
  19. package/package.json +19 -21
  20. package/dist/chunk-TQXCNZBC.js.map +0 -1
  21. package/dist/orchestration-language-model-strategy-NUHYRIXH.js.map +0 -1
  22. /package/dist/{chunk-BVDSJ4IZ.js.map → chunk-5JVF4555.js.map} +0 -0
  23. /package/dist/{chunk-KVOLFUQJ.js.map → chunk-RJFB6VFO.js.map} +0 -0
  24. /package/dist/{chunk-H5KD4EPO.js.map → chunk-VHZSAQBJ.js.map} +0 -0
  25. /package/dist/{foundation-models-embedding-model-strategy-SWRJNFD4.js.map → foundation-models-embedding-model-strategy-VKBRG7RT.js.map} +0 -0
  26. /package/dist/{foundation-models-language-model-strategy-LRAC25ZY.js.map → foundation-models-language-model-strategy-FBGKZSTU.js.map} +0 -0
  27. /package/dist/{orchestration-embedding-model-strategy-C5G735Q2.js.map → orchestration-embedding-model-strategy-DVPO2TP3.js.map} +0 -0
@@ -11338,7 +11338,7 @@ var require_error_with_cause = __commonJS({
11338
11338
  this.addStack(cause);
11339
11339
  }
11340
11340
  isAxiosError(err) {
11341
- return err["isAxiosError"] === true;
11341
+ return "isAxiosError" in err && err.isAxiosError === true;
11342
11342
  }
11343
11343
  addStack(cause) {
11344
11344
  if (this.isAxiosError(cause)) {
@@ -25275,6 +25275,7 @@ var require_axios = __commonJS({
25275
25275
  var isReactNative = (formData) => formData && typeof formData.getParts !== "undefined";
25276
25276
  var isBlob = kindOfTest("Blob");
25277
25277
  var isFileList = kindOfTest("FileList");
25278
+ var isSet = kindOfTest("Set");
25278
25279
  var isStream = (val) => isObject(val) && isFunction$1(val.pipe);
25279
25280
  function getGlobal() {
25280
25281
  if (typeof globalThis !== "undefined") return globalThis;
@@ -25572,11 +25573,20 @@ var require_axios = __commonJS({
25572
25573
  }
25573
25574
  if (!("toJSON" in source)) {
25574
25575
  visited.add(source);
25575
- const target = isArray(source) ? [] : {};
25576
- forEach(source, (value, key) => {
25577
- const reducedValue = visit(value);
25578
- !isUndefined(reducedValue) && (target[key] = reducedValue);
25579
- });
25576
+ let target;
25577
+ if (isSet(source)) {
25578
+ target = [];
25579
+ for (const value of source) {
25580
+ const reducedValue = visit(value);
25581
+ !isUndefined(reducedValue) && target.push(reducedValue);
25582
+ }
25583
+ } else {
25584
+ target = isArray(source) ? [] : {};
25585
+ forEach(source, (value, key) => {
25586
+ const reducedValue = visit(value);
25587
+ !isUndefined(reducedValue) && (target[key] = reducedValue);
25588
+ });
25589
+ }
25580
25590
  visited.delete(source);
25581
25591
  return target;
25582
25592
  }
@@ -25684,17 +25694,18 @@ var require_axios = __commonJS({
25684
25694
  i = line.indexOf(":");
25685
25695
  key = line.substring(0, i).trim().toLowerCase();
25686
25696
  val = line.substring(i + 1).trim();
25687
- if (!key || parsed[key] && ignoreDuplicateOf[key]) {
25697
+ const hasKey = utils$1.hasOwnProp(parsed, key);
25698
+ if (!key || hasKey && utils$1.hasOwnProp(ignoreDuplicateOf, key)) {
25688
25699
  return;
25689
25700
  }
25690
25701
  if (key === "set-cookie") {
25691
- if (parsed[key]) {
25702
+ if (hasKey) {
25692
25703
  parsed[key].push(val);
25693
25704
  } else {
25694
25705
  parsed[key] = [val];
25695
25706
  }
25696
25707
  } else {
25697
- parsed[key] = parsed[key] ? parsed[key] + ", " + val : val;
25708
+ parsed[key] = hasKey ? parsed[key] + ", " + val : val;
25698
25709
  }
25699
25710
  });
25700
25711
  return parsed;
@@ -25754,6 +25765,90 @@ var require_axios = __commonJS({
25754
25765
  }
25755
25766
  return tokens;
25756
25767
  }
25768
+ var parameterNameRE = /^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;
25769
+ function trimOWS(value) {
25770
+ let start = 0;
25771
+ let end = value.length;
25772
+ while (start < end) {
25773
+ const code = value.charCodeAt(start);
25774
+ if (code !== 9 && code !== 32) {
25775
+ break;
25776
+ }
25777
+ start += 1;
25778
+ }
25779
+ while (end > start) {
25780
+ const code = value.charCodeAt(end - 1);
25781
+ if (code !== 9 && code !== 32) {
25782
+ break;
25783
+ }
25784
+ end -= 1;
25785
+ }
25786
+ return start === 0 && end === value.length ? value : value.slice(start, end);
25787
+ }
25788
+ function decodeQuotedString(value) {
25789
+ const last2 = value.length - 1;
25790
+ if (last2 < 1 || value.charCodeAt(0) !== 34 || value.charCodeAt(last2) !== 34) {
25791
+ return value;
25792
+ }
25793
+ let decoded = "";
25794
+ for (let i = 1; i < last2; i++) {
25795
+ const code = value.charCodeAt(i);
25796
+ if (code === 34) {
25797
+ return value;
25798
+ }
25799
+ if (code === 92) {
25800
+ i += 1;
25801
+ if (i >= last2) {
25802
+ return value;
25803
+ }
25804
+ }
25805
+ decoded += value[i];
25806
+ }
25807
+ return decoded;
25808
+ }
25809
+ function parseParameters(value) {
25810
+ const parameters = /* @__PURE__ */ Object.create(null);
25811
+ const str = String(value);
25812
+ let start = 0;
25813
+ let quoted = false;
25814
+ let escaped = false;
25815
+ function parseParameter(end) {
25816
+ const part = trimOWS(str.slice(start, end));
25817
+ const equals = part.indexOf("=");
25818
+ if (equals < 1) {
25819
+ return;
25820
+ }
25821
+ const name = trimOWS(part.slice(0, equals));
25822
+ if (!parameterNameRE.test(name)) {
25823
+ return;
25824
+ }
25825
+ const normalizedName = name.toLowerCase();
25826
+ if (normalizedName === "__proto__" || normalizedName === "constructor" || normalizedName === "prototype") {
25827
+ return;
25828
+ }
25829
+ const parameterValue = trimOWS(part.slice(equals + 1));
25830
+ parameters[normalizedName] = decodeQuotedString(parameterValue);
25831
+ }
25832
+ for (let i = 0; i < str.length; i++) {
25833
+ const code = str.charCodeAt(i);
25834
+ if (quoted) {
25835
+ if (escaped) {
25836
+ escaped = false;
25837
+ } else if (code === 92) {
25838
+ escaped = true;
25839
+ } else if (code === 34) {
25840
+ quoted = false;
25841
+ }
25842
+ } else if (code === 34) {
25843
+ quoted = true;
25844
+ } else if (code === 44 || code === 59) {
25845
+ parseParameter(i);
25846
+ start = i + 1;
25847
+ }
25848
+ }
25849
+ parseParameter(str.length);
25850
+ return parameters;
25851
+ }
25757
25852
  var isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());
25758
25853
  function matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {
25759
25854
  if (utils$1.isFunction(filter)) {
@@ -25929,7 +26024,8 @@ var require_axios = __commonJS({
25929
26024
  return Object.entries(this.toJSON()).map(([header, value]) => header + ": " + value).join("\n");
25930
26025
  }
25931
26026
  getSetCookie() {
25932
- return this.get("set-cookie") || [];
26027
+ const value = this.get("set-cookie");
26028
+ return utils$1.isArray(value) ? value : value == null || value === false ? [] : [value];
25933
26029
  }
25934
26030
  get [Symbol.toStringTag]() {
25935
26031
  return "AxiosHeaders";
@@ -25937,6 +26033,9 @@ var require_axios = __commonJS({
25937
26033
  static from(thing) {
25938
26034
  return thing instanceof this ? thing : new this(thing);
25939
26035
  }
26036
+ static parseParameters(value) {
26037
+ return parseParameters(value);
26038
+ }
25940
26039
  static concat(first2, ...targets) {
25941
26040
  const computed = new this(first2);
25942
26041
  targets.forEach((target) => computed.set(target));
@@ -26024,9 +26123,30 @@ var require_axios = __commonJS({
26024
26123
  };
26025
26124
  return visit(config);
26026
26125
  }
26126
+ function stringifySafely$1(value) {
26127
+ try {
26128
+ return String(value);
26129
+ } catch (err) {
26130
+ return "";
26131
+ }
26132
+ }
26133
+ function aggregateErrorMessage(error) {
26134
+ const message = error.errors.map((entry) => {
26135
+ try {
26136
+ return entry && entry.message ? stringifySafely$1(entry.message) : stringifySafely$1(entry);
26137
+ } catch (err) {
26138
+ return "";
26139
+ }
26140
+ }).filter(Boolean).join("; ");
26141
+ return message || error.name || "AggregateError";
26142
+ }
26027
26143
  var AxiosError = class _AxiosError extends Error {
26028
26144
  static from(error, code, config, request, response, customProps) {
26029
- const axiosError = new _AxiosError(error.message, code || error.code, config, request, response);
26145
+ let message = error.message;
26146
+ if (!message && utils$1.isArray(error.errors) && error.errors.length) {
26147
+ message = aggregateErrorMessage(error);
26148
+ }
26149
+ const axiosError = new _AxiosError(message, code || error.code, config, request, response);
26030
26150
  Object.defineProperty(axiosError, "cause", {
26031
26151
  __proto__: null,
26032
26152
  value: error,
@@ -26110,6 +26230,14 @@ var require_axios = __commonJS({
26110
26230
  AxiosError.ERR_NOT_SUPPORT = "ERR_NOT_SUPPORT";
26111
26231
  AxiosError.ERR_INVALID_URL = "ERR_INVALID_URL";
26112
26232
  AxiosError.ERR_FORM_DATA_DEPTH_EXCEEDED = "ERR_FORM_DATA_DEPTH_EXCEEDED";
26233
+ var PlatformBuffer = {
26234
+ isBufferAvailable() {
26235
+ return typeof Buffer !== "undefined";
26236
+ },
26237
+ from(value) {
26238
+ return Buffer.from(value);
26239
+ }
26240
+ };
26113
26241
  var DEFAULT_FORM_DATA_MAX_DEPTH = 100;
26114
26242
  function isVisitable(thing) {
26115
26243
  return utils$1.isPlainObject(thing) || utils$1.isArray(thing);
@@ -26168,8 +26296,8 @@ var require_axios = __commonJS({
26168
26296
  if (useBlob && typeof _Blob === "function") {
26169
26297
  return new _Blob([value]);
26170
26298
  }
26171
- if (typeof Buffer !== "undefined") {
26172
- return Buffer.from(value);
26299
+ if (PlatformBuffer && PlatformBuffer.isBufferAvailable()) {
26300
+ return PlatformBuffer.from(value);
26173
26301
  }
26174
26302
  throw new AxiosError("Blob is not supported. Use a Buffer instead.", AxiosError.ERR_NOT_SUPPORT);
26175
26303
  }
@@ -26447,7 +26575,7 @@ var require_axios = __commonJS({
26447
26575
  }
26448
26576
  function parsePropPath(name) {
26449
26577
  const path2 = [];
26450
- const pattern = /\w+|\[(\w*)]/g;
26578
+ const pattern = /[^.[\]]+|\[([^.[\]]*)]/g;
26451
26579
  let match2;
26452
26580
  while ((match2 = pattern.exec(name)) !== null) {
26453
26581
  throwIfDepthExceeded(path2.length);
@@ -26654,7 +26782,14 @@ var require_axios = __commonJS({
26654
26782
  return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url2);
26655
26783
  }
26656
26784
  function combineURLs(baseURL, relativeURL) {
26657
- return relativeURL ? baseURL.replace(/\/?\/$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL;
26785
+ if (!relativeURL) {
26786
+ return baseURL;
26787
+ }
26788
+ let end = baseURL.length;
26789
+ while (end > 0 && baseURL.charCodeAt(end - 1) === 47) {
26790
+ end--;
26791
+ }
26792
+ return baseURL.slice(0, end) + "/" + relativeURL.replace(/^\/+/, "");
26658
26793
  }
26659
26794
  var malformedHttpProtocol = /^https?:(?!\/\/)/i;
26660
26795
  var httpProtocolControlCharacters = /[\t\n\r]/g;
@@ -26668,9 +26803,30 @@ var require_axios = __commonJS({
26668
26803
  function normalizeURLForProtocolCheck(url2) {
26669
26804
  return stripLeadingC0ControlOrSpace(url2).replace(httpProtocolControlCharacters, "");
26670
26805
  }
26806
+ function redactFragment(fragment) {
26807
+ if (!fragment) {
26808
+ return fragment;
26809
+ }
26810
+ return fragment.replace(/(^|&)([^=&]*=)?[^&]+/g, (match2, separator, parameterName = "") => {
26811
+ return `${separator}${parameterName}${REDACTED}`;
26812
+ });
26813
+ }
26814
+ function redactSensitiveURLParts(url2) {
26815
+ const redactedURL = url2.replace(/^(https?:\/{0,2})[^/?#]*@/i, `$1${REDACTED}@`);
26816
+ const fragmentIndex = redactedURL.indexOf("#");
26817
+ const urlWithoutFragment = fragmentIndex === -1 ? redactedURL : redactedURL.slice(0, fragmentIndex);
26818
+ const redactedURLWithoutFragment = urlWithoutFragment.replace(/([?&][^=&#]*=)[^&#]*/g, `$1${REDACTED}`);
26819
+ if (fragmentIndex === -1) {
26820
+ return redactedURLWithoutFragment;
26821
+ }
26822
+ return `${redactedURLWithoutFragment}#${redactFragment(redactedURL.slice(fragmentIndex + 1))}`;
26823
+ }
26671
26824
  function assertValidHttpProtocolURL(url2, config) {
26672
- if (typeof url2 === "string" && malformedHttpProtocol.test(normalizeURLForProtocolCheck(url2))) {
26673
- throw new AxiosError('Invalid URL: missing "//" after protocol', AxiosError.ERR_INVALID_URL, config);
26825
+ if (typeof url2 === "string") {
26826
+ const normalizedURL = normalizeURLForProtocolCheck(url2);
26827
+ if (malformedHttpProtocol.test(normalizedURL)) {
26828
+ throw new AxiosError(`Invalid URL ${JSON.stringify(redactSensitiveURLParts(normalizedURL))}: missing "//" after protocol`, AxiosError.ERR_INVALID_URL, config);
26829
+ }
26674
26830
  }
26675
26831
  }
26676
26832
  function buildFullPath(baseURL, requestedURL, allowAbsoluteUrls, config) {
@@ -26747,7 +26903,7 @@ var require_axios = __commonJS({
26747
26903
  function getEnv(key) {
26748
26904
  return process.env[key.toLowerCase()] || process.env[key.toUpperCase()] || "";
26749
26905
  }
26750
- var VERSION2 = "1.18.1";
26906
+ var VERSION2 = "1.19.0";
26751
26907
  function parseProtocol(url2) {
26752
26908
  const match2 = /^([-+\w]{1,25}):(?:\/\/)?/.exec(url2);
26753
26909
  return match2 && match2[1] || "";
@@ -26788,6 +26944,18 @@ var require_axios = __commonJS({
26788
26944
  }
26789
26945
  throw new AxiosError("Unsupported protocol " + protocol, AxiosError.ERR_NOT_SUPPORT);
26790
26946
  }
26947
+ var FORM_DATA_CONTENT_HEADERS = ["content-type", "content-length"];
26948
+ function setFormDataHeaders(headers, formHeaders, policy) {
26949
+ if (policy !== "content-only") {
26950
+ headers.set(formHeaders);
26951
+ return;
26952
+ }
26953
+ Object.entries(formHeaders || {}).forEach(([key, val]) => {
26954
+ if (FORM_DATA_CONTENT_HEADERS.includes(key.toLowerCase())) {
26955
+ headers.set(key, val);
26956
+ }
26957
+ });
26958
+ }
26791
26959
  var kInternals = /* @__PURE__ */ Symbol("internals");
26792
26960
  var AxiosTransformStream = class extends stream.Transform {
26793
26961
  constructor(options) {
@@ -27106,6 +27274,60 @@ var require_axios = __commonJS({
27106
27274
  if (parts[0] !== "127") return false;
27107
27275
  return parts.every((p) => /^\d+$/.test(p) && Number(p) >= 0 && Number(p) <= 255);
27108
27276
  };
27277
+ var parseIPv4Octet = (text) => {
27278
+ if (/^0[xX][0-9a-fA-F]+$/.test(text)) {
27279
+ const n = parseInt(text.slice(2), 16);
27280
+ return Number.isFinite(n) ? n : null;
27281
+ }
27282
+ if (text.length > 1 && /^0[0-7]+$/.test(text)) {
27283
+ const n = parseInt(text, 8);
27284
+ return Number.isFinite(n) ? n : null;
27285
+ }
27286
+ if (text.length > 1 && /^0[0-9]+$/.test(text)) {
27287
+ return null;
27288
+ }
27289
+ if (/^[0-9]+$/.test(text)) {
27290
+ const n = parseInt(text, 10);
27291
+ return Number.isFinite(n) ? n : null;
27292
+ }
27293
+ return null;
27294
+ };
27295
+ var normalizeIPAddress = (host) => {
27296
+ if (typeof host !== "string" || !host || host.indexOf(":") !== -1) {
27297
+ return host;
27298
+ }
27299
+ let h = host;
27300
+ if (h.charAt(0) === "[" && h.charAt(h.length - 1) === "]") {
27301
+ h = h.slice(1, -1);
27302
+ }
27303
+ h = h.replace(/\.+$/, "");
27304
+ if (!/^[0-9.xXa-fA-F]+$/.test(h)) return host;
27305
+ const parts = h.split(".");
27306
+ if (parts.some((p) => p === "")) return host;
27307
+ if (parts.length === 4) {
27308
+ const octets = parts.map(parseIPv4Octet);
27309
+ if (octets.some((n) => n === null || n < 0 || n > 255)) return host;
27310
+ return octets.join(".");
27311
+ }
27312
+ if (parts.length > 4) {
27313
+ return host;
27314
+ }
27315
+ if (parts.length === 1) return host;
27316
+ const literalOctets = parts.slice(0, -1);
27317
+ const tail = parts[parts.length - 1];
27318
+ const tailSlots = 4 - literalOctets.length;
27319
+ const tailValue = parseIPv4Octet(tail);
27320
+ if (tailValue === null) return host;
27321
+ const maxTail = (1 << 8 * tailSlots) - 1;
27322
+ if (tailValue < 0 || tailValue > maxTail) return host;
27323
+ const tailOctets = new Array(tailSlots).fill(0);
27324
+ for (let i = tailSlots - 1, v = tailValue; i >= 0; i--, v >>= 8) {
27325
+ tailOctets[i] = v & 255;
27326
+ }
27327
+ const literal2 = literalOctets.map(parseIPv4Octet);
27328
+ if (literal2.some((n) => n === null || n < 0 || n > 255)) return host;
27329
+ return [...literal2, ...tailOctets].join(".");
27330
+ };
27109
27331
  var isIPv6ZeroGroup = (group) => /^0{1,4}$/.test(group);
27110
27332
  var isIPv6Unspecified = (host) => {
27111
27333
  if (host === "::") return true;
@@ -27197,7 +27419,12 @@ var require_axios = __commonJS({
27197
27419
  if (hostname.charAt(0) === "[" && hostname.charAt(hostname.length - 1) === "]") {
27198
27420
  hostname = hostname.slice(1, -1);
27199
27421
  }
27200
- return unmapIPv4MappedIPv6(hostname.replace(/\.+$/, ""));
27422
+ const trimmed = hostname.replace(/\.+$/, "");
27423
+ const ipv4 = normalizeIPAddress(trimmed);
27424
+ if (ipv4 !== trimmed) {
27425
+ return ipv4;
27426
+ }
27427
+ return unmapIPv4MappedIPv6(trimmed);
27201
27428
  };
27202
27429
  function shouldBypassProxy(location) {
27203
27430
  let parsed;
@@ -27219,6 +27446,9 @@ var require_axios = __commonJS({
27219
27446
  if (!entry) {
27220
27447
  return false;
27221
27448
  }
27449
+ if (entry === "*") {
27450
+ return true;
27451
+ }
27222
27452
  let [entryHost, entryPort] = parseNoProxyEntry(entry);
27223
27453
  entryHost = normalizeNoProxyHost(entryHost);
27224
27454
  if (!entryHost) {
@@ -27310,7 +27540,7 @@ var require_axios = __commonJS({
27310
27540
  }
27311
27541
  const rawLoaded = e.loaded;
27312
27542
  const total = e.lengthComputable ? e.total : void 0;
27313
- const loaded = total != null ? Math.min(rawLoaded, total) : rawLoaded;
27543
+ const loaded = Math.max(0, total != null ? Math.min(rawLoaded, total) : rawLoaded);
27314
27544
  const progressBytes = Math.max(0, loaded - bytesNotified);
27315
27545
  const rate = _speedometer(progressBytes);
27316
27546
  bytesNotified = Math.max(bytesNotified, loaded);
@@ -27336,10 +27566,64 @@ var require_axios = __commonJS({
27336
27566
  loaded
27337
27567
  }), throttled[1]];
27338
27568
  };
27339
- var asyncDecorator = (fn) => (...args) => utils$1.asap(() => fn(...args));
27569
+ var asyncDecorator = (fn, scheduler = utils$1.asap) => (...args) => scheduler(() => fn(...args));
27340
27570
  var isHexDigit = (charCode) => charCode >= 48 && charCode <= 57 || charCode >= 65 && charCode <= 70 || charCode >= 97 && charCode <= 102;
27341
27571
  var isPercentEncodedByte = (str, i, len) => i + 2 < len && isHexDigit(str.charCodeAt(i + 1)) && isHexDigit(str.charCodeAt(i + 2));
27342
- function estimateDataURLDecodedBytes(url2) {
27572
+ var hexValue = (charCode) => charCode <= 57 ? charCode - 48 : (charCode & 223) - 55;
27573
+ var isBase64Char = (charCode) => charCode >= 65 && charCode <= 90 || // A-Z
27574
+ charCode >= 97 && charCode <= 122 || // a-z
27575
+ charCode >= 48 && charCode <= 57 || // 0-9
27576
+ charCode === 43 || // +
27577
+ charCode === 47 || // /
27578
+ charCode === 45 || // - (base64url)
27579
+ charCode === 95;
27580
+ var isBase64Whitespace = (charCode) => charCode === 9 || charCode === 10 || charCode === 12 || charCode === 13 || charCode === 32;
27581
+ var base64Bytes = (significant) => {
27582
+ const groups = Math.floor(significant / 4);
27583
+ const remainder = significant % 4;
27584
+ return groups * 3 + (remainder === 2 ? 1 : remainder === 3 ? 2 : 0);
27585
+ };
27586
+ var estimateBase64BufferAllocation = (body) => {
27587
+ const len = body.length;
27588
+ let padding = 0;
27589
+ if (len > 0 && body.charCodeAt(len - 1) === 61) {
27590
+ padding++;
27591
+ if (len > 1 && body.charCodeAt(len - 2) === 61) {
27592
+ padding++;
27593
+ }
27594
+ }
27595
+ return Math.floor((len - padding) * 3 / 4);
27596
+ };
27597
+ var estimatePercentDecodedBase64Bytes = (body) => {
27598
+ const len = body.length;
27599
+ let significant = 0;
27600
+ let padding = 0;
27601
+ let invalid = false;
27602
+ for (let i = 0; i < len; i++) {
27603
+ let code = body.charCodeAt(i);
27604
+ if (code === 37 && isPercentEncodedByte(body, i, len)) {
27605
+ code = hexValue(body.charCodeAt(i + 1)) * 16 + hexValue(body.charCodeAt(i + 2));
27606
+ i += 2;
27607
+ }
27608
+ if (isBase64Whitespace(code)) {
27609
+ continue;
27610
+ }
27611
+ if (code === 61) {
27612
+ padding++;
27613
+ continue;
27614
+ }
27615
+ if (!isBase64Char(code) || padding > 0) {
27616
+ invalid = true;
27617
+ continue;
27618
+ }
27619
+ significant++;
27620
+ }
27621
+ if (invalid || padding > 2 || padding > 0 && (significant + padding) % 4 !== 0 || significant % 4 === 1) {
27622
+ return estimateBase64BufferAllocation(body);
27623
+ }
27624
+ return base64Bytes(significant);
27625
+ };
27626
+ var estimateDataURLBytes = (url2, estimateBase64) => {
27343
27627
  if (!url2 || typeof url2 !== "string") return 0;
27344
27628
  if (!url2.startsWith("data:")) return 0;
27345
27629
  const comma = url2.indexOf(",");
@@ -27348,43 +27632,7 @@ var require_axios = __commonJS({
27348
27632
  const body = url2.slice(comma + 1);
27349
27633
  const isBase64 = /;base64/i.test(meta);
27350
27634
  if (isBase64) {
27351
- let effectiveLen = body.length;
27352
- const len = body.length;
27353
- for (let i = 0; i < len; i++) {
27354
- if (body.charCodeAt(i) === 37 && i + 2 < len) {
27355
- const a = body.charCodeAt(i + 1);
27356
- const b = body.charCodeAt(i + 2);
27357
- const isHex = isHexDigit(a) && isHexDigit(b);
27358
- if (isHex) {
27359
- effectiveLen -= 2;
27360
- i += 2;
27361
- }
27362
- }
27363
- }
27364
- let pad3 = 0;
27365
- let idx = len - 1;
27366
- const tailIsPct3D = (j) => j >= 2 && body.charCodeAt(j - 2) === 37 && // '%'
27367
- body.charCodeAt(j - 1) === 51 && // '3'
27368
- (body.charCodeAt(j) === 68 || body.charCodeAt(j) === 100);
27369
- if (idx >= 0) {
27370
- if (body.charCodeAt(idx) === 61) {
27371
- pad3++;
27372
- idx--;
27373
- } else if (tailIsPct3D(idx)) {
27374
- pad3++;
27375
- idx -= 3;
27376
- }
27377
- }
27378
- if (pad3 === 1 && idx >= 0) {
27379
- if (body.charCodeAt(idx) === 61) {
27380
- pad3++;
27381
- } else if (tailIsPct3D(idx)) {
27382
- pad3++;
27383
- }
27384
- }
27385
- const groups = Math.floor(effectiveLen / 4);
27386
- const bytes2 = groups * 3 - (pad3 || 0);
27387
- return bytes2 > 0 ? bytes2 : 0;
27635
+ return estimateBase64(body);
27388
27636
  }
27389
27637
  let bytes = 0;
27390
27638
  for (let i = 0, len = body.length; i < len; i++) {
@@ -27409,6 +27657,13 @@ var require_axios = __commonJS({
27409
27657
  }
27410
27658
  }
27411
27659
  return bytes;
27660
+ };
27661
+ function estimateDataURLDecodedBytes(url2) {
27662
+ const fragmentIndex = typeof url2 === "string" ? url2.indexOf("#") : -1;
27663
+ return estimateDataURLBytes(fragmentIndex === -1 ? url2 : url2.slice(0, fragmentIndex), estimatePercentDecodedBase64Bytes);
27664
+ }
27665
+ function estimateDataURLBufferAllocation(url2) {
27666
+ return estimateDataURLBytes(url2, estimateBase64BufferAllocation);
27412
27667
  }
27413
27668
  var zlibOptions = {
27414
27669
  flush: zlib.constants.Z_SYNC_FLUSH,
@@ -27426,23 +27681,12 @@ var require_axios = __commonJS({
27426
27681
  var isZstdSupported = utils$1.isFunction(zlib.createZstdDecompress);
27427
27682
  var ACCEPT_ENCODING = "gzip, compress, deflate" + (isBrotliSupported ? ", br" : "");
27428
27683
  var ACCEPT_ENCODING_WITH_ZSTD = ACCEPT_ENCODING + (isZstdSupported ? ", zstd" : "");
27684
+ var scheduleProgress = typeof process !== "undefined" && process.nextTick ? process.nextTick.bind(process) : utils$1.asap;
27429
27685
  var {
27430
27686
  http: httpFollow,
27431
27687
  https: httpsFollow
27432
27688
  } = followRedirects;
27433
27689
  var isHttps = /https:?/;
27434
- var FORM_DATA_CONTENT_HEADERS$1 = ["content-type", "content-length"];
27435
- function setFormDataHeaders$1(headers, formHeaders, policy) {
27436
- if (policy !== "content-only") {
27437
- headers.set(formHeaders);
27438
- return;
27439
- }
27440
- Object.entries(formHeaders).forEach(([key, val]) => {
27441
- if (FORM_DATA_CONTENT_HEADERS$1.includes(key.toLowerCase())) {
27442
- headers.set(key, val);
27443
- }
27444
- });
27445
- }
27446
27690
  var kAxiosSocketListener = /* @__PURE__ */ Symbol("axios.http.socketListener");
27447
27691
  var kAxiosCurrentReq = /* @__PURE__ */ Symbol("axios.http.currentReq");
27448
27692
  var kAxiosInstalledTunnel = /* @__PURE__ */ Symbol("axios.http.installedTunnel");
@@ -27833,7 +28077,7 @@ var require_axios = __commonJS({
27833
28077
  if (protocol === "data:") {
27834
28078
  if (maxContentLength > -1) {
27835
28079
  const dataUrl = String(own2("url") || fullPath || "");
27836
- const estimated = estimateDataURLDecodedBytes(dataUrl);
28080
+ const estimated = estimateDataURLBufferAllocation(dataUrl);
27837
28081
  if (estimated > maxContentLength) {
27838
28082
  return reject(new AxiosError("maxContentLength size of " + maxContentLength + " exceeded", AxiosError.ERR_BAD_RESPONSE, config));
27839
28083
  }
@@ -27891,7 +28135,7 @@ var require_axios = __commonJS({
27891
28135
  boundary: userBoundary && userBoundary[1] || void 0
27892
28136
  });
27893
28137
  } else if (utils$1.isFormData(data) && utils$1.isFunction(data.getHeaders) && data.getHeaders !== Object.prototype.getHeaders) {
27894
- setFormDataHeaders$1(headers, data.getHeaders(), own2("formDataHeaderPolicy"));
28138
+ setFormDataHeaders(headers, data.getHeaders(), own2("formDataHeaderPolicy"));
27895
28139
  if (!headers.hasContentLength()) {
27896
28140
  try {
27897
28141
  const knownLength = await util.promisify(data.getLength).call(data);
@@ -27933,7 +28177,7 @@ var require_axios = __commonJS({
27933
28177
  data = stream.pipeline([data, new AxiosTransformStream({
27934
28178
  maxRate: utils$1.toFiniteNumber(maxUploadRate)
27935
28179
  })], utils$1.noop);
27936
- onUploadProgress && data.on("progress", flushOnFinish(data, progressEventDecorator(contentLength, progressEventReducer(asyncDecorator(onUploadProgress), false, 3))));
28180
+ onUploadProgress && data.on("progress", flushOnFinish(data, progressEventDecorator(contentLength, progressEventReducer(asyncDecorator(onUploadProgress, scheduleProgress), false, 3))));
27937
28181
  }
27938
28182
  let auth = void 0;
27939
28183
  const configAuth = own2("auth");
@@ -28070,7 +28314,7 @@ var require_axios = __commonJS({
28070
28314
  const transformStream = new AxiosTransformStream({
28071
28315
  maxRate: utils$1.toFiniteNumber(maxDownloadRate)
28072
28316
  });
28073
- onDownloadProgress && transformStream.on("progress", flushOnFinish(transformStream, progressEventDecorator(responseLength, progressEventReducer(asyncDecorator(onDownloadProgress), true, 3))));
28317
+ onDownloadProgress && transformStream.on("progress", flushOnFinish(transformStream, progressEventDecorator(responseLength, progressEventReducer(asyncDecorator(onDownloadProgress, scheduleProgress), true, 3))));
28074
28318
  streams.push(transformStream);
28075
28319
  }
28076
28320
  let responseStream = res;
@@ -28336,6 +28580,12 @@ var require_axios = __commonJS({
28336
28580
  var headersToObject = (thing) => thing instanceof AxiosHeaders ? {
28337
28581
  ...thing
28338
28582
  } : thing;
28583
+ var ownEnumerableKeys = (thing) => {
28584
+ if (Object.getOwnPropertySymbols && Object.getOwnPropertyDescriptor) {
28585
+ return Object.keys(thing).concat(Object.getOwnPropertySymbols(thing).filter((symbol) => Object.getOwnPropertyDescriptor(thing, symbol).enumerable));
28586
+ }
28587
+ return Object.keys(thing);
28588
+ };
28339
28589
  function mergeConfig(config1, config2) {
28340
28590
  config1 = config1 || {};
28341
28591
  config2 = config2 || {};
@@ -28436,7 +28686,7 @@ var require_axios = __commonJS({
28436
28686
  validateStatus: mergeDirectKeys,
28437
28687
  headers: (a, b, prop) => mergeDeepProperties(headersToObject(a), headersToObject(b), prop, true)
28438
28688
  };
28439
- utils$1.forEach(Object.keys({
28689
+ utils$1.forEach(ownEnumerableKeys({
28440
28690
  ...config1,
28441
28691
  ...config2
28442
28692
  }), function computeConfigValue(prop) {
@@ -28456,18 +28706,6 @@ var require_axios = __commonJS({
28456
28706
  }
28457
28707
  return config;
28458
28708
  }
28459
- var FORM_DATA_CONTENT_HEADERS = ["content-type", "content-length"];
28460
- function setFormDataHeaders(headers, formHeaders, policy) {
28461
- if (policy !== "content-only") {
28462
- headers.set(formHeaders);
28463
- return;
28464
- }
28465
- Object.entries(formHeaders || {}).forEach(([key, val]) => {
28466
- if (FORM_DATA_CONTENT_HEADERS.includes(key.toLowerCase())) {
28467
- headers.set(key, val);
28468
- }
28469
- });
28470
- }
28471
28709
  var encodeUTF8$1 = (str) => encodeURIComponent(str).replace(/%([0-9A-F]{2})/gi, (_, hex) => String.fromCharCode(parseInt(hex, 16)));
28472
28710
  function resolveConfig(config) {
28473
28711
  const newConfig = mergeConfig({}, config);
@@ -28673,9 +28911,18 @@ var require_axios = __commonJS({
28673
28911
  });
28674
28912
  signals = null;
28675
28913
  };
28676
- signals.forEach((signal2) => signal2.addEventListener("abort", onabort, {
28677
- once: true
28678
- }));
28914
+ signals.forEach((signal2) => {
28915
+ if (aborted) {
28916
+ return;
28917
+ }
28918
+ if (signal2.aborted) {
28919
+ onabort.call(signal2);
28920
+ return;
28921
+ }
28922
+ signal2.addEventListener("abort", onabort, {
28923
+ once: true
28924
+ });
28925
+ });
28679
28926
  const {
28680
28927
  signal
28681
28928
  } = controller;
@@ -29421,16 +29668,29 @@ var require_axios = __commonJS({
29421
29668
  const onFulfilled = requestInterceptorChain[i++];
29422
29669
  const onRejected = requestInterceptorChain[i++];
29423
29670
  try {
29424
- newConfig = onFulfilled(newConfig);
29671
+ newConfig = onFulfilled ? onFulfilled(newConfig) : newConfig;
29425
29672
  } catch (error) {
29426
- onRejected.call(this, error);
29673
+ if (!onRejected) {
29674
+ promise = Promise.reject(error);
29675
+ break;
29676
+ }
29677
+ try {
29678
+ const rejectedResult = onRejected.call(this, error);
29679
+ if (utils$1.isThenable(rejectedResult)) {
29680
+ promise = Promise.resolve(rejectedResult).then(() => dispatchRequest.call(this, newConfig));
29681
+ }
29682
+ } catch (rejectedError) {
29683
+ promise = Promise.reject(rejectedError);
29684
+ }
29427
29685
  break;
29428
29686
  }
29429
29687
  }
29430
- try {
29431
- promise = dispatchRequest.call(this, newConfig);
29432
- } catch (error) {
29433
- return Promise.reject(error);
29688
+ if (!promise) {
29689
+ try {
29690
+ promise = dispatchRequest.call(this, newConfig);
29691
+ } catch (error) {
29692
+ promise = Promise.reject(error);
29693
+ }
29434
29694
  }
29435
29695
  i = 0;
29436
29696
  len = responseInterceptorChain.length;
@@ -29639,6 +29899,7 @@ var require_axios = __commonJS({
29639
29899
  LoopDetected: 508,
29640
29900
  NotExtended: 510,
29641
29901
  NetworkAuthenticationRequired: 511,
29902
+ WebServerReturnsAnUnknownError: 520,
29642
29903
  WebServerIsDown: 521,
29643
29904
  ConnectionTimedOut: 522,
29644
29905
  OriginIsUnreachable: 523,
@@ -29840,11 +30101,48 @@ var promptTemplateRefSchema = z.union([
29840
30101
  promptTemplateRefByIdSchema,
29841
30102
  promptTemplateRefByScenarioNameVersionSchema
29842
30103
  ]);
30104
+ var orchestrationConfigRefOverrideSchema = z.custom(
30105
+ (value) => typeof value === "object" && value !== null && !Array.isArray(value),
30106
+ { message: "overrideConfig must be an object" }
30107
+ ).refine(
30108
+ (value) => {
30109
+ let stream;
30110
+ try {
30111
+ stream = value.stream;
30112
+ } catch {
30113
+ return false;
30114
+ }
30115
+ return stream === void 0 || Boolean(stream) && typeof stream === "object" && !Array.isArray(stream);
30116
+ },
30117
+ { message: "overrideConfig.stream must be an object" }
30118
+ ).refine(
30119
+ (value) => {
30120
+ let stream;
30121
+ try {
30122
+ stream = value.stream;
30123
+ } catch {
30124
+ return true;
30125
+ }
30126
+ if (stream === void 0 || stream === null || typeof stream !== "object") {
30127
+ return true;
30128
+ }
30129
+ try {
30130
+ return !("enabled" in stream);
30131
+ } catch {
30132
+ return false;
30133
+ }
30134
+ },
30135
+ {
30136
+ message: "stream.enabled is not allowed in overrideConfig: it is controlled by the call site (stream() or chatCompletion())"
30137
+ }
30138
+ );
29843
30139
  var orchestrationConfigRefByIdSchema = z.object({
29844
- id: z.string().min(1, "Config ID cannot be empty")
30140
+ id: z.string().min(1, "Config ID cannot be empty"),
30141
+ overrideConfig: orchestrationConfigRefOverrideSchema.optional()
29845
30142
  });
29846
30143
  var orchestrationConfigRefByScenarioNameVersionSchema = z.object({
29847
30144
  name: z.string().min(1, "Config name cannot be empty"),
30145
+ overrideConfig: orchestrationConfigRefOverrideSchema.optional(),
29848
30146
  scenario: z.string().min(1, "Scenario cannot be empty"),
29849
30147
  version: z.string().min(1, "Version cannot be empty")
29850
30148
  });
@@ -30466,7 +30764,7 @@ function tryExtractSAPErrorFromMessage(message) {
30466
30764
  }
30467
30765
 
30468
30766
  // src/version.ts
30469
- var VERSION = true ? "4.8.0" : "0.0.0-test";
30767
+ var VERSION = true ? "4.9.1" : "0.0.0-test";
30470
30768
 
30471
30769
  export {
30472
30770
  __toESM,
@@ -30518,6 +30816,6 @@ mime-types/index.js:
30518
30816
  *)
30519
30817
 
30520
30818
  axios/dist/node/axios.cjs:
30521
- (*! Axios v1.18.1 Copyright (c) 2026 Matt Zabriskie and contributors *)
30819
+ (*! Axios v1.19.0 Copyright (c) 2026 Matt Zabriskie and contributors *)
30522
30820
  */
30523
- //# sourceMappingURL=chunk-3ZSXTKOK.js.map
30821
+ //# sourceMappingURL=chunk-5ZKQJNHO.js.map