@redocly/cli 2.63.0 → 2.64.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 (128) hide show
  1. package/THIRD_PARTY_NOTICES +1 -1
  2. package/lib/chunks/{AAPHKNGA.js → 23FVFXSV.js} +1 -1
  3. package/lib/chunks/{C2OCU4E3.js → 2N5733QR.js} +1 -1
  4. package/lib/chunks/{LXSCIQFU.js → 2XSAJEYO.js} +1 -1
  5. package/lib/chunks/{J373CXCH.js → 33LAXFAC.js} +1 -1
  6. package/lib/chunks/{BS3AUVYD.js → 3BFBASRW.js} +1 -1
  7. package/lib/chunks/{FCZH3476.js → 3JJ7NFAQ.js} +1 -1
  8. package/lib/chunks/{QNCKZURN.js → 3TWUZE25.js} +1 -1
  9. package/lib/chunks/{2G2Q42ND.js → 47H5P7DF.js} +1 -1
  10. package/lib/chunks/{I3M476SQ.js → 4BWADBBP.js} +1 -1
  11. package/lib/chunks/{24AVTWC7.js → 4K73EOV3.js} +1 -1
  12. package/lib/chunks/{OYUXHAGQ.js → 4S35DNJF.js} +1 -1
  13. package/lib/chunks/{Y4UTXOI2.js → 4XKO52KS.js} +1 -1
  14. package/lib/chunks/{4JKMQCWY.js → 5BB2E772.js} +1 -1
  15. package/lib/chunks/{IODGA6FG.js → 5KWYBSEY.js} +1 -1
  16. package/lib/chunks/{JHK6XIMG.js → 6D6SERR2.js} +1 -1
  17. package/lib/chunks/{SXIFTBZB.js → 6TFC2OYQ.js} +1 -1
  18. package/lib/chunks/{YKST56C6.js → 7BZGNWGO.js} +1 -1
  19. package/lib/chunks/{7RQW6KPZ.js → AC25ILS5.js} +224 -115
  20. package/lib/chunks/{NERCHMVY.js → AQ5W4E54.js} +1 -1
  21. package/lib/chunks/{HW7ZCN7J.js → AVOA7IGA.js} +1 -1
  22. package/lib/chunks/{VSBSD3XZ.js → B6HQPQVF.js} +1 -1
  23. package/lib/chunks/{X2V5QOZP.js → BWA2MZEG.js} +1 -1
  24. package/lib/chunks/{L2EBKZQZ.js → C462YNOX.js} +1 -1
  25. package/lib/chunks/{6LEQ46KS.js → C6QQGZXT.js} +1 -1
  26. package/lib/chunks/{CQMZF72H.js → CBJ23L7Q.js} +1 -1
  27. package/lib/chunks/{BC3XCWQE.js → DZLV4HEX.js} +1 -1
  28. package/lib/chunks/{4C44BO5N.js → EIGOI65B.js} +1 -1
  29. package/lib/chunks/{Z52TEGV5.js → FGKVDZSD.js} +1 -1
  30. package/lib/chunks/{6QRNEF7K.js → FRHR2DRO.js} +1 -1
  31. package/lib/chunks/{NR3R4HFM.js → HAOBCQWB.js} +313 -1
  32. package/lib/chunks/{A22GELRX.js → HNEOPZAP.js} +1 -1
  33. package/lib/chunks/{OFJ2KV5N.js → HQSXMF3M.js} +1 -1
  34. package/lib/chunks/{AU7VOB4V.js → HYTOV6S5.js} +1 -1
  35. package/lib/chunks/{PHWKGYUT.js → IJJGUPFL.js} +1 -1
  36. package/lib/chunks/{5IIJHGNO.js → IPZEPCLP.js} +1 -1
  37. package/lib/chunks/{7AWM5GPD.js → J4MBQ4RQ.js} +1 -1
  38. package/lib/chunks/{Q4UGLPO2.js → JUZHXP62.js} +1 -1
  39. package/lib/chunks/{U52CY34I.js → KIY6ZQFM.js} +1 -1
  40. package/lib/chunks/{5VDBZVBF.js → KXCAMRHJ.js} +1 -1
  41. package/lib/chunks/{IYKYAJDC.js → LDFG6R4G.js} +1 -1
  42. package/lib/chunks/{ZK27F53P.js → N7JGYQGR.js} +1 -1
  43. package/lib/chunks/{Z7J6WWCO.js → OB24ZAXJ.js} +1 -1
  44. package/lib/chunks/{TCALQAX5.js → OD47UYXG.js} +1 -1
  45. package/lib/chunks/{ITUUIAOZ.js → PV7QRLRM.js} +1 -1
  46. package/lib/chunks/Q2CLTRW6.js +69 -0
  47. package/lib/chunks/{JGBWIR5U.js → QQ3NOFPI.js} +1 -1
  48. package/lib/chunks/{RFGNVCAR.js → QV24OXH3.js} +2 -2
  49. package/lib/chunks/{DQFNUDOT.js → S242M5IF.js} +1 -1
  50. package/lib/chunks/{VB4PNWOR.js → S4LDFBGV.js} +1 -1
  51. package/lib/chunks/{6AB3BDX4.js → SAQECLWB.js} +1 -1
  52. package/lib/chunks/{Z5QYTPVY.js → SCB6ZITR.js} +1 -1
  53. package/lib/chunks/{NCBLLIQ3.js → SDQYWQUI.js} +2 -2
  54. package/lib/chunks/{KMP5ZE2D.js → SEKSITHZ.js} +1 -1
  55. package/lib/chunks/{7LNKXEIU.js → SF5X7PGJ.js} +1 -1
  56. package/lib/chunks/{XNNK5G6V.js → SMBH5JAE.js} +1 -1
  57. package/lib/chunks/{WV2NAII3.js → T7ZIDP7J.js} +1 -1
  58. package/lib/chunks/{B4ONRSDG.js → TYTWIWRT.js} +3 -3
  59. package/lib/chunks/{DEXQ6S3P.js → U2GUGMK3.js} +35 -35
  60. package/lib/chunks/{3LGZAJES.js → UE7IAPIP.js} +1 -1
  61. package/lib/chunks/{BFIZTFWS.js → UOPNHN3X.js} +1 -1
  62. package/lib/chunks/{YXH72HCU.js → UQLM53UV.js} +1 -1
  63. package/lib/chunks/{HTG3RKCV.js → V4EDWQZH.js} +1 -1
  64. package/lib/chunks/{ACMV5RZA.js → VAPFU7OM.js} +101 -101
  65. package/lib/chunks/{J7J4PH3V.js → W2RELNUN.js} +1 -1
  66. package/lib/chunks/{CTPVBOG5.js → WDTMN7JE.js} +1 -1
  67. package/lib/chunks/{E2D25T4G.js → XDXN5CNA.js} +3 -2
  68. package/lib/chunks/{6WESXERF.js → XIQZ6CQT.js} +1 -1
  69. package/lib/chunks/{ZP54RCIQ.js → YDPANNWI.js} +1 -1
  70. package/lib/chunks/{CVUPOCX4.js → ZB7MWGMD.js} +1 -1
  71. package/lib/chunks/{LLWU7A5G.js → ZCLACSBJ.js} +1 -1
  72. package/lib/chunks/{3SFDVGEQ.js → ZGBAOCP4.js} +1 -1
  73. package/lib/eject-assets/generators/cli/docs.ts +1 -1
  74. package/lib/eject-assets/generators/cli/engine-source.ts +1 -1
  75. package/lib/eject-assets/generators/cli/index.ts +2 -2
  76. package/lib/eject-assets/generators/cli/render.ts +1 -1
  77. package/lib/eject-assets/generators/go/client.ts +1 -1
  78. package/lib/eject-assets/generators/go/descriptor.ts +1 -1
  79. package/lib/eject-assets/generators/go/index.ts +2 -2
  80. package/lib/eject-assets/generators/go/models.ts +1 -1
  81. package/lib/eject-assets/generators/go/naming.ts +1 -1
  82. package/lib/eject-assets/generators/go/operations.ts +1 -1
  83. package/lib/eject-assets/generators/go/pagination.ts +1 -1
  84. package/lib/eject-assets/generators/go/types.ts +1 -1
  85. package/lib/eject-assets/generators/mock/faker.ts +1 -1
  86. package/lib/eject-assets/generators/mock/index.ts +2 -2
  87. package/lib/eject-assets/generators/mock/render.ts +1 -1
  88. package/lib/eject-assets/generators/mock/sample.ts +1 -1
  89. package/lib/eject-assets/generators/mock/values.ts +1 -1
  90. package/lib/eject-assets/generators/php/client.ts +1 -1
  91. package/lib/eject-assets/generators/php/descriptor.ts +1 -1
  92. package/lib/eject-assets/generators/php/index.ts +2 -2
  93. package/lib/eject-assets/generators/php/models.ts +1 -1
  94. package/lib/eject-assets/generators/php/naming.ts +1 -1
  95. package/lib/eject-assets/generators/php/operations.ts +1 -1
  96. package/lib/eject-assets/generators/php/pagination.ts +1 -1
  97. package/lib/eject-assets/generators/php/types.ts +1 -1
  98. package/lib/eject-assets/generators/python/client.ts +1 -1
  99. package/lib/eject-assets/generators/python/descriptor.ts +1 -1
  100. package/lib/eject-assets/generators/python/index.ts +2 -2
  101. package/lib/eject-assets/generators/python/models.ts +1 -1
  102. package/lib/eject-assets/generators/python/naming.ts +1 -1
  103. package/lib/eject-assets/generators/python/operations.ts +1 -1
  104. package/lib/eject-assets/generators/python/pagination.ts +1 -1
  105. package/lib/eject-assets/generators/python/types.ts +1 -1
  106. package/lib/eject-assets/generators/swr/index.ts +2 -2
  107. package/lib/eject-assets/generators/swr/render.ts +1 -1
  108. package/lib/eject-assets/generators/tanstack-query/index.ts +2 -2
  109. package/lib/eject-assets/generators/tanstack-query/render.ts +1 -1
  110. package/lib/eject-assets/generators/transformers/index.ts +2 -2
  111. package/lib/eject-assets/generators/transformers/render.ts +1 -1
  112. package/lib/eject-assets/generators/typescript/banner.ts +1 -1
  113. package/lib/eject-assets/generators/typescript/client.ts +1 -1
  114. package/lib/eject-assets/generators/typescript/descriptor.ts +1 -1
  115. package/lib/eject-assets/generators/typescript/index.ts +29 -3
  116. package/lib/eject-assets/generators/typescript/inline-runtime.ts +1 -1
  117. package/lib/eject-assets/generators/typescript/operation-signature.ts +1 -1
  118. package/lib/eject-assets/generators/typescript/operation-types.ts +1 -1
  119. package/lib/eject-assets/generators/typescript/operations.ts +1 -1
  120. package/lib/eject-assets/generators/typescript/response-headers.ts +1 -1
  121. package/lib/eject-assets/generators/typescript/type-guards.ts +1 -1
  122. package/lib/eject-assets/generators/typescript/types.ts +1 -1
  123. package/lib/eject-assets/generators/zod/index.ts +2 -2
  124. package/lib/eject-assets/generators/zod/schemas.ts +1 -1
  125. package/lib/eject-assets/skills/typescript-generator/SKILL.md +19 -0
  126. package/lib/index.js +5 -5
  127. package/package.json +1 -1
  128. package/lib/chunks/FRM6TZ42.js +0 -67
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a as T,b as O,c as A,d as E}from"./KMP5ZE2D.js";import{c as m,k as C,r as $}from"./3LGZAJES.js";import{a as q}from"./GKXY6U4S.js";import{c as H,ia as u,oa as y,pa as R}from"./ACMV5RZA.js";import"./NEWT5A6S.js";import{e as z}from"./RFWIIJFG.js";import{createReadStream as F,createWriteStream as k,existsSync as N}from"node:fs";import{appendFile as V,mkdir as _,rm as j,writeFile as W}from"node:fs/promises";import B from"node:path";import{createInterface as G}from"node:readline";var w=class{outputPath;entriesPath;creatorVersion;writeChain=Promise.resolve();directoryEnsured=!1;started=!1;count=0;constructor(t,r){this.outputPath=B.resolve(process.cwd(),t),this.entriesPath=`${this.outputPath}.entries.tmp`,this.creatorVersion=r}get entryCount(){return this.count}add(t){let r=`${JSON.stringify(t)}
7
+ import{a as T,b as O,c as A,d as E}from"./SEKSITHZ.js";import{c as m,k as C,r as $}from"./UE7IAPIP.js";import{a as q}from"./GKXY6U4S.js";import{c as H,ia as u,oa as y,pa as R}from"./VAPFU7OM.js";import"./NEWT5A6S.js";import{e as z}from"./RFWIIJFG.js";import{createReadStream as F,createWriteStream as k,existsSync as N}from"node:fs";import{appendFile as V,mkdir as _,rm as j,writeFile as W}from"node:fs/promises";import B from"node:path";import{createInterface as G}from"node:readline";var w=class{outputPath;entriesPath;creatorVersion;writeChain=Promise.resolve();directoryEnsured=!1;started=!1;count=0;constructor(t,r){this.outputPath=B.resolve(process.cwd(),t),this.entriesPath=`${this.outputPath}.entries.tmp`,this.creatorVersion=r}get entryCount(){return this.count}add(t){let r=`${JSON.stringify(t)}
8
8
  `,n=this.writeChain.catch(()=>{}).then(()=>this.append(r)).then(()=>{this.count+=1});return this.writeChain=n.catch(()=>{}),n}async finalize(){await this.writeChain.catch(()=>{}),await this.ensureDirectory(),await this.writeDocument(),await j(this.entriesPath,{force:!0})}async append(t){if(await this.ensureDirectory(),!this.started){await W(this.entriesPath,t,"utf8"),this.started=!0;return}await V(this.entriesPath,t,"utf8")}async ensureDirectory(){this.directoryEnsured||(await _(B.dirname(this.outputPath),{recursive:!0}),this.directoryEnsured=!0)}async writeDocument(){let t=k(this.outputPath,{encoding:"utf8"}),r=n=>new Promise((o,s)=>{t.write(n,i=>i?s(i):o())});try{let n=JSON.stringify({name:"redocly-cli proxy",version:this.creatorVersion});await r(`{
9
9
  "log": {
10
10
  "version": "1.2",
@@ -2392,4 +2392,316 @@ def multipart_arguments(body: Any) -> Dict[str, Any]:
2392
2392
  return {"content": body}
2393
2393
  data, files = to_multipart(body)
2394
2394
  return {"data": data, "files": files}
2395
- `};export{e as a,t as b,n as c};
2395
+ `};var r=`import type { Middleware, SettledCall } from '../../../runtime-contract.js';
2396
+
2397
+ const GENERATOR_VERSION: string = 'dev';
2398
+ const DEFAULT_ENDPOINT = 'https://otel.cloud.redocly.com/v1/traces';
2399
+ const EVENT_TYPE = 'com.redocly.sdkUsage.aggregated';
2400
+ const SEND_TIMEOUT_MS = 3000;
2401
+ const SERVICE_NAME = 'redocly-sdk';
2402
+
2403
+ type StatusClass = '2xx' | '3xx' | '4xx' | '5xx' | 'network_error' | 'timeout' | 'aborted';
2404
+ type LatencyBucket = 'lt_100ms' | 'lt_300ms' | 'lt_1s' | 'lt_3s' | 'lt_10s' | 'gte_10s';
2405
+
2406
+ const STATUS_CLASSES: StatusClass[] = [
2407
+ '2xx',
2408
+ '3xx',
2409
+ '4xx',
2410
+ '5xx',
2411
+ 'network_error',
2412
+ 'timeout',
2413
+ 'aborted',
2414
+ ];
2415
+ const LATENCY_BUCKETS: Array<{ bucket: LatencyBucket; belowMs: number }> = [
2416
+ { bucket: 'lt_100ms', belowMs: 100 },
2417
+ { bucket: 'lt_300ms', belowMs: 300 },
2418
+ { bucket: 'lt_1s', belowMs: 1000 },
2419
+ { bucket: 'lt_3s', belowMs: 3000 },
2420
+ { bucket: 'lt_10s', belowMs: 10000 },
2421
+ { bucket: 'gte_10s', belowMs: Infinity },
2422
+ ];
2423
+
2424
+ export type SdkUsageEvent = {
2425
+ id: string;
2426
+ type: typeof EVENT_TYPE;
2427
+ source: string;
2428
+ time: string;
2429
+ data: {
2430
+ usage: Record<string, string | number>;
2431
+ sdk: Record<string, string>;
2432
+ };
2433
+ };
2434
+
2435
+ export type TelemetryOptions = {
2436
+ sdkName: string;
2437
+ sdkVersion: string;
2438
+ client: string;
2439
+ sink?: (events: SdkUsageEvent[]) => void | Promise<void>;
2440
+ endpoint?: string;
2441
+ flushIntervalMs?: number;
2442
+ };
2443
+
2444
+ type OperationCounts = {
2445
+ calls: number;
2446
+ attempts: number;
2447
+ durationSumMs: number;
2448
+ status: Record<StatusClass, number>;
2449
+ latency: Record<LatencyBucket, number>;
2450
+ };
2451
+
2452
+ type ProcessLike = {
2453
+ env?: Record<string, string | undefined>;
2454
+ versions?: { node?: string; bun?: string; deno?: string };
2455
+ on?: (event: 'beforeExit', listener: () => void) => void;
2456
+ };
2457
+
2458
+ const activeWindows = new Set<() => Promise<void>>();
2459
+ const pendingSends = new Set<Promise<void>>();
2460
+ let exitHookInstalled = false;
2461
+
2462
+ function nodeProcess(): ProcessLike | undefined {
2463
+ return (globalThis as { process?: ProcessLike }).process;
2464
+ }
2465
+
2466
+ function telemetryDisabled(): boolean {
2467
+ const runtimeProcess = nodeProcess();
2468
+ if (runtimeProcess === undefined) return true;
2469
+ // A browser bundle can add a \`process\` shim, so also check for \`document\`.
2470
+ if (typeof document !== 'undefined') return true;
2471
+ const env = runtimeProcess.env ?? {};
2472
+ if (env.REDOCLY_SDK_TELEMETRY === 'off') return true;
2473
+ if (env.DO_NOT_TRACK === '1') return true;
2474
+ return false;
2475
+ }
2476
+
2477
+ export async function flush(): Promise<void> {
2478
+ for (const flushWindow of activeWindows) void flushWindow();
2479
+ await Promise.all(pendingSends);
2480
+ }
2481
+
2482
+ export function telemetry(options: TelemetryOptions): Middleware {
2483
+ if (telemetryDisabled()) return {};
2484
+ const intervalMs = options.flushIntervalMs ?? 60_000;
2485
+ const endpoint = options.endpoint ?? DEFAULT_ENDPOINT;
2486
+ const sink = options.sink ?? ((events: SdkUsageEvent[]) => sendOtlp(endpoint, events));
2487
+ const versions = nodeProcess()?.versions ?? {};
2488
+ let runtime = 'node';
2489
+ let runtimeVersion = versions.node ?? '';
2490
+ if (versions.bun !== undefined) {
2491
+ runtime = 'bun';
2492
+ runtimeVersion = versions.bun;
2493
+ } else if (versions.deno !== undefined) {
2494
+ runtime = 'deno';
2495
+ runtimeVersion = versions.deno;
2496
+ }
2497
+ const sdk: Record<string, string> = {
2498
+ name: options.sdkName,
2499
+ version: options.sdkVersion,
2500
+ generator_version: GENERATOR_VERSION,
2501
+ language: 'typescript',
2502
+ runtime,
2503
+ runtime_version: runtimeVersion,
2504
+ client: options.client,
2505
+ };
2506
+ let counts = new Map<string, OperationCounts>();
2507
+ let windowStart = 0;
2508
+ let timer: ReturnType<typeof setTimeout> | undefined;
2509
+
2510
+ async function flushWindow(): Promise<void> {
2511
+ if (counts.size === 0) return;
2512
+ if (timer !== undefined) clearTimeout(timer);
2513
+ timer = undefined;
2514
+ activeWindows.delete(flushWindow);
2515
+ const events = toEvents(counts, windowStart, Date.now() - windowStart, options.sdkName, sdk);
2516
+ counts = new Map();
2517
+ if (telemetryDisabled()) return;
2518
+ const send = Promise.resolve()
2519
+ .then(() => sink(events))
2520
+ .catch(() => undefined);
2521
+ pendingSends.add(send);
2522
+ await send;
2523
+ pendingSends.delete(send);
2524
+ }
2525
+
2526
+ installExitHook();
2527
+
2528
+ return {
2529
+ onSettled: (ctx, call) => {
2530
+ if (counts.size === 0) {
2531
+ windowStart = Date.now();
2532
+ timer = setTimeout(() => void flushWindow(), intervalMs);
2533
+ unrefTimer(timer);
2534
+ activeWindows.add(flushWindow);
2535
+ }
2536
+ let operation = counts.get(ctx.operation.id);
2537
+ if (operation === undefined) {
2538
+ operation = emptyCounts();
2539
+ counts.set(ctx.operation.id, operation);
2540
+ }
2541
+ record(operation, call);
2542
+ },
2543
+ };
2544
+ }
2545
+
2546
+ function installExitHook(): void {
2547
+ if (exitHookInstalled) return;
2548
+ exitHookInstalled = true;
2549
+ nodeProcess()?.on?.('beforeExit', () => void flush());
2550
+ }
2551
+
2552
+ function unrefTimer(timer: unknown): void {
2553
+ if (timer instanceof Object && 'unref' in timer && typeof timer.unref === 'function') {
2554
+ timer.unref();
2555
+ }
2556
+ }
2557
+
2558
+ function emptyCounts(): OperationCounts {
2559
+ return {
2560
+ calls: 0,
2561
+ attempts: 0,
2562
+ durationSumMs: 0,
2563
+ status: { '2xx': 0, '3xx': 0, '4xx': 0, '5xx': 0, network_error: 0, timeout: 0, aborted: 0 },
2564
+ latency: { lt_100ms: 0, lt_300ms: 0, lt_1s: 0, lt_3s: 0, lt_10s: 0, gte_10s: 0 },
2565
+ };
2566
+ }
2567
+
2568
+ function record(operation: OperationCounts, call: SettledCall): void {
2569
+ operation.calls += 1;
2570
+ operation.attempts += call.attempts;
2571
+ operation.durationSumMs += call.durationMs;
2572
+ operation.status[statusClass(call)] += 1;
2573
+ for (const { bucket, belowMs } of LATENCY_BUCKETS) {
2574
+ if (call.durationMs < belowMs) {
2575
+ operation.latency[bucket] += 1;
2576
+ break;
2577
+ }
2578
+ }
2579
+ }
2580
+
2581
+ function statusClass(call: SettledCall): StatusClass {
2582
+ if (call.response === undefined) {
2583
+ if (call.error instanceof Error && call.error.name === 'TimeoutError') return 'timeout';
2584
+ if (call.error instanceof Error && call.error.name === 'AbortError') return 'aborted';
2585
+ return 'network_error';
2586
+ }
2587
+ const status = call.response.status;
2588
+ if (status >= 500) return '5xx';
2589
+ if (status >= 400) return '4xx';
2590
+ if (status >= 300) return '3xx';
2591
+ return '2xx';
2592
+ }
2593
+
2594
+ function toEvents(
2595
+ counts: Map<string, OperationCounts>,
2596
+ windowStart: number,
2597
+ windowMs: number,
2598
+ source: string,
2599
+ sdk: Record<string, string>
2600
+ ): SdkUsageEvent[] {
2601
+ const events: SdkUsageEvent[] = [];
2602
+ for (const [operationId, operation] of counts) {
2603
+ const usage: Record<string, string | number> = {
2604
+ operation_id: operationId,
2605
+ window_ms: windowMs,
2606
+ calls: operation.calls,
2607
+ attempts: operation.attempts,
2608
+ duration_sum_ms: operation.durationSumMs,
2609
+ };
2610
+ for (const statusClass of STATUS_CLASSES) {
2611
+ const count = operation.status[statusClass];
2612
+ if (count > 0) {
2613
+ usage[\`status_\${statusClass}\`] = count;
2614
+ }
2615
+ }
2616
+ for (const { bucket } of LATENCY_BUCKETS) {
2617
+ const count = operation.latency[bucket];
2618
+ if (count > 0) {
2619
+ usage[\`latency_\${bucket}\`] = count;
2620
+ }
2621
+ }
2622
+ events.push({
2623
+ id: \`evt_\${randomHex(16)}\`,
2624
+ type: EVENT_TYPE,
2625
+ source,
2626
+ time: new Date(windowStart).toISOString(),
2627
+ data: { usage, sdk },
2628
+ });
2629
+ }
2630
+ return events;
2631
+ }
2632
+
2633
+ async function sendOtlp(endpoint: string, events: SdkUsageEvent[]): Promise<void> {
2634
+ const response = await fetch(endpoint, {
2635
+ method: 'POST',
2636
+ // One send per window, so the socket is never reused: close it instead of keeping it idle.
2637
+ headers: { 'Content-Type': 'application/json', Connection: 'close' },
2638
+ body: JSON.stringify(toOtlpRequest(events)),
2639
+ signal: AbortSignal.timeout(SEND_TIMEOUT_MS),
2640
+ });
2641
+ await response.body?.cancel();
2642
+ }
2643
+
2644
+ type OtlpValue = { stringValue: string } | { intValue: number } | { doubleValue: number };
2645
+ type OtlpAttribute = { key: string; value: OtlpValue };
2646
+
2647
+ function toOtlpRequest(events: SdkUsageEvent[]) {
2648
+ const spans = [];
2649
+ for (const event of events) {
2650
+ const timeUnixNano = \`\${Date.parse(event.time)}000000\`;
2651
+ const attributes: OtlpAttribute[] = [
2652
+ attribute('cloudevents.event_id', event.id),
2653
+ attribute('cloudevents.event_type', event.type),
2654
+ attribute('cloudevents.event_source', event.source),
2655
+ attribute('cloudevents.event_spec_version', '1.0'),
2656
+ attribute('cloudevents.event_data_content_type', 'application/json; charset=utf-8'),
2657
+ attribute('cloudevents.event_time', event.time),
2658
+ attribute('cloudevents.event_subject', ''),
2659
+ attribute('cloudevents.event_origin', SERVICE_NAME),
2660
+ attribute('cloudevents.event_object', 'event'),
2661
+ attribute('cloudevents.event_category', 'product'),
2662
+ attribute('cloudevents.event_signal', 'metric'),
2663
+ ];
2664
+ for (const [key, value] of Object.entries(event.data.usage)) {
2665
+ attributes.push(attribute(\`cloudevents.event_data.usage.\${key}\`, value));
2666
+ }
2667
+ for (const [key, value] of Object.entries(event.data.sdk)) {
2668
+ attributes.push(attribute(\`cloudevents.event_data.sdk.\${key}\`, value));
2669
+ }
2670
+ spans.push({
2671
+ traceId: randomHex(16),
2672
+ spanId: randomHex(8),
2673
+ name: \`event.\${event.type}\`,
2674
+ kind: 1,
2675
+ startTimeUnixNano: timeUnixNano,
2676
+ endTimeUnixNano: timeUnixNano,
2677
+ attributes,
2678
+ });
2679
+ }
2680
+ return {
2681
+ resourceSpans: [
2682
+ {
2683
+ resource: {
2684
+ attributes: [
2685
+ attribute('service.name', SERVICE_NAME),
2686
+ attribute('service.version', GENERATOR_VERSION),
2687
+ ],
2688
+ },
2689
+ scopeSpans: [{ scope: { name: 'redocly-sdk-telemetry' }, spans }],
2690
+ },
2691
+ ],
2692
+ };
2693
+ }
2694
+
2695
+ function attribute(key: string, value: string | number): OtlpAttribute {
2696
+ if (typeof value === 'string') return { key, value: { stringValue: value } };
2697
+ if (Number.isInteger(value)) return { key, value: { intValue: value } };
2698
+ return { key, value: { doubleValue: value } };
2699
+ }
2700
+
2701
+ function randomHex(byteCount: number): string {
2702
+ const bytes = crypto.getRandomValues(new Uint8Array(byteCount));
2703
+ let hex = '';
2704
+ for (const byte of bytes) hex += byte.toString(16).padStart(2, '0');
2705
+ return hex;
2706
+ }
2707
+ `;export{e as a,t as b,n as c,r as d};
@@ -4,4 +4,4 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{c as r}from"./ACMV5RZA.js";var s="components",p="paths",i="webhooks",O="x-webhooks",c="channels",f="operations";function e(o,n){if(r(o)){n(o);for(let t of Object.keys(o))e(o[t],n)}else if(Array.isArray(o))for(let t of o)e(t,n)}function S(o){return o.startsWith(`#/${s}/`)}export{s as a,p as b,i as c,O as d,c as e,f,e as g,S as h};
7
+ import{c as r}from"./VAPFU7OM.js";var s="components",p="paths",i="webhooks",O="x-webhooks",c="channels",f="operations";function e(o,n){if(r(o)){n(o);for(let t of Object.keys(o))e(o[t],n)}else if(Array.isArray(o))for(let t of o)e(t,n)}function S(o){return o.startsWith(`#/${s}/`)}export{s as a,p as b,i as c,O as d,c as e,f,e as g,S as h};
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{i as c,l as a}from"./4JKMQCWY.js";import"./GKXY6U4S.js";import{ia as s}from"./ACMV5RZA.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";async function g({operation:i,input:r,version:n}){let t=await l(r),e=`${t.protocol}://${t.host}`;if(i!=="get"||!c(e))return"";let o=process.env.REDOCLY_AUTHORIZATION||await new a(n).getAccessToken(e);return o?`username=redocly
7
+ import{i as c,l as a}from"./5BB2E772.js";import"./GKXY6U4S.js";import{ia as s}from"./VAPFU7OM.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";async function g({operation:i,input:r,version:n}){let t=await l(r),e=`${t.protocol}://${t.host}`;if(i!=="get"||!c(e))return"";let o=process.env.REDOCLY_AUTHORIZATION||await new a(n).getAccessToken(e);return o?`username=redocly
8
8
  password=${o}
9
9
  `:(s.error(`You are not logged in to ${e}. Run \`redocly login --residency ${e}\` or set the REDOCLY_AUTHORIZATION environment variable.
10
10
  `),`quit=1
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{b as W}from"./NR3R4HFM.js";import{b as E,c as I,d as L,e as F,f as ne,g as te,h as re,i as ie,j as se}from"./BC3XCWQE.js";import{a as X,c as C,d as p,e as S,f as N,g as R,h as B,i as Z,j,k as D,l as O,n as ee}from"./UW4UC7ZI.js";var U=C.php,w=class extends X{constructor(){super(" ")}typeName(n){return p(n,{style:"pascal",reserved:U})}memberName(n){return p(n,{style:"camel",reserved:U})}identifier(n){return p(n,{style:"camel",reserved:U})}identifiers(n,s){return S(n,{style:"camel",reserved:U,taken:s})}string(n){return`'${n.replace(/\\/g,"\\\\").replace(/'/g,"\\'")}'`}literal(n){return n==null?"null":typeof n=="boolean"||typeof n=="number"?String(n):typeof n=="string"?this.string(n):Array.isArray(n)?`[${n.map(i=>this.literal(i)).join(", ")}]`:`[${Object.entries(n).map(([i,r])=>`${this.string(i)} => ${this.literal(r)}`).join(", ")}]`}comment(n){for(let s of O(n))this.line(s===""?"//":`// ${s}`);return this}doc(n,s,i=[]){let r=O(s);if(r.length===0&&i.length===0)return this;let t=r.length===0?n:`${n} \u2014 ${r.join(" ")}`;if(i.length===0)return this.line(`/** ${t} */`);this.line("/**"),this.line(` * ${t}`),this.line(" *");for(let a of i)this.line(` * ${a}`);return this.line(" */")}};var h=C.php,G=new w;function y(e){return G.typeName(e)}function k(e){return G.memberName(e)}function o(e){return G.string(e)}function ae(e){return p(e.name,{style:"camel",reserved:h})}function K(e){let n=e.services.flatMap(i=>i.operations),s=S(n.map(i=>i.name),{style:"camel",reserved:h});return new Map(n.map((i,r)=>[i.name,s[r]]))}function he(e){return te(e).map(s=>s.kind==="literal"?o(s.value):`$${k(s.name)}`).join(" . ")}function oe(e,n){let s=n.servers??[];if(s.length===0)return;let i=new Set;e.line("/** The declared servers; variables default to the values from the description. */"),e.line("final class Servers"),e.block("{",()=>{s.forEach((r,t)=>{let a=p(r.description??`server${t+1}`,{style:"camel",reserved:h});i.has(a)&&(a=`${a}${t+1}`),i.add(a);let c=r.variables.map(l=>`string $${k(l.name)} = ${o(l.default)}`);t>0&&e.blank(),e.line(`public static function ${a}(${c.join(", ")}): string`),e.block("{",()=>{e.line(`return ${he(r)};`)},"}")})},"}"),e.blank()}function ce(e,n){let s=re(e,n).map(i=>`[${i.map(t=>t.kind==="apiKey"?`['kind' => 'apiKey', 'scheme' => ${o(t.scheme)}, 'name' => ${o(t.name)}, 'in' => ${o(t.in)}]`:`['kind' => ${o(t.kind)}, 'scheme' => ${o(t.scheme)}]`).join(", ")}]`);if(s.length!==0)return`[${s.join(", ")}]`}function le(e){return`[${[`'style' => ${o(e.style)}`,...e.param!==void 0?[`'param' => ${o(e.param)}`]:[],...e.nextCursor!==void 0?[`'nextCursor' => ${o(e.nextCursor)}`]:[],...e.hasMore!==void 0?[`'hasMore' => ${o(e.hasMore)}`]:[],...e.nextLink!==void 0?[`'nextLink' => ${o(e.nextLink)}`]:[],...e.limitParam!==void 0?[`'limitParam' => ${o(e.limitParam)}`]:[],...e.items!==void 0?[`'items' => ${o(e.items)}`]:[]].join(", ")}]`}function ue(e,n){let s=new Set;return`[${(e.successResponseHeaders??[]).map(r=>{let t=p(r.name,{style:"camel",reserved:h}),a=2;for(;s.has(t);)t=`${p(r.name,{style:"camel",reserved:h})}_${a++}`;s.add(t);let c=ee(r.schema,n);return`[${o(r.name)}, ${o(t)}, ${o(c)}]`}).join(", ")}]`}function _(e,n){let s=n.schemas.find(t=>t.name===e);if(s===void 0)return"other";let i=s.schema,r=D(i);return r!==void 0&&(r.scalar==="string"||r.scalar==="integer")?"enum":(i.kind==="object"||i.kind==="intersection")&&R(i,n)!==void 0?"class":"other"}function m(e,n,s="string"){if(Z(e)){let i=m(j(e),n,s);return A(i)}switch(e.kind){case"scalar":return s==="Date"&&e.scalar==="string"&&J(e)?"\\DateTimeImmutable":{string:"string",integer:"int",number:"float",boolean:"bool"}[e.scalar];case"array":case"record":return"array";case"ref":{let i=_(e.name,n);if(i==="class"||i==="enum")return y(e.name);let r=N(e,n);return r===void 0?"mixed":m(r,n,s)}case"enum":return{string:"string",integer:"int",number:"float",boolean:"bool"}[e.scalar];case"literal":return typeof e.value=="string"?"string":typeof e.value=="boolean"?"bool":"float";case"omit":return y(e.base);case"union":return ye(e.members,n,s);case"null":case"object":case"intersection":case"unknown":return"mixed"}}function J(e){let n=e.metadata?.format;return n==="date"||n==="date-time"}function A(e){return e==="mixed"||e.startsWith("?")||e.endsWith("|null")?e:e.includes("|")?`${e}|null`:`?${e}`}function ye(e,n,s){let i=[];for(let r of e){if(r.kind==="null")continue;let t=m(r,n,s);if(t==="mixed")return"mixed";let a=t.startsWith("?")?t.slice(1):t;i.includes(a)||i.push(a),t.startsWith("?")&&!i.includes("null")&&i.push("null")}return i.length===0?"mixed":i.join("|")}function V(e,n,s){if(e===void 0)return;let i=j(e);if(i.kind==="ref"){let t=N(i,n);return _(i.name,n)==="other"?V(t,n,s):void 0}if(i.kind!=="array")return;let r=m(i.items,n,s);return r==="mixed"?void 0:r}function $e(e,n){let s=n.schemas.find(i=>i.name===e);return s!==void 0&&B(s.schema,n)!==void 0}function q(e,n,s,i){let r=j(e);if(i==="Date"&&r.kind==="scalar"&&r.scalar==="string"&&J(r))return`new \\DateTimeImmutable(${n})`;if(r.kind==="omit")return q({kind:"ref",name:r.base},n,s,i);if(r.kind==="ref"){let t=_(r.name,s);if(t==="class")return`${y(r.name)}::fromArray(${n})`;if(t==="enum")return`${y(r.name)}::from(${n})`;if($e(r.name,s))return`unmarshal${y(r.name)}(${n})`;let a=N(r,s);return a===void 0?void 0:q(a,n,s,i)}if(r.kind==="array"){let t=q(r.items,"$item",s,i);return t===void 0?void 0:`array_map(static fn ($item) => ${t}, ${n})`}if(r.kind==="record"){let t=q(r.value,"$item",s,i);return t===void 0?void 0:`array_map(static fn ($item) => ${t}, ${n})`}}function x(e,n,s,i="string"){let r=j(e);if(i==="Date"&&r.kind==="scalar"&&r.scalar==="string"){if(r.metadata?.format==="date")return`${n}->format('Y-m-d')`;if(r.metadata?.format==="date-time")return`${n}->format(\\DateTimeInterface::ATOM)`}if(r.kind==="omit")return x({kind:"ref",name:r.base},n,s,i);if(r.kind==="ref"){let t=_(r.name,s);if(t==="class")return`${n}->toArray()`;if(t==="enum")return`${n}->value`;if($e(r.name,s))return`is_object(${n}) ? ${n}->toArray() : ${n}`;let a=N(r,s);return a===void 0?void 0:x(a,n,s,i)}if(r.kind==="array"||r.kind==="record"){let t=r.kind==="array"?r.items:r.value,a=x(t,"$item",s,i);return a===void 0?void 0:`array_map(static fn ($item) => ${a}, ${n})`}}function ge(e,n,s,i,r,t){let a=[...s.filter(c=>c.required),...s.filter(c=>!c.required)];e.doc(y(n),t),e.line(`final class ${y(n)}`),e.block("{",()=>{e.block("public function __construct(",()=>{for(let c of a){let l=m(c.schema,i,r);if(c.required)e.line(`public ${l} $${k(c.name)},`);else{let u=A(l);e.line(`public ${u} $${k(c.name)} = null,`)}}},") {"),e.line("}"),e.blank(),e.line("public static function fromArray(array $data): self"),e.block("{",()=>{e.block("return new self(",()=>{for(let c of a){let l=`$data[${o(c.name)}]`,u=q(c.schema,l,i,r),d=k(c.name);c.required?e.line(`${d}: ${u??l},`):u===void 0?e.line(`${d}: ${l} ?? null,`):e.line(`${d}: isset(${l}) ? ${u} : null,`)}},");")},"}"),e.blank(),e.line("public function toArray(): array"),e.block("{",()=>{e.line("$data = [];");for(let c of a){let l=`$this->${k(c.name)}`,u=x(c.schema,l,i,r)??l;c.required?e.line(`$data[${o(c.name)}] = ${u};`):e.block(`if (${l} !== null) {`,()=>{e.line(`$data[${o(c.name)}] = ${u};`)},"}")}e.line("return $data;")},"}")},"}"),e.blank()}function z(e,n="string"){let s=new w;for(let{name:i,schema:r}of e.schemas){let t=D(r);if(t!==void 0&&(t.scalar==="string"||t.scalar==="integer")){let c=t.scalar==="string"?"string":"int";s.doc(y(i),r.description),s.line(`enum ${y(i)}: ${c}`),s.block("{",()=>{let l=S(t.values.map(u=>String(u)),{style:"pascal",reserved:h});t.values.forEach((u,d)=>{let b=typeof u=="string"?o(u):String(u);s.line(`case ${l[d]} = ${b};`)})},"}"),s.blank();continue}if(r.kind==="object"||r.kind==="intersection"){let c=R(r,e);if(c!==void 0){ge(s,i,c.properties,e,n,c.description??r.description);continue}}let a=B(r,e);if(a!==void 0){let c=y(i),l=a.cases.map(u=>`${u.value} -> ${y(u.schemaName)}`).join(", ");s.line(`/** ${c} is a discriminated union (${o(a.property)}): ${l}. */`),s.line(`function unmarshal${c}(array $data): mixed`),s.block("{",()=>{s.block(`return match ($data[${o(a.property)}] ?? null) {`,()=>{for(let u of a.cases)s.line(`${o(u.value)} => ${y(u.schemaName)}::fromArray($data),`);s.line("default => $data,")},"};")},"}"),s.blank();continue}}return s.toString()}var de=new Set(["post","put","patch"]),be=["body","headers","idempotencyKey"];function fe(e){return F(e)||e.requestBody!==void 0&&ne(e.requestBody.contentType)}function Q(e,n,s,i){let r=S([...e.pathParams,...e.queryParams].map(l=>l.name),{style:"camel",reserved:h,taken:be}),t=e.pathParams.map((l,u)=>({php:r[u],wire:l.name,type:m(l.schema,n,i)})),a=e.queryParams.map((l,u)=>{let d=r[e.pathParams.length+u];return{php:d,wire:l.name,type:m(l.schema,n,i),value:x(l.schema,`$${d}`,n,i)??`$${d}`}}),c=[...t.map(({php:l,type:u})=>`${u} $${l}`),...s&&e.requestBody?[`${fe(e)?"mixed":L(e)?"array":m(e.requestBody.schema,n,i)} $body`]:[],...a.map(({php:l,type:u})=>`${A(u)} $${l} = null`),"?array $headers = null",...s&&de.has(e.method.toLowerCase())?["?string $idempotencyKey = null"]:[]];return{pathArgs:t,queryArgs:a,signature:c}}function ke(e,n,s){e.line(`$op = self::OPERATIONS[${o(n.specName??n.name)}];`),e.line("[$authHeaders, $query, $cookies] = resolveAuth($op['security'] ?? [], $this->config->auth);");for(let{php:r,wire:t,value:a}of s.queryArgs)e.block(`if ($${r} !== null) {`,()=>{e.line(`$query[${o(t)}] = ${a};`)},"}");let i=s.pathArgs.map(({php:r,wire:t})=>`${o(t)} => $${r}`).join(", ");e.line(`$url = buildUrl($this->config->serverUrl, $op['path'], [${i}]);`),e.line("$requestHeaders = array_merge($authHeaders, $headers ?? []);"),e.block("if ($cookies !== []) {",()=>{e.line("$requestHeaders['Cookie'] = implode('; ', $cookies);")},"}")}function Y(e,n,s,i,r,t=!1){let a=Q(n,i,!0,r),c=I(n),l=E(n),u=c===void 0&&l===void 0&&n.successResponses.some(g=>g.contentType!==""),d=t?"Envelope":c!==void 0?"\\Generator":l!==void 0?m(l,i,r):u?"string":"void",b=t?`${s}WithHeaders`:s,H=t?void 0:V(l,i,r);e.doc(b,t?`Like ${s}(), returning an Envelope with the declared response headers.`:n.summary??`${n.method.toUpperCase()} ${n.path}`,H===void 0?[]:[`@return ${H}[]`]),e.line(`public function ${b}(${a.signature.join(", ")}): ${d}`),e.block("{",()=>{if(ke(e,n,a),c!==void 0){let f=c.schema!==void 0&&c.schema.kind!=="unknown";e.line("$url = appendQuery($url, $query);"),e.block("$open = function (array $extraHeaders) use ($url, $requestHeaders): \\CurlHandle {",()=>{e.line("$handle = curl_init($url);"),e.line("$lines = [];"),e.block("foreach (array_merge($requestHeaders, $extraHeaders) as $name => $value) {",()=>{e.line("$lines[] = $name . ': ' . $value;")},"}"),e.line("curl_setopt($handle, CURLOPT_HTTPHEADER, $lines);"),e.line("return $handle;")},"};"),e.line(`yield from iterSse($open, ${f?"true":"false"});`);return}let g=["'operationId' => $op['id']","'method' => $op['method']","'url' => $url","'headers' => $requestHeaders","'query' => $query"];if(F(n))e.line("[$contentType, $encoded] = multipartBody($body);"),g.push("'body' => $encoded","'contentType' => $contentType");else if(n.requestBody&&fe(n))g.push("'body' => binaryBody($body)",`'contentType' => ${o(n.requestBody.contentType)}`);else if(n.requestBody&&L(n))e.line("[$contentType, $encoded] = toMultipart($body);"),g.push("'body' => $encoded","'contentType' => $contentType");else if(n.requestBody){let f=x(n.requestBody.schema,"$body",i,r)??"$body";e.line(`$payload = json_encode(${f});`),g.push("'body' => $payload",`'contentType' => ${o(n.requestBody.contentType)}`)}de.has(n.method.toLowerCase())&&n.requestBody&&g.push("'idempotencyKey' => $idempotencyKey"),e.line(`$response = send($this->config, [${g.join(", ")}]);`),e.block("if ($response['status'] >= 400) {",()=>{e.line("throw apiErrorFrom($response);")},"}");let $=u?"$response['body']":(l===void 0?void 0:q(l,"decodeJson($response)",i,r))??"decodeJson($response)";if(t){e.line(`$data = ${$};`),e.line(`return new Envelope(data: $data, headers: readEnvelopeHeaders($response, ${ue(n,i)}), status: $response['status']);`);return}if(u){e.line("return $response['body'];");return}if(d==="void"){e.line("decodeJson($response);");return}e.line(`return ${$};`)},"}"),e.blank()}function me(e,n,s,i,r,t,a,c,l){let u=Q(n,i,!1,r),d=s,b=()=>{e.line(`$op = self::OPERATIONS[${o(n.specName??n.name)}];`),e.line("$base = [];");for(let{php:f,wire:P,value:v}of u.queryArgs)e.block(`if ($${f} !== null) {`,()=>{e.line(`$base[${o(P)}] = ${v};`)},"}");let $=u.pathArgs.map(({php:f,wire:P})=>`${o(P)} => $${f}`).join(", ");e.block("$call = function (array $params) use ($op, $headers): array {",()=>{e.line("[$authHeaders, $authQuery, $cookies] = resolveAuth($op['security'] ?? [], $this->config->auth);"),e.line(`$url = buildUrl($this->config->serverUrl, $op['path'], [${$}]);`),e.line("$requestHeaders = array_merge($authHeaders, $headers ?? []);"),e.block("if ($cookies !== []) {",()=>{e.line("$requestHeaders['Cookie'] = implode('; ', $cookies);")},"}"),e.line("$response = send($this->config, ['operationId' => $op['id'], 'method' => $op['method'], 'url' => $url, 'headers' => $requestHeaders, 'query' => array_merge($params, $authQuery)]);"),e.block("if ($response['status'] >= 400) {",()=>{e.line("throw apiErrorFrom($response);")},"}"),e.line("return [decodeJson($response), $response];")},"};")},H=m(E(n)??{kind:"unknown"},i,r),g=H==="mixed"?"mixed":H;e.line("/**"),e.line(` * ${d} response pages, following the pagination rule automatically.`),e.line(" *"),e.line(` * @return \\Generator<int, ${g}>`),e.line(" */"),e.line(`public function ${d}Pages(${u.signature.join(", ")}): \\Generator`),e.block("{",()=>{b(),e.block("foreach (iterPages($call, $op['pagination'], $base) as $page) {",()=>{e.line(`yield ${t??"$page"};`)},"}")},"}"),e.blank(),e.line("/**"),e.line(` * The items of every ${d} page.`),e.line(" *"),e.line(` * @return \\Generator<int, ${l}>`),e.line(" */"),e.line(`public function ${d}Items(${u.signature.join(", ")}): \\Generator`),e.block("{",()=>{b(),e.block("foreach (iterPages($call, $op['pagination'], $base) as $page) {",()=>{e.line(`$items = resolvePointer($page, ${o(c??"")});`),e.block("foreach (is_array($items) ? $items : [] as $item) {",()=>{e.line(`yield ${a??"$item"};`)},"}")},"}")},"}"),e.blank()}function Pe(e){let n=e.split(`
7
+ import{b as W}from"./HAOBCQWB.js";import{b as E,c as I,d as L,e as F,f as ne,g as te,h as re,i as ie,j as se}from"./DZLV4HEX.js";import{a as X,c as C,d as p,e as S,f as N,g as R,h as B,i as Z,j,k as D,l as O,n as ee}from"./UW4UC7ZI.js";var U=C.php,w=class extends X{constructor(){super(" ")}typeName(n){return p(n,{style:"pascal",reserved:U})}memberName(n){return p(n,{style:"camel",reserved:U})}identifier(n){return p(n,{style:"camel",reserved:U})}identifiers(n,s){return S(n,{style:"camel",reserved:U,taken:s})}string(n){return`'${n.replace(/\\/g,"\\\\").replace(/'/g,"\\'")}'`}literal(n){return n==null?"null":typeof n=="boolean"||typeof n=="number"?String(n):typeof n=="string"?this.string(n):Array.isArray(n)?`[${n.map(i=>this.literal(i)).join(", ")}]`:`[${Object.entries(n).map(([i,r])=>`${this.string(i)} => ${this.literal(r)}`).join(", ")}]`}comment(n){for(let s of O(n))this.line(s===""?"//":`// ${s}`);return this}doc(n,s,i=[]){let r=O(s);if(r.length===0&&i.length===0)return this;let t=r.length===0?n:`${n} \u2014 ${r.join(" ")}`;if(i.length===0)return this.line(`/** ${t} */`);this.line("/**"),this.line(` * ${t}`),this.line(" *");for(let a of i)this.line(` * ${a}`);return this.line(" */")}};var h=C.php,G=new w;function y(e){return G.typeName(e)}function k(e){return G.memberName(e)}function o(e){return G.string(e)}function ae(e){return p(e.name,{style:"camel",reserved:h})}function K(e){let n=e.services.flatMap(i=>i.operations),s=S(n.map(i=>i.name),{style:"camel",reserved:h});return new Map(n.map((i,r)=>[i.name,s[r]]))}function he(e){return te(e).map(s=>s.kind==="literal"?o(s.value):`$${k(s.name)}`).join(" . ")}function oe(e,n){let s=n.servers??[];if(s.length===0)return;let i=new Set;e.line("/** The declared servers; variables default to the values from the description. */"),e.line("final class Servers"),e.block("{",()=>{s.forEach((r,t)=>{let a=p(r.description??`server${t+1}`,{style:"camel",reserved:h});i.has(a)&&(a=`${a}${t+1}`),i.add(a);let c=r.variables.map(l=>`string $${k(l.name)} = ${o(l.default)}`);t>0&&e.blank(),e.line(`public static function ${a}(${c.join(", ")}): string`),e.block("{",()=>{e.line(`return ${he(r)};`)},"}")})},"}"),e.blank()}function ce(e,n){let s=re(e,n).map(i=>`[${i.map(t=>t.kind==="apiKey"?`['kind' => 'apiKey', 'scheme' => ${o(t.scheme)}, 'name' => ${o(t.name)}, 'in' => ${o(t.in)}]`:`['kind' => ${o(t.kind)}, 'scheme' => ${o(t.scheme)}]`).join(", ")}]`);if(s.length!==0)return`[${s.join(", ")}]`}function le(e){return`[${[`'style' => ${o(e.style)}`,...e.param!==void 0?[`'param' => ${o(e.param)}`]:[],...e.nextCursor!==void 0?[`'nextCursor' => ${o(e.nextCursor)}`]:[],...e.hasMore!==void 0?[`'hasMore' => ${o(e.hasMore)}`]:[],...e.nextLink!==void 0?[`'nextLink' => ${o(e.nextLink)}`]:[],...e.limitParam!==void 0?[`'limitParam' => ${o(e.limitParam)}`]:[],...e.items!==void 0?[`'items' => ${o(e.items)}`]:[]].join(", ")}]`}function ue(e,n){let s=new Set;return`[${(e.successResponseHeaders??[]).map(r=>{let t=p(r.name,{style:"camel",reserved:h}),a=2;for(;s.has(t);)t=`${p(r.name,{style:"camel",reserved:h})}_${a++}`;s.add(t);let c=ee(r.schema,n);return`[${o(r.name)}, ${o(t)}, ${o(c)}]`}).join(", ")}]`}function _(e,n){let s=n.schemas.find(t=>t.name===e);if(s===void 0)return"other";let i=s.schema,r=D(i);return r!==void 0&&(r.scalar==="string"||r.scalar==="integer")?"enum":(i.kind==="object"||i.kind==="intersection")&&R(i,n)!==void 0?"class":"other"}function m(e,n,s="string"){if(Z(e)){let i=m(j(e),n,s);return A(i)}switch(e.kind){case"scalar":return s==="Date"&&e.scalar==="string"&&J(e)?"\\DateTimeImmutable":{string:"string",integer:"int",number:"float",boolean:"bool"}[e.scalar];case"array":case"record":return"array";case"ref":{let i=_(e.name,n);if(i==="class"||i==="enum")return y(e.name);let r=N(e,n);return r===void 0?"mixed":m(r,n,s)}case"enum":return{string:"string",integer:"int",number:"float",boolean:"bool"}[e.scalar];case"literal":return typeof e.value=="string"?"string":typeof e.value=="boolean"?"bool":"float";case"omit":return y(e.base);case"union":return ye(e.members,n,s);case"null":case"object":case"intersection":case"unknown":return"mixed"}}function J(e){let n=e.metadata?.format;return n==="date"||n==="date-time"}function A(e){return e==="mixed"||e.startsWith("?")||e.endsWith("|null")?e:e.includes("|")?`${e}|null`:`?${e}`}function ye(e,n,s){let i=[];for(let r of e){if(r.kind==="null")continue;let t=m(r,n,s);if(t==="mixed")return"mixed";let a=t.startsWith("?")?t.slice(1):t;i.includes(a)||i.push(a),t.startsWith("?")&&!i.includes("null")&&i.push("null")}return i.length===0?"mixed":i.join("|")}function V(e,n,s){if(e===void 0)return;let i=j(e);if(i.kind==="ref"){let t=N(i,n);return _(i.name,n)==="other"?V(t,n,s):void 0}if(i.kind!=="array")return;let r=m(i.items,n,s);return r==="mixed"?void 0:r}function $e(e,n){let s=n.schemas.find(i=>i.name===e);return s!==void 0&&B(s.schema,n)!==void 0}function q(e,n,s,i){let r=j(e);if(i==="Date"&&r.kind==="scalar"&&r.scalar==="string"&&J(r))return`new \\DateTimeImmutable(${n})`;if(r.kind==="omit")return q({kind:"ref",name:r.base},n,s,i);if(r.kind==="ref"){let t=_(r.name,s);if(t==="class")return`${y(r.name)}::fromArray(${n})`;if(t==="enum")return`${y(r.name)}::from(${n})`;if($e(r.name,s))return`unmarshal${y(r.name)}(${n})`;let a=N(r,s);return a===void 0?void 0:q(a,n,s,i)}if(r.kind==="array"){let t=q(r.items,"$item",s,i);return t===void 0?void 0:`array_map(static fn ($item) => ${t}, ${n})`}if(r.kind==="record"){let t=q(r.value,"$item",s,i);return t===void 0?void 0:`array_map(static fn ($item) => ${t}, ${n})`}}function x(e,n,s,i="string"){let r=j(e);if(i==="Date"&&r.kind==="scalar"&&r.scalar==="string"){if(r.metadata?.format==="date")return`${n}->format('Y-m-d')`;if(r.metadata?.format==="date-time")return`${n}->format(\\DateTimeInterface::ATOM)`}if(r.kind==="omit")return x({kind:"ref",name:r.base},n,s,i);if(r.kind==="ref"){let t=_(r.name,s);if(t==="class")return`${n}->toArray()`;if(t==="enum")return`${n}->value`;if($e(r.name,s))return`is_object(${n}) ? ${n}->toArray() : ${n}`;let a=N(r,s);return a===void 0?void 0:x(a,n,s,i)}if(r.kind==="array"||r.kind==="record"){let t=r.kind==="array"?r.items:r.value,a=x(t,"$item",s,i);return a===void 0?void 0:`array_map(static fn ($item) => ${a}, ${n})`}}function ge(e,n,s,i,r,t){let a=[...s.filter(c=>c.required),...s.filter(c=>!c.required)];e.doc(y(n),t),e.line(`final class ${y(n)}`),e.block("{",()=>{e.block("public function __construct(",()=>{for(let c of a){let l=m(c.schema,i,r);if(c.required)e.line(`public ${l} $${k(c.name)},`);else{let u=A(l);e.line(`public ${u} $${k(c.name)} = null,`)}}},") {"),e.line("}"),e.blank(),e.line("public static function fromArray(array $data): self"),e.block("{",()=>{e.block("return new self(",()=>{for(let c of a){let l=`$data[${o(c.name)}]`,u=q(c.schema,l,i,r),d=k(c.name);c.required?e.line(`${d}: ${u??l},`):u===void 0?e.line(`${d}: ${l} ?? null,`):e.line(`${d}: isset(${l}) ? ${u} : null,`)}},");")},"}"),e.blank(),e.line("public function toArray(): array"),e.block("{",()=>{e.line("$data = [];");for(let c of a){let l=`$this->${k(c.name)}`,u=x(c.schema,l,i,r)??l;c.required?e.line(`$data[${o(c.name)}] = ${u};`):e.block(`if (${l} !== null) {`,()=>{e.line(`$data[${o(c.name)}] = ${u};`)},"}")}e.line("return $data;")},"}")},"}"),e.blank()}function z(e,n="string"){let s=new w;for(let{name:i,schema:r}of e.schemas){let t=D(r);if(t!==void 0&&(t.scalar==="string"||t.scalar==="integer")){let c=t.scalar==="string"?"string":"int";s.doc(y(i),r.description),s.line(`enum ${y(i)}: ${c}`),s.block("{",()=>{let l=S(t.values.map(u=>String(u)),{style:"pascal",reserved:h});t.values.forEach((u,d)=>{let b=typeof u=="string"?o(u):String(u);s.line(`case ${l[d]} = ${b};`)})},"}"),s.blank();continue}if(r.kind==="object"||r.kind==="intersection"){let c=R(r,e);if(c!==void 0){ge(s,i,c.properties,e,n,c.description??r.description);continue}}let a=B(r,e);if(a!==void 0){let c=y(i),l=a.cases.map(u=>`${u.value} -> ${y(u.schemaName)}`).join(", ");s.line(`/** ${c} is a discriminated union (${o(a.property)}): ${l}. */`),s.line(`function unmarshal${c}(array $data): mixed`),s.block("{",()=>{s.block(`return match ($data[${o(a.property)}] ?? null) {`,()=>{for(let u of a.cases)s.line(`${o(u.value)} => ${y(u.schemaName)}::fromArray($data),`);s.line("default => $data,")},"};")},"}"),s.blank();continue}}return s.toString()}var de=new Set(["post","put","patch"]),be=["body","headers","idempotencyKey"];function fe(e){return F(e)||e.requestBody!==void 0&&ne(e.requestBody.contentType)}function Q(e,n,s,i){let r=S([...e.pathParams,...e.queryParams].map(l=>l.name),{style:"camel",reserved:h,taken:be}),t=e.pathParams.map((l,u)=>({php:r[u],wire:l.name,type:m(l.schema,n,i)})),a=e.queryParams.map((l,u)=>{let d=r[e.pathParams.length+u];return{php:d,wire:l.name,type:m(l.schema,n,i),value:x(l.schema,`$${d}`,n,i)??`$${d}`}}),c=[...t.map(({php:l,type:u})=>`${u} $${l}`),...s&&e.requestBody?[`${fe(e)?"mixed":L(e)?"array":m(e.requestBody.schema,n,i)} $body`]:[],...a.map(({php:l,type:u})=>`${A(u)} $${l} = null`),"?array $headers = null",...s&&de.has(e.method.toLowerCase())?["?string $idempotencyKey = null"]:[]];return{pathArgs:t,queryArgs:a,signature:c}}function ke(e,n,s){e.line(`$op = self::OPERATIONS[${o(n.specName??n.name)}];`),e.line("[$authHeaders, $query, $cookies] = resolveAuth($op['security'] ?? [], $this->config->auth);");for(let{php:r,wire:t,value:a}of s.queryArgs)e.block(`if ($${r} !== null) {`,()=>{e.line(`$query[${o(t)}] = ${a};`)},"}");let i=s.pathArgs.map(({php:r,wire:t})=>`${o(t)} => $${r}`).join(", ");e.line(`$url = buildUrl($this->config->serverUrl, $op['path'], [${i}]);`),e.line("$requestHeaders = array_merge($authHeaders, $headers ?? []);"),e.block("if ($cookies !== []) {",()=>{e.line("$requestHeaders['Cookie'] = implode('; ', $cookies);")},"}")}function Y(e,n,s,i,r,t=!1){let a=Q(n,i,!0,r),c=I(n),l=E(n),u=c===void 0&&l===void 0&&n.successResponses.some(g=>g.contentType!==""),d=t?"Envelope":c!==void 0?"\\Generator":l!==void 0?m(l,i,r):u?"string":"void",b=t?`${s}WithHeaders`:s,H=t?void 0:V(l,i,r);e.doc(b,t?`Like ${s}(), returning an Envelope with the declared response headers.`:n.summary??`${n.method.toUpperCase()} ${n.path}`,H===void 0?[]:[`@return ${H}[]`]),e.line(`public function ${b}(${a.signature.join(", ")}): ${d}`),e.block("{",()=>{if(ke(e,n,a),c!==void 0){let f=c.schema!==void 0&&c.schema.kind!=="unknown";e.line("$url = appendQuery($url, $query);"),e.block("$open = function (array $extraHeaders) use ($url, $requestHeaders): \\CurlHandle {",()=>{e.line("$handle = curl_init($url);"),e.line("$lines = [];"),e.block("foreach (array_merge($requestHeaders, $extraHeaders) as $name => $value) {",()=>{e.line("$lines[] = $name . ': ' . $value;")},"}"),e.line("curl_setopt($handle, CURLOPT_HTTPHEADER, $lines);"),e.line("return $handle;")},"};"),e.line(`yield from iterSse($open, ${f?"true":"false"});`);return}let g=["'operationId' => $op['id']","'method' => $op['method']","'url' => $url","'headers' => $requestHeaders","'query' => $query"];if(F(n))e.line("[$contentType, $encoded] = multipartBody($body);"),g.push("'body' => $encoded","'contentType' => $contentType");else if(n.requestBody&&fe(n))g.push("'body' => binaryBody($body)",`'contentType' => ${o(n.requestBody.contentType)}`);else if(n.requestBody&&L(n))e.line("[$contentType, $encoded] = toMultipart($body);"),g.push("'body' => $encoded","'contentType' => $contentType");else if(n.requestBody){let f=x(n.requestBody.schema,"$body",i,r)??"$body";e.line(`$payload = json_encode(${f});`),g.push("'body' => $payload",`'contentType' => ${o(n.requestBody.contentType)}`)}de.has(n.method.toLowerCase())&&n.requestBody&&g.push("'idempotencyKey' => $idempotencyKey"),e.line(`$response = send($this->config, [${g.join(", ")}]);`),e.block("if ($response['status'] >= 400) {",()=>{e.line("throw apiErrorFrom($response);")},"}");let $=u?"$response['body']":(l===void 0?void 0:q(l,"decodeJson($response)",i,r))??"decodeJson($response)";if(t){e.line(`$data = ${$};`),e.line(`return new Envelope(data: $data, headers: readEnvelopeHeaders($response, ${ue(n,i)}), status: $response['status']);`);return}if(u){e.line("return $response['body'];");return}if(d==="void"){e.line("decodeJson($response);");return}e.line(`return ${$};`)},"}"),e.blank()}function me(e,n,s,i,r,t,a,c,l){let u=Q(n,i,!1,r),d=s,b=()=>{e.line(`$op = self::OPERATIONS[${o(n.specName??n.name)}];`),e.line("$base = [];");for(let{php:f,wire:P,value:v}of u.queryArgs)e.block(`if ($${f} !== null) {`,()=>{e.line(`$base[${o(P)}] = ${v};`)},"}");let $=u.pathArgs.map(({php:f,wire:P})=>`${o(P)} => $${f}`).join(", ");e.block("$call = function (array $params) use ($op, $headers): array {",()=>{e.line("[$authHeaders, $authQuery, $cookies] = resolveAuth($op['security'] ?? [], $this->config->auth);"),e.line(`$url = buildUrl($this->config->serverUrl, $op['path'], [${$}]);`),e.line("$requestHeaders = array_merge($authHeaders, $headers ?? []);"),e.block("if ($cookies !== []) {",()=>{e.line("$requestHeaders['Cookie'] = implode('; ', $cookies);")},"}"),e.line("$response = send($this->config, ['operationId' => $op['id'], 'method' => $op['method'], 'url' => $url, 'headers' => $requestHeaders, 'query' => array_merge($params, $authQuery)]);"),e.block("if ($response['status'] >= 400) {",()=>{e.line("throw apiErrorFrom($response);")},"}"),e.line("return [decodeJson($response), $response];")},"};")},H=m(E(n)??{kind:"unknown"},i,r),g=H==="mixed"?"mixed":H;e.line("/**"),e.line(` * ${d} response pages, following the pagination rule automatically.`),e.line(" *"),e.line(` * @return \\Generator<int, ${g}>`),e.line(" */"),e.line(`public function ${d}Pages(${u.signature.join(", ")}): \\Generator`),e.block("{",()=>{b(),e.block("foreach (iterPages($call, $op['pagination'], $base) as $page) {",()=>{e.line(`yield ${t??"$page"};`)},"}")},"}"),e.blank(),e.line("/**"),e.line(` * The items of every ${d} page.`),e.line(" *"),e.line(` * @return \\Generator<int, ${l}>`),e.line(" */"),e.line(`public function ${d}Items(${u.signature.join(", ")}): \\Generator`),e.block("{",()=>{b(),e.block("foreach (iterPages($call, $op['pagination'], $base) as $page) {",()=>{e.line(`$items = resolvePointer($page, ${o(c??"")});`),e.block("foreach (is_array($items) ? $items : [] as $item) {",()=>{e.line(`yield ${a??"$item"};`)},"}")},"}")},"}"),e.blank()}function Pe(e){let n=e.split(`
8
8
  `),s=0;for(let i=0;i<n.length;i++)if(n[i].trim().startsWith("namespace ")){s=i+1;break}return n.slice(s).join(`
9
9
  `).trim()}var dn=({model:e,output:n,banner:s,emit:i,pagination:r})=>{let t=new w,a=i.dateType??"string",c=p(e.title,{style:"pascal",reserved:h});t.line("<?php"),t.blank(),t.line(`// Code generated by @redocly/client-generator (php) from ${o(e.title)} ${e.version}. DO NOT EDIT.`),t.line("// Regenerate with `redocly generate-client`. PHP >= 8.1, curl extension \u2014 zero Composer dependencies."),t.blank(),t.line("declare(strict_types=1);"),t.blank(),t.line(`namespace ${c};`),t.blank(),t.line(z(e,a)),oe(t,e),i.runtime==="module"?(t.line("// \u2500\u2500\u2500 Runtime (a real file beside this one, written by the same run) \u2500\u2500\u2500"),t.line("require_once __DIR__ . '/runtime.php';"),t.blank()):(t.line("// \u2500\u2500\u2500 Embedded runtime (@redocly/client-generator php runtime) \u2500\u2500\u2500"),t.line(Pe(W)),t.blank());let l=e.services.flatMap($=>$.operations),u=K(e),d=new Map;for(let $ of l){let f=r?.get($.name)?.spec;f!==void 0&&d.set($.name,f)}t.doc("Client",`Client for ${e.title} (${e.version}).`),t.line("class Client"),t.block("{",()=>{t.block("public const OPERATIONS = [",()=>{for(let $ of l){let f=$.specName??$.name,P=ce($,e),v=d.get($.name),M=[`'id' => ${o(f)}`,`'method' => ${o($.method.toUpperCase())}`,`'path' => ${o($.path)}`,...P!==void 0?[`'security' => ${P}`]:[],...v!==void 0?[`'pagination' => ${le(v)}`]:[]];t.line(`${o(f)} => [${M.join(", ")}],`)}},"];"),t.blank(),t.line("public function __construct(private Config $config)"),t.block("{",()=>{t.block("if ($this->config->serverUrl === '') {",()=>{t.line(`$this->config->serverUrl = ${o(i.serverUrl??e.serverUrl??"")};`)},"}")},"}"),t.blank();for(let $ of l){let f=u.get($.name);Y(t,$,f,e,a),I($)===void 0&&($.successResponseHeaders?.length??0)>0&&Y(t,$,f,e,a,!0);let P=d.get($.name);if(P===void 0)continue;let v=E($),M=v===void 0?void 0:q(v,"$page",e,a),T=ie(v,P.items,e),pe=T===void 0?void 0:q(T,"$item",e,a);me(t,$,f,e,a,M,pe,P.items,T===void 0?"mixed":m(T,e,a))}},"}");let b={path:n.path.replace(/\.[^.\\/]+$/,".php"),content:t.toString()};if(i.runtime!=="module")return[b];let H=s.map($=>`// ${$}`).join(`
10
10
  `),g=W.replace(/^namespace .*$/m,`namespace ${c};`).replace(/^<\?php\n/,`<?php
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a as C,b as Z,c as ee,d as Ne,e as te,f as ne,g as Se,h as oe}from"./A22GELRX.js";import{a as Fe,b as De}from"./64G5RPLP.js";import{f as de,g as L,h as ue,i as Ce,l as W,m as h,n as Oe}from"./Q4UGLPO2.js";import{$ as le,O as pe,S as ce,T as fe,aa as ye,b as me,c as j,ca as u,d as O,h as ae,ia as N,ka as he,o as A,oa as S,r as d,t as v,va as ge,wa as Ae}from"./ACMV5RZA.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";import*as U from"node:fs";import*as Ge from"node:path";import{performance as Xe}from"perf_hooks";import*as G from"node:path";import*as R from"node:path";function F(e,t,o){let n=R.resolve(e),r=R.resolve(t);if(r!==n&&!r.startsWith(n+R.sep))throw new S(`Refusing to write "${o}" outside the output directory.`)}import*as we from"node:path";function D(e,t,o,n,r){let m=o?`.${o}`:"",a=we.join(e,t),i=a+m,p=n.get(i.toLowerCase());for(let s=2;n.has(i.toLowerCase());s++)i=`${a}-${s}${m}`;return r&&p&&p!==t&&p.toLowerCase()===t.toLowerCase()&&r.conflicts.push({name:t,collidingName:p,filename:i,pointer:r.pointer}),n.set(i.toLowerCase(),t),i}function $(e,t,o,n,r,m,a){let i={},p=new Map;for(let[s,c]of Object.entries(e||{})){if(d(c))continue;let f=D(n,L(s,r),m,p,{conflicts:a,pointer:`${t}/${v(s)}`});F(o,f,s),i[s]=f}return i}import*as Pe from"node:path";function g(e,t,o={}){Se(e,r=>{if(d(r)&&oe(r.$ref))n(r,"$ref");else if(j(r.discriminator)&&j(r.discriminator.mapping)){let{mapping:m}=r.discriminator;for(let a of Object.keys(m)){let i=m[a];typeof i=="string"&&oe(i)&&n(r.discriminator.mapping,a)}}});function n(r,m){let a=r[m].split("/"),i=a.pop(),p=a[2],s=o[p];if(!s||!s[i])return;let c=A(Pe.relative(t,s[i].filename));c.startsWith(".")||(c="./"+c),r[m]=c}}function Y(e,t,o="warn"){if(o==="off"||e.length===0)return;let n=e.map(({name:r,collidingName:m,filename:a,pointer:i})=>({ruleId:"split",severity:o,message:`${r} and ${m} would share one file on a case-insensitive file system`+(o==="error"?".":`, saving ${r} to ${a}.`),location:[{source:t,pointer:i,reportOnKey:!0}],suggest:[]}));if(Ae(n,{totals:ge(n),command:"split"}),o==="error")throw new S("\u274C Errors encountered while splitting: files not created.")}import*as ie from"node:path";var Ee=["schemas","messages","securitySchemes","parameters","correlationIds","messageTraits","operationTraits","serverBindings","channelBindings","operationBindings","messageBindings"];var xe=["schemas","messages","securitySchemes","servers","serverVariables","parameters","replies","replyAddresses","correlationIds","messageTraits","operationTraits","tags","externalDocs","serverBindings","channelBindings","operationBindings","messageBindings"];function H(e,t){return(t==="async2"?Ee:xe).filter(n=>n in e)}function ve({asyncapi:e,asyncapiDir:t,componentsFiles:o,ext:n,specVersion:r,conflicts:m}){let a=e.components;if(!a)return;let i=ie.join(t,C),p=H(a,r);for(let s of p){let c=ie.join(i,s),f=new Map;for(let l of Object.keys(a[s]||{})){let y=D(c,l,n,f,{conflicts:m,pointer:`#/components/${s}/${v(l)}`});F(t,y,l),o[s]=o[s]||{},o[s][l]={filename:y}}}}import*as be from"node:fs";import*as V from"node:path";import*as P from"node:fs";import*as $e from"node:path";function E(e,t,o){if(!P.existsSync(e)||!P.statSync(e).isDirectory())return;let n=P.readdirSync(e);for(let r of n){let m=$e.join(e,r);P.statSync(m).isDirectory()?E(m,t,o):t(m,e,o)}}function b(e,t,o){if(!ce(e))return;let n=W(e);g(n,t,o),h(n,e)}function Te({channels:e,channelsFiles:t,asyncapiDir:o,outDir:n,componentsFiles:r}){if(e){be.mkdirSync(n,{recursive:!0});for(let m of Object.keys(e)){let a=e[m];if(d(a))continue;let i=t[m];g(a,V.dirname(i),r),h(a,i),e[m]={$ref:A(V.relative(o,i))},E(n,b,r)}}}import*as Be from"node:fs";import*as k from"node:path";import*as ke from"node:fs";function K(e){return e!=="securitySchemes"}function z(e,t){K(t)&&ke.mkdirSync(e,{recursive:!0})}import*as je from"node:fs";function q(e,t){return je.existsSync(e)&&!me(W(e),t)}import*as Re from"node:path";function T(e,t,o){if(!(!j(e)&&!Array.isArray(e))){if(Array.isArray(e)){for(let n of e)T(n,t,o);return}for(let n of Object.keys(e)){let r=e[n];if(n==="$ref"&&typeof r=="string"&&r.startsWith("#/channels/")){let m=r.slice(11),a=m.indexOf("/"),i=a===-1?m:m.slice(0,a),p=a===-1?"":m.slice(a),s=o[i];if(s){let c=A(Re.relative(t,s));e[n]=p?`${c}#${p}`:c}}else T(r,t,o)}}}function _e(e,t){let o=e.components;o&&(O(o[t])&&delete o[t],O(o)&&delete e.components)}function Ie({asyncapi:e,asyncapiDir:t,componentsFiles:o,channelsFiles:n,specVersion:r}){let m=e.components;if(m){let p=function(s){let c=k.join(a,s);z(c,s);for(let f of Object.keys(m?.[s]||{})){let{filename:l}=o[s][f],y=m?.[s]?.[f];g(y,k.dirname(l),o),T(y,k.dirname(l),n),q(l,y)?N.warn(`warning: conflict for ${f} - file already exists with different content: ${u(l)} ... Skip.
7
+ import{a as C,b as Z,c as ee,d as Ne,e as te,f as ne,g as Se,h as oe}from"./HNEOPZAP.js";import{a as Fe,b as De}from"./64G5RPLP.js";import{f as de,g as L,h as ue,i as Ce,l as W,m as h,n as Oe}from"./JUZHXP62.js";import{$ as le,O as pe,S as ce,T as fe,aa as ye,b as me,c as j,ca as u,d as O,h as ae,ia as N,ka as he,o as A,oa as S,r as d,t as v,va as ge,wa as Ae}from"./VAPFU7OM.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";import*as U from"node:fs";import*as Ge from"node:path";import{performance as Xe}from"perf_hooks";import*as G from"node:path";import*as R from"node:path";function F(e,t,o){let n=R.resolve(e),r=R.resolve(t);if(r!==n&&!r.startsWith(n+R.sep))throw new S(`Refusing to write "${o}" outside the output directory.`)}import*as we from"node:path";function D(e,t,o,n,r){let m=o?`.${o}`:"",a=we.join(e,t),i=a+m,p=n.get(i.toLowerCase());for(let s=2;n.has(i.toLowerCase());s++)i=`${a}-${s}${m}`;return r&&p&&p!==t&&p.toLowerCase()===t.toLowerCase()&&r.conflicts.push({name:t,collidingName:p,filename:i,pointer:r.pointer}),n.set(i.toLowerCase(),t),i}function $(e,t,o,n,r,m,a){let i={},p=new Map;for(let[s,c]of Object.entries(e||{})){if(d(c))continue;let f=D(n,L(s,r),m,p,{conflicts:a,pointer:`${t}/${v(s)}`});F(o,f,s),i[s]=f}return i}import*as Pe from"node:path";function g(e,t,o={}){Se(e,r=>{if(d(r)&&oe(r.$ref))n(r,"$ref");else if(j(r.discriminator)&&j(r.discriminator.mapping)){let{mapping:m}=r.discriminator;for(let a of Object.keys(m)){let i=m[a];typeof i=="string"&&oe(i)&&n(r.discriminator.mapping,a)}}});function n(r,m){let a=r[m].split("/"),i=a.pop(),p=a[2],s=o[p];if(!s||!s[i])return;let c=A(Pe.relative(t,s[i].filename));c.startsWith(".")||(c="./"+c),r[m]=c}}function Y(e,t,o="warn"){if(o==="off"||e.length===0)return;let n=e.map(({name:r,collidingName:m,filename:a,pointer:i})=>({ruleId:"split",severity:o,message:`${r} and ${m} would share one file on a case-insensitive file system`+(o==="error"?".":`, saving ${r} to ${a}.`),location:[{source:t,pointer:i,reportOnKey:!0}],suggest:[]}));if(Ae(n,{totals:ge(n),command:"split"}),o==="error")throw new S("\u274C Errors encountered while splitting: files not created.")}import*as ie from"node:path";var Ee=["schemas","messages","securitySchemes","parameters","correlationIds","messageTraits","operationTraits","serverBindings","channelBindings","operationBindings","messageBindings"];var xe=["schemas","messages","securitySchemes","servers","serverVariables","parameters","replies","replyAddresses","correlationIds","messageTraits","operationTraits","tags","externalDocs","serverBindings","channelBindings","operationBindings","messageBindings"];function H(e,t){return(t==="async2"?Ee:xe).filter(n=>n in e)}function ve({asyncapi:e,asyncapiDir:t,componentsFiles:o,ext:n,specVersion:r,conflicts:m}){let a=e.components;if(!a)return;let i=ie.join(t,C),p=H(a,r);for(let s of p){let c=ie.join(i,s),f=new Map;for(let l of Object.keys(a[s]||{})){let y=D(c,l,n,f,{conflicts:m,pointer:`#/components/${s}/${v(l)}`});F(t,y,l),o[s]=o[s]||{},o[s][l]={filename:y}}}}import*as be from"node:fs";import*as V from"node:path";import*as P from"node:fs";import*as $e from"node:path";function E(e,t,o){if(!P.existsSync(e)||!P.statSync(e).isDirectory())return;let n=P.readdirSync(e);for(let r of n){let m=$e.join(e,r);P.statSync(m).isDirectory()?E(m,t,o):t(m,e,o)}}function b(e,t,o){if(!ce(e))return;let n=W(e);g(n,t,o),h(n,e)}function Te({channels:e,channelsFiles:t,asyncapiDir:o,outDir:n,componentsFiles:r}){if(e){be.mkdirSync(n,{recursive:!0});for(let m of Object.keys(e)){let a=e[m];if(d(a))continue;let i=t[m];g(a,V.dirname(i),r),h(a,i),e[m]={$ref:A(V.relative(o,i))},E(n,b,r)}}}import*as Be from"node:fs";import*as k from"node:path";import*as ke from"node:fs";function K(e){return e!=="securitySchemes"}function z(e,t){K(t)&&ke.mkdirSync(e,{recursive:!0})}import*as je from"node:fs";function q(e,t){return je.existsSync(e)&&!me(W(e),t)}import*as Re from"node:path";function T(e,t,o){if(!(!j(e)&&!Array.isArray(e))){if(Array.isArray(e)){for(let n of e)T(n,t,o);return}for(let n of Object.keys(e)){let r=e[n];if(n==="$ref"&&typeof r=="string"&&r.startsWith("#/channels/")){let m=r.slice(11),a=m.indexOf("/"),i=a===-1?m:m.slice(0,a),p=a===-1?"":m.slice(a),s=o[i];if(s){let c=A(Re.relative(t,s));e[n]=p?`${c}#${p}`:c}}else T(r,t,o)}}}function _e(e,t){let o=e.components;o&&(O(o[t])&&delete o[t],O(o)&&delete e.components)}function Ie({asyncapi:e,asyncapiDir:t,componentsFiles:o,channelsFiles:n,specVersion:r}){let m=e.components;if(m){let p=function(s){let c=k.join(a,s);z(c,s);for(let f of Object.keys(m?.[s]||{})){let{filename:l}=o[s][f],y=m?.[s]?.[f];g(y,k.dirname(l),o),T(y,k.dirname(l),n),q(l,y)?N.warn(`warning: conflict for ${f} - file already exists with different content: ${u(l)} ... Skip.
8
8
  `):h(y,l),delete m?.[s]?.[f]}_e(e,s)},a=k.join(t,C);Be.mkdirSync(a,{recursive:!0}),H(m,r).forEach(p)}}import*as Me from"node:fs";import*as _ from"node:path";function Le({operations:e,operationFiles:t,asyncapiDir:o,outDir:n,componentsFiles:r,channelsFiles:m}){if(e){Me.mkdirSync(n,{recursive:!0});for(let a of Object.keys(e)){let i=e[a];if(d(i))continue;let p=t[a];g(i,_.dirname(p),r),T(i,_.dirname(p),m),h(i,p),e[a]={$ref:A(_.relative(o,p))},E(n,b,r)}}}function We({asyncapi:e,asyncapiDir:t,pathSeparator:o,ext:n,specVersion:r,source:m,fileNameConflictsSeverity:a}){let i=G.join(t,te),p=G.join(t,ne),s=r==="async3"?e.operations:void 0,c={},f=[];ve({asyncapi:e,asyncapiDir:t,componentsFiles:c,ext:n,specVersion:r,conflicts:f});let l=$(e.channels,`#/${te}`,t,i,o,n,f),y=$(s,`#/${ne}`,t,p,o,n,f);Y(f,m,a),Te({channels:e.channels,channelsFiles:l,asyncapiDir:t,outDir:i,componentsFiles:c}),Ie({asyncapi:e,asyncapiDir:t,componentsFiles:c,channelsFiles:l,specVersion:r}),Le({operations:s,operationFiles:y,asyncapiDir:t,outDir:p,componentsFiles:c,channelsFiles:l}),g(e,t,c),h(e,G.join(t,`asyncapi.${n}`))}import*as Q from"node:path";import*as se from"node:path";function X(e){return e?De.filter(t=>K(t)&&Object.keys(e).includes(t)):[]}function Ye(e,t,o,n,r){let{components:m}=e;if(!m)return;let a=se.join(t,C);for(let i of X(m)){let p=se.join(a,i),s=new Map;for(let c of Object.keys(m[i]||{})){let f=D(p,c,n,s,{conflicts:r,pointer:`#/components/${i}/${v(c)}`});F(t,f,c);let l=[];i==="schemas"&&(l=(m[i]?.[c]?.allOf||[]).map(({$ref:y})=>y).filter(ae)),o[i]=o[i]||{},o[i][c]={inherits:l,filename:f}}}}import*as Ke from"node:fs";import*as B from"node:path";import*as J from"node:path";function He(e,t,o,n){if(!e.discriminator)return;let r=`#/${C}/schemas/${t}`,m={};for(let[s,{inherits:c,filename:f}]of Object.entries(n))if(c.indexOf(r)>-1){let l=A(J.relative(J.dirname(o),f));m[s]=l.startsWith(".")?l:"./"+l}if(O(m))return;let a=e.properties[e.discriminator.propertyName],i=a&&a.enum,p=e.discriminator.mapping=e.discriminator.mapping||{};for(let s of Object.keys(m))i&&!i.includes(s)||(p[s]&&p[s]!==m[s]&&N.warn(`warning: explicit mapping overlaps with local mapping entry ${le(s)} at ${u(o)}. Please check it.`),p[s]=m[s])}function Ve(e,t){e.components&&O(e.components[t])&&delete e.components[t],O(e.components)&&delete e.components}function ze(e,t,o){let{components:n}=e;if(n){let a=function(i){let p=B.join(r,i);z(p,i);for(let s of Object.keys(n?.[i]||{})){let{filename:c}=o[i][s],f=n?.[i]?.[s];g(f,B.dirname(c),o),He(f,s,c,o.schemas||{}),q(c,f)?N.warn(`warning: conflict for ${s} - file already exists with different content: ${u(c)} ... Skip.
9
9
  `):h(f,c),delete e.components?.[i]?.[s]}Ve(e,i)},r=B.join(t,C);Ke.mkdirSync(r,{recursive:!0}),X(n).forEach(a)}}import*as I from"node:fs";import*as x from"node:path";function re(e,t,o,n,r,m,a=""){if(!e)return;I.mkdirSync(n,{recursive:!0});let i=new Map;for(let p of Object.keys(e)){let s=e[p];if(d(s))continue;let c=t[p];for(let f of Fe){let l=s[f],y=l?.["x-code-samples"]||l?.["x-codeSamples"];if(!(!y||!Array.isArray(y)))for(let w of y){if(w.source&&w.source.$ref)continue;let M=D(x.join(o,"code_samples",ue(w.lang),a+L(p,m)),f,Ce(w.lang).slice(1),i);F(o,M,w.lang),I.mkdirSync(x.dirname(M),{recursive:!0}),I.writeFileSync(M,w.source),w.source={$ref:A(x.relative(n,M))}}}h(s,c),e[p]={$ref:A(x.relative(o,c))},E(n,b,r)}}function qe(e,t,o,n,r,m){let a=Q.join(t,Z),i=Q.join(t,ee),p=e.webhooks||e["x-webhooks"],s="webhooks"in e&&e.webhooks?`#/${ee}`:`#/${Ne}`,c={},f=[];Ye(e,t,c,n,f);let l=$(e.paths,`#/${Z}`,t,a,o,n,f),y=$(p,s,t,i,o,n,f);Y(f,r,m),ze(e,t,c),re(e.paths,l,t,a,c,o),re(p,y,t,i,c,o,"webhook_"),g(e,t,c),h(e,Q.join(t,`openapi.${n}`))}async function ro({argv:e,collectSpecData:t}){let o=Xe.now(),{api:n,outDir:r,separator:m}=e,a=Oe(n);if(!U.existsSync(n))throw new S(`File ${u(n)} does not exist.`);let i=new fe(Ge.resolve(n),U.readFileSync(n,"utf-8")),p=pe(i.body,{filename:n});t?.({parsed:p});let s=he(p);switch(s){case"async2":case"async3":We({asyncapi:p,asyncapiDir:r,pathSeparator:m,ext:a,specVersion:s,source:i,fileNameConflictsSeverity:e["file-name-conflicts-severity"]});break;case"oas3_0":case"oas3_1":case"oas3_2":qe(p,r,m,a,i,e["file-name-conflicts-severity"]);break;case"oas2":throw new S("OpenAPI 2 is not supported by this command.");default:throw new S("File does not conform to the OpenAPI or AsyncAPI Specification. Version is not specified.")}N.info(`\u{1FA93} Document: ${u(n)} ${ye("is successfully split")}
10
10
  and all related files are saved to the directory: ${u(r)}
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{f as k}from"./BC3XCWQE.js";import{a as B}from"./7RQW6KPZ.js";import{a as x,e as P,f as v,i as H,j as C,k as p,l as M}from"./LD5MEXEL.js";import{n as N}from"./UW4UC7ZI.js";function y(e){let t=new Map(e.pathParams.map(r=>[r.name,r])),n=[];for(let r of e.path.matchAll(/\{([^{}]+)\}/g)){let s=t.get(r[1]);s!==void 0&&n.push(s)}return n}function I(e){let t=y(e),n=e.queryParams.length>0,r=!!e.requestBody,s=e.headerParams.length>0,o=e.cookieParams.length>0;return{hasQuery:n,hasBody:r,hasHeaders:s,hasCookies:o,hasInputs:t.length>0||n||r||s||o,varsRequired:t.length>0||e.queryParams.some(a=>a.required)||(e.requestBody?.required??!1)||e.headerParams.some(a=>a.required)||e.cookieParams.some(a=>a.required),variablesTypeName:`${p(e.name)}Variables`}}var E=" ";function $(e,t,n){let r=C(e,t);return r===void 0?[]:[`${n}/**`,...H(r).split(`
7
+ import{f as k}from"./DZLV4HEX.js";import{a as B}from"./AC25ILS5.js";import{a as x,e as P,f as v,i as H,j as C,k as p,l as M}from"./LD5MEXEL.js";import{n as N}from"./UW4UC7ZI.js";function y(e){let t=new Map(e.pathParams.map(r=>[r.name,r])),n=[];for(let r of e.path.matchAll(/\{([^{}]+)\}/g)){let s=t.get(r[1]);s!==void 0&&n.push(s)}return n}function I(e){let t=y(e),n=e.queryParams.length>0,r=!!e.requestBody,s=e.headerParams.length>0,o=e.cookieParams.length>0;return{hasQuery:n,hasBody:r,hasHeaders:s,hasCookies:o,hasInputs:t.length>0||n||r||s||o,varsRequired:t.length>0||e.queryParams.some(a=>a.required)||(e.requestBody?.required??!1)||e.headerParams.some(a=>a.required)||e.cookieParams.some(a=>a.required),variablesTypeName:`${p(e.name)}Variables`}}var E=" ";function $(e,t,n){let r=C(e,t);return r===void 0?[]:[`${n}/**`,...H(r).split(`
8
8
  `).map(s=>`${n} * ${s}`.replace(/ +$/,"")),`${n} */`]}function O(e){return typeof e=="string"?JSON.stringify(e):String(e)}function F(e,t,n){switch(e){case"string":return t?.format==="binary"?"Blob":n==="Date"&&(t?.format==="date-time"||t?.format==="date")?"Date":"string";case"number":case"integer":return"number";case"boolean":return"boolean"}}function j(e){return e.kind==="union"||e.kind==="intersection"||e.kind==="enum"&&e.values.length>1}function c(e,t="string",n=""){switch(e.kind){case"scalar":return F(e.scalar,e.metadata,t);case"ref":return e.name;case"literal":return O(e.value);case"enum":return e.values.map(O).join(" | ");case"null":return"null";case"unknown":return"unknown";case"array":{let r=c(e.items,t,n);return j(e.items)?`(${r})[]`:`${r}[]`}case"record":return`Record<string, ${c(e.value,t,n)}>`;case"object":{if(e.properties.length===0)return"{}";let r=n+E;return`{
9
9
  ${e.properties.flatMap(o=>K(o,t,r)).join(`
10
10
  `)}
@@ -4,4 +4,4 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{c as a,d as b}from"./E2D25T4G.js";import"./7RQW6KPZ.js";import"./WZXA5XPB.js";import"./ACMV5RZA.js";import"./NEWT5A6S.js";import"./LD5MEXEL.js";import"./UW4UC7ZI.js";import"./RFWIIJFG.js";export{b as generateClient,a as runGenerators};
7
+ import{c as a,d as b}from"./XDXN5CNA.js";import"./AC25ILS5.js";import"./WZXA5XPB.js";import"./VAPFU7OM.js";import"./NEWT5A6S.js";import"./LD5MEXEL.js";import"./UW4UC7ZI.js";import"./RFWIIJFG.js";export{b as generateClient,a as runGenerators};
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{$ as P,O as D,P as h,Q as O,U as C,aa as j,ba as S,ca as f,d as E,e as A,f as $,ga as b,ia as o,l,oa as a,u}from"./ACMV5RZA.js";var y=["json","yaml","yml"];import*as i from"node:fs";import{basename as T,dirname as d,extname as g,join as N,resolve as m,relative as R}from"node:path";import*as p from"node:process";import{performance as F}from"perf_hooks";async function te(e,n){let r=!A(e)&&$(n.resolvedConfig.apis)?G(n):await W(e,n),c=r.filter(({path:s})=>!z(s));if(A(c)){for(let{path:s}of c)o.warn(`
7
+ import{$ as P,O as D,P as h,Q as O,U as C,aa as j,ba as S,ca as f,d as E,e as A,f as $,ga as b,ia as o,l,oa as a,u}from"./VAPFU7OM.js";var y=["json","yaml","yml"];import*as i from"node:fs";import{basename as T,dirname as d,extname as g,join as N,resolve as m,relative as R}from"node:path";import*as p from"node:process";import{performance as F}from"perf_hooks";async function te(e,n){let r=!A(e)&&$(n.resolvedConfig.apis)?G(n):await W(e,n),c=r.filter(({path:s})=>!z(s));if(A(c)){for(let{path:s}of c)o.warn(`
8
8
  ${q(s)} ${P(`does not exist or is invalid.
9
9
 
10
10
  `)}`);throw new a("Please provide a valid path.")}if(r.length===0)throw new a("No APIs were provided. Specify an API via the command argument or define one in your config.");return r}function w(e){return e.configPath?d(e.configPath):p.cwd()}function z(e){if(!e.trim())throw new a("Path cannot be empty.");return i.existsSync(e)||u(e)?e:void 0}function G(e){return Object.entries(e.resolvedConfig.apis||{}).map(([n,{root:t,output:r}])=>({path:u(t)?t:m(w(e),t),alias:n,output:r&&m(w(e),r)}))}function k(e,n){let t=w(e),r=e.resolvedConfig.apis?.[n];return r?{path:u(r.root)?r.root:m(t,r.root),alias:n,output:r.output&&m(t,r.output)}:{path:n,alias:Object.entries(e.resolvedConfig.apis||{}).find(([c,s])=>m(t,s.root)===m(n))?.[0]??void 0}}async function W(e,n){let{hasMagic:t,glob:r}=await import("./SJHPKWSD.js");return(await Promise.all(e.map(async c=>t(c)&&!u(c)?(await r(c,{cwd:w(n)})).map(I=>k(n,I)):k(n,c)))).flat()}function L(e){return p.env.NODE_ENV==="test"?"<test>ms":`${Math.ceil(F.now()-e)}ms`}function oe(e,n,t){let r=L(n);o.info(b(`
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a as o,c as n}from"./HBUZKWXC.js";import{ia as t}from"./ACMV5RZA.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";import{spawn as m}from"node:child_process";var j=async({argv:e})=>{t.info(`
7
+ import{a as o,c as n}from"./HBUZKWXC.js";import{ia as t}from"./VAPFU7OM.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";import{spawn as m}from"node:child_process";var j=async({argv:e})=>{t.info(`
8
8
  Launching eject using NPX.
9
9
 
10
10
  `);let{npxExecutableName:c,sanitize:r,shell:i}=n(),p=r(e.path,o),a=r(e["project-dir"],o);m(c,["-y","@redocly/realm","eject",`${e.type}`,p,`-d=${a}`,e.force?`--force=${e.force}`:""],{stdio:"inherit",shell:i}).on("error",s=>{throw t.info(`Eject launch failed: ${s.message}`),new Error("Eject launch failed.")})};export{j as handleEject};
@@ -4,4 +4,4 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a}from"./QNCKZURN.js";import"./OYUXHAGQ.js";import"./5IIJHGNO.js";import"./BC3XCWQE.js";import"./7RQW6KPZ.js";import"./WZXA5XPB.js";import"./ACMV5RZA.js";import"./NEWT5A6S.js";import"./LD5MEXEL.js";import"./UW4UC7ZI.js";import"./RFWIIJFG.js";export{a as swrGenerator};
7
+ import{a}from"./3TWUZE25.js";import"./4S35DNJF.js";import"./IPZEPCLP.js";import"./DZLV4HEX.js";import"./AC25ILS5.js";import"./WZXA5XPB.js";import"./VAPFU7OM.js";import"./NEWT5A6S.js";import"./LD5MEXEL.js";import"./UW4UC7ZI.js";import"./RFWIIJFG.js";export{a as swrGenerator};
@@ -4,4 +4,4 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a}from"./Y4UTXOI2.js";import"./OYUXHAGQ.js";import"./5IIJHGNO.js";import"./BC3XCWQE.js";import"./7RQW6KPZ.js";import"./WZXA5XPB.js";import"./ACMV5RZA.js";import"./NEWT5A6S.js";import"./LD5MEXEL.js";import"./UW4UC7ZI.js";import"./RFWIIJFG.js";export{a as tanstackQueryGenerator};
7
+ import{a}from"./4XKO52KS.js";import"./4S35DNJF.js";import"./IPZEPCLP.js";import"./DZLV4HEX.js";import"./AC25ILS5.js";import"./WZXA5XPB.js";import"./VAPFU7OM.js";import"./NEWT5A6S.js";import"./LD5MEXEL.js";import"./UW4UC7ZI.js";import"./RFWIIJFG.js";export{a as tanstackQueryGenerator};