@browserbasehq/orca 3.5.0-preview.1 → 3.5.1-preview.0

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 (102) hide show
  1. package/README.md +7 -3
  2. package/dist/cjs/lib/utils.d.ts +2 -0
  3. package/dist/cjs/lib/utils.js +20 -0
  4. package/dist/cjs/lib/utils.js.map +1 -1
  5. package/dist/cjs/lib/v3/agent/AgentProvider.js +1 -0
  6. package/dist/cjs/lib/v3/agent/AgentProvider.js.map +1 -1
  7. package/dist/cjs/lib/v3/agent/AnthropicCUAClient.js +1 -0
  8. package/dist/cjs/lib/v3/agent/AnthropicCUAClient.js.map +1 -1
  9. package/dist/cjs/lib/v3/api.js +28 -33
  10. package/dist/cjs/lib/v3/api.js.map +1 -1
  11. package/dist/cjs/lib/v3/dom/build/locatorScripts.generated.d.ts +24 -24
  12. package/dist/cjs/lib/v3/dom/build/locatorScripts.generated.js +24 -24
  13. package/dist/cjs/lib/v3/dom/build/locatorScripts.generated.js.map +1 -1
  14. package/dist/cjs/lib/v3/dom/locatorScripts/xpathResolver.js +79 -10
  15. package/dist/cjs/lib/v3/dom/locatorScripts/xpathResolver.js.map +1 -1
  16. package/dist/cjs/lib/v3/index.d.ts +2 -1
  17. package/dist/cjs/lib/v3/llm/LLMProvider.js +18 -2
  18. package/dist/cjs/lib/v3/llm/LLMProvider.js.map +1 -1
  19. package/dist/cjs/lib/v3/types/public/agent.d.ts +2 -2
  20. package/dist/cjs/lib/v3/types/public/agent.js +1 -0
  21. package/dist/cjs/lib/v3/types/public/agent.js.map +1 -1
  22. package/dist/cjs/lib/v3/types/public/api.d.ts +538 -27
  23. package/dist/cjs/lib/v3/types/public/api.js +83 -7
  24. package/dist/cjs/lib/v3/types/public/api.js.map +1 -1
  25. package/dist/cjs/lib/v3/types/public/clipboard.d.ts +15 -0
  26. package/dist/cjs/lib/v3/types/public/clipboard.js +3 -0
  27. package/dist/cjs/lib/v3/types/public/clipboard.js.map +1 -0
  28. package/dist/cjs/lib/v3/types/public/index.d.ts +1 -0
  29. package/dist/cjs/lib/v3/types/public/index.js +1 -0
  30. package/dist/cjs/lib/v3/types/public/index.js.map +1 -1
  31. package/dist/cjs/lib/v3/types/public/model.d.ts +18 -3
  32. package/dist/cjs/lib/v3/types/public/model.js.map +1 -1
  33. package/dist/cjs/lib/v3/types/public/page.d.ts +29 -0
  34. package/dist/cjs/lib/v3/types/public/page.js.map +1 -1
  35. package/dist/cjs/lib/v3/types/public/sdkErrors.d.ts +3 -0
  36. package/dist/cjs/lib/v3/types/public/sdkErrors.js +8 -2
  37. package/dist/cjs/lib/v3/types/public/sdkErrors.js.map +1 -1
  38. package/dist/cjs/lib/v3/understudy/clipboard.d.ts +24 -0
  39. package/dist/cjs/lib/v3/understudy/clipboard.js +166 -0
  40. package/dist/cjs/lib/v3/understudy/clipboard.js.map +1 -0
  41. package/dist/cjs/lib/v3/understudy/context.d.ts +3 -0
  42. package/dist/cjs/lib/v3/understudy/context.js +15 -0
  43. package/dist/cjs/lib/v3/understudy/context.js.map +1 -1
  44. package/dist/cjs/lib/v3/understudy/page.d.ts +23 -1
  45. package/dist/cjs/lib/v3/understudy/page.js +283 -0
  46. package/dist/cjs/lib/v3/understudy/page.js.map +1 -1
  47. package/dist/cjs/lib/v3/v3.js +15 -6
  48. package/dist/cjs/lib/v3/v3.js.map +1 -1
  49. package/dist/cjs/lib/version.d.ts +1 -1
  50. package/dist/cjs/lib/version.js +1 -1
  51. package/dist/cjs/lib/version.js.map +1 -1
  52. package/dist/esm/lib/utils.d.ts +2 -0
  53. package/dist/esm/lib/utils.js +18 -0
  54. package/dist/esm/lib/utils.js.map +1 -1
  55. package/dist/esm/lib/v3/agent/AgentProvider.js +1 -0
  56. package/dist/esm/lib/v3/agent/AgentProvider.js.map +1 -1
  57. package/dist/esm/lib/v3/agent/AnthropicCUAClient.js +1 -0
  58. package/dist/esm/lib/v3/agent/AnthropicCUAClient.js.map +1 -1
  59. package/dist/esm/lib/v3/api.js +29 -34
  60. package/dist/esm/lib/v3/api.js.map +1 -1
  61. package/dist/esm/lib/v3/dom/build/locatorScripts.generated.d.ts +24 -24
  62. package/dist/esm/lib/v3/dom/build/locatorScripts.generated.js +24 -24
  63. package/dist/esm/lib/v3/dom/build/locatorScripts.generated.js.map +1 -1
  64. package/dist/esm/lib/v3/dom/locatorScripts/xpathResolver.js +79 -10
  65. package/dist/esm/lib/v3/dom/locatorScripts/xpathResolver.js.map +1 -1
  66. package/dist/esm/lib/v3/index.d.ts +2 -1
  67. package/dist/esm/lib/v3/llm/LLMProvider.js +18 -2
  68. package/dist/esm/lib/v3/llm/LLMProvider.js.map +1 -1
  69. package/dist/esm/lib/v3/types/public/agent.d.ts +2 -2
  70. package/dist/esm/lib/v3/types/public/agent.js +1 -0
  71. package/dist/esm/lib/v3/types/public/agent.js.map +1 -1
  72. package/dist/esm/lib/v3/types/public/api.d.ts +538 -27
  73. package/dist/esm/lib/v3/types/public/api.js +81 -5
  74. package/dist/esm/lib/v3/types/public/api.js.map +1 -1
  75. package/dist/esm/lib/v3/types/public/clipboard.d.ts +15 -0
  76. package/dist/esm/lib/v3/types/public/clipboard.js +2 -0
  77. package/dist/esm/lib/v3/types/public/clipboard.js.map +1 -0
  78. package/dist/esm/lib/v3/types/public/index.d.ts +1 -0
  79. package/dist/esm/lib/v3/types/public/index.js +1 -0
  80. package/dist/esm/lib/v3/types/public/index.js.map +1 -1
  81. package/dist/esm/lib/v3/types/public/model.d.ts +18 -3
  82. package/dist/esm/lib/v3/types/public/model.js.map +1 -1
  83. package/dist/esm/lib/v3/types/public/page.d.ts +29 -0
  84. package/dist/esm/lib/v3/types/public/page.js.map +1 -1
  85. package/dist/esm/lib/v3/types/public/sdkErrors.d.ts +3 -0
  86. package/dist/esm/lib/v3/types/public/sdkErrors.js +5 -0
  87. package/dist/esm/lib/v3/types/public/sdkErrors.js.map +1 -1
  88. package/dist/esm/lib/v3/understudy/clipboard.d.ts +24 -0
  89. package/dist/esm/lib/v3/understudy/clipboard.js +163 -0
  90. package/dist/esm/lib/v3/understudy/clipboard.js.map +1 -0
  91. package/dist/esm/lib/v3/understudy/context.d.ts +3 -0
  92. package/dist/esm/lib/v3/understudy/context.js +15 -0
  93. package/dist/esm/lib/v3/understudy/context.js.map +1 -1
  94. package/dist/esm/lib/v3/understudy/page.d.ts +23 -1
  95. package/dist/esm/lib/v3/understudy/page.js +284 -1
  96. package/dist/esm/lib/v3/understudy/page.js.map +1 -1
  97. package/dist/esm/lib/v3/v3.js +16 -7
  98. package/dist/esm/lib/v3/v3.js.map +1 -1
  99. package/dist/esm/lib/version.d.ts +1 -1
  100. package/dist/esm/lib/version.js +1 -1
  101. package/dist/esm/lib/version.js.map +1 -1
  102. package/package.json +13 -7
@@ -38,7 +38,7 @@ import path from "path";
38
38
  import process from "process";
39
39
  import { v7 as uuidv7 } from "uuid";
40
40
  import { toJsonSchema, } from "./zodCompat.js";
41
- import { loadApiKeyFromEnv } from "../utils.js";
41
+ import { getInheritableModelOptions, hasModelProviderAuth, loadApiKeyFromEnv, } from "../utils.js";
42
42
  import { extractModelName } from "../modelUtils.js";
43
43
  import { StagehandLogger } from "../logger.js";
44
44
  import { ActCache } from "./cache/ActCache.js";
@@ -316,9 +316,9 @@ let V3 = (() => {
316
316
  this.disableAPI = true;
317
317
  }
318
318
  else {
319
- // Ensure API key is set
319
+ // Ensure API key is set unless provider-native auth was configured.
320
320
  let apiKey = baseClientOptions.apiKey;
321
- if (!apiKey) {
321
+ if (!apiKey && !hasModelProviderAuth(baseClientOptions)) {
322
322
  try {
323
323
  apiKey = loadApiKeyFromEnv(this.modelName.split("/")[0], // "openai", "anthropic", etc
324
324
  this.logger);
@@ -334,7 +334,7 @@ let V3 = (() => {
334
334
  }
335
335
  this.modelClientOptions = {
336
336
  ...baseClientOptions,
337
- apiKey,
337
+ ...(apiKey ? { apiKey } : {}),
338
338
  };
339
339
  // Get the default client for this model
340
340
  this.llmClient = this.llmProvider.getClient(this.modelName, this.modelClientOptions, { experimental: this.experimental, disableAPI: this.disableAPI });
@@ -464,7 +464,8 @@ let V3 = (() => {
464
464
  return {
465
465
  modelName: this.modelName,
466
466
  ...clientOptions,
467
- ...(this.modelClientOptions.apiKey
467
+ ...(!hasModelProviderAuth(this.modelClientOptions) &&
468
+ this.modelClientOptions.apiKey
468
469
  ? { apiKey: this.modelClientOptions.apiKey }
469
470
  : {}),
470
471
  };
@@ -492,12 +493,20 @@ let V3 = (() => {
492
493
  }
493
494
  const overrideProvider = String(modelName).split("/")[0];
494
495
  const baseProvider = String(this.modelName).split("/")[0];
496
+ const overrideHasCredentials = hasModelProviderAuth(clientOptions) ||
497
+ Boolean(clientOptions?.apiKey);
498
+ const inheritedOptions = overrideProvider === baseProvider
499
+ ? overrideHasCredentials
500
+ ? getInheritableModelOptions(this.modelClientOptions)
501
+ : this.modelClientOptions
502
+ : undefined;
495
503
  const mergedOptions = {
496
- ...(overrideProvider === baseProvider ? this.modelClientOptions : {}),
504
+ ...(inheritedOptions ?? {}),
497
505
  ...(clientOptions ?? {}),
498
506
  };
499
507
  const providerKey = overrideProvider;
500
- if (!mergedOptions.apiKey) {
508
+ if (!hasModelProviderAuth(mergedOptions) &&
509
+ !mergedOptions.apiKey) {
501
510
  const apiKey = loadApiKeyFromEnv(providerKey, this.logger);
502
511
  if (apiKey) {
503
512
  mergedOptions.apiKey = apiKey;