mcp-wordpress 2.11.4 → 2.11.5

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 (32) hide show
  1. package/dist/cache/HttpCacheWrapper.d.ts +1 -2
  2. package/dist/cache/HttpCacheWrapper.d.ts.map +1 -1
  3. package/dist/cache/HttpCacheWrapper.js +2 -7
  4. package/dist/cache/HttpCacheWrapper.js.map +1 -1
  5. package/dist/client/CachedWordPressClient.d.ts +2 -0
  6. package/dist/client/CachedWordPressClient.d.ts.map +1 -1
  7. package/dist/client/CachedWordPressClient.js +68 -13
  8. package/dist/client/CachedWordPressClient.js.map +1 -1
  9. package/dist/client/api.d.ts +7 -0
  10. package/dist/client/api.d.ts.map +1 -1
  11. package/dist/client/api.js +204 -159
  12. package/dist/client/api.js.map +1 -1
  13. package/dist/client/managers/AuthenticationManager.d.ts +1 -7
  14. package/dist/client/managers/AuthenticationManager.d.ts.map +1 -1
  15. package/dist/client/managers/AuthenticationManager.js +55 -17
  16. package/dist/client/managers/AuthenticationManager.js.map +1 -1
  17. package/dist/config/ConfigurationSchema.d.ts +75 -198
  18. package/dist/config/ConfigurationSchema.d.ts.map +1 -1
  19. package/dist/security/InputValidator.d.ts +48 -124
  20. package/dist/security/InputValidator.d.ts.map +1 -1
  21. package/dist/types/seo.d.ts +76 -240
  22. package/dist/types/seo.d.ts.map +1 -1
  23. package/dist/utils/version.d.ts +1 -0
  24. package/dist/utils/version.d.ts.map +1 -1
  25. package/dist/utils/version.js +9 -10
  26. package/dist/utils/version.js.map +1 -1
  27. package/package.json +7 -7
  28. package/src/cache/HttpCacheWrapper.ts +3 -16
  29. package/src/client/CachedWordPressClient.ts +83 -13
  30. package/src/client/api.ts +268 -178
  31. package/src/client/managers/AuthenticationManager.ts +63 -21
  32. package/src/utils/version.ts +10 -10
@@ -429,189 +429,234 @@ export class WordPressClient {
429
429
  async request(method, endpoint, data = null, options = {}) {
430
430
  const timer = startTimer();
431
431
  this._stats.totalRequests++;
432
- // Handle endpoint properly - remove leading slash if present to avoid double slashes
433
432
  const cleanEndpoint = endpoint.replace(/^\/+/, "");
434
433
  const url = endpoint.startsWith("http") ? endpoint : `${this.apiUrl}/${cleanEndpoint}`;
435
- const headers = {
434
+ const { headers: _ignoredHeaders, retries: retryOverride, params: _ignoredParams, ...restOptions } = options;
435
+ const baseHeaders = {
436
436
  "Content-Type": "application/json",
437
437
  "User-Agent": getUserAgent(),
438
- ...options.headers,
438
+ ...(_ignoredHeaders || {}),
439
439
  };
440
- // Add authentication headers
441
- this.addAuthHeaders(headers);
442
- // Set up timeout using AbortController - use options timeout if provided
443
- const controller = new AbortController();
440
+ this.addAuthHeaders(baseHeaders);
444
441
  const requestTimeout = options.timeout || this.timeout;
445
- const timeoutId = setTimeout(() => controller.abort(), requestTimeout);
446
- const fetchOptions = {
447
- ...options, // Spread options first
448
- method,
449
- headers, // Headers come after to ensure auth headers aren't overridden
450
- signal: controller.signal,
451
- };
452
- // Add body for POST/PUT/PATCH requests
453
- if (data && ["POST", "PUT", "PATCH"].includes(method)) {
454
- if (data instanceof FormData ||
455
- (typeof data === "object" && data && "append" in data && typeof data.append === "function")) {
456
- // For FormData, check if it has getHeaders method (form-data package)
457
- if (typeof data.getHeaders === "function") {
458
- // Use headers from form-data package
459
- const formHeaders = data.getHeaders();
460
- Object.assign(headers, formHeaders);
461
- }
462
- else {
463
- // For native FormData, don't set Content-Type (let fetch set it with boundary)
464
- delete headers["Content-Type"];
465
- }
466
- fetchOptions.body = data;
467
- }
468
- else if (Buffer.isBuffer(data)) {
469
- // For Buffer data (manual multipart), keep Content-Type from headers
470
- fetchOptions.body = data;
471
- }
472
- else if (typeof data === "string") {
473
- fetchOptions.body = data;
474
- }
475
- else {
476
- fetchOptions.body = JSON.stringify(data);
477
- }
478
- }
479
- // Rate limiting
480
- await this.rateLimit();
442
+ const configuredRetries = typeof retryOverride === "number" && retryOverride > 0 ? retryOverride : this.maxRetries || 1;
443
+ const canRetryBody = this.isRetryableBody(data);
444
+ const maxAttempts = canRetryBody ? configuredRetries : 1;
481
445
  let lastError = new Error("Unknown error");
482
- for (let attempt = 0; attempt < this.maxRetries; attempt++) {
446
+ for (let attempt = 0; attempt < maxAttempts; attempt++) {
447
+ await this.rateLimit();
448
+ const controller = new AbortController();
449
+ const timeoutId = setTimeout(() => controller.abort(), requestTimeout);
450
+ const headers = { ...baseHeaders };
451
+ const fetchOptions = {
452
+ ...restOptions,
453
+ method,
454
+ headers,
455
+ signal: controller.signal,
456
+ };
457
+ if (data && ["POST", "PUT", "PATCH"].includes(method)) {
458
+ this.attachRequestBody(fetchOptions, headers, data);
459
+ }
483
460
  try {
484
461
  debug.log(`API Request: ${method} ${url}${attempt > 0 ? ` (attempt ${attempt + 1})` : ""}`);
485
462
  const response = await fetch(url, fetchOptions);
486
- clearTimeout(timeoutId);
487
- // Handle different response types
488
463
  if (!response.ok) {
489
- const errorText = await response.text();
490
- let errorMessage;
491
- try {
492
- const errorData = JSON.parse(errorText);
493
- errorMessage = errorData.message || errorData.error || `HTTP ${response.status}`;
494
- }
495
- catch {
496
- errorMessage = errorText || `HTTP ${response.status}: ${response.statusText}`;
497
- }
498
- // Handle rate limiting
499
- if (response.status === 429) {
500
- this._stats.rateLimitHits++;
501
- throw new RateLimitError(errorMessage, Date.now() + 60000);
502
- }
503
- // Handle permission errors specifically for uploads
504
- if (response.status === 403 && endpoint.includes("media") && method === "POST") {
505
- throw new AuthenticationError("Media upload blocked: WordPress REST API media uploads appear to be disabled or restricted by a plugin/security policy. " +
506
- `Error: ${errorMessage}. ` +
507
- "Common causes: W3 Total Cache, security plugins, or custom REST API restrictions. " +
508
- "Please check WordPress admin settings or contact your system administrator.", this.auth.method);
509
- }
510
- // Handle general upload permission errors
511
- if (errorMessage.includes("Beiträge zu erstellen") && endpoint.includes("media")) {
512
- throw new AuthenticationError(`WordPress REST API media upload restriction detected: ${errorMessage}. ` +
513
- "This typically indicates that media uploads via REST API are disabled by WordPress configuration, " +
514
- "a security plugin (like W3 Total Cache, Borlabs Cookie), or server policy. " +
515
- "User has sufficient permissions but WordPress/plugins are blocking the upload.", this.auth.method);
516
- }
517
- // Fallback for 404 errors - try index.php approach for REST API
518
- if (response.status === 404 && attempt === 0 && url.includes("/wp-json/wp/v2")) {
519
- debug.log(`404 on pretty permalinks, trying index.php approach`);
520
- // Parse the URL to handle query parameters correctly
521
- const urlObj = new URL(url);
522
- const endpoint = urlObj.pathname.replace("/wp-json/wp/v2", "");
523
- const queryParams = urlObj.searchParams.toString();
524
- let fallbackUrl = `${urlObj.origin}/index.php?rest_route=/wp/v2${endpoint}`;
525
- if (queryParams) {
526
- fallbackUrl += `&${queryParams}`;
527
- }
528
- try {
529
- // Create a new timeout for the fallback request
530
- const fallbackController = new AbortController();
531
- const fallbackTimeoutId = setTimeout(() => {
532
- fallbackController.abort();
533
- }, requestTimeout);
534
- const fallbackOptions = { ...fetchOptions, signal: fallbackController.signal };
535
- const fallbackResponse = await fetch(fallbackUrl, fallbackOptions);
536
- clearTimeout(fallbackTimeoutId);
537
- if (fallbackResponse.ok) {
538
- const responseText = await fallbackResponse.text();
539
- if (!responseText) {
540
- this._stats.successfulRequests++;
541
- const duration = timer.end();
542
- this.updateAverageResponseTime(duration);
543
- return null;
544
- }
545
- const result = JSON.parse(responseText);
546
- this._stats.successfulRequests++;
547
- const duration = timer.end();
548
- this.updateAverageResponseTime(duration);
549
- return result;
550
- }
551
- else {
552
- // If fallback also fails, continue with original error
553
- debug.log(`Fallback also failed with status ${fallbackResponse.status}`);
554
- }
555
- }
556
- catch (fallbackError) {
557
- debug.log(`Fallback request failed: ${fallbackError.message}`);
558
- }
559
- }
560
- throw new WordPressAPIError(errorMessage, response.status);
561
- }
562
- // Parse response
563
- const responseText = await response.text();
564
- if (!responseText) {
565
- this._stats.successfulRequests++;
566
- const duration = timer.end();
567
- this.updateAverageResponseTime(duration);
568
- return null;
569
- }
570
- try {
571
- const result = JSON.parse(responseText);
572
- this._stats.successfulRequests++;
573
- const duration = timer.end();
574
- this.updateAverageResponseTime(duration);
575
- return result;
576
- }
577
- catch (parseError) {
578
- // For authentication requests, malformed JSON should be an error
579
- if (endpoint.includes("users/me") || endpoint.includes("jwt-auth")) {
580
- throw new WordPressAPIError(`Invalid JSON response: ${parseError.message}`);
464
+ const fallbackResult = await this.handleErrorResponseWithFallback(response, url, endpoint, requestTimeout, fetchOptions, timer);
465
+ if (fallbackResult !== undefined) {
466
+ clearTimeout(timeoutId);
467
+ return fallbackResult;
581
468
  }
582
- this._stats.successfulRequests++;
583
- const duration = timer.end();
584
- this.updateAverageResponseTime(duration);
585
- return responseText;
469
+ continue;
586
470
  }
471
+ const result = await this.parseResponse(response, endpoint, timer);
472
+ clearTimeout(timeoutId);
473
+ return result;
587
474
  }
588
475
  catch (_error) {
589
476
  clearTimeout(timeoutId);
590
- lastError = _error;
591
- // Handle timeout errors
592
- if (_error.name === "AbortError") {
593
- lastError = new Error(`Request timeout after ${requestTimeout}ms`);
594
- }
595
- // Handle network errors
596
- if (lastError.message.includes("socket hang up") || lastError.message.includes("ECONNRESET")) {
597
- lastError = new Error(`Network connection lost during upload: ${lastError.message}`);
477
+ if (_error instanceof RateLimitError) {
478
+ lastError = _error;
479
+ break;
598
480
  }
481
+ lastError = this.normalizeRequestError(_error, requestTimeout);
599
482
  debug.log(`Request failed (attempt ${attempt + 1}): ${lastError.message}`);
600
- // Don't retry on authentication errors, timeouts, or critical network errors
601
- if (lastError.message.includes("401") ||
602
- lastError.message.includes("403") ||
603
- lastError.message.includes("timeout") ||
604
- lastError.message.includes("Network connection lost")) {
483
+ const shouldRetry = this.shouldRetryError(lastError) && attempt < maxAttempts - 1;
484
+ if (!shouldRetry) {
605
485
  break;
606
486
  }
607
- if (attempt < this.maxRetries - 1) {
608
- await this.delay(1000 * (attempt + 1)); // Exponential backoff
609
- }
487
+ await this.delay(1000 * (attempt + 1));
488
+ }
489
+ finally {
490
+ clearTimeout(timeoutId);
610
491
  }
611
492
  }
612
493
  this._stats.failedRequests++;
613
494
  timer.end();
614
- throw new WordPressAPIError(`Request failed after ${this.maxRetries} attempts: ${lastError.message}`);
495
+ throw new WordPressAPIError(`Request failed after ${maxAttempts} attempt${maxAttempts === 1 ? "" : "s"}: ${lastError.message}`);
496
+ }
497
+ attachRequestBody(fetchOptions, headers, data) {
498
+ if (data instanceof FormData ||
499
+ (typeof data === "object" && data && "append" in data && typeof data.append === "function")) {
500
+ if (typeof data.getHeaders === "function") {
501
+ const formHeaders = data.getHeaders();
502
+ Object.assign(headers, formHeaders);
503
+ }
504
+ else {
505
+ delete headers["Content-Type"];
506
+ }
507
+ fetchOptions.body = data;
508
+ return;
509
+ }
510
+ if (Buffer.isBuffer(data)) {
511
+ fetchOptions.body = data;
512
+ return;
513
+ }
514
+ if (typeof data === "string") {
515
+ fetchOptions.body = data;
516
+ return;
517
+ }
518
+ fetchOptions.body = JSON.stringify(data);
519
+ }
520
+ normalizeRequestError(error, timeout) {
521
+ if (error instanceof Error) {
522
+ if (error.name === "AbortError") {
523
+ return new Error(`Request timeout after ${timeout}ms`);
524
+ }
525
+ if (error.message.includes("socket hang up") || error.message.includes("ECONNRESET")) {
526
+ return new Error(`Network connection lost during request: ${error.message}`);
527
+ }
528
+ return error;
529
+ }
530
+ return new Error(typeof error === "string" ? error : "Unknown error");
531
+ }
532
+ shouldRetryError(error) {
533
+ const message = error.message.toLowerCase();
534
+ if (message.includes("401") || message.includes("403")) {
535
+ return false;
536
+ }
537
+ if (message.includes("timeout")) {
538
+ return false;
539
+ }
540
+ if (message.includes("network connection lost")) {
541
+ return false;
542
+ }
543
+ return true;
544
+ }
545
+ isRetryableBody(data) {
546
+ if (!data) {
547
+ return true;
548
+ }
549
+ if (typeof data === "string" || Buffer.isBuffer(data)) {
550
+ return true;
551
+ }
552
+ if (data instanceof FormData) {
553
+ return false;
554
+ }
555
+ if (typeof data === "object" && data !== null && "pipe" in data) {
556
+ const potentialStream = data.pipe;
557
+ if (typeof potentialStream === "function") {
558
+ return false;
559
+ }
560
+ }
561
+ return true;
562
+ }
563
+ async handleErrorResponseWithFallback(response, url, originalEndpoint, requestTimeout, fetchOptions, timer) {
564
+ const errorText = await response.text();
565
+ let errorMessage;
566
+ try {
567
+ const errorData = JSON.parse(errorText);
568
+ errorMessage = errorData.message || errorData.error || `HTTP ${response.status}`;
569
+ }
570
+ catch {
571
+ errorMessage = errorText || `HTTP ${response.status}: ${response.statusText}`;
572
+ }
573
+ if (response.status === 429) {
574
+ this._stats.rateLimitHits++;
575
+ throw new RateLimitError(errorMessage, Date.now() + 60000);
576
+ }
577
+ if (response.status === 403 && originalEndpoint.includes("media") && fetchOptions.method === "POST") {
578
+ throw new AuthenticationError("Media upload blocked: WordPress REST API media uploads appear to be disabled or restricted by a plugin/security policy. " +
579
+ `Error: ${errorMessage}. ` +
580
+ "Common causes: W3 Total Cache, security plugins, or custom REST API restrictions. " +
581
+ "Please check WordPress admin settings or contact your system administrator.", this.auth.method);
582
+ }
583
+ if (errorMessage.includes("Beiträge zu erstellen") && originalEndpoint.includes("media")) {
584
+ throw new AuthenticationError(`WordPress REST API media upload restriction detected: ${errorMessage}. ` +
585
+ "This typically indicates that media uploads via REST API are disabled by WordPress configuration, " +
586
+ "a security plugin (like W3 Total Cache, Borlabs Cookie), or server policy. " +
587
+ "User has sufficient permissions but WordPress/plugins are blocking the upload.", this.auth.method);
588
+ }
589
+ if (response.status === 404 && url.includes("/wp-json/wp/v2")) {
590
+ const fallbackResult = await this.tryIndexPhpFallback(url, requestTimeout, fetchOptions, timer);
591
+ if (fallbackResult !== undefined) {
592
+ return fallbackResult;
593
+ }
594
+ }
595
+ throw new WordPressAPIError(errorMessage, response.status);
596
+ }
597
+ async tryIndexPhpFallback(url, requestTimeout, fetchOptions, timer) {
598
+ debug.log(`404 on pretty permalinks, trying index.php approach`);
599
+ try {
600
+ const urlObj = new URL(url);
601
+ const endpointPath = urlObj.pathname.replace("/wp-json/wp/v2", "");
602
+ const queryParams = urlObj.searchParams.toString();
603
+ let fallbackUrl = `${urlObj.origin}/index.php?rest_route=/wp/v2${endpointPath}`;
604
+ if (queryParams) {
605
+ fallbackUrl += `&${queryParams}`;
606
+ }
607
+ const fallbackController = new AbortController();
608
+ const fallbackTimeoutId = setTimeout(() => {
609
+ fallbackController.abort();
610
+ }, requestTimeout);
611
+ const fallbackOptions = { ...fetchOptions, signal: fallbackController.signal };
612
+ const fallbackResponse = await fetch(fallbackUrl, fallbackOptions);
613
+ clearTimeout(fallbackTimeoutId);
614
+ if (!fallbackResponse.ok) {
615
+ debug.log(`Fallback also failed with status ${fallbackResponse.status}`);
616
+ return undefined;
617
+ }
618
+ const responseText = await fallbackResponse.text();
619
+ if (!responseText) {
620
+ this._stats.successfulRequests++;
621
+ const duration = timer.end();
622
+ this.updateAverageResponseTime(duration);
623
+ return null;
624
+ }
625
+ const result = JSON.parse(responseText);
626
+ this._stats.successfulRequests++;
627
+ const duration = timer.end();
628
+ this.updateAverageResponseTime(duration);
629
+ return result;
630
+ }
631
+ catch (fallbackError) {
632
+ debug.log(`Fallback request failed: ${fallbackError.message}`);
633
+ return undefined;
634
+ }
635
+ }
636
+ async parseResponse(response, endpoint, timer) {
637
+ const responseText = await response.text();
638
+ if (!responseText) {
639
+ this._stats.successfulRequests++;
640
+ const duration = timer.end();
641
+ this.updateAverageResponseTime(duration);
642
+ return null;
643
+ }
644
+ try {
645
+ const result = JSON.parse(responseText);
646
+ this._stats.successfulRequests++;
647
+ const duration = timer.end();
648
+ this.updateAverageResponseTime(duration);
649
+ return result;
650
+ }
651
+ catch (parseError) {
652
+ if (endpoint.includes("users/me") || endpoint.includes("jwt-auth")) {
653
+ throw new WordPressAPIError(`Invalid JSON response: ${parseError.message}`);
654
+ }
655
+ this._stats.successfulRequests++;
656
+ const duration = timer.end();
657
+ this.updateAverageResponseTime(duration);
658
+ return responseText;
659
+ }
615
660
  }
616
661
  updateAverageResponseTime(duration) {
617
662
  const totalSuccessful = this._stats.successfulRequests;
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/client/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/client/api.ts"],"names":[],"mappings":"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"}
@@ -39,13 +39,7 @@ export declare class AuthenticationManager extends BaseManager {
39
39
  */
40
40
  getAuthHeaders(): Record<string, string>;
41
41
  /**
42
- * Authenticate using JWT
43
- *
44
- * Note: This method is not fully implemented as it requires integration with
45
- * the RequestManager to make HTTP requests to the WordPress JWT endpoint.
46
- * JWT authentication requires the JWT Authentication for WP-API plugin.
47
- *
48
- * @throws {AuthenticationError} - JWT auth requires external dependency injection
42
+ * Authenticate using the WordPress JWT REST endpoint
49
43
  */
50
44
  private authenticateJWT;
51
45
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AuthenticationManager.d.ts","sourceRoot":"","sources":["../../../src/client/managers/AuthenticationManager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,qBAAqB,EACrB,UAAU,EACV,sBAAsB,EACtB,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,UAAU,iBAAkB,SAAQ,qBAAqB;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,qBAAsB,SAAQ,WAAW;IACpD,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,UAAU,CAAoB;IAC/B,MAAM,EAAE,iBAAiB,CAAC;gBAErB,MAAM,EAAE,iBAAiB;IA6CrC;;OAEG;IACH,SAAS,IAAI,iBAAiB;IAI9B;;OAEG;IACH,MAAM,CAAC,cAAc,IAAI,UAAU;IAuCnC;;;;;;OAMG;IACH,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IA6CxC;;;;;;;;OAQG;YACW,eAAe;IAkB7B;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAkB5C;;OAEG;IACH,eAAe,IAAI,OAAO;IAI1B;;OAEG;IACH,mBAAmB,IAAI,IAAI;IAK3B;;OAEG;IACH,kBAAkB,IAAI,IAAI;IAwC1B;;OAEG;IACH,mBAAmB,IAAI,IAAI;IAuC3B;;OAEG;IACH,gBAAgB,CACd,MAAM,EAAE,UAAU,EAClB,WAAW,EAAE,sBAAsB,GAAG,cAAc,GAAG,gBAAgB,GAAG,iBAAiB,GAC1F,IAAI;IA0DP;;;;;OAKG;IACG,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IA+BnC;;OAEG;IACH,cAAc,IAAI,OAAO;IAYzB;;OAEG;IACH,aAAa,IAAI,UAAU;CAe5B"}
1
+ {"version":3,"file":"AuthenticationManager.d.ts","sourceRoot":"","sources":["../../../src/client/managers/AuthenticationManager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,qBAAqB,EACrB,UAAU,EACV,sBAAsB,EACtB,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,UAAU,iBAAkB,SAAQ,qBAAqB;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,qBAAsB,SAAQ,WAAW;IACpD,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,UAAU,CAAoB;IAC/B,MAAM,EAAE,iBAAiB,CAAC;gBAErB,MAAM,EAAE,iBAAiB;IA6CrC;;OAEG;IACH,SAAS,IAAI,iBAAiB;IAI9B;;OAEG;IACH,MAAM,CAAC,cAAc,IAAI,UAAU;IAuCnC;;;;;;OAMG;IACH,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IA6CxC;;OAEG;YACW,eAAe;IAmD7B;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAkB5C;;OAEG;IACH,eAAe,IAAI,OAAO;IAI1B;;OAEG;IACH,mBAAmB,IAAI,IAAI;IAK3B;;OAEG;IACH,kBAAkB,IAAI,IAAI;IAwC1B;;OAEG;IACH,mBAAmB,IAAI,IAAI;IAuC3B;;OAEG;IACH,gBAAgB,CACd,MAAM,EAAE,UAAU,EAClB,WAAW,EAAE,sBAAsB,GAAG,cAAc,GAAG,gBAAgB,GAAG,iBAAiB,GAC1F,IAAI;IA0DP;;;;;OAKG;IACG,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IA8CnC;;OAEG;IACH,cAAc,IAAI,OAAO;IAYzB;;OAEG;IACH,aAAa,IAAI,UAAU;CAe5B"}