@everworker/oneringai 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -340,6 +340,10 @@ var init_pkce = __esm({
340
340
  });
341
341
 
342
342
  // src/connectors/oauth/flows/AuthCodePKCE.ts
343
+ function isPublicClientError(responseBody) {
344
+ const lower = responseBody.toLowerCase();
345
+ return lower.includes("aadsts700025") || lower.includes("invalid_client") && lower.includes("public");
346
+ }
343
347
  var AuthCodePKCEFlow;
344
348
  var init_AuthCodePKCE = __esm({
345
349
  "src/connectors/oauth/flows/AuthCodePKCE.ts"() {
@@ -435,14 +439,32 @@ var init_AuthCodePKCE = __esm({
435
439
  if (this.config.usePKCE !== false && verifierData) {
436
440
  params.append("code_verifier", verifierData.verifier);
437
441
  }
438
- const response = await fetch(this.config.tokenUrl, {
442
+ let response = await fetch(this.config.tokenUrl, {
439
443
  method: "POST",
440
444
  headers: {
441
445
  "Content-Type": "application/x-www-form-urlencoded"
442
446
  },
443
447
  body: params
444
448
  });
445
- if (!response.ok) {
449
+ if (!response.ok && this.config.clientSecret) {
450
+ const errorText = await response.text();
451
+ if (isPublicClientError(errorText)) {
452
+ params.delete("client_secret");
453
+ response = await fetch(this.config.tokenUrl, {
454
+ method: "POST",
455
+ headers: {
456
+ "Content-Type": "application/x-www-form-urlencoded"
457
+ },
458
+ body: params
459
+ });
460
+ if (!response.ok) {
461
+ const retryError = await response.text();
462
+ throw new Error(`Token exchange failed: ${response.status} ${response.statusText} - ${retryError}`);
463
+ }
464
+ } else {
465
+ throw new Error(`Token exchange failed: ${response.status} ${response.statusText} - ${errorText}`);
466
+ }
467
+ } else if (!response.ok) {
446
468
  const error = await response.text();
447
469
  throw new Error(`Token exchange failed: ${response.status} ${response.statusText} - ${error}`);
448
470
  }
@@ -488,14 +510,32 @@ var init_AuthCodePKCE = __esm({
488
510
  if (this.config.clientSecret) {
489
511
  params.append("client_secret", this.config.clientSecret);
490
512
  }
491
- const response = await fetch(this.config.tokenUrl, {
513
+ let response = await fetch(this.config.tokenUrl, {
492
514
  method: "POST",
493
515
  headers: {
494
516
  "Content-Type": "application/x-www-form-urlencoded"
495
517
  },
496
518
  body: params
497
519
  });
498
- if (!response.ok) {
520
+ if (!response.ok && this.config.clientSecret) {
521
+ const errorText = await response.text();
522
+ if (isPublicClientError(errorText)) {
523
+ params.delete("client_secret");
524
+ response = await fetch(this.config.tokenUrl, {
525
+ method: "POST",
526
+ headers: {
527
+ "Content-Type": "application/x-www-form-urlencoded"
528
+ },
529
+ body: params
530
+ });
531
+ if (!response.ok) {
532
+ const retryError = await response.text();
533
+ throw new Error(`Token refresh failed: ${response.status} ${response.statusText} - ${retryError}`);
534
+ }
535
+ } else {
536
+ throw new Error(`Token refresh failed: ${response.status} ${response.statusText} - ${errorText}`);
537
+ }
538
+ } else if (!response.ok) {
499
539
  const error = await response.text();
500
540
  throw new Error(`Token refresh failed: ${response.status} ${response.statusText} - ${error}`);
501
541
  }
@@ -42928,6 +42968,23 @@ var SERVICE_DEFINITIONS = [
42928
42968
  baseURL: "https://api-m.paypal.com/v2",
42929
42969
  docsURL: "https://developer.paypal.com/docs/api/"
42930
42970
  },
42971
+ {
42972
+ id: "quickbooks",
42973
+ name: "QuickBooks",
42974
+ category: "payments",
42975
+ urlPattern: /quickbooks\.api\.intuit\.com|intuit\.com.*quickbooks/i,
42976
+ baseURL: "https://quickbooks.api.intuit.com/v3",
42977
+ docsURL: "https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account",
42978
+ commonScopes: ["com.intuit.quickbooks.accounting"]
42979
+ },
42980
+ {
42981
+ id: "ramp",
42982
+ name: "Ramp",
42983
+ category: "payments",
42984
+ urlPattern: /api\.ramp\.com/i,
42985
+ baseURL: "https://api.ramp.com/developer/v1",
42986
+ docsURL: "https://docs.ramp.com/reference"
42987
+ },
42931
42988
  // ============ Cloud Providers ============
42932
42989
  {
42933
42990
  id: "aws",
@@ -44353,7 +44410,9 @@ function getVendorInfo(vendorId) {
44353
44410
  name: a.name,
44354
44411
  type: a.type,
44355
44412
  description: a.description,
44356
- requiredFields: a.requiredFields
44413
+ requiredFields: a.requiredFields,
44414
+ scopes: a.scopes,
44415
+ scopeDescriptions: a.scopeDescriptions
44357
44416
  }))
44358
44417
  };
44359
44418
  }
@@ -44369,7 +44428,9 @@ function listVendors() {
44369
44428
  name: a.name,
44370
44429
  type: a.type,
44371
44430
  description: a.description,
44372
- requiredFields: a.requiredFields
44431
+ requiredFields: a.requiredFields,
44432
+ scopes: a.scopes,
44433
+ scopeDescriptions: a.scopeDescriptions
44373
44434
  }))
44374
44435
  }));
44375
44436
  }
@@ -44418,14 +44479,49 @@ var microsoftTemplate = {
44418
44479
  scopes: [
44419
44480
  "User.Read",
44420
44481
  "Mail.Read",
44482
+ "Mail.ReadWrite",
44421
44483
  "Mail.Send",
44422
- "Files.ReadWrite",
44423
44484
  "Calendars.ReadWrite",
44485
+ "Contacts.Read",
44486
+ "Contacts.ReadWrite",
44487
+ "Files.ReadWrite",
44488
+ "Sites.Read.All",
44489
+ "Sites.ReadWrite.All",
44490
+ "Notes.Read",
44491
+ "Notes.ReadWrite",
44492
+ "Tasks.ReadWrite",
44424
44493
  "ChannelMessage.Send",
44425
44494
  "Team.ReadBasic.All",
44426
44495
  "Chat.ReadWrite",
44496
+ "People.Read",
44497
+ "Presence.Read",
44498
+ "Directory.Read.All",
44499
+ "BookingsAppointment.ReadWrite.All",
44427
44500
  "offline_access"
44428
- ]
44501
+ ],
44502
+ scopeDescriptions: {
44503
+ "User.Read": "Read your profile",
44504
+ "Mail.Read": "Read your email",
44505
+ "Mail.ReadWrite": "Read and write your email",
44506
+ "Mail.Send": "Send email on your behalf",
44507
+ "Calendars.ReadWrite": "Read and write your calendar",
44508
+ "Contacts.Read": "Read your contacts",
44509
+ "Contacts.ReadWrite": "Read and write your contacts",
44510
+ "Files.ReadWrite": "Read and write your files (OneDrive)",
44511
+ "Sites.Read.All": "Read SharePoint sites",
44512
+ "Sites.ReadWrite.All": "Read and write SharePoint sites",
44513
+ "Notes.Read": "Read your OneNote notebooks",
44514
+ "Notes.ReadWrite": "Read and write your OneNote notebooks",
44515
+ "Tasks.ReadWrite": "Read and write your tasks (To Do / Planner)",
44516
+ "ChannelMessage.Send": "Send messages in Teams channels",
44517
+ "Team.ReadBasic.All": "Read Teams basic info",
44518
+ "Chat.ReadWrite": "Read and write Teams chats",
44519
+ "People.Read": "Read your relevant people list",
44520
+ "Presence.Read": "Read user presence information",
44521
+ "Directory.Read.All": "Read directory data (Azure AD)",
44522
+ "BookingsAppointment.ReadWrite.All": "Manage Bookings appointments",
44523
+ "offline_access": "Maintain access (refresh token)"
44524
+ }
44429
44525
  },
44430
44526
  {
44431
44527
  id: "client-credentials",
@@ -44440,7 +44536,10 @@ var microsoftTemplate = {
44440
44536
  flow: "client_credentials",
44441
44537
  tokenUrl: "https://login.microsoftonline.com/{tenantId}/oauth2/v2.0/token"
44442
44538
  },
44443
- scopes: ["https://graph.microsoft.com/.default"]
44539
+ scopes: ["https://graph.microsoft.com/.default"],
44540
+ scopeDescriptions: {
44541
+ "https://graph.microsoft.com/.default": "All permissions granted to the app registration"
44542
+ }
44444
44543
  }
44445
44544
  ]
44446
44545
  };
@@ -44474,9 +44573,24 @@ var googleTemplate = {
44474
44573
  "https://www.googleapis.com/auth/drive",
44475
44574
  "https://www.googleapis.com/auth/calendar",
44476
44575
  "https://www.googleapis.com/auth/gmail.readonly",
44576
+ "https://www.googleapis.com/auth/gmail.send",
44477
44577
  "https://www.googleapis.com/auth/spreadsheets",
44478
- "https://www.googleapis.com/auth/documents"
44479
- ]
44578
+ "https://www.googleapis.com/auth/documents",
44579
+ "https://www.googleapis.com/auth/contacts.readonly",
44580
+ "https://www.googleapis.com/auth/tasks",
44581
+ "https://www.googleapis.com/auth/admin.directory.user.readonly"
44582
+ ],
44583
+ scopeDescriptions: {
44584
+ "https://www.googleapis.com/auth/drive": "Read and write Google Drive files",
44585
+ "https://www.googleapis.com/auth/calendar": "Read and write Google Calendar",
44586
+ "https://www.googleapis.com/auth/gmail.readonly": "Read Gmail messages",
44587
+ "https://www.googleapis.com/auth/gmail.send": "Send Gmail messages",
44588
+ "https://www.googleapis.com/auth/spreadsheets": "Read and write Google Sheets",
44589
+ "https://www.googleapis.com/auth/documents": "Read and write Google Docs",
44590
+ "https://www.googleapis.com/auth/contacts.readonly": "Read Google Contacts",
44591
+ "https://www.googleapis.com/auth/tasks": "Read and write Google Tasks",
44592
+ "https://www.googleapis.com/auth/admin.directory.user.readonly": "Read user directory (Admin)"
44593
+ }
44480
44594
  },
44481
44595
  {
44482
44596
  id: "service-account",
@@ -44495,7 +44609,11 @@ var googleTemplate = {
44495
44609
  scopes: [
44496
44610
  "https://www.googleapis.com/auth/cloud-platform",
44497
44611
  "https://www.googleapis.com/auth/drive"
44498
- ]
44612
+ ],
44613
+ scopeDescriptions: {
44614
+ "https://www.googleapis.com/auth/cloud-platform": "Full access to Google Cloud Platform",
44615
+ "https://www.googleapis.com/auth/drive": "Read and write Google Drive files"
44616
+ }
44499
44617
  }
44500
44618
  ]
44501
44619
  };
@@ -44537,7 +44655,19 @@ var slackTemplate = {
44537
44655
  authorizationUrl: "https://slack.com/oauth/v2/authorize",
44538
44656
  tokenUrl: "https://slack.com/api/oauth.v2.access"
44539
44657
  },
44540
- scopes: ["chat:write", "channels:read", "users:read", "im:write", "groups:read"]
44658
+ scopes: ["chat:write", "channels:read", "users:read", "im:write", "groups:read", "files:read", "files:write", "reactions:read", "reactions:write", "team:read"],
44659
+ scopeDescriptions: {
44660
+ "chat:write": "Send messages as the app",
44661
+ "channels:read": "View basic channel info",
44662
+ "users:read": "View people in the workspace",
44663
+ "im:write": "Send direct messages",
44664
+ "groups:read": "View basic private channel info",
44665
+ "files:read": "View files shared in channels",
44666
+ "files:write": "Upload and manage files",
44667
+ "reactions:read": "View emoji reactions",
44668
+ "reactions:write": "Add and remove emoji reactions",
44669
+ "team:read": "View workspace info"
44670
+ }
44541
44671
  }
44542
44672
  ]
44543
44673
  };
@@ -44578,7 +44708,16 @@ var discordTemplate = {
44578
44708
  authorizationUrl: "https://discord.com/api/oauth2/authorize",
44579
44709
  tokenUrl: "https://discord.com/api/oauth2/token"
44580
44710
  },
44581
- scopes: ["identify", "guilds", "guilds.members.read", "messages.read"]
44711
+ scopes: ["identify", "email", "guilds", "guilds.members.read", "messages.read", "bot", "connections"],
44712
+ scopeDescriptions: {
44713
+ "identify": "Access your username and avatar",
44714
+ "email": "Access your email address",
44715
+ "guilds": "View your server list",
44716
+ "guilds.members.read": "Read server member info",
44717
+ "messages.read": "Read messages in accessible channels",
44718
+ "bot": "Add a bot to your servers",
44719
+ "connections": "View your connected accounts"
44720
+ }
44582
44721
  }
44583
44722
  ]
44584
44723
  };
@@ -44645,7 +44784,18 @@ var githubTemplate = {
44645
44784
  authorizationUrl: "https://github.com/login/oauth/authorize",
44646
44785
  tokenUrl: "https://github.com/login/oauth/access_token"
44647
44786
  },
44648
- scopes: ["repo", "read:user", "read:org", "workflow", "gist"]
44787
+ scopes: ["repo", "read:user", "user:email", "read:org", "workflow", "gist", "notifications", "delete_repo", "admin:org"],
44788
+ scopeDescriptions: {
44789
+ "repo": "Full control of private repositories",
44790
+ "read:user": "Read user profile data",
44791
+ "user:email": "Access user email addresses",
44792
+ "read:org": "Read org and team membership",
44793
+ "workflow": "Update GitHub Actions workflows",
44794
+ "gist": "Create and manage gists",
44795
+ "notifications": "Access notifications",
44796
+ "delete_repo": "Delete repositories",
44797
+ "admin:org": "Full control of orgs and teams"
44798
+ }
44649
44799
  },
44650
44800
  {
44651
44801
  id: "github-app",
@@ -44700,7 +44850,13 @@ var gitlabTemplate = {
44700
44850
  authorizationUrl: "https://gitlab.com/oauth/authorize",
44701
44851
  tokenUrl: "https://gitlab.com/oauth/token"
44702
44852
  },
44703
- scopes: ["api", "read_user", "read_repository", "write_repository"]
44853
+ scopes: ["api", "read_user", "read_repository", "write_repository"],
44854
+ scopeDescriptions: {
44855
+ "api": "Full API access",
44856
+ "read_user": "Read user profile",
44857
+ "read_repository": "Read repository contents",
44858
+ "write_repository": "Write to repositories"
44859
+ }
44704
44860
  }
44705
44861
  ]
44706
44862
  };
@@ -44742,7 +44898,14 @@ var jiraTemplate = {
44742
44898
  authorizationUrl: "https://auth.atlassian.com/authorize",
44743
44899
  tokenUrl: "https://auth.atlassian.com/oauth/token"
44744
44900
  },
44745
- scopes: ["read:jira-work", "write:jira-work", "read:jira-user"]
44901
+ scopes: ["read:jira-work", "write:jira-work", "read:jira-user", "manage:jira-project", "manage:jira-configuration"],
44902
+ scopeDescriptions: {
44903
+ "read:jira-work": "Read issues, projects, boards",
44904
+ "write:jira-work": "Create and update issues",
44905
+ "read:jira-user": "Read user information",
44906
+ "manage:jira-project": "Manage projects and components",
44907
+ "manage:jira-configuration": "Manage Jira settings"
44908
+ }
44746
44909
  }
44747
44910
  ]
44748
44911
  };
@@ -44782,7 +44945,14 @@ var confluenceTemplate = {
44782
44945
  authorizationUrl: "https://auth.atlassian.com/authorize",
44783
44946
  tokenUrl: "https://auth.atlassian.com/oauth/token"
44784
44947
  },
44785
- scopes: ["read:confluence-content.all", "write:confluence-content", "read:confluence-space.summary"]
44948
+ scopes: ["read:confluence-content.all", "write:confluence-content", "read:confluence-space.summary", "write:confluence-space", "read:confluence-user"],
44949
+ scopeDescriptions: {
44950
+ "read:confluence-content.all": "Read all pages and blog posts",
44951
+ "write:confluence-content": "Create and update pages",
44952
+ "read:confluence-space.summary": "Read space summaries",
44953
+ "write:confluence-space": "Create and manage spaces",
44954
+ "read:confluence-user": "Read user information"
44955
+ }
44786
44956
  }
44787
44957
  ]
44788
44958
  };
@@ -44821,7 +44991,16 @@ var bitbucketTemplate = {
44821
44991
  authorizationUrl: "https://bitbucket.org/site/oauth2/authorize",
44822
44992
  tokenUrl: "https://bitbucket.org/site/oauth2/access_token"
44823
44993
  },
44824
- scopes: ["repository", "pullrequest", "account"]
44994
+ scopes: ["repository", "repository:write", "pullrequest", "pullrequest:write", "account", "pipeline", "wiki"],
44995
+ scopeDescriptions: {
44996
+ "repository": "Read repositories",
44997
+ "repository:write": "Write to repositories",
44998
+ "pullrequest": "Read pull requests",
44999
+ "pullrequest:write": "Create and update pull requests",
45000
+ "account": "Read account information",
45001
+ "pipeline": "Access Pipelines (CI/CD)",
45002
+ "wiki": "Access repository wiki"
45003
+ }
44825
45004
  }
44826
45005
  ]
44827
45006
  };
@@ -44861,7 +45040,12 @@ var trelloTemplate = {
44861
45040
  authorizationUrl: "https://trello.com/1/authorize",
44862
45041
  tokenUrl: "https://trello.com/1/OAuthGetAccessToken"
44863
45042
  },
44864
- scopes: ["read", "write", "account"]
45043
+ scopes: ["read", "write", "account"],
45044
+ scopeDescriptions: {
45045
+ "read": "Read boards, lists, and cards",
45046
+ "write": "Create and update boards, lists, and cards",
45047
+ "account": "Read member information"
45048
+ }
44865
45049
  }
44866
45050
  ]
44867
45051
  };
@@ -45056,7 +45240,15 @@ var salesforceTemplate = {
45056
45240
  authorizationUrl: "https://login.salesforce.com/services/oauth2/authorize",
45057
45241
  tokenUrl: "https://login.salesforce.com/services/oauth2/token"
45058
45242
  },
45059
- scopes: ["api", "refresh_token", "offline_access"]
45243
+ scopes: ["api", "refresh_token", "offline_access", "chatter_api", "wave_api", "full"],
45244
+ scopeDescriptions: {
45245
+ "api": "Access and manage your data",
45246
+ "refresh_token": "Maintain access with refresh tokens",
45247
+ "offline_access": "Access data while you are offline",
45248
+ "chatter_api": "Access Chatter feeds and posts",
45249
+ "wave_api": "Access Analytics (Wave) API",
45250
+ "full": "Full access to all data"
45251
+ }
45060
45252
  },
45061
45253
  {
45062
45254
  id: "jwt-bearer",
@@ -45111,7 +45303,26 @@ var hubspotTemplate = {
45111
45303
  authorizationUrl: "https://app.hubspot.com/oauth/authorize",
45112
45304
  tokenUrl: "https://api.hubapi.com/oauth/v1/token"
45113
45305
  },
45114
- scopes: ["crm.objects.contacts.read", "crm.objects.contacts.write", "crm.objects.companies.read"]
45306
+ scopes: [
45307
+ "crm.objects.contacts.read",
45308
+ "crm.objects.contacts.write",
45309
+ "crm.objects.companies.read",
45310
+ "crm.objects.companies.write",
45311
+ "crm.objects.deals.read",
45312
+ "crm.objects.deals.write",
45313
+ "tickets",
45314
+ "e-commerce"
45315
+ ],
45316
+ scopeDescriptions: {
45317
+ "crm.objects.contacts.read": "Read contacts",
45318
+ "crm.objects.contacts.write": "Create and update contacts",
45319
+ "crm.objects.companies.read": "Read companies",
45320
+ "crm.objects.companies.write": "Create and update companies",
45321
+ "crm.objects.deals.read": "Read deals",
45322
+ "crm.objects.deals.write": "Create and update deals",
45323
+ "tickets": "Read and write support tickets",
45324
+ "e-commerce": "Access e-commerce data (products, line items)"
45325
+ }
45115
45326
  }
45116
45327
  ]
45117
45328
  };
@@ -45224,6 +45435,86 @@ var paypalTemplate = {
45224
45435
  ]
45225
45436
  };
45226
45437
 
45438
+ // src/connectors/vendors/templates/quickbooks.ts
45439
+ var quickbooksTemplate = {
45440
+ id: "quickbooks",
45441
+ name: "QuickBooks",
45442
+ serviceType: "quickbooks",
45443
+ baseURL: "https://quickbooks.api.intuit.com/v3",
45444
+ docsURL: "https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/account",
45445
+ credentialsSetupURL: "https://developer.intuit.com/app/developer/dashboard",
45446
+ category: "payments",
45447
+ notes: "Use sandbox URL (sandbox-quickbooks.api.intuit.com) for testing. Requires company/realm ID in API paths.",
45448
+ authTemplates: [
45449
+ {
45450
+ id: "oauth-user",
45451
+ name: "OAuth (User Authorization)",
45452
+ type: "oauth",
45453
+ flow: "authorization_code",
45454
+ description: "Standard OAuth 2.0 flow for accessing QuickBooks on behalf of a user. Create an app at developer.intuit.com",
45455
+ requiredFields: ["clientId", "clientSecret", "redirectUri"],
45456
+ optionalFields: ["scope"],
45457
+ defaults: {
45458
+ type: "oauth",
45459
+ flow: "authorization_code",
45460
+ authorizationUrl: "https://appcenter.intuit.com/connect/oauth2",
45461
+ tokenUrl: "https://oauth.platform.intuit.com/oauth2/v1/tokens/bearer"
45462
+ },
45463
+ scopes: ["com.intuit.quickbooks.accounting", "com.intuit.quickbooks.payment"]
45464
+ }
45465
+ ]
45466
+ };
45467
+
45468
+ // src/connectors/vendors/templates/ramp.ts
45469
+ var rampTemplate = {
45470
+ id: "ramp",
45471
+ name: "Ramp",
45472
+ serviceType: "ramp",
45473
+ baseURL: "https://api.ramp.com/developer/v1",
45474
+ docsURL: "https://docs.ramp.com",
45475
+ credentialsSetupURL: "https://app.ramp.com/settings/developer",
45476
+ category: "payments",
45477
+ authTemplates: [
45478
+ {
45479
+ id: "oauth-client-credentials",
45480
+ name: "OAuth (Client Credentials)",
45481
+ type: "oauth",
45482
+ flow: "client_credentials",
45483
+ description: "App-level authentication using client credentials. Create an API application in Ramp developer settings",
45484
+ requiredFields: ["clientId", "clientSecret"],
45485
+ defaults: {
45486
+ type: "oauth",
45487
+ flow: "client_credentials",
45488
+ tokenUrl: "https://api.ramp.com/developer/v1/token"
45489
+ }
45490
+ },
45491
+ {
45492
+ id: "oauth-user",
45493
+ name: "OAuth (User Authorization)",
45494
+ type: "oauth",
45495
+ flow: "authorization_code",
45496
+ description: "OAuth 2.0 authorization code flow for accessing Ramp on behalf of a user",
45497
+ requiredFields: ["clientId", "clientSecret", "redirectUri"],
45498
+ optionalFields: ["scope"],
45499
+ defaults: {
45500
+ type: "oauth",
45501
+ flow: "authorization_code",
45502
+ authorizationUrl: "https://app.ramp.com/v1/authorize",
45503
+ tokenUrl: "https://api.ramp.com/developer/v1/token"
45504
+ },
45505
+ scopes: [
45506
+ "transactions:read",
45507
+ "users:read",
45508
+ "users:write",
45509
+ "cards:read",
45510
+ "cards:write",
45511
+ "departments:read",
45512
+ "reimbursements:read"
45513
+ ]
45514
+ }
45515
+ ]
45516
+ };
45517
+
45227
45518
  // src/connectors/vendors/templates/aws.ts
45228
45519
  var awsTemplate = {
45229
45520
  id: "aws",
@@ -45276,7 +45567,16 @@ var dropboxTemplate = {
45276
45567
  tokenUrl: "https://api.dropboxapi.com/oauth2/token",
45277
45568
  usePKCE: true
45278
45569
  },
45279
- scopes: ["files.content.read", "files.content.write", "files.metadata.read"]
45570
+ scopes: ["files.content.read", "files.content.write", "files.metadata.read", "files.metadata.write", "sharing.read", "sharing.write", "account_info.read"],
45571
+ scopeDescriptions: {
45572
+ "files.content.read": "Read file contents",
45573
+ "files.content.write": "Upload and modify files",
45574
+ "files.metadata.read": "Read file and folder metadata",
45575
+ "files.metadata.write": "Modify file and folder metadata",
45576
+ "sharing.read": "View sharing settings",
45577
+ "sharing.write": "Manage sharing settings",
45578
+ "account_info.read": "Read account information"
45579
+ }
45280
45580
  }
45281
45581
  ]
45282
45582
  };
@@ -45304,6 +45604,13 @@ var boxTemplate = {
45304
45604
  flow: "authorization_code",
45305
45605
  authorizationUrl: "https://account.box.com/api/oauth2/authorize",
45306
45606
  tokenUrl: "https://api.box.com/oauth2/token"
45607
+ },
45608
+ scopes: ["root_readwrite", "manage_users", "manage_groups", "manage_enterprise"],
45609
+ scopeDescriptions: {
45610
+ "root_readwrite": "Read and write all files and folders",
45611
+ "manage_users": "Manage enterprise users",
45612
+ "manage_groups": "Manage enterprise groups",
45613
+ "manage_enterprise": "Manage enterprise settings"
45307
45614
  }
45308
45615
  },
45309
45616
  {
@@ -45480,6 +45787,11 @@ var pagerdutyTemplate = {
45480
45787
  flow: "authorization_code",
45481
45788
  authorizationUrl: "https://app.pagerduty.com/oauth/authorize",
45482
45789
  tokenUrl: "https://app.pagerduty.com/oauth/token"
45790
+ },
45791
+ scopes: ["read", "write"],
45792
+ scopeDescriptions: {
45793
+ "read": "Read incidents, services, and schedules",
45794
+ "write": "Create and update incidents and services"
45483
45795
  }
45484
45796
  }
45485
45797
  ]
@@ -45518,6 +45830,14 @@ var sentryTemplate = {
45518
45830
  flow: "authorization_code",
45519
45831
  authorizationUrl: "https://sentry.io/oauth/authorize/",
45520
45832
  tokenUrl: "https://sentry.io/oauth/token/"
45833
+ },
45834
+ scopes: ["project:read", "project:write", "event:read", "org:read", "member:read"],
45835
+ scopeDescriptions: {
45836
+ "project:read": "Read project settings",
45837
+ "project:write": "Manage project settings",
45838
+ "event:read": "Read error events and issues",
45839
+ "org:read": "Read organization info",
45840
+ "member:read": "Read org member info"
45521
45841
  }
45522
45842
  }
45523
45843
  ]
@@ -45715,7 +46035,13 @@ var zendeskTemplate = {
45715
46035
  authorizationUrl: "https://{subdomain}.zendesk.com/oauth/authorizations/new",
45716
46036
  tokenUrl: "https://{subdomain}.zendesk.com/oauth/tokens"
45717
46037
  },
45718
- scopes: ["read", "write", "tickets:read", "tickets:write"]
46038
+ scopes: ["read", "write", "tickets:read", "tickets:write"],
46039
+ scopeDescriptions: {
46040
+ "read": "Read all resources",
46041
+ "write": "Create and update resources",
46042
+ "tickets:read": "Read support tickets",
46043
+ "tickets:write": "Create and update tickets"
46044
+ }
45719
46045
  }
45720
46046
  ]
45721
46047
  };
@@ -45793,7 +46119,19 @@ var shopifyTemplate = {
45793
46119
  authorizationUrl: "https://{subdomain}.myshopify.com/admin/oauth/authorize",
45794
46120
  tokenUrl: "https://{subdomain}.myshopify.com/admin/oauth/access_token"
45795
46121
  },
45796
- scopes: ["read_products", "write_products", "read_orders", "write_orders"]
46122
+ scopes: ["read_products", "write_products", "read_orders", "write_orders", "read_customers", "write_customers", "read_inventory", "write_inventory", "read_fulfillments", "write_fulfillments"],
46123
+ scopeDescriptions: {
46124
+ "read_products": "Read products and collections",
46125
+ "write_products": "Create and update products",
46126
+ "read_orders": "Read orders and transactions",
46127
+ "write_orders": "Create and update orders",
46128
+ "read_customers": "Read customer information",
46129
+ "write_customers": "Create and update customers",
46130
+ "read_inventory": "Read inventory levels",
46131
+ "write_inventory": "Update inventory levels",
46132
+ "read_fulfillments": "Read fulfillment data",
46133
+ "write_fulfillments": "Create and update fulfillments"
46134
+ }
45797
46135
  }
45798
46136
  ]
45799
46137
  };
@@ -45826,6 +46164,8 @@ var allVendorTemplates = [
45826
46164
  // Payments
45827
46165
  stripeTemplate,
45828
46166
  paypalTemplate,
46167
+ quickbooksTemplate,
46168
+ rampTemplate,
45829
46169
  // Cloud
45830
46170
  awsTemplate,
45831
46171
  // Storage
@@ -45888,6 +46228,9 @@ var VENDOR_ICON_MAP = {
45888
46228
  // Payments
45889
46229
  stripe: "stripe",
45890
46230
  paypal: "paypal",
46231
+ quickbooks: "quickbooks",
46232
+ ramp: null,
46233
+ // No Simple Icon available
45891
46234
  // Email
45892
46235
  sendgrid: "sendgrid",
45893
46236
  mailchimp: "mailchimp",
@@ -45934,6 +46277,8 @@ var FALLBACK_PLACEHOLDERS = {
45934
46277
  // Email (trademark removed)
45935
46278
  sendgrid: { color: "#1A82E2", letter: "S" },
45936
46279
  postmark: { color: "#FFDE00", letter: "P" },
46280
+ // Payments (no Simple Icon available)
46281
+ ramp: { color: "#F2C94C", letter: "R" },
45937
46282
  // Search (no Simple Icon available)
45938
46283
  serper: { color: "#4A90A4", letter: "S" },
45939
46284
  tavily: { color: "#7C3AED", letter: "T" },