vibo-mcp 2.2.0 → 2.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bundle.js CHANGED
@@ -8,8 +8,8 @@ var __export = (target, all) => {
8
8
  // node_modules/@chrischall/mcp-utils/dist/cancel/index.js
9
9
  import { AsyncLocalStorage } from "node:async_hooks";
10
10
  var storage = new AsyncLocalStorage();
11
- function withCallSignal(signal, fn) {
12
- return signal ? storage.run({ signal }, fn) : fn();
11
+ function withCallSignal(signal, fn, request) {
12
+ return signal ? storage.run({ signal, ...request ? { request } : {} }, fn) : fn();
13
13
  }
14
14
  function currentCallSignal() {
15
15
  return storage.getStore()?.signal;
@@ -23,6 +23,13 @@ function withAmbientCancellation(own2) {
23
23
  return AbortSignal.any([own2, ambient]);
24
24
  }
25
25
 
26
+ // node_modules/@chrischall/mcp-utils/dist/caller/index.js
27
+ import { AsyncLocalStorage as AsyncLocalStorage2 } from "node:async_hooks";
28
+ var storage2 = new AsyncLocalStorage2();
29
+ function withCallerCapabilities(capabilities, fn) {
30
+ return capabilities ? storage2.run(capabilities, fn) : fn();
31
+ }
32
+
26
33
  // node_modules/@modelcontextprotocol/server/dist/chunk-Br0eD_fh.mjs
27
34
  var __create = Object.create;
28
35
  var __defProp2 = Object.defineProperty;
@@ -150,7 +157,6 @@ __export(external_exports, {
150
157
  ZodPrefault: () => ZodPrefault,
151
158
  ZodPreprocess: () => ZodPreprocess,
152
159
  ZodPromise: () => ZodPromise,
153
- ZodProperties: () => ZodProperties,
154
160
  ZodReadonly: () => ZodReadonly,
155
161
  ZodRealError: () => ZodRealError,
156
162
  ZodRecord: () => ZodRecord,
@@ -194,6 +200,7 @@ __export(external_exports, {
194
200
  creditCard: () => creditCard2,
195
201
  cuid: () => cuid3,
196
202
  cuid2: () => cuid22,
203
+ currencyCode: () => currencyCode2,
197
204
  custom: () => custom,
198
205
  date: () => date2,
199
206
  decode: () => decode2,
@@ -287,7 +294,7 @@ __export(external_exports, {
287
294
  preprocess: () => preprocess,
288
295
  prettifyError: () => prettifyError,
289
296
  promise: () => promise,
290
- properties: () => properties,
297
+ properties: () => _properties,
291
298
  property: () => _property,
292
299
  readonly: () => readonly,
293
300
  record: () => record,
@@ -375,6 +382,7 @@ __export(core_exports2, {
375
382
  $ZodCheckMultipleOf: () => $ZodCheckMultipleOf,
376
383
  $ZodCheckNumberFormat: () => $ZodCheckNumberFormat,
377
384
  $ZodCheckOverwrite: () => $ZodCheckOverwrite,
385
+ $ZodCheckProperties: () => $ZodCheckProperties,
378
386
  $ZodCheckProperty: () => $ZodCheckProperty,
379
387
  $ZodCheckRegex: () => $ZodCheckRegex,
380
388
  $ZodCheckSizeEquals: () => $ZodCheckSizeEquals,
@@ -428,7 +436,6 @@ __export(core_exports2, {
428
436
  $ZodPrefault: () => $ZodPrefault,
429
437
  $ZodPreprocess: () => $ZodPreprocess,
430
438
  $ZodPromise: () => $ZodPromise,
431
- $ZodProperties: () => $ZodProperties,
432
439
  $ZodReadonly: () => $ZodReadonly,
433
440
  $ZodRealError: () => $ZodRealError,
434
441
  $ZodRecord: () => $ZodRecord,
@@ -596,6 +603,7 @@ __export(core_exports2, {
596
603
  _xor: () => _xor,
597
604
  base64Charset: () => base64Charset,
598
605
  base64urlCharset: () => base64urlCharset,
606
+ canParseURL: () => canParseURL,
599
607
  clone: () => clone,
600
608
  compile: () => compile,
601
609
  compileFn: () => compileFn,
@@ -618,7 +626,6 @@ __export(core_exports2, {
618
626
  initializeContext: () => initializeContext,
619
627
  isBackEdge: () => isBackEdge,
620
628
  isRecursiveSchema: () => isRecursiveSchema,
621
- isTransforming: () => isTransforming,
622
629
  isValidBase64: () => isValidBase64,
623
630
  isValidBase64URL: () => isValidBase64URL,
624
631
  isValidCIDRv6: () => isValidCIDRv6,
@@ -655,6 +662,7 @@ __export(core_exports2, {
655
662
  util: () => util_exports,
656
663
  validate: () => validate,
657
664
  validateAsync: () => validateAsync,
665
+ validateURL: () => validateURL,
658
666
  version: () => version,
659
667
  withParser: () => withParser
660
668
  });
@@ -1396,9 +1404,6 @@ function members(proto, table) {
1396
1404
  else
1397
1405
  defineBound(proto, key, desc.value);
1398
1406
  }
1399
- for (const sym of Object.getOwnPropertySymbols(table)) {
1400
- defineBound(proto, sym, table[sym]);
1401
- }
1402
1407
  }
1403
1408
  function own(inst, key, value, enumerable = true) {
1404
1409
  Object.defineProperty(inst, key, { configurable: true, writable: true, enumerable, value });
@@ -1551,8 +1556,7 @@ function $constructor(name, initializer3, proto, params) {
1551
1556
  } finally {
1552
1557
  _zodDesc.value = void 0;
1553
1558
  }
1554
- }
1555
- if (inst._zod.traits.has(name)) {
1559
+ } else if (inst._zod.traits.has(name)) {
1556
1560
  return;
1557
1561
  }
1558
1562
  inst._zod.traits.add(name);
@@ -1994,6 +1998,7 @@ __export(regexes_exports, {
1994
1998
  creditCard: () => creditCard,
1995
1999
  cuid: () => cuid,
1996
2000
  cuid2: () => cuid2,
2001
+ currencyCode: () => currencyCode,
1997
2002
  date: () => date,
1998
2003
  datetime: () => datetime,
1999
2004
  domain: () => domain,
@@ -2092,6 +2097,7 @@ var domain = /^(?=.{1,253}$)([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a
2092
2097
  var httpProtocol = /^https?$/;
2093
2098
  var e164 = /^\+[1-9]\d{6,14}$/;
2094
2099
  var creditCard = /^\d(?:[ -]?\d){11,18}$/;
2100
+ var currencyCode = /^(?:AED|AFN|ALL|AMD|AOA|ARS|AUD|AWG|AZN|BAM|BBD|BDT|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYN|BZD|CAD|CDF|CHE|CHF|CHW|CLF|CLP|CNY|COP|COU|CRC|CUP|CVE|CZK|DJF|DKK|DOP|DZD|EGP|ERN|ETB|EUR|FJD|FKP|GBP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HTG|HUF|IDR|ILS|INR|IQD|IRR|ISK|JMD|JOD|JPY|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRU|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|NZD|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SEK|SGD|SHP|SLE|SOS|SRD|SSP|STN|SVC|SYP|SZL|THB|TJS|TMT|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USD|USN|UYI|UYU|UYW|UZS|VED|VES|VND|VUV|WST|XAD|XAF|XAG|XAU|XBA|XBB|XBC|XBD|XCD|XCG|XDR|XOF|XPD|XPF|XPT|XSU|XTS|XUA|XXX|YER|ZAR|ZMW|ZWG)$/;
2095
2101
  var iban = /^[A-Z]{2}(?!00|01|99)\d{2}[A-Z0-9]{11,30}$/;
2096
2102
  var dateSource = `(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`;
2097
2103
  function anchor(source) {
@@ -2576,6 +2582,34 @@ var $ZodCheckProperty = /* @__PURE__ */ $constructor("$ZodCheckProperty", (inst,
2576
2582
  return;
2577
2583
  };
2578
2584
  });
2585
+ var $ZodCheckProperties = /* @__PURE__ */ $constructor("$ZodCheckProperties", (inst, def) => {
2586
+ $ZodCheck.init(inst, def);
2587
+ hide(inst, Symbol.iterator, function* () {
2588
+ yield inst;
2589
+ });
2590
+ let entries;
2591
+ inst._zod.check = (payload) => {
2592
+ if (payload.value == null) {
2593
+ payload.issues.push({ expected: "object", code: "invalid_type", input: payload.value, inst });
2594
+ return void 0;
2595
+ }
2596
+ entries ?? (entries = Reflect.ownKeys(def.shape).map((key) => [key, def.shape[key]]));
2597
+ const input2 = payload.value;
2598
+ let proms;
2599
+ for (const [key, schema] of entries) {
2600
+ const result = schema._zod.run({ value: input2[key], issues: [] }, {});
2601
+ if (result instanceof Promise) {
2602
+ proms ?? (proms = []);
2603
+ proms.push(result.then((result2) => handleCheckPropertyResult(result2, payload, key)));
2604
+ } else {
2605
+ handleCheckPropertyResult(result, payload, key);
2606
+ }
2607
+ }
2608
+ if (proms)
2609
+ return Promise.all(proms).then(() => void 0);
2610
+ return void 0;
2611
+ };
2612
+ });
2579
2613
  var $ZodCheckMimeType = /* @__PURE__ */ $constructor("$ZodCheckMimeType", (inst, def) => {
2580
2614
  $ZodCheck.init(inst, def);
2581
2615
  const mimeSet = new Set(def.mime);
@@ -2643,7 +2677,7 @@ ${content.join("\n")}
2643
2677
  var version = {
2644
2678
  major: 4,
2645
2679
  minor: 6,
2646
- patch: 2
2680
+ patch: 5
2647
2681
  };
2648
2682
 
2649
2683
  // node_modules/zod/v4/core/schemas.js
@@ -2831,11 +2865,32 @@ var $ZodEmail = /* @__PURE__ */ $constructor("$ZodEmail", (inst, def) => {
2831
2865
  });
2832
2866
  var URL_BAD_FORMAT = 1;
2833
2867
  var URL_UNPARSEABLE = 2;
2868
+ function canParseURL(input2) {
2869
+ try {
2870
+ if (typeof URL !== "undefined" && typeof URL.canParse === "function")
2871
+ return URL.canParse(input2);
2872
+ new URL(input2);
2873
+ return true;
2874
+ } catch {
2875
+ return false;
2876
+ }
2877
+ }
2878
+ function validateURL(trimmed, def) {
2879
+ if (!("normalize" in def) && !("hostname" in def) && !("protocol" in def)) {
2880
+ return canParseURL(trimmed) || URL_UNPARSEABLE;
2881
+ }
2882
+ return parseURLObject(trimmed, def);
2883
+ }
2834
2884
  function parseURLObject(trimmed, def) {
2835
2885
  if (!def.normalize && def.protocol?.source === httpProtocol.source && !/^https?:\/\//i.test(trimmed)) {
2836
2886
  return URL_BAD_FORMAT;
2837
2887
  }
2838
2888
  try {
2889
+ if (typeof URL !== "undefined") {
2890
+ const URLStatic = URL;
2891
+ if (typeof URLStatic.parse === "function")
2892
+ return URLStatic.parse(trimmed) ?? URL_UNPARSEABLE;
2893
+ }
2839
2894
  return new URL(trimmed);
2840
2895
  } catch {
2841
2896
  return URL_UNPARSEABLE;
@@ -2858,7 +2913,7 @@ var $ZodURL = /* @__PURE__ */ $constructor("$ZodURL", (inst, def) => {
2858
2913
  inst._zod.check = (payload) => {
2859
2914
  try {
2860
2915
  const trimmed = payload.value.trim();
2861
- const url2 = parseURLObject(trimmed, def);
2916
+ const url2 = validateURL(trimmed, def);
2862
2917
  if (url2 === URL_BAD_FORMAT) {
2863
2918
  payload.issues.push({
2864
2919
  code: "invalid_format",
@@ -2880,6 +2935,10 @@ var $ZodURL = /* @__PURE__ */ $constructor("$ZodURL", (inst, def) => {
2880
2935
  });
2881
2936
  return;
2882
2937
  }
2938
+ if (url2 === true) {
2939
+ payload.value = stripTabAndNewline(trimmed);
2940
+ return;
2941
+ }
2883
2942
  if (def.hostname && !urlHostnameOk(url2, def.hostname)) {
2884
2943
  payload.issues.push({
2885
2944
  code: "invalid_format",
@@ -2969,12 +3028,7 @@ var ipv6Alphabet = /^[0-9a-fA-F:.]+$/;
2969
3028
  function isValidIPv6(value) {
2970
3029
  if (!ipv6Alphabet.test(value))
2971
3030
  return false;
2972
- try {
2973
- new URL(`http://[${value}]`);
2974
- return true;
2975
- } catch {
2976
- return false;
2977
- }
3031
+ return canParseURL(`http://[${value}]`);
2978
3032
  }
2979
3033
  var $ZodIPv6 = /* @__PURE__ */ $constructor("$ZodIPv6", (inst, def) => {
2980
3034
  def.pattern ?? (def.pattern = ipv6);
@@ -5039,59 +5093,6 @@ function handleRefineResult(result, payload, input2, inst) {
5039
5093
  payload.issues.push(issue(_iss));
5040
5094
  }
5041
5095
  }
5042
- function handlePropertiesResult(result, payload, key) {
5043
- if (result.issues.length) {
5044
- payload.issues.push(...prefixIssues(key, result.issues));
5045
- }
5046
- }
5047
- var $ZodProperties = /* @__PURE__ */ $constructor("$ZodProperties", (inst, def) => {
5048
- $ZodType.init(inst, def);
5049
- $ZodCheck.init(inst, def);
5050
- const memo3 = globalConfig.memoizer;
5051
- memo3?.attach(inst);
5052
- let entries;
5053
- const runShape = (payload, ctx) => {
5054
- entries ?? (entries = Reflect.ownKeys(def.shape).map((key) => [key, def.shape[key]]));
5055
- const input2 = payload.value;
5056
- let proms;
5057
- for (const [key, schema] of entries) {
5058
- const result = schema._zod.run({ value: input2[key], issues: [] }, ctx);
5059
- if (result instanceof Promise) {
5060
- proms ?? (proms = []);
5061
- proms.push(result.then((result2) => handlePropertiesResult(result2, payload, key)));
5062
- } else {
5063
- handlePropertiesResult(result, payload, key);
5064
- }
5065
- }
5066
- if (proms)
5067
- return Promise.all(proms).then(() => void 0);
5068
- return void 0;
5069
- };
5070
- inst._zod.parse = (payload, ctx) => {
5071
- const input2 = payload.value;
5072
- if (input2 === null || typeof input2 !== "object" && typeof input2 !== "function") {
5073
- payload.issues.push({ expected: "object", code: "invalid_type", input: input2, inst });
5074
- return payload;
5075
- }
5076
- if (ctx.direction === "backward")
5077
- ctx = { ...ctx, direction: "forward" };
5078
- if (memo3)
5079
- memo3.alloc(inst, payload, input2, ctx);
5080
- const result = runShape(payload, ctx);
5081
- return result instanceof Promise ? result.then(() => payload) : payload;
5082
- };
5083
- inst._zod.check = (payload) => {
5084
- if (payload.value == null) {
5085
- payload.issues.push({ expected: "object", code: "invalid_type", input: payload.value, inst });
5086
- return void 0;
5087
- }
5088
- return runShape(payload, {});
5089
- };
5090
- }, {
5091
- *[Symbol.iterator]() {
5092
- yield this;
5093
- }
5094
- });
5095
5096
 
5096
5097
  // node_modules/zod/v4/core/memoizer.js
5097
5098
  var $ZodCyclicError = class extends Error {
@@ -5103,7 +5104,7 @@ var $ZodCyclicError = class extends Error {
5103
5104
  var STATE = "~memo";
5104
5105
  var NO_ISSUES = [];
5105
5106
  function isRef(value) {
5106
- return value !== null && (typeof value === "object" || typeof value === "function");
5107
+ return value !== null && typeof value === "object";
5107
5108
  }
5108
5109
  function cloneIssues(issues) {
5109
5110
  return issues.map((iss) => iss.path ? { ...iss, path: iss.path.slice() } : { ...iss });
@@ -5152,9 +5153,6 @@ function isRecursive(inst, stack, resolve2) {
5152
5153
  check2(def.catchall);
5153
5154
  break;
5154
5155
  }
5155
- case "properties":
5156
- merge2(shape(def.shape, false));
5157
- break;
5158
5156
  case "array":
5159
5157
  check2(def.element);
5160
5158
  break;
@@ -5482,6 +5480,7 @@ var error = () => {
5482
5480
  json_string: "\u0646\u064E\u0635 \u0639\u0644\u0649 \u0647\u064A\u0626\u0629 JSON",
5483
5481
  e164: "\u0631\u0642\u0645 \u0647\u0627\u062A\u0641 \u0628\u0645\u0639\u064A\u0627\u0631 E.164",
5484
5482
  credit_card: "\u0631\u0642\u0645 \u0628\u0637\u0627\u0642\u0629 \u0627\u0644\u0627\u0626\u062A\u0645\u0627\u0646",
5483
+ currency_code: "\u0631\u0645\u0632 \u0627\u0644\u0639\u0645\u0644\u0629",
5485
5484
  iban: "IBAN",
5486
5485
  jwt: "JWT",
5487
5486
  template_literal: "\u0645\u062F\u062E\u0644"
@@ -5593,6 +5592,7 @@ var error2 = () => {
5593
5592
  json_string: "JSON string",
5594
5593
  e164: "E.164 number",
5595
5594
  credit_card: "kredit kart\u0131 n\xF6mr\u0259si",
5595
+ currency_code: "valyuta kodu",
5596
5596
  iban: "IBAN",
5597
5597
  jwt: "JWT",
5598
5598
  template_literal: "input"
@@ -5753,6 +5753,7 @@ var error3 = () => {
5753
5753
  json_string: "JSON \u0440\u0430\u0434\u043E\u043A",
5754
5754
  e164: "\u043D\u0443\u043C\u0430\u0440 E.164",
5755
5755
  credit_card: "\u043D\u0443\u043C\u0430\u0440 \u043A\u0440\u044D\u0434\u044B\u0442\u043D\u0430\u0439 \u043A\u0430\u0440\u0442\u044B",
5756
+ currency_code: "\u043A\u043E\u0434 \u0432\u0430\u043B\u044E\u0442\u044B",
5756
5757
  iban: "IBAN",
5757
5758
  jwt: "JWT",
5758
5759
  template_literal: "\u0443\u0432\u043E\u0434"
@@ -5871,6 +5872,7 @@ var error4 = () => {
5871
5872
  json_string: "JSON \u043D\u0438\u0437",
5872
5873
  e164: "E.164 \u043D\u043E\u043C\u0435\u0440",
5873
5874
  credit_card: "\u043D\u043E\u043C\u0435\u0440 \u043D\u0430 \u043A\u0440\u0435\u0434\u0438\u0442\u043D\u0430 \u043A\u0430\u0440\u0442\u0430",
5875
+ currency_code: "\u043A\u043E\u0434 \u043D\u0430 \u0432\u0430\u043B\u0443\u0442\u0430",
5874
5876
  iban: "IBAN",
5875
5877
  jwt: "JWT",
5876
5878
  template_literal: "\u0432\u0445\u043E\u0434"
@@ -5996,6 +5998,7 @@ var error5 = () => {
5996
5998
  json_string: "JSON \u09B8\u09CD\u099F\u09CD\u09B0\u09BF\u0982",
5997
5999
  e164: "E.164 \u09A8\u09AE\u09CD\u09AC\u09B0",
5998
6000
  credit_card: "\u0995\u09CD\u09B0\u09C7\u09A1\u09BF\u099F \u0995\u09BE\u09B0\u09CD\u09A1 \u09A8\u09AE\u09CD\u09AC\u09B0",
6001
+ currency_code: "\u09AE\u09C1\u09A6\u09CD\u09B0\u09BE \u0995\u09CB\u09A1",
5999
6002
  iban: "IBAN",
6000
6003
  jwt: "JWT",
6001
6004
  template_literal: "\u0987\u09A8\u09AA\u09C1\u099F"
@@ -6109,6 +6112,7 @@ var error6 = () => {
6109
6112
  json_string: "cadena JSON",
6110
6113
  e164: "n\xFAmero E.164",
6111
6114
  credit_card: "n\xFAmero de targeta de cr\xE8dit",
6115
+ currency_code: "codi de moneda",
6112
6116
  iban: "IBAN",
6113
6117
  jwt: "JWT",
6114
6118
  template_literal: "entrada"
@@ -6222,6 +6226,7 @@ var error7 = () => {
6222
6226
  json_string: "\u062F\u06D5\u0642\u06CC JSON",
6223
6227
  e164: "\u0698\u0645\u0627\u0631\u06D5\u06CC E.164",
6224
6228
  credit_card: "\u0698\u0645\u0627\u0631\u06D5\u06CC \u06A9\u0627\u0631\u062A\u06CC \u06A9\u0631\u06CE\u062F\u06CC\u062A",
6229
+ currency_code: "\u06A9\u06C6\u062F\u06CC \u062F\u0631\u0627\u0648",
6225
6230
  iban: "IBAN",
6226
6231
  jwt: "JWT",
6227
6232
  template_literal: "\u062A\u06CE\u06A9\u0631\u062F\u06D5"
@@ -6354,6 +6359,7 @@ var error8 = () => {
6354
6359
  json_string: "\u0159et\u011Bzec ve form\xE1tu JSON",
6355
6360
  e164: "\u010D\xEDslo E.164",
6356
6361
  credit_card: "\u010D\xEDslo kreditn\xED karty",
6362
+ currency_code: "k\xF3d m\u011Bny",
6357
6363
  iban: "IBAN",
6358
6364
  jwt: "JWT",
6359
6365
  template_literal: "vstup"
@@ -6470,6 +6476,7 @@ var error9 = () => {
6470
6476
  json_string: "JSON-streng",
6471
6477
  e164: "E.164-nummer",
6472
6478
  credit_card: "kreditkortnummer",
6479
+ currency_code: "valutakode",
6473
6480
  iban: "IBAN",
6474
6481
  jwt: "JWT",
6475
6482
  template_literal: "input"
@@ -6590,6 +6597,7 @@ var error10 = () => {
6590
6597
  json_string: "JSON-String",
6591
6598
  e164: "E.164-Nummer",
6592
6599
  credit_card: "Kreditkartennummer",
6600
+ currency_code: "W\xE4hrungscode",
6593
6601
  iban: "IBAN",
6594
6602
  jwt: "JWT",
6595
6603
  template_literal: "Eingabe"
@@ -6703,6 +6711,7 @@ var error11 = () => {
6703
6711
  json_string: "\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC JSON",
6704
6712
  e164: "\u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 E.164",
6705
6713
  credit_card: "\u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03C0\u03B9\u03C3\u03C4\u03C9\u03C4\u03B9\u03BA\u03AE\u03C2 \u03BA\u03AC\u03C1\u03C4\u03B1\u03C2",
6714
+ currency_code: "\u03BA\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03BD\u03BF\u03BC\u03AF\u03C3\u03BC\u03B1\u03C4\u03BF\u03C2",
6706
6715
  iban: "IBAN",
6707
6716
  jwt: "JWT",
6708
6717
  template_literal: "\u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2"
@@ -6814,6 +6823,7 @@ var error12 = () => {
6814
6823
  base64url: "base64url-encoded string",
6815
6824
  json_string: "JSON string",
6816
6825
  e164: "E.164 number",
6826
+ currency_code: "currency code",
6817
6827
  credit_card: "credit card number",
6818
6828
  iban: "IBAN",
6819
6829
  jwt: "JWT",
@@ -6939,6 +6949,7 @@ var error13 = () => {
6939
6949
  json_string: "JSON-karaktraro",
6940
6950
  e164: "E.164-nombro",
6941
6951
  credit_card: "kreditkarta numero",
6952
+ currency_code: "valuta kodo",
6942
6953
  iban: "IBAN",
6943
6954
  jwt: "JWT",
6944
6955
  template_literal: "enigo"
@@ -7052,6 +7063,7 @@ var error14 = () => {
7052
7063
  json_string: "cadena JSON",
7053
7064
  e164: "n\xFAmero E.164",
7054
7065
  credit_card: "n\xFAmero de tarjeta de cr\xE9dito",
7066
+ currency_code: "c\xF3digo de moneda",
7055
7067
  iban: "IBAN",
7056
7068
  jwt: "JWT",
7057
7069
  template_literal: "entrada"
@@ -7189,6 +7201,7 @@ var error15 = () => {
7189
7201
  json_string: "JSON \u0631\u0634\u062A\u0647",
7190
7202
  e164: "E.164 \u0639\u062F\u062F",
7191
7203
  credit_card: "\u0634\u0645\u0627\u0631\u0647 \u06A9\u0627\u0631\u062A \u0627\u0639\u062A\u0628\u0627\u0631\u06CC",
7204
+ currency_code: "\u06A9\u062F \u0627\u0631\u0632",
7192
7205
  iban: "IBAN",
7193
7206
  jwt: "JWT",
7194
7207
  template_literal: "\u0648\u0631\u0648\u062F\u06CC"
@@ -7312,6 +7325,7 @@ var error16 = () => {
7312
7325
  json_string: "JSON-merkkijono",
7313
7326
  e164: "E.164-luku",
7314
7327
  credit_card: "luottokortin numero",
7328
+ currency_code: "valuuttakoodi",
7315
7329
  iban: "IBAN",
7316
7330
  jwt: "JWT",
7317
7331
  template_literal: "templaattimerkkijono"
@@ -7424,6 +7438,7 @@ var error17 = () => {
7424
7438
  json_string: "cha\xEEne de caract\xE8res JSON",
7425
7439
  e164: "num\xE9ro au format E.164",
7426
7440
  credit_card: "num\xE9ro de carte de cr\xE9dit",
7441
+ currency_code: "code de devise",
7427
7442
  iban: "IBAN",
7428
7443
  jwt: "JWT",
7429
7444
  template_literal: "entr\xE9e"
@@ -7554,6 +7569,7 @@ var error18 = () => {
7554
7569
  json_string: "cha\xEEne JSON",
7555
7570
  e164: "num\xE9ro E.164",
7556
7571
  credit_card: "num\xE9ro de carte de cr\xE9dit",
7572
+ currency_code: "code de devise",
7557
7573
  iban: "IBAN",
7558
7574
  jwt: "JWT",
7559
7575
  template_literal: "entr\xE9e"
@@ -7666,6 +7682,7 @@ var error19 = () => {
7666
7682
  json_string: "JSON \u0AB8\u0ACD\u0A9F\u0ACD\u0AB0\u0ABF\u0A82\u0A97",
7667
7683
  e164: "E.164 \u0AA8\u0A82\u0AAC\u0AB0",
7668
7684
  credit_card: "\u0A95\u0ACD\u0AB0\u0AC7\u0AA1\u0ABF\u0A9F \u0A95\u0ABE\u0AB0\u0ACD\u0AA1 \u0AA8\u0A82\u0AAC\u0AB0",
7685
+ currency_code: "\u0A9A\u0AB2\u0AA3 \u0A95\u0ACB\u0AA1",
7669
7686
  iban: "IBAN",
7670
7687
  jwt: "JWT",
7671
7688
  template_literal: "\u0A87\u0AA8\u0AAA\u0AC1\u0A9F"
@@ -7815,6 +7832,7 @@ var error20 = () => {
7815
7832
  json_string: { label: "\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA JSON", gender: "f" },
7816
7833
  e164: { label: "\u05DE\u05E1\u05E4\u05E8 E.164", gender: "m" },
7817
7834
  credit_card: { label: "\u05DE\u05E1\u05E4\u05E8 \u05DB\u05E8\u05D8\u05D9\u05E1 \u05D0\u05E9\u05E8\u05D0\u05D9", gender: "m" },
7835
+ currency_code: { label: "\u05E7\u05D5\u05D3 \u05DE\u05D8\u05D1\u05E2", gender: "m" },
7818
7836
  iban: { label: "IBAN", gender: "m" },
7819
7837
  jwt: { label: "JWT", gender: "m" },
7820
7838
  template_literal: { label: "\u05E7\u05DC\u05D8", gender: "m" },
@@ -7980,6 +7998,7 @@ var error21 = () => {
7980
7998
  json_string: "JSON \u0938\u094D\u091F\u094D\u0930\u093F\u0902\u0917",
7981
7999
  e164: "E.164 \u0938\u0902\u0916\u094D\u092F\u093E",
7982
8000
  credit_card: "\u0915\u094D\u0930\u0947\u0921\u093F\u091F \u0915\u093E\u0930\u094D\u0921 \u0938\u0902\u0916\u094D\u092F\u093E",
8001
+ currency_code: "\u092E\u0941\u0926\u094D\u0930\u093E \u0915\u094B\u0921",
7983
8002
  iban: "IBAN",
7984
8003
  jwt: "JWT",
7985
8004
  template_literal: "\u0907\u0928\u092A\u0941\u091F"
@@ -8090,6 +8109,7 @@ var error22 = () => {
8090
8109
  json_string: "JSON tekst",
8091
8110
  e164: "E.164 broj",
8092
8111
  credit_card: "broj kreditne kartice",
8112
+ currency_code: "kod valute",
8093
8113
  iban: "IBAN",
8094
8114
  jwt: "JWT",
8095
8115
  template_literal: "unos"
@@ -8217,6 +8237,7 @@ var error23 = () => {
8217
8237
  json_string: "JSON string",
8218
8238
  e164: "E.164 sz\xE1m",
8219
8239
  credit_card: "hitelk\xE1rtyasz\xE1m",
8240
+ currency_code: "p\xE9nznemk\xF3d",
8220
8241
  iban: "IBAN",
8221
8242
  jwt: "JWT",
8222
8243
  template_literal: "bemenet"
@@ -8370,6 +8391,7 @@ var error24 = () => {
8370
8391
  json_string: "JSON \u057F\u0578\u0572",
8371
8392
  e164: "E.164 \u0570\u0561\u0574\u0561\u0580",
8372
8393
  credit_card: "\u056F\u0580\u0565\u0564\u056B\u057F \u0584\u0561\u0580\u057F\u056B \u0570\u0561\u0574\u0561\u0580",
8394
+ currency_code: "\u0561\u0580\u056A\u0578\u0582\u0575\u0569\u056B \u056F\u0578\u0564",
8373
8395
  iban: "IBAN",
8374
8396
  jwt: "JWT",
8375
8397
  template_literal: "\u0574\u0578\u0582\u057F\u0584"
@@ -8488,6 +8510,7 @@ var error25 = () => {
8488
8510
  json_string: "string JSON",
8489
8511
  e164: "angka E.164",
8490
8512
  credit_card: "nomor kartu kredit",
8513
+ currency_code: "kode mata uang",
8491
8514
  iban: "IBAN",
8492
8515
  jwt: "JWT",
8493
8516
  template_literal: "input"
@@ -8599,6 +8622,7 @@ var error26 = () => {
8599
8622
  json_string: "JSON strengur",
8600
8623
  e164: "E.164 t\xF6lugildi",
8601
8624
  credit_card: "kreditkortan\xFAmer",
8625
+ currency_code: "gjaldmi\xF0ilsk\xF3\xF0i",
8602
8626
  iban: "IBAN",
8603
8627
  jwt: "JWT",
8604
8628
  template_literal: "gildi"
@@ -8713,6 +8737,7 @@ var error27 = () => {
8713
8737
  json_string: "stringa JSON",
8714
8738
  e164: "numero E.164",
8715
8739
  credit_card: "numero di carta di credito",
8740
+ currency_code: "codice valuta",
8716
8741
  iban: "IBAN",
8717
8742
  jwt: "JWT",
8718
8743
  template_literal: "input"
@@ -8826,6 +8851,7 @@ var error28 = () => {
8826
8851
  json_string: "JSON\u6587\u5B57\u5217",
8827
8852
  e164: "E.164\u756A\u53F7",
8828
8853
  credit_card: "\u30AF\u30EC\u30B8\u30C3\u30C8\u30AB\u30FC\u30C9\u756A\u53F7",
8854
+ currency_code: "\u901A\u8CA8\u30B3\u30FC\u30C9",
8829
8855
  iban: "IBAN",
8830
8856
  jwt: "JWT",
8831
8857
  template_literal: "\u5165\u529B\u5024"
@@ -8938,6 +8964,7 @@ var error29 = () => {
8938
8964
  json_string: "JSON \u10D5\u10D4\u10DA\u10D8",
8939
8965
  e164: "E.164 \u10DC\u10DD\u10DB\u10D4\u10E0\u10D8",
8940
8966
  credit_card: "\u10E1\u10D0\u10D9\u10E0\u10D4\u10D3\u10D8\u10E2\u10DD \u10D1\u10D0\u10E0\u10D0\u10D7\u10D8\u10E1 \u10DC\u10DD\u10DB\u10D4\u10E0\u10D8",
8967
+ currency_code: "\u10D5\u10D0\u10DA\u10E3\u10E2\u10D8\u10E1 \u10D9\u10DD\u10D3\u10D8",
8941
8968
  iban: "IBAN",
8942
8969
  jwt: "JWT",
8943
8970
  template_literal: "\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"
@@ -9055,6 +9082,7 @@ var error30 = () => {
9055
9082
  json_string: "\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A JSON",
9056
9083
  e164: "\u179B\u17C1\u1781 E.164",
9057
9084
  credit_card: "\u179B\u17C1\u1781\u1794\u17D0\u178E\u17D2\u178E\u17A5\u178E\u1791\u17B6\u1793",
9085
+ currency_code: "\u1780\u17BC\u178A\u179A\u17BC\u1794\u17B7\u1799\u1794\u17D0\u178E\u17D2\u178E",
9058
9086
  iban: "IBAN",
9059
9087
  jwt: "JWT",
9060
9088
  template_literal: "\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B"
@@ -9175,6 +9203,7 @@ var error31 = () => {
9175
9203
  json_string: "JSON\u0CB8\u0CCD\u0C9F\u0CCD\u0CB0\u0CBF\u0C82\u0C97\u0CCD",
9176
9204
  e164: "E.164 \u0CB8\u0C82\u0C96\u0CCD\u0CAF\u0CC6",
9177
9205
  credit_card: "\u0C95\u0CCD\u0CB0\u0CC6\u0CA1\u0CBF\u0C9F\u0CCD \u0C95\u0CBE\u0CB0\u0CCD\u0CA1\u0CCD \u0CB8\u0C82\u0C96\u0CCD\u0CAF\u0CC6",
9206
+ currency_code: "\u0C95\u0CB0\u0CC6\u0CA8\u0CCD\u0CB8\u0CBF \u0C95\u0CCB\u0CA1\u0CCD",
9178
9207
  iban: "IBAN",
9179
9208
  jwt: "JWT",
9180
9209
  template_literal: "\u0C87\u0CA8\u0CCD\u0CAA\u0CC1\u0C9F\u0CCD"
@@ -9290,6 +9319,7 @@ var error32 = () => {
9290
9319
  json_string: "JSON \uBB38\uC790\uC5F4",
9291
9320
  e164: "E.164 \uBC88\uD638",
9292
9321
  credit_card: "\uC2E0\uC6A9\uCE74\uB4DC \uBC88\uD638",
9322
+ currency_code: "\uD1B5\uD654 \uCF54\uB4DC",
9293
9323
  iban: "IBAN",
9294
9324
  jwt: "JWT",
9295
9325
  template_literal: "\uC785\uB825"
@@ -9488,6 +9518,7 @@ var error33 = () => {
9488
9518
  json_string: "JSON eilut\u0117",
9489
9519
  e164: "E.164 numeris",
9490
9520
  credit_card: "kredito kortel\u0117s numeris",
9521
+ currency_code: "valiutos kodas",
9491
9522
  iban: "IBAN",
9492
9523
  jwt: "JWT",
9493
9524
  template_literal: "\u012Fvestis"
@@ -9613,6 +9644,7 @@ var error34 = () => {
9613
9644
  json_string: "JSON \u043D\u0438\u0437\u0430",
9614
9645
  e164: "E.164 \u0431\u0440\u043E\u0458",
9615
9646
  credit_card: "\u0431\u0440\u043E\u0458 \u043D\u0430 \u043A\u0440\u0435\u0434\u0438\u0442\u043D\u0430 \u043A\u0430\u0440\u0442\u0438\u0447\u043A\u0430",
9647
+ currency_code: "\u043A\u043E\u0434 \u043D\u0430 \u0432\u0430\u043B\u0443\u0442\u0430",
9616
9648
  iban: "IBAN",
9617
9649
  jwt: "JWT",
9618
9650
  template_literal: "\u0432\u043D\u0435\u0441"
@@ -9727,6 +9759,7 @@ var error35 = () => {
9727
9759
  json_string: "string JSON",
9728
9760
  e164: "nombor E.164",
9729
9761
  credit_card: "nombor kad kredit",
9762
+ currency_code: "kod mata wang",
9730
9763
  iban: "IBAN",
9731
9764
  jwt: "JWT",
9732
9765
  template_literal: "input"
@@ -9839,6 +9872,7 @@ var error36 = () => {
9839
9872
  json_string: "JSON \u0938\u094D\u091F\u094D\u0930\u093F\u0919",
9840
9873
  e164: "E.164 \u0928\u092E\u094D\u092C\u0930",
9841
9874
  credit_card: "\u0915\u094D\u0930\u0947\u0921\u093F\u091F \u0915\u093E\u0930\u094D\u0921 \u0928\u092E\u094D\u092C\u0930",
9875
+ currency_code: "\u092E\u0941\u0926\u094D\u0930\u093E \u0915\u094B\u0921",
9842
9876
  iban: "IBAN",
9843
9877
  jwt: "JWT",
9844
9878
  template_literal: "\u0907\u0928\u092A\u0941\u091F"
@@ -9950,6 +9984,7 @@ var error37 = () => {
9950
9984
  json_string: "JSON string",
9951
9985
  e164: "E.164-nummer",
9952
9986
  credit_card: "creditcardnummer",
9987
+ currency_code: "valutacode",
9953
9988
  iban: "IBAN",
9954
9989
  jwt: "JWT",
9955
9990
  template_literal: "invoer"
@@ -10065,6 +10100,7 @@ var error38 = () => {
10065
10100
  json_string: "JSON-streng",
10066
10101
  e164: "E.164-nummer",
10067
10102
  credit_card: "kredittkortnummer",
10103
+ currency_code: "valutakode",
10068
10104
  iban: "IBAN",
10069
10105
  jwt: "JWT",
10070
10106
  template_literal: "input"
@@ -10178,6 +10214,7 @@ var error39 = () => {
10178
10214
  json_string: "JSON-streng",
10179
10215
  e164: "E.164-nummer",
10180
10216
  credit_card: "kredittkortnummer",
10217
+ currency_code: "valutakode",
10181
10218
  iban: "IBAN",
10182
10219
  jwt: "JWT",
10183
10220
  template_literal: "input"
@@ -10291,6 +10328,7 @@ var error40 = () => {
10291
10328
  json_string: "JSON metin",
10292
10329
  e164: "E.164 say\u0131s\u0131",
10293
10330
  credit_card: "i'tib\xE2r kart\u0131 numaras\u0131",
10331
+ currency_code: "para birimi kodu",
10294
10332
  iban: "IBAN",
10295
10333
  jwt: "JWT",
10296
10334
  template_literal: "giren"
@@ -10405,6 +10443,7 @@ var error41 = () => {
10405
10443
  json_string: "JSON \u0645\u062A\u0646",
10406
10444
  e164: "\u062F E.164 \u0634\u0645\u06D0\u0631\u0647",
10407
10445
  credit_card: "\u062F \u06A9\u0631\u06CC\u0689\u06CC\u067C \u06A9\u0627\u0631\u062A \u0634\u0645\u06CC\u0631\u0647",
10446
+ currency_code: "\u062F \u0627\u0633\u0639\u0627\u0631\u0648 \u06A9\u0648\u0689",
10408
10447
  iban: "IBAN",
10409
10448
  jwt: "JWT",
10410
10449
  template_literal: "\u0648\u0631\u0648\u062F\u064A"
@@ -10524,6 +10563,7 @@ var error42 = () => {
10524
10563
  json_string: "ci\u0105g znak\xF3w w formacie JSON",
10525
10564
  e164: "liczba E.164",
10526
10565
  credit_card: "numer karty kredytowej",
10566
+ currency_code: "kod waluty",
10527
10567
  iban: "IBAN",
10528
10568
  jwt: "JWT",
10529
10569
  template_literal: "wej\u015Bcie"
@@ -10638,6 +10678,7 @@ var error43 = () => {
10638
10678
  json_string: "o texto JSON",
10639
10679
  e164: "o n\xFAmero E.164",
10640
10680
  credit_card: "o n\xFAmero de cart\xE3o de cr\xE9dito",
10681
+ currency_code: "o c\xF3digo de moeda",
10641
10682
  iban: "o IBAN",
10642
10683
  jwt: "o JWT",
10643
10684
  template_literal: "a entrada"
@@ -10781,6 +10822,7 @@ var error44 = () => {
10781
10822
  json_string: "o texto JSON",
10782
10823
  e164: "o n\xFAmero E.164",
10783
10824
  credit_card: "o n\xFAmero de cart\xE3o de cr\xE9dito",
10825
+ currency_code: "o c\xF3digo de moeda",
10784
10826
  iban: "o IBAN",
10785
10827
  jwt: "o JWT",
10786
10828
  template_literal: "a entrada"
@@ -10925,6 +10967,7 @@ var error45 = () => {
10925
10967
  json_string: "\u0219ir JSON",
10926
10968
  e164: "num\u0103r E.164",
10927
10969
  credit_card: "num\u0103r de card de credit",
10970
+ currency_code: "cod valutar",
10928
10971
  iban: "IBAN",
10929
10972
  jwt: "JWT",
10930
10973
  template_literal: "intrare"
@@ -11097,6 +11140,7 @@ var error46 = () => {
11097
11140
  json_string: "JSON \u0441\u0442\u0440\u043E\u043A\u0430",
11098
11141
  e164: "\u043D\u043E\u043C\u0435\u0440 E.164",
11099
11142
  credit_card: "\u043D\u043E\u043C\u0435\u0440 \u043A\u0440\u0435\u0434\u0438\u0442\u043D\u043E\u0439 \u043A\u0430\u0440\u0442\u044B",
11143
+ currency_code: "\u043A\u043E\u0434 \u0432\u0430\u043B\u044E\u0442\u044B",
11100
11144
  iban: "IBAN",
11101
11145
  jwt: "JWT",
11102
11146
  template_literal: "\u0432\u0432\u043E\u0434"
@@ -11215,6 +11259,7 @@ var error47 = () => {
11215
11259
  json_string: "re\u0165azec vo form\xE1te JSON",
11216
11260
  e164: "\u010D\xEDslo E.164",
11217
11261
  credit_card: "\u010D\xEDslo kreditnej karty",
11262
+ currency_code: "k\xF3d meny",
11218
11263
  iban: "IBAN",
11219
11264
  jwt: "JWT",
11220
11265
  template_literal: "vstup"
@@ -11331,6 +11376,7 @@ var error48 = () => {
11331
11376
  json_string: "JSON niz",
11332
11377
  e164: "E.164 \u0161tevilka",
11333
11378
  credit_card: "\u0161tevilka kreditne kartice",
11379
+ currency_code: "koda valute",
11334
11380
  iban: "IBAN",
11335
11381
  jwt: "JWT",
11336
11382
  template_literal: "vnos"
@@ -11445,6 +11491,7 @@ var error49 = () => {
11445
11491
  json_string: "JSON-str\xE4ng",
11446
11492
  e164: "E.164-nummer",
11447
11493
  credit_card: "kreditkortsnummer",
11494
+ currency_code: "valutakod",
11448
11495
  iban: "IBAN",
11449
11496
  jwt: "JWT",
11450
11497
  template_literal: "mall-literal"
@@ -11560,6 +11607,7 @@ var error50 = () => {
11560
11607
  json_string: "JSON \u0B9A\u0BB0\u0BAE\u0BCD",
11561
11608
  e164: "E.164 \u0B8E\u0BA3\u0BCD",
11562
11609
  credit_card: "\u0B95\u0B9F\u0BA9\u0BCD \u0B85\u0B9F\u0BCD\u0B9F\u0BC8 \u0B8E\u0BA3\u0BCD",
11610
+ currency_code: "\u0BA8\u0BBE\u0BA3\u0BAF\u0B95\u0BCD \u0B95\u0BC1\u0BB1\u0BBF\u0BAF\u0BC0\u0B9F\u0BC1",
11563
11611
  iban: "IBAN",
11564
11612
  jwt: "JWT",
11565
11613
  template_literal: "input"
@@ -11675,6 +11723,7 @@ var error51 = () => {
11675
11723
  json_string: "\u0441\u0430\u0442\u0440\u0438 JSON",
11676
11724
  e164: "\u0440\u0430\u049B\u0430\u043C\u0438 E.164",
11677
11725
  credit_card: "\u0440\u0430\u049B\u0430\u043C\u0438 \u043A\u043E\u0440\u0442\u0438 \u043A\u0440\u0435\u0434\u0438\u0442\u04E3",
11726
+ currency_code: "\u0440\u0430\u043C\u0437\u0438 \u0430\u0441\u044A\u043E\u0440",
11678
11727
  iban: "IBAN",
11679
11728
  jwt: "JWT",
11680
11729
  template_literal: "\u0432\u0443\u0440\u0443\u0434"
@@ -11791,6 +11840,7 @@ var error52 = () => {
11791
11840
  json_string: "\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A JSON",
11792
11841
  e164: "\u0E40\u0E1A\u0E2D\u0E23\u0E4C\u0E42\u0E17\u0E23\u0E28\u0E31\u0E1E\u0E17\u0E4C\u0E23\u0E30\u0E2B\u0E27\u0E48\u0E32\u0E07\u0E1B\u0E23\u0E30\u0E40\u0E17\u0E28 (E.164)",
11793
11842
  credit_card: "\u0E2B\u0E21\u0E32\u0E22\u0E40\u0E25\u0E02\u0E1A\u0E31\u0E15\u0E23\u0E40\u0E04\u0E23\u0E14\u0E34\u0E15",
11843
+ currency_code: "\u0E23\u0E2B\u0E31\u0E2A\u0E2A\u0E01\u0E38\u0E25\u0E40\u0E07\u0E34\u0E19",
11794
11844
  iban: "IBAN",
11795
11845
  jwt: "\u0E42\u0E17\u0E40\u0E04\u0E19 JWT",
11796
11846
  template_literal: "\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19"
@@ -11906,6 +11956,7 @@ var error53 = () => {
11906
11956
  json_string: "JSON setiri",
11907
11957
  e164: "E.164 nomeri",
11908
11958
  credit_card: "kredit kartyny\u0148 nomeri",
11959
+ currency_code: "wal\xFDuta kody",
11909
11960
  iban: "IBAN",
11910
11961
  jwt: "JWT",
11911
11962
  template_literal: "\u015Fablon"
@@ -12013,6 +12064,7 @@ var error54 = () => {
12013
12064
  json_string: "JSON dizesi",
12014
12065
  e164: "E.164 say\u0131s\u0131",
12015
12066
  credit_card: "kredi kart\u0131 numaras\u0131",
12067
+ currency_code: "para birimi kodu",
12016
12068
  iban: "IBAN",
12017
12069
  jwt: "JWT",
12018
12070
  template_literal: "\u015Eablon dizesi"
@@ -12123,6 +12175,7 @@ var error55 = () => {
12123
12175
  json_string: "\u0440\u044F\u0434\u043E\u043A JSON",
12124
12176
  e164: "\u043D\u043E\u043C\u0435\u0440 E.164",
12125
12177
  credit_card: "\u043D\u043E\u043C\u0435\u0440 \u043A\u0440\u0435\u0434\u0438\u0442\u043D\u043E\u0457 \u043A\u0430\u0440\u0442\u043A\u0438",
12178
+ currency_code: "\u043A\u043E\u0434 \u0432\u0430\u043B\u044E\u0442\u0438",
12126
12179
  iban: "IBAN",
12127
12180
  jwt: "JWT",
12128
12181
  template_literal: "\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"
@@ -12241,6 +12294,7 @@ var error56 = () => {
12241
12294
  json_string: "\u062C\u06D2 \u0627\u06CC\u0633 \u0627\u0648 \u0627\u06CC\u0646 \u0633\u0679\u0631\u0646\u06AF",
12242
12295
  e164: "\u0627\u06CC 164 \u0646\u0645\u0628\u0631",
12243
12296
  credit_card: "\u06A9\u0631\u06CC\u0688\u0679 \u06A9\u0627\u0631\u0688 \u0646\u0645\u0628\u0631",
12297
+ currency_code: "\u06A9\u0631\u0646\u0633\u06CC \u06A9\u0648\u0688",
12244
12298
  iban: "IBAN",
12245
12299
  jwt: "\u062C\u06D2 \u0688\u0628\u0644\u06CC\u0648 \u0679\u06CC",
12246
12300
  template_literal: "\u0627\u0646 \u067E\u0679"
@@ -12356,6 +12410,7 @@ var error57 = () => {
12356
12410
  json_string: "JSON satr",
12357
12411
  e164: "E.164 raqam",
12358
12412
  credit_card: "kredit karta raqami",
12413
+ currency_code: "valyuta kodi",
12359
12414
  iban: "IBAN",
12360
12415
  jwt: "JWT",
12361
12416
  template_literal: "kirish"
@@ -12469,6 +12524,7 @@ var error58 = () => {
12469
12524
  json_string: "chu\u1ED7i JSON",
12470
12525
  e164: "s\u1ED1 E.164",
12471
12526
  credit_card: "s\u1ED1 th\u1EBB t\xEDn d\u1EE5ng",
12527
+ currency_code: "m\xE3 ti\u1EC1n t\u1EC7",
12472
12528
  iban: "IBAN",
12473
12529
  jwt: "JWT",
12474
12530
  template_literal: "\u0111\u1EA7u v\xE0o"
@@ -12582,6 +12638,7 @@ var error59 = () => {
12582
12638
  json_string: "JSON\u5B57\u7B26\u4E32",
12583
12639
  e164: "E.164\u53F7\u7801",
12584
12640
  credit_card: "\u4FE1\u7528\u5361\u53F7",
12641
+ currency_code: "\u8D27\u5E01\u4EE3\u7801",
12585
12642
  iban: "IBAN",
12586
12643
  jwt: "JWT",
12587
12644
  template_literal: "\u8F93\u5165"
@@ -12696,6 +12753,7 @@ var error60 = () => {
12696
12753
  json_string: "JSON \u5B57\u4E32",
12697
12754
  e164: "E.164 \u6578\u503C",
12698
12755
  credit_card: "\u4FE1\u7528\u5361\u865F",
12756
+ currency_code: "\u8CA8\u5E63\u4EE3\u78BC",
12699
12757
  iban: "IBAN",
12700
12758
  jwt: "JWT",
12701
12759
  template_literal: "\u8F38\u5165"
@@ -12808,6 +12866,7 @@ var error61 = () => {
12808
12866
  json_string: "\u1ECD\u0300r\u1ECD\u0300 JSON",
12809
12867
  e164: "n\u1ECD\u0301mb\xE0 E.164",
12810
12868
  credit_card: "n\u1ECDmba kaadi gbese",
12869
+ currency_code: "koodu ow\xF3",
12811
12870
  iban: "IBAN",
12812
12871
  jwt: "JWT",
12813
12872
  template_literal: "\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9"
@@ -13186,7 +13245,7 @@ function generateChecks(doc, ctx, schema, accessor) {
13186
13245
  generatePropertyCheck(doc, ctx, def, currentAccessor);
13187
13246
  break;
13188
13247
  case "properties":
13189
- generatePropertiesChecks(doc, ctx, def, currentAccessor, false);
13248
+ generatePropertiesChecks(doc, ctx, def, currentAccessor);
13190
13249
  break;
13191
13250
  case "overwrite": {
13192
13251
  const newAccessor = newVar(ctx);
@@ -13296,11 +13355,11 @@ function generateMimeTypeCheck(doc, ctx, def, accessor) {
13296
13355
  doc.write(`if (!${mimeSet}.has(${accessor}.type)) return INVALID;`);
13297
13356
  }
13298
13357
  }
13299
- function generatePropertiesChecks(doc, ctx, def, accessor, schemaRole) {
13358
+ function generatePropertiesChecks(doc, ctx, def, accessor) {
13300
13359
  if (def.when) {
13301
13360
  throw new ZodCompileUnsupportedError(`check with a custom "when" condition`);
13302
13361
  }
13303
- doc.write(schemaRole ? `if (${accessor} === null || (typeof ${accessor} !== "object" && typeof ${accessor} !== "function")) return INVALID;` : `if (${accessor} == null) return INVALID;`);
13362
+ doc.write(`if (${accessor} == null) return INVALID;`);
13304
13363
  const shape = def.shape;
13305
13364
  for (const key of Reflect.ownKeys(shape)) {
13306
13365
  const keyExpr = typeof key === "symbol" ? addConstant(ctx, key) : esc(key);
@@ -13390,7 +13449,7 @@ var PATTERN_IS_COMPLETE = /* @__PURE__ */ new Set([
13390
13449
  "uuid",
13391
13450
  "xid"
13392
13451
  ]);
13393
- function generateStringFormatCheck(doc, ctx, def, accessor) {
13452
+ function generateStringFormatCheck(doc, ctx, def, accessor, needsValue = true) {
13394
13453
  const fmt = def.format;
13395
13454
  if (fmt === "base64") {
13396
13455
  const validator = addConstant(ctx, isValidBase64);
@@ -13430,7 +13489,7 @@ function generateStringFormatCheck(doc, ctx, def, accessor) {
13430
13489
  }
13431
13490
  const formatDef = def;
13432
13491
  if (fmt === "url" || fmt === "httpurl" || formatDef.normalize || formatDef.hostname !== void 0 || formatDef.protocol !== void 0) {
13433
- const parseConst = addConstant(ctx, parseURLObject);
13492
+ const parseConst = addConstant(ctx, validateURL);
13434
13493
  const defConst = addConstant(ctx, def);
13435
13494
  const trimVar = newVar(ctx);
13436
13495
  const urlVar = newVar(ctx);
@@ -13445,6 +13504,8 @@ function generateStringFormatCheck(doc, ctx, def, accessor) {
13445
13504
  const protocolConst = addConstant(ctx, urlProtocolOk);
13446
13505
  doc.write(`if (!${protocolConst}(${urlVar}, ${defConst}.protocol)) return INVALID;`);
13447
13506
  }
13507
+ if (!needsValue)
13508
+ return null;
13448
13509
  const outputVar = newVar(ctx);
13449
13510
  const outputExpr = formatDef.normalize ? `${urlVar}.href` : `${addConstant(ctx, stripTabAndNewline)}(${trimVar})`;
13450
13511
  doc.write(`const ${outputVar} = ${outputExpr};`);
@@ -13504,7 +13565,7 @@ function generateCheck(doc, ctx, schema, accessor, needsValue = true) {
13504
13565
  let typeAccessor;
13505
13566
  switch (type) {
13506
13567
  case "string":
13507
- typeAccessor = generateStringCheck(doc, ctx, schema, accessor);
13568
+ typeAccessor = generateStringCheck(doc, ctx, schema, accessor, buildsValue);
13508
13569
  break;
13509
13570
  case "number":
13510
13571
  typeAccessor = generateNumberCheck(doc, schema, accessor);
@@ -13610,10 +13671,6 @@ function generateCheck(doc, ctx, schema, accessor, needsValue = true) {
13610
13671
  case "custom":
13611
13672
  typeAccessor = generateCustomCheck(doc, ctx, schema, accessor);
13612
13673
  break;
13613
- case "properties":
13614
- generatePropertiesChecks(doc, ctx, schema._zod.def, accessor, true);
13615
- typeAccessor = accessor;
13616
- break;
13617
13674
  case "transform":
13618
13675
  typeAccessor = generateTransformCheck(doc, ctx, schema, accessor);
13619
13676
  break;
@@ -13629,12 +13686,12 @@ function generateCheck(doc, ctx, schema, accessor, needsValue = true) {
13629
13686
  return null;
13630
13687
  return generateChecks(doc, ctx, schema, typeAccessor);
13631
13688
  }
13632
- function generateStringCheck(doc, ctx, schema, accessor) {
13689
+ function generateStringCheck(doc, ctx, schema, accessor, needsValue = true) {
13633
13690
  doc.write(`if (typeof ${accessor} !== "string") return INVALID;`);
13634
13691
  const def = schema._zod.def;
13635
13692
  if (def.format === void 0)
13636
13693
  return accessor;
13637
- return generateStringFormatCheck(doc, ctx, def, accessor);
13694
+ return generateStringFormatCheck(doc, ctx, def, accessor, needsValue);
13638
13695
  }
13639
13696
  function generateNumberCheck(doc, schema, accessor) {
13640
13697
  doc.write(`if (typeof ${accessor} !== "number" || !Number.isFinite(${accessor})) return INVALID;`);
@@ -14534,20 +14591,18 @@ function generateTransformCheck(doc, ctx, schema, accessor) {
14534
14591
  }
14535
14592
 
14536
14593
  // node_modules/zod/v4/core/api.js
14594
+ function snapshotChecks(def) {
14595
+ if (def.checks)
14596
+ def.checks = [...def.checks];
14597
+ return def;
14598
+ }
14537
14599
  // @__NO_SIDE_EFFECTS__
14538
14600
  function _string(Class2, params) {
14539
- return new Class2({
14540
- type: "string",
14541
- ...normalizeParams(params)
14542
- });
14601
+ return new Class2(snapshotChecks({ type: "string", ...normalizeParams(params) }));
14543
14602
  }
14544
14603
  // @__NO_SIDE_EFFECTS__
14545
14604
  function _coercedString(Class2, params) {
14546
- return new Class2({
14547
- type: "string",
14548
- coerce: true,
14549
- ...normalizeParams(params)
14550
- });
14605
+ return new Class2(snapshotChecks({ type: "string", coerce: true, ...normalizeParams(params) }));
14551
14606
  }
14552
14607
  // @__NO_SIDE_EFFECTS__
14553
14608
  function _email(Class2, params) {
@@ -14851,20 +14906,11 @@ function _isoDuration(Class2, params) {
14851
14906
  }
14852
14907
  // @__NO_SIDE_EFFECTS__
14853
14908
  function _number(Class2, params) {
14854
- return new Class2({
14855
- type: "number",
14856
- checks: [],
14857
- ...normalizeParams(params)
14858
- });
14909
+ return new Class2(snapshotChecks({ type: "number", checks: [], ...normalizeParams(params) }));
14859
14910
  }
14860
14911
  // @__NO_SIDE_EFFECTS__
14861
14912
  function _coercedNumber(Class2, params) {
14862
- return new Class2({
14863
- type: "number",
14864
- coerce: true,
14865
- checks: [],
14866
- ...normalizeParams(params)
14867
- });
14913
+ return new Class2(snapshotChecks({ type: "number", coerce: true, checks: [], ...normalizeParams(params) }));
14868
14914
  }
14869
14915
  // @__NO_SIDE_EFFECTS__
14870
14916
  function _int(Class2, params) {
@@ -15206,9 +15252,8 @@ function _property(property, schema, params) {
15206
15252
  });
15207
15253
  }
15208
15254
  // @__NO_SIDE_EFFECTS__
15209
- function _properties(Class2, shape, params) {
15210
- return new Class2({
15211
- type: "properties",
15255
+ function _properties(shape, params) {
15256
+ return new $ZodCheckProperties({
15212
15257
  check: "properties",
15213
15258
  shape,
15214
15259
  ...normalizeParams(params)
@@ -15843,11 +15888,11 @@ function foldObjects(members2) {
15843
15888
  }
15844
15889
  objects.push(member);
15845
15890
  }
15846
- const properties2 = {};
15891
+ const properties = {};
15847
15892
  const required2 = /* @__PURE__ */ new Set();
15848
15893
  for (const object2 of objects) {
15849
15894
  for (const key in object2.properties) {
15850
- if (Object.prototype.hasOwnProperty.call(properties2, key))
15895
+ if (Object.prototype.hasOwnProperty.call(properties, key))
15851
15896
  continue;
15852
15897
  const parts = [];
15853
15898
  for (const other of objects) {
@@ -15858,12 +15903,12 @@ function foldObjects(members2) {
15858
15903
  parts.push(part);
15859
15904
  }
15860
15905
  const merged = parts.length === 1 ? parts[0] : foldObjects(parts) ?? { allOf: parts };
15861
- assignProp(properties2, key, merged);
15906
+ assignProp(properties, key, merged);
15862
15907
  }
15863
15908
  for (const key of object2.required ?? [])
15864
15909
  required2.add(key);
15865
15910
  }
15866
- const folded = { type: "object", properties: properties2 };
15911
+ const folded = { type: "object", properties };
15867
15912
  if (required2.size)
15868
15913
  folded.required = [...required2];
15869
15914
  if (objects.every((object2) => object2.additionalProperties === false)) {
@@ -16485,17 +16530,15 @@ var objectProcessor = (schema, ctx, _json, params) => {
16485
16530
  path: [...params.path, "properties", key]
16486
16531
  }));
16487
16532
  }
16488
- const allKeys = new Set(Object.keys(shape));
16489
- const requiredKeys = new Set([...allKeys].filter((key) => {
16533
+ const requiredKeys = [];
16534
+ for (const key of Object.keys(shape)) {
16490
16535
  const field = def.shape[key];
16491
- if (ctx.io === "input") {
16492
- return inputOptin(field) === void 0;
16493
- } else {
16494
- return field._zod.optout === void 0;
16536
+ if (ctx.io === "input" ? inputOptin(field) === void 0 : field._zod.optout === void 0) {
16537
+ requiredKeys.push(key);
16495
16538
  }
16496
- }));
16497
- if (requiredKeys.size > 0) {
16498
- json2.required = Array.from(requiredKeys);
16539
+ }
16540
+ if (requiredKeys.length > 0) {
16541
+ json2.required = requiredKeys;
16499
16542
  }
16500
16543
  if (def.catchall?._zod.def.type === "never") {
16501
16544
  json2.additionalProperties = false;
@@ -16509,31 +16552,6 @@ var objectProcessor = (schema, ctx, _json, params) => {
16509
16552
  });
16510
16553
  }
16511
16554
  };
16512
- var propertiesProcessor = (schema, ctx, _json, params) => {
16513
- const json2 = _json;
16514
- const def = schema._zod.def;
16515
- if (Object.getOwnPropertySymbols(def.shape).length && handleUnrepresentable(schema, ctx, json2, params, "Symbol keys cannot be represented in JSON Schema")) {
16516
- return;
16517
- }
16518
- if (ctx.io === "output") {
16519
- for (const key in def.shape) {
16520
- if (isTransforming(def.shape[key]) && handleUnrepresentable(schema, ctx, json2, params, `z.properties() returns its input, so the output of a transforming schema at key "${key}" cannot be represented in JSON Schema`)) {
16521
- return;
16522
- }
16523
- }
16524
- }
16525
- json2.type = "object";
16526
- json2.properties = {};
16527
- for (const key in def.shape) {
16528
- assignProp(json2.properties, key, processSchema(def.shape[key], ctx, {
16529
- ...params,
16530
- path: [...params.path, "properties", key]
16531
- }));
16532
- }
16533
- const required2 = Object.keys(def.shape).filter((key) => inputOptin(def.shape[key]) === void 0);
16534
- if (required2.length > 0)
16535
- json2.required = required2;
16536
- };
16537
16555
  var unionProcessor = (schema, ctx, json2, params) => {
16538
16556
  const def = schema._zod.def;
16539
16557
  const isExclusive = def.inclusive === false;
@@ -16853,7 +16871,6 @@ var allProcessors = {
16853
16871
  file: fileProcessor,
16854
16872
  success: successProcessor,
16855
16873
  custom: customProcessor,
16856
- properties: propertiesProcessor,
16857
16874
  function: functionProcessor,
16858
16875
  transform: transformProcessor,
16859
16876
  map: mapProcessor,
@@ -17050,7 +17067,6 @@ __export(schemas_exports2, {
17050
17067
  ZodPrefault: () => ZodPrefault,
17051
17068
  ZodPreprocess: () => ZodPreprocess,
17052
17069
  ZodPromise: () => ZodPromise,
17053
- ZodProperties: () => ZodProperties,
17054
17070
  ZodReadonly: () => ZodReadonly,
17055
17071
  ZodRecord: () => ZodRecord,
17056
17072
  ZodSet: () => ZodSet,
@@ -17088,6 +17104,7 @@ __export(schemas_exports2, {
17088
17104
  creditCard: () => creditCard2,
17089
17105
  cuid: () => cuid3,
17090
17106
  cuid2: () => cuid22,
17107
+ currencyCode: () => currencyCode2,
17091
17108
  custom: () => custom,
17092
17109
  date: () => date2,
17093
17110
  describe: () => describe2,
@@ -17142,7 +17159,6 @@ __export(schemas_exports2, {
17142
17159
  prefault: () => prefault,
17143
17160
  preprocess: () => preprocess,
17144
17161
  promise: () => promise,
17145
- properties: () => properties,
17146
17162
  readonly: () => readonly,
17147
17163
  record: () => record,
17148
17164
  refine: () => refine,
@@ -17196,6 +17212,7 @@ __export(checks_exports2, {
17196
17212
  normalize: () => _normalize,
17197
17213
  overwrite: () => _overwrite,
17198
17214
  positive: () => _positive,
17215
+ properties: () => _properties,
17199
17216
  property: () => _property,
17200
17217
  regex: () => _regex,
17201
17218
  size: () => _size,
@@ -17655,8 +17672,8 @@ function url(params) {
17655
17672
  }
17656
17673
  function httpUrl(params) {
17657
17674
  return _url(ZodURL, {
17658
- protocol: regexes_exports.httpProtocol,
17659
- hostname: regexes_exports.domain,
17675
+ protocol: httpProtocol,
17676
+ hostname: domain,
17660
17677
  ...util_exports.normalizeParams(params)
17661
17678
  });
17662
17679
  }
@@ -17794,10 +17811,13 @@ function stringFormat(format, fnOrRegex, _params = {}) {
17794
17811
  return _stringFormat(ZodCustomStringFormat, format, fnOrRegex, _params);
17795
17812
  }
17796
17813
  function hostname2(_params) {
17797
- return _stringFormat(ZodCustomStringFormat, "hostname", regexes_exports.hostname, _params);
17814
+ return _stringFormat(ZodCustomStringFormat, "hostname", hostname, _params);
17798
17815
  }
17799
17816
  function hex2(_params) {
17800
- return _stringFormat(ZodCustomStringFormat, "hex", regexes_exports.hex, _params);
17817
+ return _stringFormat(ZodCustomStringFormat, "hex", hex, _params);
17818
+ }
17819
+ function currencyCode2(_params) {
17820
+ return _stringFormat(ZodCustomStringFormat, "currency_code", currencyCode, _params);
17801
17821
  }
17802
17822
  function hash(alg, params) {
17803
17823
  const enc = params?.enc ?? "hex";
@@ -18662,14 +18682,6 @@ var ZodCustom = /* @__PURE__ */ $constructor("ZodCustom", (inst, def) => {
18662
18682
  ZodType.init(inst, def);
18663
18683
  inst._zod.processJSONSchema = (ctx, json2, params) => customProcessor(inst, ctx, json2, params);
18664
18684
  });
18665
- var ZodProperties = /* @__PURE__ */ $constructor("ZodProperties", (inst, def) => {
18666
- _ensureDefaultMemoizer();
18667
- $ZodProperties.init(inst, def);
18668
- ZodType.init(inst, def);
18669
- });
18670
- function properties(shape, params) {
18671
- return _properties(ZodProperties, shape, params);
18672
- }
18673
18685
  function check(fn) {
18674
18686
  const ch = new $ZodCheck({
18675
18687
  check: "custom"
@@ -18693,7 +18705,7 @@ var ZodInstanceOf = /* @__PURE__ */ $constructor("ZodInstanceOf", (inst, def) =>
18693
18705
  ZodCustom.init(inst, def);
18694
18706
  }, {
18695
18707
  properties(shape, params) {
18696
- return this.check(properties(shape, params));
18708
+ return this.check(_properties(shape, params));
18697
18709
  }
18698
18710
  });
18699
18711
  function _instanceof(cls, params = {}) {
@@ -19280,10 +19292,10 @@ function convertBaseSchema(schema, ctx) {
19280
19292
  }
19281
19293
  case "object": {
19282
19294
  const shape = {};
19283
- const properties2 = schema.properties || {};
19295
+ const properties = schema.properties || {};
19284
19296
  const requiredSet = new Set(schema.required || []);
19285
19297
  const additionalSchema = typeof schema.additionalProperties === "object" ? convertSchema(schema.additionalProperties, ctx) : void 0;
19286
- for (const [key, propSchema] of Object.entries(properties2)) {
19298
+ for (const [key, propSchema] of Object.entries(properties)) {
19287
19299
  const propZodSchema = convertSchema(propSchema, ctx);
19288
19300
  assignProp(shape, key, requiredSet.has(key) ? propZodSchema : propZodSchema.optional());
19289
19301
  }
@@ -19644,18 +19656,6 @@ function visit(schema, fnOrHandlers) {
19644
19656
  const { _cachedInner, ...rest } = def;
19645
19657
  return clone(s, { ...rest, getter: () => run(original()) });
19646
19658
  }
19647
- case "properties": {
19648
- const oldShape = def.shape;
19649
- let changed = false;
19650
- const newShape = {};
19651
- for (const k of Reflect.ownKeys(oldShape)) {
19652
- const mapped = run(oldShape[k]);
19653
- if (mapped !== oldShape[k])
19654
- changed = true;
19655
- newShape[k] = mapped;
19656
- }
19657
- return changed ? clone(s, { ...def, shape: newShape }) : s;
19658
- }
19659
19659
  // A leaf by choice: `parts` are regex fragments, not data positions.
19660
19660
  case "template_literal":
19661
19661
  // Leaves.
@@ -23658,8 +23658,8 @@ function scanXMcpHeaderDeclarations(inputSchema) {
23658
23658
  type
23659
23659
  });
23660
23660
  }
23661
- const properties2 = schema.properties;
23662
- if (properties2 !== null && typeof properties2 === "object") for (const [key, child] of Object.entries(properties2)) {
23661
+ const properties = schema.properties;
23662
+ if (properties !== null && typeof properties === "object") for (const [key, child] of Object.entries(properties)) {
23663
23663
  const fault$1 = visit2(child, [...path, key], reachable);
23664
23664
  if (fault$1 !== void 0) return fault$1;
23665
23665
  }
@@ -23953,9 +23953,9 @@ function isLibraryFormatPattern(format, pattern, vendor) {
23953
23953
  }
23954
23954
  function promptArgumentsFromStandardSchema(schema) {
23955
23955
  const jsonSchema = standardSchemaToJsonSchema(schema, "input");
23956
- const properties2 = jsonSchema.properties || {};
23956
+ const properties = jsonSchema.properties || {};
23957
23957
  const required2 = jsonSchema.required || [];
23958
- return Object.entries(properties2).map(([name, prop]) => ({
23958
+ return Object.entries(properties).map(([name, prop]) => ({
23959
23959
  name,
23960
23960
  description: prop?.description,
23961
23961
  required: required2.includes(name)
@@ -26802,8 +26802,8 @@ var require_defaults = /* @__PURE__ */ __commonJSMin(((exports) => {
26802
26802
  const codegen_1 = require_codegen();
26803
26803
  const util_1 = require_util();
26804
26804
  function assignDefaults(it, ty) {
26805
- const { properties: properties2, items } = it.schema;
26806
- if (ty === "object" && properties2) for (const key in properties2) assignDefault(it, key, properties2[key].default);
26805
+ const { properties, items } = it.schema;
26806
+ if (ty === "object" && properties) for (const key in properties) assignDefault(it, key, properties[key].default);
26807
26807
  else if (ty === "array" && Array.isArray(items)) items.forEach((sch, i) => assignDefault(it, i, sch.default));
26808
26808
  }
26809
26809
  exports.assignDefaults = assignDefaults;
@@ -26835,8 +26835,8 @@ var require_code = /* @__PURE__ */ __commonJSMin(((exports) => {
26835
26835
  });
26836
26836
  }
26837
26837
  exports.checkReportMissingProp = checkReportMissingProp;
26838
- function checkMissingProp({ gen, data, it: { opts } }, properties2, missing) {
26839
- return (0, codegen_1.or)(...properties2.map((prop) => (0, codegen_1.and)(noPropertyInData(gen, data, prop, opts.ownProperties), (0, codegen_1._)`${missing} = ${prop}`)));
26838
+ function checkMissingProp({ gen, data, it: { opts } }, properties, missing) {
26839
+ return (0, codegen_1.or)(...properties.map((prop) => (0, codegen_1.and)(noPropertyInData(gen, data, prop, opts.ownProperties), (0, codegen_1._)`${missing} = ${prop}`)));
26840
26840
  }
26841
26841
  exports.checkMissingProp = checkMissingProp;
26842
26842
  function reportMissingProp(cxt, missing) {
@@ -30112,10 +30112,10 @@ var require_properties = /* @__PURE__ */ __commonJSMin(((exports) => {
30112
30112
  const allProps = (0, code_1.allSchemaProperties)(schema);
30113
30113
  for (const prop of allProps) it.definedProperties.add(prop);
30114
30114
  if (it.opts.unevaluated && allProps.length && it.props !== true) it.props = util_1.mergeEvaluated.props(gen, (0, util_1.toHash)(allProps), it.props);
30115
- const properties2 = allProps.filter((p) => !(0, util_1.alwaysValidSchema)(it, schema[p]));
30116
- if (properties2.length === 0) return;
30115
+ const properties = allProps.filter((p) => !(0, util_1.alwaysValidSchema)(it, schema[p]));
30116
+ if (properties.length === 0) return;
30117
30117
  const valid = gen.name("valid");
30118
- for (const prop of properties2) {
30118
+ for (const prop of properties) {
30119
30119
  if (hasDefault(prop)) applyPropertySchema(prop);
30120
30120
  else {
30121
30121
  gen.if((0, code_1.propertyInData)(gen, data, prop, it.opts.ownProperties));
@@ -34380,13 +34380,28 @@ var API_KEY_RE = new RegExp([
34380
34380
  "whsec_[A-Za-z0-9]{16,}\\b"
34381
34381
  // webhook signing secret (Stripe-style)
34382
34382
  ].map((p) => `\\b${p}`).join("|"), "g");
34383
- var QUERY_SECRET_RE = /([?&](?:access_token|refresh_token|client_secret|api_?key|signature|token|key|sig)=)[^&#\s"'<>`]+/gi;
34383
+ var QUERY_SECRET_RE = /([?&](?:(?:access|refresh|id|auth|session|csrf|xsrf)[_-]?token|client[_-]?secret|api[_-]?secret|api[_-]?key|password|passwd|signature|token|key|sig)=)[^&#\s"'<>`]+/gi;
34384
+ var OAUTH_CODE_RE = /([?&]code=)(?=[^&#\s"'<>`]{16,})[^&#\s"'<>`]+/gi;
34385
+ var FORM_PASSWORD_RE = /((?:^|[\s,;:"'(\[{])(?:password|passwd)=)[^&#\s"'<>`]+/gim;
34386
+ var HEADER_SECRET_RE = /(\b(?:x[-_][a-z0-9_-]*?(?:api[-_]?key|token|secret|auth)[a-z0-9_-]*|api[-_]?key)\s*:\s*)[^\s,;"'<>`]+/gi;
34384
34387
  var AWS_SIGV4_RE = /([?&]X-Amz-(?:Signature|Security-Token|Credential)=)[^&#\s"'<>`]+/gi;
34385
- var JSON_SECRET_KEYS = "access_token|refresh_token|client_secret|api_?key|password|passwd|secret|token";
34386
- var JSON_SECRET_DQ_RE = new RegExp(`("(?:${JSON_SECRET_KEYS})"\\s*:\\s*")[^"]*(")`, "gi");
34387
- var JSON_SECRET_SQ_RE = new RegExp(`('(?:${JSON_SECRET_KEYS})'\\s*:\\s*')[^']*(')`, "gi");
34388
+ var JSON_SECRET_KEYS = [
34389
+ "(?:access|refresh|id|auth|session|bearer|csrf|xsrf)[_-]?token",
34390
+ "client[_-]?secret",
34391
+ "api[_-]?secret",
34392
+ "(?:x[_-])?api[_-]?key",
34393
+ "private[_-]?key",
34394
+ "x[_-][a-z0-9_-]*?(?:api[_-]?key|token|secret|auth)[a-z0-9_-]*",
34395
+ "(?:proxy-)?authorization",
34396
+ "password",
34397
+ "passwd",
34398
+ "secret",
34399
+ "token"
34400
+ ].join("|");
34401
+ var JSON_SECRET_DQ_RE = new RegExp(`("(?:${JSON_SECRET_KEYS})"\\s*:\\s*")(?:[^"\\\\]|\\\\.)*(")`, "gi");
34402
+ var JSON_SECRET_SQ_RE = new RegExp(`('(?:${JSON_SECRET_KEYS})'\\s*:\\s*')(?:[^'\\\\]|\\\\.)*(')`, "gi");
34388
34403
  function redactSecrets(text) {
34389
- return text.replace(BEARER_RE, "$1[REDACTED]").replace(BASIC_AUTH_RE, "$1[REDACTED]").replace(SET_COOKIE_RE, "$1$2=[REDACTED]").replace(COOKIE_HEADER_RE, (_m, prefix, pairs) => `${prefix}${pairs.replace(/=[^;,\s]*/g, "=[REDACTED]")}`).replace(API_KEY_RE, "[REDACTED]").replace(QUERY_SECRET_RE, "$1[REDACTED]").replace(AWS_SIGV4_RE, "$1[REDACTED]").replace(JSON_SECRET_DQ_RE, "$1[REDACTED]$2").replace(JSON_SECRET_SQ_RE, "$1[REDACTED]$2").replace(JWT_RE, "[REDACTED]");
34404
+ return text.replace(BEARER_RE, "$1[REDACTED]").replace(BASIC_AUTH_RE, "$1[REDACTED]").replace(SET_COOKIE_RE, "$1$2=[REDACTED]").replace(COOKIE_HEADER_RE, (_m, prefix, pairs) => `${prefix}${pairs.replace(/=[^;,\s]*/g, "=[REDACTED]")}`).replace(API_KEY_RE, "[REDACTED]").replace(HEADER_SECRET_RE, "$1[REDACTED]").replace(QUERY_SECRET_RE, "$1[REDACTED]").replace(OAUTH_CODE_RE, "$1[REDACTED]").replace(FORM_PASSWORD_RE, "$1[REDACTED]").replace(AWS_SIGV4_RE, "$1[REDACTED]").replace(JSON_SECRET_DQ_RE, "$1[REDACTED]$2").replace(JSON_SECRET_SQ_RE, "$1[REDACTED]$2").replace(JWT_RE, "[REDACTED]");
34390
34405
  }
34391
34406
  function truncateErrorMessage(text, max = DEFAULT_ERROR_MESSAGE_MAX) {
34392
34407
  const str = text === null || text === void 0 ? "" : String(text);
@@ -34492,6 +34507,15 @@ Hint: ${err.hint}`);
34492
34507
  }
34493
34508
  throw err;
34494
34509
  }
34510
+ function mcpRequestFrom(args) {
34511
+ const ctx = args.at(-1);
34512
+ if (typeof ctx !== "object" || ctx === null)
34513
+ return void 0;
34514
+ const req = ctx.mcpReq;
34515
+ if (typeof req !== "object" || req === null)
34516
+ return void 0;
34517
+ return typeof req.notify === "function" ? req : void 0;
34518
+ }
34495
34519
  function callSignalFrom(args) {
34496
34520
  const ctx = args.at(-1);
34497
34521
  if (typeof ctx !== "object" || ctx === null)
@@ -34502,6 +34526,20 @@ function callSignalFrom(args) {
34502
34526
  const signal = req.signal;
34503
34527
  return signal instanceof AbortSignal ? signal : void 0;
34504
34528
  }
34529
+ function declaredCapabilitiesFrom(server) {
34530
+ const inner = server.server;
34531
+ if (typeof inner !== "object" || inner === null)
34532
+ return void 0;
34533
+ const read = inner.getClientCapabilities;
34534
+ if (typeof read !== "function")
34535
+ return void 0;
34536
+ try {
34537
+ const declared = read.call(inner);
34538
+ return typeof declared === "object" && declared !== null ? declared : void 0;
34539
+ } catch {
34540
+ return void 0;
34541
+ }
34542
+ }
34505
34543
  function surfaceToolHints(server) {
34506
34544
  const register2 = server.registerTool.bind(server);
34507
34545
  server.registerTool = (name, config2, cb) => register2(name, config2, (...args) => (
@@ -34517,15 +34555,24 @@ function surfaceToolHints(server) {
34517
34555
  // Here because this is the one wrapper every tool already passes
34518
34556
  // through: threading the signal by hand would mean editing several
34519
34557
  // hundred handlers and missing exactly the ones nobody edits.
34520
- withCallSignal(callSignalFrom(args), () => {
34521
- let result;
34522
- try {
34523
- result = cb(...args);
34524
- } catch (err) {
34525
- return hintResultOrRethrow(err);
34526
- }
34527
- return result instanceof Promise ? result.catch(hintResultOrRethrow) : result;
34528
- })
34558
+ withCallSignal(callSignalFrom(args), () => (
34559
+ // WHAT THE CALLER CAN DO, made ambient for the same reason and in
34560
+ // the same place (`caller/index.ts`). Only the 2025-era half needs
34561
+ // the wrapper — a 2026-07-28 request answers for itself off its own
34562
+ // envelope — but a guarded tool that cannot tell whether the caller
34563
+ // can be shown a prompt returns one the SDK then refuses to deliver,
34564
+ // and that refusal reaches the caller as an unexplained protocol
34565
+ // error it had no chance to catch.
34566
+ withCallerCapabilities(declaredCapabilitiesFrom(server), () => {
34567
+ let result;
34568
+ try {
34569
+ result = cb(...args);
34570
+ } catch (err) {
34571
+ return hintResultOrRethrow(err);
34572
+ }
34573
+ return result instanceof Promise ? result.catch(hintResultOrRethrow) : result;
34574
+ })
34575
+ ), mcpRequestFrom(args))
34529
34576
  ));
34530
34577
  }
34531
34578
  async function createMcpServer(opts) {
@@ -34541,13 +34588,47 @@ async function createMcpServer(opts) {
34541
34588
  }
34542
34589
  return server;
34543
34590
  }
34591
+ var DEFAULT_SHUTDOWN_TIMEOUT_MS = 5e3;
34592
+ var DEFAULT_REPEAT_SIGNAL_GRACE_MS = 500;
34544
34593
  function withGracefulShutdown(target, opts = {}) {
34545
34594
  const shouldExit = opts.exit ?? true;
34595
+ if (opts.timeoutMs !== void 0 && !(Number.isFinite(opts.timeoutMs) && opts.timeoutMs > 0)) {
34596
+ throw new RangeError("withGracefulShutdown: timeoutMs must be a finite number greater than 0.");
34597
+ }
34598
+ const timeoutMs = opts.timeoutMs ?? DEFAULT_SHUTDOWN_TIMEOUT_MS;
34599
+ if (opts.repeatSignalGraceMs !== void 0 && !(Number.isFinite(opts.repeatSignalGraceMs) && opts.repeatSignalGraceMs >= 0)) {
34600
+ throw new RangeError("withGracefulShutdown: repeatSignalGraceMs must be a finite number >= 0.");
34601
+ }
34602
+ const repeatGraceMs = opts.repeatSignalGraceMs ?? DEFAULT_REPEAT_SIGNAL_GRACE_MS;
34546
34603
  let shuttingDown = false;
34604
+ let firstSignalAt = 0;
34605
+ let exited = false;
34606
+ const exitOnce = () => {
34607
+ if (exited)
34608
+ return;
34609
+ exited = true;
34610
+ process.exit(0);
34611
+ };
34547
34612
  const handler = (signal) => {
34548
- if (shuttingDown)
34613
+ if (shuttingDown) {
34614
+ if (Date.now() - firstSignalAt < repeatGraceMs)
34615
+ return;
34616
+ if (shouldExit) {
34617
+ console.error(`[mcp-utils] second ${signal} during shutdown \u2014 exiting now`);
34618
+ exitOnce();
34619
+ }
34549
34620
  return;
34621
+ }
34550
34622
  shuttingDown = true;
34623
+ firstSignalAt = Date.now();
34624
+ let timer;
34625
+ if (shouldExit) {
34626
+ timer = setTimeout(() => {
34627
+ console.error(`[mcp-utils] graceful shutdown on ${signal} did not finish in ${timeoutMs}ms \u2014 exiting`);
34628
+ exitOnce();
34629
+ }, timeoutMs);
34630
+ timer.unref?.();
34631
+ }
34551
34632
  void (async () => {
34552
34633
  try {
34553
34634
  if (opts.onSignal)
@@ -34556,8 +34637,10 @@ function withGracefulShutdown(target, opts = {}) {
34556
34637
  } catch (err) {
34557
34638
  console.error(`[mcp-utils] error during graceful shutdown on ${signal}: ${err instanceof Error ? err.message : String(err)}`);
34558
34639
  } finally {
34640
+ if (timer !== void 0)
34641
+ clearTimeout(timer);
34559
34642
  if (shouldExit)
34560
- process.exit(0);
34643
+ exitOnce();
34561
34644
  }
34562
34645
  })();
34563
34646
  };
@@ -34635,16 +34718,20 @@ var pageSchema = {
34635
34718
  page_size: external_exports.number().int().min(1).max(200).default(50).describe("Number of items per page (1-200).")
34636
34719
  };
34637
34720
  function toolAnnotations(opts = {}) {
34721
+ if (opts.readOnly === true && opts.destructive === true) {
34722
+ throw new Error("toolAnnotations: readOnly: true contradicts destructive: true \u2014 a destructive tool is not read-only.");
34723
+ }
34638
34724
  return {
34639
34725
  ...opts.title !== void 0 ? { title: opts.title } : {},
34640
- readOnlyHint: opts.readOnly ?? true,
34726
+ readOnlyHint: opts.readOnly ?? opts.destructive === void 0,
34641
34727
  ...opts.idempotent !== void 0 ? { idempotentHint: opts.idempotent } : {},
34728
+ ...opts.destructive !== void 0 ? { destructiveHint: opts.destructive } : {},
34642
34729
  ...opts.openWorld !== void 0 ? { openWorldHint: opts.openWorld } : {}
34643
34730
  };
34644
34731
  }
34645
34732
 
34646
34733
  // src/version.ts
34647
- var VERSION = "2.2.0";
34734
+ var VERSION = "2.2.2";
34648
34735
 
34649
34736
  // src/client.ts
34650
34737
  import { dirname as dirname2, join as join3 } from "path";
@@ -35523,7 +35610,7 @@ function registerEventTools(server, client2) {
35523
35610
  "vibo_join_event",
35524
35611
  {
35525
35612
  description: "Join an event you were invited to, via its share link or hash (e.g. a vibodj.app.link/... URL someone sent you). Returns the joined event's id. Confirm-gated.",
35526
- annotations: toolAnnotations({ title: "Join Vibo event", readOnly: false }),
35613
+ annotations: toolAnnotations({ title: "Join Vibo event", readOnly: false, destructive: false }),
35527
35614
  inputSchema: external_exports.object({
35528
35615
  link: external_exports.string().describe("The full event share URL (vibodj.app.link/... or web.vibodj.com/...) or the bare join hash."),
35529
35616
  confirm: schemaConfirm
@@ -35548,7 +35635,7 @@ function registerEventTools(server, client2) {
35548
35635
  "vibo_leave_event",
35549
35636
  {
35550
35637
  description: "Leave an event you previously joined. Confirm-gated.",
35551
- annotations: toolAnnotations({ title: "Leave Vibo event", readOnly: false }),
35638
+ annotations: toolAnnotations({ title: "Leave Vibo event", readOnly: false, destructive: true }),
35552
35639
  inputSchema: external_exports.object({
35553
35640
  eventId: external_exports.string().describe("Event id to leave."),
35554
35641
  confirm: schemaConfirm
@@ -35564,7 +35651,7 @@ function registerEventTools(server, client2) {
35564
35651
  "vibo_create_event_contact",
35565
35652
  {
35566
35653
  description: "Add a contact (host or guest) to an event with their name/email/phone. Confirm-gated.",
35567
- annotations: toolAnnotations({ title: "Add Vibo event contact", readOnly: false }),
35654
+ annotations: toolAnnotations({ title: "Add Vibo event contact", readOnly: false, destructive: false }),
35568
35655
  inputSchema: external_exports.object({
35569
35656
  eventId: external_exports.string().describe("Event id."),
35570
35657
  role: external_exports.enum(["host", "guest"]).describe("The contact's role in the event."),
@@ -35808,7 +35895,7 @@ function registerSongTools(server, client2) {
35808
35895
  "vibo_add_song_to_section",
35809
35896
  {
35810
35897
  description: "Add a song to a section. Pass a song from vibo_search_songs (songUrl is required; include viboSongId/title/artist when known). Before adding, check that result's `quality.confidence`: adding a `likely-not-original` result puts a cover, karaoke track or junk-metadata re-upload in front of a live DJ. If nothing looks original, report the closest matches back rather than adding a best guess. Confirm-gated.",
35811
- annotations: toolAnnotations({ title: "Add song to Vibo section", readOnly: false }),
35898
+ annotations: toolAnnotations({ title: "Add song to Vibo section", readOnly: false, destructive: false }),
35812
35899
  inputSchema: external_exports.object({
35813
35900
  eventId: external_exports.string().describe("Event id."),
35814
35901
  sectionId: external_exports.string().describe("Section id to add the song to."),
@@ -35838,7 +35925,7 @@ function registerSongTools(server, client2) {
35838
35925
  "vibo_toggle_song_like",
35839
35926
  {
35840
35927
  description: "Like or unlike a song in a section. Confirm-gated.",
35841
- annotations: toolAnnotations({ title: "Like/unlike Vibo song", readOnly: false }),
35928
+ annotations: toolAnnotations({ title: "Like/unlike Vibo song", readOnly: false, destructive: false }),
35842
35929
  inputSchema: external_exports.object({
35843
35930
  eventId: external_exports.string().describe("Event id."),
35844
35931
  sectionId: external_exports.string().describe("Section id."),
@@ -35909,7 +35996,7 @@ function registerPlaylistTools(server, client2) {
35909
35996
  "vibo_export_event_to_spotify",
35910
35997
  {
35911
35998
  description: "Export an event's song selections to a new Spotify playlist (Spotify must be connected). Returns the playlist URL plus how many tracks exported / failed. Confirm-gated.",
35912
- annotations: toolAnnotations({ title: "Export event to Spotify", readOnly: false }),
35999
+ annotations: toolAnnotations({ title: "Export event to Spotify", readOnly: false, destructive: false }),
35913
36000
  inputSchema: external_exports.object({
35914
36001
  eventId: external_exports.string().describe("Event id."),
35915
36002
  sectionIds: external_exports.array(external_exports.string()).min(1).describe("Section ids to include (from vibo_list_sections)."),
@@ -35931,7 +36018,7 @@ function registerPlaylistTools(server, client2) {
35931
36018
  "vibo_export_event_to_apple_music",
35932
36019
  {
35933
36020
  description: "Export an event's song selections to a new Apple Music playlist (Apple Music must be connected). Returns the playlist URL plus how many tracks exported / failed. Confirm-gated.",
35934
- annotations: toolAnnotations({ title: "Export event to Apple Music", readOnly: false }),
36021
+ annotations: toolAnnotations({ title: "Export event to Apple Music", readOnly: false, destructive: false }),
35935
36022
  inputSchema: external_exports.object({
35936
36023
  eventId: external_exports.string().describe("Event id."),
35937
36024
  sectionIds: external_exports.array(external_exports.string()).min(1).describe("Section ids to include (from vibo_list_sections)."),
@@ -35986,7 +36073,7 @@ function registerNotificationTools(server, client2) {
35986
36073
  "vibo_mark_notifications_read",
35987
36074
  {
35988
36075
  description: "Mark notifications as read \u2014 pass specific notificationIds, or readAll:true to clear everything. Confirm-gated.",
35989
- annotations: toolAnnotations({ title: "Mark notifications read", readOnly: false }),
36076
+ annotations: toolAnnotations({ title: "Mark notifications read", readOnly: false, destructive: false }),
35990
36077
  inputSchema: external_exports.object({
35991
36078
  notificationIds: external_exports.array(external_exports.string()).optional().describe("Specific notification ids to mark read."),
35992
36079
  readAll: external_exports.boolean().optional().describe("Mark every notification as read."),
@@ -36071,7 +36158,7 @@ function registerQuestionTools(server, client2, resolveUpload = nodeUploadResolv
36071
36158
  "vibo_answer_question",
36072
36159
  {
36073
36160
  description: "Answer a section planning question. Provide the field matching the question's type: `text` for a text question, `selectedOptions` (array of option _ids from vibo_list_section_questions) for radio/checkbox/select, or `link` (array of URLs) for a link question. Use `otherOptionTitle` with the question's \"other\" option. For photo/file questions, pass local paths (`imagePaths`/`filePaths`) when the server can read your disk, or inline base64 bytes (`images`/`files`) otherwise. Confirm-gated.",
36074
- annotations: toolAnnotations({ title: "Answer Vibo question", readOnly: false }),
36161
+ annotations: toolAnnotations({ title: "Answer Vibo question", readOnly: false, destructive: false }),
36075
36162
  inputSchema: external_exports.object({
36076
36163
  eventId: external_exports.string().describe("Event id."),
36077
36164
  sectionId: external_exports.string().describe("Section id."),
@@ -36155,7 +36242,7 @@ function registerSongManagementTools(server, client2) {
36155
36242
  "vibo_remove_song_from_section",
36156
36243
  {
36157
36244
  description: "Remove one or more songs from a section. Confirm-gated.",
36158
- annotations: toolAnnotations({ title: "Remove songs from Vibo section", readOnly: false }),
36245
+ annotations: toolAnnotations({ title: "Remove songs from Vibo section", readOnly: false, destructive: true }),
36159
36246
  inputSchema: external_exports.object({
36160
36247
  eventId: external_exports.string().describe("Event id."),
36161
36248
  sectionId: external_exports.string().describe("Section id."),
@@ -36174,7 +36261,7 @@ function registerSongManagementTools(server, client2) {
36174
36261
  "vibo_update_song",
36175
36262
  {
36176
36263
  description: "Update songs in a section: mark must-play, flag as do-not-play, and/or set a comment. Provide at least one field. Confirm-gated.",
36177
- annotations: toolAnnotations({ title: "Update Vibo section songs", readOnly: false }),
36264
+ annotations: toolAnnotations({ title: "Update Vibo section songs", readOnly: false, destructive: false }),
36178
36265
  inputSchema: external_exports.object({
36179
36266
  eventId: external_exports.string().describe("Event id."),
36180
36267
  sectionId: external_exports.string().describe("Section id."),
@@ -36205,7 +36292,7 @@ function registerSongManagementTools(server, client2) {
36205
36292
  "vibo_move_song",
36206
36293
  {
36207
36294
  description: "Move songs from one section to another. Confirm-gated.",
36208
- annotations: toolAnnotations({ title: "Move Vibo section songs", readOnly: false }),
36295
+ annotations: toolAnnotations({ title: "Move Vibo section songs", readOnly: false, destructive: false }),
36209
36296
  inputSchema: external_exports.object({
36210
36297
  eventId: external_exports.string().describe("Event id."),
36211
36298
  sourceSectionId: external_exports.string().describe("Section id the songs are currently in."),
@@ -36225,7 +36312,7 @@ function registerSongManagementTools(server, client2) {
36225
36312
  "vibo_reorder_songs",
36226
36313
  {
36227
36314
  description: "Reorder songs within a section. Confirm-gated.",
36228
- annotations: toolAnnotations({ title: "Reorder Vibo section songs", readOnly: false }),
36315
+ annotations: toolAnnotations({ title: "Reorder Vibo section songs", readOnly: false, destructive: false }),
36229
36316
  inputSchema: external_exports.object({
36230
36317
  eventId: external_exports.string().describe("Event id."),
36231
36318
  sectionId: external_exports.string().describe("Section id."),
@@ -36249,7 +36336,7 @@ function registerCommentTools(server, client2) {
36249
36336
  "vibo_comment_on_song",
36250
36337
  {
36251
36338
  description: "Leave a comment / note for the DJ on a specific song. Confirm-gated.",
36252
- annotations: toolAnnotations({ title: "Comment on Vibo song", readOnly: false }),
36339
+ annotations: toolAnnotations({ title: "Comment on Vibo song", readOnly: false, destructive: false }),
36253
36340
  inputSchema: external_exports.object({
36254
36341
  eventId: external_exports.string().describe("Event id."),
36255
36342
  sectionId: external_exports.string().describe("Section id."),
@@ -36269,7 +36356,7 @@ function registerCommentTools(server, client2) {
36269
36356
  "vibo_delete_song_comment",
36270
36357
  {
36271
36358
  description: "Delete a comment on a song. Confirm-gated.",
36272
- annotations: toolAnnotations({ title: "Delete Vibo song comment", readOnly: false }),
36359
+ annotations: toolAnnotations({ title: "Delete Vibo song comment", readOnly: false, destructive: true }),
36273
36360
  inputSchema: external_exports.object({
36274
36361
  eventId: external_exports.string().describe("Event id."),
36275
36362
  sectionId: external_exports.string().describe("Section id."),
@@ -36289,7 +36376,7 @@ function registerCommentTools(server, client2) {
36289
36376
  "vibo_comment_on_section",
36290
36377
  {
36291
36378
  description: "Leave a comment on a timeline section. Confirm-gated.",
36292
- annotations: toolAnnotations({ title: "Comment on Vibo section", readOnly: false }),
36379
+ annotations: toolAnnotations({ title: "Comment on Vibo section", readOnly: false, destructive: false }),
36293
36380
  inputSchema: external_exports.object({
36294
36381
  eventId: external_exports.string().describe("Event id."),
36295
36382
  sectionId: external_exports.string().describe("Section id (from vibo_list_sections)."),
@@ -36308,7 +36395,7 @@ function registerCommentTools(server, client2) {
36308
36395
  "vibo_delete_section_comment",
36309
36396
  {
36310
36397
  description: "Delete a comment on a timeline section. Confirm-gated.",
36311
- annotations: toolAnnotations({ title: "Delete Vibo section comment", readOnly: false }),
36398
+ annotations: toolAnnotations({ title: "Delete Vibo section comment", readOnly: false, destructive: true }),
36312
36399
  inputSchema: external_exports.object({
36313
36400
  eventId: external_exports.string().describe("Event id."),
36314
36401
  sectionId: external_exports.string().describe("Section id (from vibo_list_sections)."),
@@ -36380,7 +36467,7 @@ function registerImportTools(server, client2) {
36380
36467
  "vibo_import_playlist_to_section",
36381
36468
  {
36382
36469
  description: "Import selected tracks from a connected Spotify/Apple Music playlist into a section. Returns counts of added/existing/ignored. Confirm-gated.",
36383
- annotations: toolAnnotations({ title: "Import playlist to section", readOnly: false }),
36470
+ annotations: toolAnnotations({ title: "Import playlist to section", readOnly: false, destructive: false }),
36384
36471
  inputSchema: external_exports.object({
36385
36472
  eventId: external_exports.string().describe("Event id."),
36386
36473
  sectionId: external_exports.string().describe("Section id (from vibo_list_sections)."),
@@ -36451,7 +36538,7 @@ function registerCollaborationTools(server, client2) {
36451
36538
  "vibo_invite_users",
36452
36539
  {
36453
36540
  description: "Invite people to an event by email (as host or guest). Confirm-gated.",
36454
- annotations: toolAnnotations({ title: "Invite Vibo event users", readOnly: false }),
36541
+ annotations: toolAnnotations({ title: "Invite Vibo event users", readOnly: false, destructive: true }),
36455
36542
  inputSchema: external_exports.object({
36456
36543
  eventId: external_exports.string().describe("Event id."),
36457
36544
  type: external_exports.enum(["host", "guest"]).describe("Invite as host or guest."),
@@ -36471,7 +36558,7 @@ function registerCollaborationTools(server, client2) {
36471
36558
  "vibo_change_user_role",
36472
36559
  {
36473
36560
  description: "Change an event member's role between host and guest. Confirm-gated.",
36474
- annotations: toolAnnotations({ title: "Change Vibo user role", readOnly: false }),
36561
+ annotations: toolAnnotations({ title: "Change Vibo user role", readOnly: false, destructive: true }),
36475
36562
  inputSchema: external_exports.object({
36476
36563
  eventId: external_exports.string().describe("Event id."),
36477
36564
  userId: external_exports.string().describe("Id of the member to update."),
@@ -36490,7 +36577,7 @@ function registerCollaborationTools(server, client2) {
36490
36577
  "vibo_remove_user",
36491
36578
  {
36492
36579
  description: "Remove a member from an event. Confirm-gated.",
36493
- annotations: toolAnnotations({ title: "Remove Vibo event user", readOnly: false }),
36580
+ annotations: toolAnnotations({ title: "Remove Vibo event user", readOnly: false, destructive: true }),
36494
36581
  inputSchema: external_exports.object({
36495
36582
  eventId: external_exports.string().describe("Event id."),
36496
36583
  userId: external_exports.string().describe("Id of the member to remove."),
@@ -36512,7 +36599,7 @@ function registerSectionEditTools(server, client2) {
36512
36599
  "vibo_update_section",
36513
36600
  {
36514
36601
  description: "Edit a timeline section's name, time, note, or description. Subject to the section's host-edit permissions. Confirm-gated.",
36515
- annotations: toolAnnotations({ title: "Update Vibo section", readOnly: false }),
36602
+ annotations: toolAnnotations({ title: "Update Vibo section", readOnly: false, destructive: false }),
36516
36603
  inputSchema: external_exports.object({
36517
36604
  eventId: external_exports.string(),
36518
36605
  sectionId: external_exports.string(),
@@ -36548,7 +36635,7 @@ function registerUploadTools(server, client2, resolveUpload = nodeUploadResolver
36548
36635
  "vibo_set_profile_photo",
36549
36636
  {
36550
36637
  description: "Set your Vibo profile photo from an image. Pass a local file `path` if the server shares your filesystem; otherwise pass the image bytes as base64 `fileData`. Returns the uploaded image URL. Confirm-gated.",
36551
- annotations: toolAnnotations({ title: "Set Vibo profile photo", readOnly: false }),
36638
+ annotations: toolAnnotations({ title: "Set Vibo profile photo", readOnly: false, destructive: false }),
36552
36639
  inputSchema: external_exports.object({
36553
36640
  path: external_exports.string().optional().describe("Absolute path to a local image file (jpg/png). Local/stdio server only."),
36554
36641
  fileData: external_exports.string().optional().describe("Base64-encoded image bytes (a `data:` URL prefix is allowed). Use this when the server cannot read your filesystem."),
@@ -36626,7 +36713,7 @@ function registerSessionTools(server, client2) {
36626
36713
  "vibo_capture_session",
36627
36714
  {
36628
36715
  description: "Capture your Vibo login from a signed-in web.vibodj.com browser tab via the fetchproxy bridge \u2014 for accounts that sign in with Apple/Google/Facebook (no password). Requires the fetchproxy browser extension installed and you signed into https://web.vibodj.com; approve the pair code shown on first use. The token is saved locally and reused on future calls.",
36629
- annotations: toolAnnotations({ title: "Capture Vibo session (SSO)", readOnly: false })
36716
+ annotations: toolAnnotations({ title: "Capture Vibo session (SSO)", readOnly: false, destructive: false })
36630
36717
  },
36631
36718
  async () => {
36632
36719
  const { accessToken, refreshToken } = await captureViboSession();