@shuffleio/shuffle-mcps 0.0.69-staging-635a6b5 → 0.0.69-staging-797bc99
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +775 -3
- package/dist/index.mjs +775 -3
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -5355,6 +5355,777 @@ var import_framer_motion2 = require("framer-motion");
|
|
|
5355
5355
|
|
|
5356
5356
|
// ../Shuffle-Core/components/AppFallbackIcon.tsx
|
|
5357
5357
|
var import_react7 = require("react");
|
|
5358
|
+
|
|
5359
|
+
// ../Shuffle-Core/components/oauth/oauthVendors.ts
|
|
5360
|
+
var OAUTH_VENDOR_REGISTRY = [
|
|
5361
|
+
{
|
|
5362
|
+
id: "chatgpt",
|
|
5363
|
+
name: "ChatGPT",
|
|
5364
|
+
vendorName: "OpenAI",
|
|
5365
|
+
imageId: "OpenAI",
|
|
5366
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=chatgpt.com&sz=128",
|
|
5367
|
+
iconBg: "#10A37F",
|
|
5368
|
+
iconColor: "#FFFFFF",
|
|
5369
|
+
description: "OpenAI ChatGPT custom assistant & MCP integration",
|
|
5370
|
+
officialDomains: ["chatgpt.com", "openai.com", "chat.openai.com", "platform.openai.com"],
|
|
5371
|
+
officialSchemes: ["chatgpt", "openai"],
|
|
5372
|
+
claimKeywords: ["chatgpt", "openai", "gpt-4", "gpt4"],
|
|
5373
|
+
cloudOnly: true
|
|
5374
|
+
},
|
|
5375
|
+
{
|
|
5376
|
+
id: "claude_code",
|
|
5377
|
+
name: "Claude Code",
|
|
5378
|
+
vendorName: "Anthropic",
|
|
5379
|
+
imageId: "Claude",
|
|
5380
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=claude.ai&sz=128",
|
|
5381
|
+
iconBg: "#D97706",
|
|
5382
|
+
iconColor: "#FFFFFF",
|
|
5383
|
+
description: "Anthropic Claude Code CLI & desktop agent runner",
|
|
5384
|
+
officialDomains: ["claude.ai", "anthropic.com", "console.anthropic.com"],
|
|
5385
|
+
officialSchemes: ["claude-code", "claude"],
|
|
5386
|
+
claimKeywords: ["claude-code", "claude code", "claudecode"],
|
|
5387
|
+
cloudOnly: false
|
|
5388
|
+
},
|
|
5389
|
+
{
|
|
5390
|
+
id: "claude",
|
|
5391
|
+
name: "Claude",
|
|
5392
|
+
vendorName: "Anthropic",
|
|
5393
|
+
imageId: "Claude",
|
|
5394
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=claude.ai&sz=128",
|
|
5395
|
+
iconBg: "#D97706",
|
|
5396
|
+
iconColor: "#FFFFFF",
|
|
5397
|
+
description: "Anthropic Claude assistant & MCP integration",
|
|
5398
|
+
officialDomains: ["claude.ai", "anthropic.com", "console.anthropic.com"],
|
|
5399
|
+
officialSchemes: ["claude", "anthropic"],
|
|
5400
|
+
claimKeywords: ["claude", "anthropic"],
|
|
5401
|
+
cloudOnly: false
|
|
5402
|
+
},
|
|
5403
|
+
{
|
|
5404
|
+
id: "gemini",
|
|
5405
|
+
name: "Google Gemini",
|
|
5406
|
+
vendorName: "Google",
|
|
5407
|
+
imageId: "Google Gemini",
|
|
5408
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=gemini.google.com&sz=128",
|
|
5409
|
+
iconBg: "#1A73E8",
|
|
5410
|
+
iconColor: "#FFFFFF",
|
|
5411
|
+
description: "Google Gemini assistant, AI Studio & Vertex AI integration",
|
|
5412
|
+
officialDomains: [
|
|
5413
|
+
"gemini.google.com",
|
|
5414
|
+
"aistudio.google.com",
|
|
5415
|
+
"makersuite.google.com",
|
|
5416
|
+
"vertexai.google.com",
|
|
5417
|
+
"console.cloud.google.com",
|
|
5418
|
+
"developers.google.com"
|
|
5419
|
+
],
|
|
5420
|
+
officialSchemes: ["gemini", "google-gemini"],
|
|
5421
|
+
claimKeywords: ["gemini", "vertexai", "vertex ai", "aistudio", "makersuite", "google ai"],
|
|
5422
|
+
cloudOnly: true
|
|
5423
|
+
},
|
|
5424
|
+
{
|
|
5425
|
+
id: "cursor",
|
|
5426
|
+
name: "Cursor",
|
|
5427
|
+
vendorName: "Anysphere",
|
|
5428
|
+
imageId: "Cursor",
|
|
5429
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=cursor.com&sz=128",
|
|
5430
|
+
iconBg: "#000000",
|
|
5431
|
+
iconColor: "#FFFFFF",
|
|
5432
|
+
description: "Cursor AI IDE & MCP tool runner",
|
|
5433
|
+
officialDomains: ["cursor.com", "cursor.sh"],
|
|
5434
|
+
officialSchemes: ["cursor", "anysphere"],
|
|
5435
|
+
claimKeywords: ["cursor", "anysphere"],
|
|
5436
|
+
cloudOnly: false
|
|
5437
|
+
},
|
|
5438
|
+
{
|
|
5439
|
+
id: "vscode",
|
|
5440
|
+
name: "Visual Studio Code",
|
|
5441
|
+
vendorName: "Microsoft",
|
|
5442
|
+
imageId: "Visual Studio Code",
|
|
5443
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=code.visualstudio.com&sz=128",
|
|
5444
|
+
iconBg: "#007ACC",
|
|
5445
|
+
iconColor: "#FFFFFF",
|
|
5446
|
+
description: "Visual Studio Code IDE & MCP extension host",
|
|
5447
|
+
officialDomains: ["vscode.dev", "insiders.vscode.dev", "code.visualstudio.com", "vscode-auth.github.com"],
|
|
5448
|
+
officialSchemes: ["vscode", "vscode-insiders", "code-oss"],
|
|
5449
|
+
claimKeywords: ["visual studio code", "vscode", "vs code"],
|
|
5450
|
+
cloudOnly: false
|
|
5451
|
+
},
|
|
5452
|
+
{
|
|
5453
|
+
id: "copilot",
|
|
5454
|
+
name: "GitHub Copilot",
|
|
5455
|
+
vendorName: "GitHub",
|
|
5456
|
+
imageId: "GitHub",
|
|
5457
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=github.com&sz=128",
|
|
5458
|
+
iconBg: "#24292F",
|
|
5459
|
+
iconColor: "#FFFFFF",
|
|
5460
|
+
description: "GitHub Copilot Workspace & agent integration",
|
|
5461
|
+
officialDomains: ["github.com", "githubcopilot.com", "api.githubcopilot.com"],
|
|
5462
|
+
officialSchemes: ["github-copilot", "github"],
|
|
5463
|
+
claimKeywords: ["github copilot", "copilot", "github"],
|
|
5464
|
+
cloudOnly: false
|
|
5465
|
+
},
|
|
5466
|
+
{
|
|
5467
|
+
id: "microsoft_copilot",
|
|
5468
|
+
name: "Microsoft Copilot",
|
|
5469
|
+
vendorName: "Microsoft",
|
|
5470
|
+
imageId: "Microsoft",
|
|
5471
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=copilot.microsoft.com&sz=128",
|
|
5472
|
+
iconBg: "#0078D4",
|
|
5473
|
+
iconColor: "#FFFFFF",
|
|
5474
|
+
description: "Microsoft Copilot Studio & M365 agent connector",
|
|
5475
|
+
officialDomains: [
|
|
5476
|
+
"copilot.microsoft.com",
|
|
5477
|
+
"copilotstudio.microsoft.com",
|
|
5478
|
+
"powerplatform.com",
|
|
5479
|
+
"azure.com",
|
|
5480
|
+
"office.com"
|
|
5481
|
+
],
|
|
5482
|
+
officialSchemes: ["ms-copilot", "msteams"],
|
|
5483
|
+
claimKeywords: ["microsoft copilot", "copilot studio", "m365 copilot", "power platform"],
|
|
5484
|
+
cloudOnly: true
|
|
5485
|
+
},
|
|
5486
|
+
{
|
|
5487
|
+
id: "windsurf",
|
|
5488
|
+
name: "Windsurf",
|
|
5489
|
+
vendorName: "Codeium",
|
|
5490
|
+
imageId: "Windsurf",
|
|
5491
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=windsurf.com&sz=128",
|
|
5492
|
+
iconBg: "#09B6A2",
|
|
5493
|
+
iconColor: "#FFFFFF",
|
|
5494
|
+
description: "Windsurf AI IDE & Codeium MCP runner",
|
|
5495
|
+
officialDomains: ["windsurf.com", "windsurf.ai", "codeium.com"],
|
|
5496
|
+
officialSchemes: ["windsurf", "codeium"],
|
|
5497
|
+
claimKeywords: ["windsurf", "codeium"],
|
|
5498
|
+
cloudOnly: false
|
|
5499
|
+
},
|
|
5500
|
+
{
|
|
5501
|
+
id: "raycast",
|
|
5502
|
+
name: "Raycast",
|
|
5503
|
+
vendorName: "Raycast",
|
|
5504
|
+
imageId: "Raycast",
|
|
5505
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=raycast.com&sz=128",
|
|
5506
|
+
iconBg: "#FF6363",
|
|
5507
|
+
iconColor: "#FFFFFF",
|
|
5508
|
+
description: "Raycast launcher & AI MCP extension",
|
|
5509
|
+
officialDomains: ["raycast.com"],
|
|
5510
|
+
officialSchemes: ["raycast"],
|
|
5511
|
+
claimKeywords: ["raycast"],
|
|
5512
|
+
cloudOnly: false
|
|
5513
|
+
},
|
|
5514
|
+
{
|
|
5515
|
+
id: "cline",
|
|
5516
|
+
name: "Cline",
|
|
5517
|
+
vendorName: "Cline",
|
|
5518
|
+
imageId: "Cline",
|
|
5519
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=cline.bot&sz=128",
|
|
5520
|
+
iconBg: "#3B82F6",
|
|
5521
|
+
iconColor: "#FFFFFF",
|
|
5522
|
+
description: "Cline autonomous coding agent & MCP client",
|
|
5523
|
+
officialDomains: ["cline.bot"],
|
|
5524
|
+
officialSchemes: ["cline"],
|
|
5525
|
+
claimKeywords: ["cline", "claude-dev", "saoudrizwan.claude-dev"],
|
|
5526
|
+
cloudOnly: false
|
|
5527
|
+
},
|
|
5528
|
+
{
|
|
5529
|
+
id: "roocode",
|
|
5530
|
+
name: "Roo Code",
|
|
5531
|
+
vendorName: "Roo Code",
|
|
5532
|
+
imageId: "Roo Code",
|
|
5533
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=roocode.com&sz=128",
|
|
5534
|
+
iconBg: "#6366F1",
|
|
5535
|
+
iconColor: "#FFFFFF",
|
|
5536
|
+
description: "Roo Code autonomous coding agent & MCP client",
|
|
5537
|
+
officialDomains: ["roocode.com"],
|
|
5538
|
+
officialSchemes: ["roocode", "roo-cline"],
|
|
5539
|
+
claimKeywords: ["roo code", "roocode", "roo-cline", "rooveterinaryinc"],
|
|
5540
|
+
cloudOnly: false
|
|
5541
|
+
},
|
|
5542
|
+
{
|
|
5543
|
+
id: "continue",
|
|
5544
|
+
name: "Continue",
|
|
5545
|
+
vendorName: "Continue.dev",
|
|
5546
|
+
imageId: "Continue",
|
|
5547
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=continue.dev&sz=128",
|
|
5548
|
+
iconBg: "#1E293B",
|
|
5549
|
+
iconColor: "#FFFFFF",
|
|
5550
|
+
description: "Continue open-source AI code assistant",
|
|
5551
|
+
officialDomains: ["continue.dev", "hub.continue.dev"],
|
|
5552
|
+
officialSchemes: ["continue"],
|
|
5553
|
+
claimKeywords: ["continue.dev", "continue-dev"],
|
|
5554
|
+
cloudOnly: false
|
|
5555
|
+
},
|
|
5556
|
+
{
|
|
5557
|
+
id: "zed",
|
|
5558
|
+
name: "Zed",
|
|
5559
|
+
vendorName: "Zed Industries",
|
|
5560
|
+
imageId: "Zed",
|
|
5561
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=zed.dev&sz=128",
|
|
5562
|
+
iconBg: "#084CCF",
|
|
5563
|
+
iconColor: "#FFFFFF",
|
|
5564
|
+
description: "Zed Editor assistant & MCP context server client",
|
|
5565
|
+
officialDomains: ["zed.dev"],
|
|
5566
|
+
officialSchemes: ["zed"],
|
|
5567
|
+
claimKeywords: ["zed", "zed.dev", "zed editor"],
|
|
5568
|
+
cloudOnly: false
|
|
5569
|
+
},
|
|
5570
|
+
{
|
|
5571
|
+
id: "goose",
|
|
5572
|
+
name: "Goose",
|
|
5573
|
+
vendorName: "Block",
|
|
5574
|
+
imageId: "Goose",
|
|
5575
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=block.github.io&sz=128",
|
|
5576
|
+
iconBg: "#111827",
|
|
5577
|
+
iconColor: "#FFFFFF",
|
|
5578
|
+
description: "Block Goose open-source AI developer agent",
|
|
5579
|
+
officialDomains: ["block.github.io", "sqprod.co"],
|
|
5580
|
+
officialSchemes: ["goose"],
|
|
5581
|
+
claimKeywords: ["goose", "block-goose", "codename-goose"],
|
|
5582
|
+
cloudOnly: false
|
|
5583
|
+
},
|
|
5584
|
+
{
|
|
5585
|
+
id: "perplexity",
|
|
5586
|
+
name: "Perplexity",
|
|
5587
|
+
vendorName: "Perplexity AI",
|
|
5588
|
+
imageId: "Perplexity",
|
|
5589
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=perplexity.ai&sz=128",
|
|
5590
|
+
iconBg: "#20808D",
|
|
5591
|
+
iconColor: "#FFFFFF",
|
|
5592
|
+
description: "Perplexity AI answer engine & MCP connector",
|
|
5593
|
+
officialDomains: ["perplexity.ai", "labs.perplexity.ai"],
|
|
5594
|
+
officialSchemes: ["perplexity"],
|
|
5595
|
+
claimKeywords: ["perplexity"],
|
|
5596
|
+
cloudOnly: true
|
|
5597
|
+
},
|
|
5598
|
+
{
|
|
5599
|
+
id: "mistral",
|
|
5600
|
+
name: "Mistral Le Chat",
|
|
5601
|
+
vendorName: "Mistral AI",
|
|
5602
|
+
imageId: "Mistral",
|
|
5603
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=mistral.ai&sz=128",
|
|
5604
|
+
iconBg: "#FA520F",
|
|
5605
|
+
iconColor: "#FFFFFF",
|
|
5606
|
+
description: "Mistral AI Le Chat assistant & tool connector",
|
|
5607
|
+
officialDomains: ["mistral.ai", "chat.mistral.ai", "console.mistral.ai"],
|
|
5608
|
+
officialSchemes: ["mistral", "lechat"],
|
|
5609
|
+
claimKeywords: ["mistral", "le chat", "lechat"],
|
|
5610
|
+
cloudOnly: true
|
|
5611
|
+
},
|
|
5612
|
+
{
|
|
5613
|
+
id: "grok",
|
|
5614
|
+
name: "Grok",
|
|
5615
|
+
vendorName: "xAI",
|
|
5616
|
+
imageId: "Grok",
|
|
5617
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=grok.com&sz=128",
|
|
5618
|
+
iconBg: "#0F172A",
|
|
5619
|
+
iconColor: "#FFFFFF",
|
|
5620
|
+
description: "xAI Grok assistant & MCP integration",
|
|
5621
|
+
officialDomains: ["grok.com", "x.ai", "console.x.ai"],
|
|
5622
|
+
officialSchemes: ["grok", "xai"],
|
|
5623
|
+
claimKeywords: ["grok", "x.ai", "xai"],
|
|
5624
|
+
cloudOnly: true
|
|
5625
|
+
},
|
|
5626
|
+
{
|
|
5627
|
+
id: "deepseek",
|
|
5628
|
+
name: "DeepSeek",
|
|
5629
|
+
vendorName: "DeepSeek",
|
|
5630
|
+
imageId: "DeepSeek",
|
|
5631
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=deepseek.com&sz=128",
|
|
5632
|
+
iconBg: "#4D6BFE",
|
|
5633
|
+
iconColor: "#FFFFFF",
|
|
5634
|
+
description: "DeepSeek AI assistant & tool integration",
|
|
5635
|
+
officialDomains: ["deepseek.com", "chat.deepseek.com", "platform.deepseek.com"],
|
|
5636
|
+
officialSchemes: ["deepseek"],
|
|
5637
|
+
claimKeywords: ["deepseek"],
|
|
5638
|
+
cloudOnly: true
|
|
5639
|
+
},
|
|
5640
|
+
{
|
|
5641
|
+
id: "lovable",
|
|
5642
|
+
name: "Lovable",
|
|
5643
|
+
vendorName: "Lovable",
|
|
5644
|
+
imageId: "Lovable",
|
|
5645
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=lovable.dev&sz=128",
|
|
5646
|
+
iconBg: "#EC4899",
|
|
5647
|
+
iconColor: "#FFFFFF",
|
|
5648
|
+
description: "Lovable full-stack AI app builder & MCP connector",
|
|
5649
|
+
officialDomains: ["lovable.dev", "lovable.app", "gptengineer.app"],
|
|
5650
|
+
officialSchemes: ["lovable"],
|
|
5651
|
+
claimKeywords: ["lovable", "gptengineer"],
|
|
5652
|
+
cloudOnly: true
|
|
5653
|
+
},
|
|
5654
|
+
{
|
|
5655
|
+
id: "bolt",
|
|
5656
|
+
name: "Bolt.new",
|
|
5657
|
+
vendorName: "StackBlitz",
|
|
5658
|
+
imageId: "StackBlitz",
|
|
5659
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=bolt.new&sz=128",
|
|
5660
|
+
iconBg: "#1389FD",
|
|
5661
|
+
iconColor: "#FFFFFF",
|
|
5662
|
+
description: "StackBlitz Bolt.new AI web development agent",
|
|
5663
|
+
officialDomains: ["bolt.new", "stackblitz.com"],
|
|
5664
|
+
officialSchemes: ["bolt", "stackblitz"],
|
|
5665
|
+
claimKeywords: ["bolt.new", "stackblitz"],
|
|
5666
|
+
cloudOnly: true
|
|
5667
|
+
},
|
|
5668
|
+
{
|
|
5669
|
+
id: "v0",
|
|
5670
|
+
name: "Vercel v0",
|
|
5671
|
+
vendorName: "Vercel",
|
|
5672
|
+
imageId: "Vercel",
|
|
5673
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=v0.dev&sz=128",
|
|
5674
|
+
iconBg: "#000000",
|
|
5675
|
+
iconColor: "#FFFFFF",
|
|
5676
|
+
description: "Vercel v0 generative UI & MCP integration",
|
|
5677
|
+
officialDomains: ["v0.dev", "vercel.com", "vercel.app"],
|
|
5678
|
+
officialSchemes: ["v0", "vercel"],
|
|
5679
|
+
claimKeywords: ["v0.dev", "vercel v0"],
|
|
5680
|
+
cloudOnly: true
|
|
5681
|
+
},
|
|
5682
|
+
{
|
|
5683
|
+
id: "replit",
|
|
5684
|
+
name: "Replit Agent",
|
|
5685
|
+
vendorName: "Replit",
|
|
5686
|
+
imageId: "Replit",
|
|
5687
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=replit.com&sz=128",
|
|
5688
|
+
iconBg: "#F26207",
|
|
5689
|
+
iconColor: "#FFFFFF",
|
|
5690
|
+
description: "Replit AI Agent & cloud IDE connector",
|
|
5691
|
+
officialDomains: ["replit.com", "repl.co"],
|
|
5692
|
+
officialSchemes: ["replit"],
|
|
5693
|
+
claimKeywords: ["replit"],
|
|
5694
|
+
cloudOnly: true
|
|
5695
|
+
},
|
|
5696
|
+
{
|
|
5697
|
+
id: "devin",
|
|
5698
|
+
name: "Devin",
|
|
5699
|
+
vendorName: "Cognition",
|
|
5700
|
+
imageId: "Devin",
|
|
5701
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=devin.ai&sz=128",
|
|
5702
|
+
iconBg: "#14B8A6",
|
|
5703
|
+
iconColor: "#FFFFFF",
|
|
5704
|
+
description: "Cognition Devin autonomous software engineer",
|
|
5705
|
+
officialDomains: ["devin.ai", "cognition.ai", "preview.devin.ai"],
|
|
5706
|
+
officialSchemes: ["devin"],
|
|
5707
|
+
claimKeywords: ["devin", "cognition.ai"],
|
|
5708
|
+
cloudOnly: true
|
|
5709
|
+
},
|
|
5710
|
+
{
|
|
5711
|
+
id: "amazon_q",
|
|
5712
|
+
name: "Amazon Q",
|
|
5713
|
+
vendorName: "AWS",
|
|
5714
|
+
imageId: "AWS",
|
|
5715
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=aws.amazon.com&sz=128",
|
|
5716
|
+
iconBg: "#FF9900",
|
|
5717
|
+
iconColor: "#FFFFFF",
|
|
5718
|
+
description: "AWS Amazon Q Developer & Bedrock agent",
|
|
5719
|
+
officialDomains: ["aws.amazon.com", " amazonaws.com", "awsapps.com"],
|
|
5720
|
+
officialSchemes: ["amazon-q", "kiro", "aws"],
|
|
5721
|
+
claimKeywords: ["amazon q", "amazon-q", "codewhisperer", "kiro", "bedrock"],
|
|
5722
|
+
cloudOnly: false
|
|
5723
|
+
},
|
|
5724
|
+
{
|
|
5725
|
+
id: "jetbrains",
|
|
5726
|
+
name: "JetBrains AI",
|
|
5727
|
+
vendorName: "JetBrains",
|
|
5728
|
+
imageId: "JetBrains",
|
|
5729
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=jetbrains.com&sz=128",
|
|
5730
|
+
iconBg: "#000000",
|
|
5731
|
+
iconColor: "#FFFFFF",
|
|
5732
|
+
description: "JetBrains AI Assistant & Junie IDE agent",
|
|
5733
|
+
officialDomains: ["jetbrains.com", "jetbrains.ai"],
|
|
5734
|
+
officialSchemes: ["jetbrains", "intellij", "pycharm", "webstorm", "goland"],
|
|
5735
|
+
claimKeywords: ["jetbrains", "intellij", "pycharm", "webstorm", "goland", "junie"],
|
|
5736
|
+
cloudOnly: false
|
|
5737
|
+
},
|
|
5738
|
+
{
|
|
5739
|
+
id: "sourcegraph",
|
|
5740
|
+
name: "Sourcegraph Amp / Cody",
|
|
5741
|
+
vendorName: "Sourcegraph",
|
|
5742
|
+
imageId: "Sourcegraph",
|
|
5743
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=sourcegraph.com&sz=128",
|
|
5744
|
+
iconBg: "#FF5543",
|
|
5745
|
+
iconColor: "#FFFFFF",
|
|
5746
|
+
description: "Sourcegraph Cody & Amp coding agent",
|
|
5747
|
+
officialDomains: ["sourcegraph.com", "ampcode.com"],
|
|
5748
|
+
officialSchemes: ["sourcegraph", "cody", "amp"],
|
|
5749
|
+
claimKeywords: ["sourcegraph", "cody", "ampcode"],
|
|
5750
|
+
cloudOnly: false
|
|
5751
|
+
},
|
|
5752
|
+
{
|
|
5753
|
+
id: "warp",
|
|
5754
|
+
name: "Warp",
|
|
5755
|
+
vendorName: "Warp",
|
|
5756
|
+
imageId: "Warp",
|
|
5757
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=warp.dev&sz=128",
|
|
5758
|
+
iconBg: "#01A4FF",
|
|
5759
|
+
iconColor: "#FFFFFF",
|
|
5760
|
+
description: "Warp intelligent terminal & agent mode",
|
|
5761
|
+
officialDomains: ["warp.dev", "app.warp.dev"],
|
|
5762
|
+
officialSchemes: ["warp"],
|
|
5763
|
+
claimKeywords: ["warp", "warp.dev", "warp terminal"],
|
|
5764
|
+
cloudOnly: false
|
|
5765
|
+
},
|
|
5766
|
+
{
|
|
5767
|
+
id: "librechat",
|
|
5768
|
+
name: "LibreChat",
|
|
5769
|
+
vendorName: "LibreChat",
|
|
5770
|
+
imageId: "LibreChat",
|
|
5771
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=librechat.ai&sz=128",
|
|
5772
|
+
iconBg: "#4F46E5",
|
|
5773
|
+
iconColor: "#FFFFFF",
|
|
5774
|
+
description: "LibreChat open-source AI chat & MCP platform",
|
|
5775
|
+
officialDomains: ["librechat.ai"],
|
|
5776
|
+
officialSchemes: ["librechat"],
|
|
5777
|
+
claimKeywords: ["librechat"],
|
|
5778
|
+
cloudOnly: false
|
|
5779
|
+
},
|
|
5780
|
+
{
|
|
5781
|
+
id: "open_webui",
|
|
5782
|
+
name: "Open WebUI",
|
|
5783
|
+
vendorName: "Open WebUI",
|
|
5784
|
+
imageId: "Open WebUI",
|
|
5785
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=openwebui.com&sz=128",
|
|
5786
|
+
iconBg: "#1F2937",
|
|
5787
|
+
iconColor: "#FFFFFF",
|
|
5788
|
+
description: "Open WebUI self-hosted AI interface",
|
|
5789
|
+
officialDomains: ["openwebui.com"],
|
|
5790
|
+
officialSchemes: ["open-webui", "openwebui"],
|
|
5791
|
+
claimKeywords: ["open-webui", "open webui", "openwebui"],
|
|
5792
|
+
cloudOnly: false
|
|
5793
|
+
},
|
|
5794
|
+
{
|
|
5795
|
+
id: "anythingllm",
|
|
5796
|
+
name: "AnythingLLM",
|
|
5797
|
+
vendorName: "Mintplex Labs",
|
|
5798
|
+
imageId: "AnythingLLM",
|
|
5799
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=anythingllm.com&sz=128",
|
|
5800
|
+
iconBg: "#2563EB",
|
|
5801
|
+
iconColor: "#FFFFFF",
|
|
5802
|
+
description: "AnythingLLM desktop & server MCP workspace",
|
|
5803
|
+
officialDomains: ["anythingllm.com", "useanything.com"],
|
|
5804
|
+
officialSchemes: ["anythingllm"],
|
|
5805
|
+
claimKeywords: ["anythingllm", "anything-llm"],
|
|
5806
|
+
cloudOnly: false
|
|
5807
|
+
},
|
|
5808
|
+
{
|
|
5809
|
+
id: "cherry_studio",
|
|
5810
|
+
name: "Cherry Studio",
|
|
5811
|
+
vendorName: "Cherry Studio",
|
|
5812
|
+
imageId: "Cherry Studio",
|
|
5813
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=cherry-ai.com&sz=128",
|
|
5814
|
+
iconBg: "#E11D48",
|
|
5815
|
+
iconColor: "#FFFFFF",
|
|
5816
|
+
description: "Cherry Studio desktop multi-model & MCP client",
|
|
5817
|
+
officialDomains: ["cherry-ai.com", "cherrystudio.ai"],
|
|
5818
|
+
officialSchemes: ["cherrystudio", "cherry-studio"],
|
|
5819
|
+
claimKeywords: ["cherry studio", "cherrystudio", "cherry-studio"],
|
|
5820
|
+
cloudOnly: false
|
|
5821
|
+
},
|
|
5822
|
+
{
|
|
5823
|
+
id: "lmstudio",
|
|
5824
|
+
name: "LM Studio",
|
|
5825
|
+
vendorName: "LM Studio",
|
|
5826
|
+
imageId: "LM Studio",
|
|
5827
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=lmstudio.ai&sz=128",
|
|
5828
|
+
iconBg: "#4338CA",
|
|
5829
|
+
iconColor: "#FFFFFF",
|
|
5830
|
+
description: "LM Studio local LLM runner & MCP host",
|
|
5831
|
+
officialDomains: ["lmstudio.ai"],
|
|
5832
|
+
officialSchemes: ["lmstudio", "lm-studio"],
|
|
5833
|
+
claimKeywords: ["lm studio", "lmstudio", "lm-studio"],
|
|
5834
|
+
cloudOnly: false
|
|
5835
|
+
},
|
|
5836
|
+
{
|
|
5837
|
+
id: "ollama",
|
|
5838
|
+
name: "Ollama",
|
|
5839
|
+
vendorName: "Ollama",
|
|
5840
|
+
imageId: "Ollama",
|
|
5841
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=ollama.com&sz=128",
|
|
5842
|
+
iconBg: "#111827",
|
|
5843
|
+
iconColor: "#FFFFFF",
|
|
5844
|
+
description: "Ollama local model runner & tool client",
|
|
5845
|
+
officialDomains: ["ollama.com", "ollama.ai"],
|
|
5846
|
+
officialSchemes: ["ollama"],
|
|
5847
|
+
claimKeywords: ["ollama"],
|
|
5848
|
+
cloudOnly: false
|
|
5849
|
+
},
|
|
5850
|
+
{
|
|
5851
|
+
id: "jan",
|
|
5852
|
+
name: "Jan",
|
|
5853
|
+
vendorName: "Jan.ai",
|
|
5854
|
+
imageId: "Jan",
|
|
5855
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=jan.ai&sz=128",
|
|
5856
|
+
iconBg: "#312E81",
|
|
5857
|
+
iconColor: "#FFFFFF",
|
|
5858
|
+
description: "Jan open-source desktop AI & MCP client",
|
|
5859
|
+
officialDomains: ["jan.ai"],
|
|
5860
|
+
officialSchemes: ["jan"],
|
|
5861
|
+
claimKeywords: ["jan.ai", "jan-ai"],
|
|
5862
|
+
cloudOnly: false
|
|
5863
|
+
},
|
|
5864
|
+
{
|
|
5865
|
+
id: "msty",
|
|
5866
|
+
name: "Msty",
|
|
5867
|
+
vendorName: "Msty",
|
|
5868
|
+
imageId: "Msty",
|
|
5869
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=msty.app&sz=128",
|
|
5870
|
+
iconBg: "#6D28D9",
|
|
5871
|
+
iconColor: "#FFFFFF",
|
|
5872
|
+
description: "Msty local & online AI model studio",
|
|
5873
|
+
officialDomains: ["msty.app"],
|
|
5874
|
+
officialSchemes: ["msty"],
|
|
5875
|
+
claimKeywords: ["msty", "msty.app"],
|
|
5876
|
+
cloudOnly: false
|
|
5877
|
+
},
|
|
5878
|
+
{
|
|
5879
|
+
id: "highlight",
|
|
5880
|
+
name: "Highlight AI",
|
|
5881
|
+
vendorName: "Highlight",
|
|
5882
|
+
imageId: "Highlight AI",
|
|
5883
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=highlightai.com&sz=128",
|
|
5884
|
+
iconBg: "#7C3AED",
|
|
5885
|
+
iconColor: "#FFFFFF",
|
|
5886
|
+
description: "Highlight desktop AI assistant & MCP client",
|
|
5887
|
+
officialDomains: ["highlightai.com", "highlight.ing"],
|
|
5888
|
+
officialSchemes: ["highlight"],
|
|
5889
|
+
claimKeywords: ["highlight ai", "highlightai", "highlight.ing"],
|
|
5890
|
+
cloudOnly: false
|
|
5891
|
+
},
|
|
5892
|
+
{
|
|
5893
|
+
id: "dust",
|
|
5894
|
+
name: "Dust",
|
|
5895
|
+
vendorName: "Dust.tt",
|
|
5896
|
+
imageId: "Dust",
|
|
5897
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=dust.tt&sz=128",
|
|
5898
|
+
iconBg: "#0EA5E9",
|
|
5899
|
+
iconColor: "#FFFFFF",
|
|
5900
|
+
description: "Dust enterprise AI agent platform & MCP client",
|
|
5901
|
+
officialDomains: ["dust.tt"],
|
|
5902
|
+
officialSchemes: ["dust"],
|
|
5903
|
+
claimKeywords: ["dust.tt", "dust"],
|
|
5904
|
+
cloudOnly: true
|
|
5905
|
+
},
|
|
5906
|
+
{
|
|
5907
|
+
id: "glean",
|
|
5908
|
+
name: "Glean",
|
|
5909
|
+
vendorName: "Glean",
|
|
5910
|
+
imageId: "Glean",
|
|
5911
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=glean.com&sz=128",
|
|
5912
|
+
iconBg: "#3B82F6",
|
|
5913
|
+
iconColor: "#FFFFFF",
|
|
5914
|
+
description: "Glean enterprise work AI & agent connector",
|
|
5915
|
+
officialDomains: ["glean.com", "app.glean.com"],
|
|
5916
|
+
officialSchemes: ["glean"],
|
|
5917
|
+
claimKeywords: ["glean"],
|
|
5918
|
+
cloudOnly: true
|
|
5919
|
+
},
|
|
5920
|
+
{
|
|
5921
|
+
id: "cohere",
|
|
5922
|
+
name: "Cohere Coral",
|
|
5923
|
+
vendorName: "Cohere",
|
|
5924
|
+
imageId: "Cohere",
|
|
5925
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=cohere.com&sz=128",
|
|
5926
|
+
iconBg: "#39594D",
|
|
5927
|
+
iconColor: "#FFFFFF",
|
|
5928
|
+
description: "Cohere Coral enterprise assistant & tool runner",
|
|
5929
|
+
officialDomains: ["cohere.com", "coral.cohere.com", "dashboard.cohere.com"],
|
|
5930
|
+
officialSchemes: ["cohere"],
|
|
5931
|
+
claimKeywords: ["cohere"],
|
|
5932
|
+
cloudOnly: true
|
|
5933
|
+
},
|
|
5934
|
+
{
|
|
5935
|
+
id: "huggingface",
|
|
5936
|
+
name: "HuggingChat",
|
|
5937
|
+
vendorName: "Hugging Face",
|
|
5938
|
+
imageId: "Hugging Face",
|
|
5939
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=huggingface.co&sz=128",
|
|
5940
|
+
iconBg: "#F59E0B",
|
|
5941
|
+
iconColor: "#FFFFFF",
|
|
5942
|
+
description: "Hugging Face Chat & Spaces MCP integration",
|
|
5943
|
+
officialDomains: ["huggingface.co", "hf.co", "hf.space"],
|
|
5944
|
+
officialSchemes: ["huggingface"],
|
|
5945
|
+
claimKeywords: ["huggingface", "hugging face", "huggingchat", "smolagents"],
|
|
5946
|
+
cloudOnly: false
|
|
5947
|
+
},
|
|
5948
|
+
{
|
|
5949
|
+
id: "langchain",
|
|
5950
|
+
name: "LangChain / LangGraph",
|
|
5951
|
+
vendorName: "LangChain",
|
|
5952
|
+
imageId: "LangChain",
|
|
5953
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=langchain.com&sz=128",
|
|
5954
|
+
iconBg: "#1C3C3C",
|
|
5955
|
+
iconColor: "#FFFFFF",
|
|
5956
|
+
description: "LangChain, LangGraph & LangSmith agent runtime",
|
|
5957
|
+
officialDomains: ["langchain.com", "smith.langchain.com"],
|
|
5958
|
+
officialSchemes: ["langchain", "langsmith"],
|
|
5959
|
+
claimKeywords: ["langchain", "langgraph", "langsmith"],
|
|
5960
|
+
cloudOnly: false
|
|
5961
|
+
},
|
|
5962
|
+
{
|
|
5963
|
+
id: "n8n",
|
|
5964
|
+
name: "n8n",
|
|
5965
|
+
vendorName: "n8n",
|
|
5966
|
+
imageId: "n8n",
|
|
5967
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=n8n.io&sz=128",
|
|
5968
|
+
iconBg: "#EA4B71",
|
|
5969
|
+
iconColor: "#FFFFFF",
|
|
5970
|
+
description: "n8n workflow automation & MCP AI agent node",
|
|
5971
|
+
officialDomains: ["n8n.io", "n8n.cloud"],
|
|
5972
|
+
officialSchemes: ["n8n"],
|
|
5973
|
+
claimKeywords: ["n8n"],
|
|
5974
|
+
cloudOnly: false
|
|
5975
|
+
},
|
|
5976
|
+
{
|
|
5977
|
+
id: "zapier",
|
|
5978
|
+
name: "Zapier",
|
|
5979
|
+
vendorName: "Zapier",
|
|
5980
|
+
imageId: "Zapier",
|
|
5981
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=zapier.com&sz=128",
|
|
5982
|
+
iconBg: "#FF4F00",
|
|
5983
|
+
iconColor: "#FFFFFF",
|
|
5984
|
+
description: "Zapier Central & MCP action integration",
|
|
5985
|
+
officialDomains: ["zapier.com", "mcp.zapier.com"],
|
|
5986
|
+
officialSchemes: ["zapier"],
|
|
5987
|
+
claimKeywords: ["zapier"],
|
|
5988
|
+
cloudOnly: true
|
|
5989
|
+
},
|
|
5990
|
+
{
|
|
5991
|
+
id: "make",
|
|
5992
|
+
name: "Make",
|
|
5993
|
+
vendorName: "Make",
|
|
5994
|
+
imageId: "Make",
|
|
5995
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=make.com&sz=128",
|
|
5996
|
+
iconBg: "#6D00CC",
|
|
5997
|
+
iconColor: "#FFFFFF",
|
|
5998
|
+
description: "Make scenario automation & MCP connector",
|
|
5999
|
+
officialDomains: ["make.com", "integromat.com"],
|
|
6000
|
+
officialSchemes: ["make"],
|
|
6001
|
+
claimKeywords: ["make.com", "integromat"],
|
|
6002
|
+
cloudOnly: true
|
|
6003
|
+
},
|
|
6004
|
+
{
|
|
6005
|
+
id: "postman",
|
|
6006
|
+
name: "Postman",
|
|
6007
|
+
vendorName: "Postman",
|
|
6008
|
+
imageId: "Postman",
|
|
6009
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=postman.com&sz=128",
|
|
6010
|
+
iconBg: "#FF6C37",
|
|
6011
|
+
iconColor: "#FFFFFF",
|
|
6012
|
+
description: "Postman API & MCP client inspector",
|
|
6013
|
+
officialDomains: ["postman.com", "getpostman.com", "oauth.pstmn.io"],
|
|
6014
|
+
officialSchemes: ["postman"],
|
|
6015
|
+
claimKeywords: ["postman", "pstmn"],
|
|
6016
|
+
cloudOnly: false
|
|
6017
|
+
},
|
|
6018
|
+
{
|
|
6019
|
+
id: "insomnia",
|
|
6020
|
+
name: "Insomnia",
|
|
6021
|
+
vendorName: "Kong",
|
|
6022
|
+
imageId: "Insomnia",
|
|
6023
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=insomnia.rest&sz=128",
|
|
6024
|
+
iconBg: "#4000BF",
|
|
6025
|
+
iconColor: "#FFFFFF",
|
|
6026
|
+
description: "Insomnia REST & MCP client",
|
|
6027
|
+
officialDomains: ["insomnia.rest"],
|
|
6028
|
+
officialSchemes: ["insomnia"],
|
|
6029
|
+
claimKeywords: ["insomnia"],
|
|
6030
|
+
cloudOnly: false
|
|
6031
|
+
},
|
|
6032
|
+
{
|
|
6033
|
+
id: "mcp_inspector",
|
|
6034
|
+
name: "MCP Inspector",
|
|
6035
|
+
vendorName: "Model Context Protocol",
|
|
6036
|
+
imageId: "Model Context Protocol",
|
|
6037
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=modelcontextprotocol.io&sz=128",
|
|
6038
|
+
iconBg: "#0F172A",
|
|
6039
|
+
iconColor: "#FFFFFF",
|
|
6040
|
+
description: "Official Model Context Protocol Inspector & SDK debugger",
|
|
6041
|
+
officialDomains: ["modelcontextprotocol.io"],
|
|
6042
|
+
officialSchemes: ["mcp-inspector", "mcp"],
|
|
6043
|
+
claimKeywords: ["mcp-inspector", "mcp inspector", "modelcontextprotocol"],
|
|
6044
|
+
cloudOnly: false
|
|
6045
|
+
},
|
|
6046
|
+
{
|
|
6047
|
+
id: "slack",
|
|
6048
|
+
name: "Slack",
|
|
6049
|
+
vendorName: "Salesforce / Slack",
|
|
6050
|
+
imageId: "Slack",
|
|
6051
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=slack.com&sz=128",
|
|
6052
|
+
iconBg: "#4A154B",
|
|
6053
|
+
iconColor: "#FFFFFF",
|
|
6054
|
+
description: "Slack assistant & workspace agent connector",
|
|
6055
|
+
officialDomains: ["slack.com"],
|
|
6056
|
+
officialSchemes: ["slack"],
|
|
6057
|
+
claimKeywords: ["slack"],
|
|
6058
|
+
cloudOnly: true
|
|
6059
|
+
},
|
|
6060
|
+
{
|
|
6061
|
+
id: "notion",
|
|
6062
|
+
name: "Notion AI",
|
|
6063
|
+
vendorName: "Notion",
|
|
6064
|
+
imageId: "Notion",
|
|
6065
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=notion.so&sz=128",
|
|
6066
|
+
iconBg: "#000000",
|
|
6067
|
+
iconColor: "#FFFFFF",
|
|
6068
|
+
description: "Notion AI workspace & MCP integration",
|
|
6069
|
+
officialDomains: ["notion.so", "notion.com"],
|
|
6070
|
+
officialSchemes: ["notion"],
|
|
6071
|
+
claimKeywords: ["notion"],
|
|
6072
|
+
cloudOnly: true
|
|
6073
|
+
},
|
|
6074
|
+
{
|
|
6075
|
+
id: "linear",
|
|
6076
|
+
name: "Linear",
|
|
6077
|
+
vendorName: "Linear",
|
|
6078
|
+
imageId: "Linear",
|
|
6079
|
+
logoUrl: "https://www.google.com/s2/favicons?domain=linear.app&sz=128",
|
|
6080
|
+
iconBg: "#5E6AD2",
|
|
6081
|
+
iconColor: "#FFFFFF",
|
|
6082
|
+
description: "Linear agent & issue automation connector",
|
|
6083
|
+
officialDomains: ["linear.app"],
|
|
6084
|
+
officialSchemes: ["linear"],
|
|
6085
|
+
claimKeywords: ["linear.app", "linear"],
|
|
6086
|
+
cloudOnly: true
|
|
6087
|
+
},
|
|
6088
|
+
{
|
|
6089
|
+
id: "shuffle_agent",
|
|
6090
|
+
name: "Shuffle Agent",
|
|
6091
|
+
vendorName: "Shuffle",
|
|
6092
|
+
imageId: "Shuffle",
|
|
6093
|
+
logoUrl: "https://shuffler.io/images/logos/orange_logo.png",
|
|
6094
|
+
iconBg: "#f85f38",
|
|
6095
|
+
iconColor: "#FFFFFF",
|
|
6096
|
+
description: "Shuffle Agent runner requesting access to execute tools and actions on your behalf.",
|
|
6097
|
+
officialDomains: ["shuffler.io", "shuffle.security"],
|
|
6098
|
+
officialSchemes: ["shuffle"],
|
|
6099
|
+
claimKeywords: ["shuffle agent", "shuffle_agent", "shuffler"],
|
|
6100
|
+
cloudOnly: false
|
|
6101
|
+
}
|
|
6102
|
+
];
|
|
6103
|
+
var normKey = (s) => (s || "").trim().toLowerCase().replace(/[\s_\-]+/g, "_");
|
|
6104
|
+
var findOAuthVendorSpec = (query) => {
|
|
6105
|
+
if (!query) return null;
|
|
6106
|
+
const qNorm = normKey(query);
|
|
6107
|
+
const qLower = query.trim().toLowerCase();
|
|
6108
|
+
if (!qNorm) return null;
|
|
6109
|
+
for (const spec of OAUTH_VENDOR_REGISTRY) {
|
|
6110
|
+
if (normKey(spec.id) === qNorm || normKey(spec.name) === qNorm || normKey(spec.imageId) === qNorm || normKey(spec.vendorName) === qNorm) {
|
|
6111
|
+
return spec;
|
|
6112
|
+
}
|
|
6113
|
+
}
|
|
6114
|
+
for (const spec of OAUTH_VENDOR_REGISTRY) {
|
|
6115
|
+
for (const kw of spec.claimKeywords) {
|
|
6116
|
+
if (qLower.includes(kw.toLowerCase())) {
|
|
6117
|
+
return spec;
|
|
6118
|
+
}
|
|
6119
|
+
}
|
|
6120
|
+
}
|
|
6121
|
+
return null;
|
|
6122
|
+
};
|
|
6123
|
+
var getOAuthVendorLogo = (nameOrId) => {
|
|
6124
|
+
const spec = findOAuthVendorSpec(nameOrId);
|
|
6125
|
+
return spec?.logoUrl || "";
|
|
6126
|
+
};
|
|
6127
|
+
|
|
6128
|
+
// ../Shuffle-Core/components/AppFallbackIcon.tsx
|
|
5358
6129
|
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
5359
6130
|
var norm = (s) => s.toLowerCase().replace(/[\s_\-]+/g, "_");
|
|
5360
6131
|
var STORAGE_KEY2 = "shuffle:app-icon-cache:v1";
|
|
@@ -5393,6 +6164,7 @@ var lookupImageByName = (name) => {
|
|
|
5393
6164
|
const builtInImg = getBuiltInAppImage(key) || getBuiltInAppImage(name);
|
|
5394
6165
|
if (builtInImg) return Promise.resolve(builtInImg);
|
|
5395
6166
|
}
|
|
6167
|
+
const vendorLogo = getOAuthVendorLogo(name);
|
|
5396
6168
|
const hit = lookupCache.get(key);
|
|
5397
6169
|
if (hit) return hit;
|
|
5398
6170
|
const persisted = readPersistedFresh(key);
|
|
@@ -5410,11 +6182,11 @@ var lookupImageByName = (name) => {
|
|
|
5410
6182
|
});
|
|
5411
6183
|
const hits = res?.results?.[0]?.hits || [];
|
|
5412
6184
|
const match = hits.find((h) => h.name && norm(h.name) === key) || hits[0];
|
|
5413
|
-
const url = match?.image_url || "";
|
|
6185
|
+
const url = match?.image_url || vendorLogo || "";
|
|
5414
6186
|
if (url) writePersisted(key, url);
|
|
5415
6187
|
return url;
|
|
5416
6188
|
} catch {
|
|
5417
|
-
return "";
|
|
6189
|
+
return vendorLogo || "";
|
|
5418
6190
|
}
|
|
5419
6191
|
})();
|
|
5420
6192
|
lookupCache.set(key, promise);
|
|
@@ -5428,7 +6200,7 @@ var resolveInitialSrc = (imageUrl, name) => {
|
|
|
5428
6200
|
const builtInImg = getBuiltInAppImage(key) || getBuiltInAppImage(name || "");
|
|
5429
6201
|
if (builtInImg) return builtInImg;
|
|
5430
6202
|
}
|
|
5431
|
-
return readPersistedFresh(key) || "";
|
|
6203
|
+
return readPersistedFresh(key) || getOAuthVendorLogo(name) || "";
|
|
5432
6204
|
};
|
|
5433
6205
|
var colorFromName = (name) => {
|
|
5434
6206
|
let h = 0;
|