@olib-ai/owl-browser-sdk 1.0.0 → 1.1.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.
package/README.md CHANGED
@@ -17,7 +17,7 @@ AI-first browser automation SDK for Node.js/TypeScript. Built on top of the Owl
17
17
  ## Installation
18
18
 
19
19
  ```bash
20
- npm install owl-browser-sdk
20
+ npm install @olib-ai/owl-browser-sdk
21
21
  ```
22
22
 
23
23
  **Prerequisites:**
@@ -34,7 +34,7 @@ The SDK supports two connection modes:
34
34
  Uses the local browser binary via IPC (stdin/stdout). Best for development and single-machine deployments.
35
35
 
36
36
  ```typescript
37
- import { Browser } from 'owl-browser-sdk';
37
+ import { Browser } from '@olib-ai/owl-browser-sdk';
38
38
 
39
39
  // Local mode (default)
40
40
  const browser = new Browser();
@@ -46,9 +46,9 @@ await browser.launch();
46
46
  Connects to a remote browser server via REST API. Best for Docker deployments, microservices, and distributed systems.
47
47
 
48
48
  ```typescript
49
- import { Browser } from 'owl-browser-sdk';
49
+ import { Browser } from '@olib-ai/owl-browser-sdk';
50
50
 
51
- // HTTP mode - connect to remote server
51
+ // HTTP mode - connect to remote server (simple token auth)
52
52
  const browser = new Browser({
53
53
  mode: 'http',
54
54
  http: {
@@ -60,24 +60,74 @@ const browser = new Browser({
60
60
  await browser.launch();
61
61
  ```
62
62
 
63
+ #### JWT Authentication
64
+
65
+ For enhanced security, the server supports JWT (JSON Web Token) authentication with RSA signing. The SDK can automatically generate and refresh JWT tokens using your private key:
66
+
67
+ ```typescript
68
+ import { Browser } from '@olib-ai/owl-browser-sdk';
69
+
70
+ // HTTP mode with JWT authentication (auto-generated tokens)
71
+ const browser = new Browser({
72
+ mode: 'http',
73
+ http: {
74
+ baseUrl: 'http://localhost:8080',
75
+ authMode: 'jwt',
76
+ jwt: {
77
+ privateKey: '/path/to/private.pem', // RSA private key
78
+ expiresIn: 3600, // Token validity (1 hour)
79
+ refreshThreshold: 300, // Refresh 5 min before expiry
80
+ issuer: 'my-app', // Optional claims
81
+ subject: 'user-123'
82
+ }
83
+ }
84
+ });
85
+ await browser.launch();
86
+ ```
87
+
88
+ You can also use the JWT utilities directly:
89
+
90
+ ```typescript
91
+ import { generateJWT, decodeJWT, JWTManager } from '@olib-ai/owl-browser-sdk';
92
+
93
+ // Generate a single token
94
+ const token = generateJWT('/path/to/private.pem', {
95
+ expiresIn: 7200,
96
+ issuer: 'my-app'
97
+ });
98
+
99
+ // Or use JWTManager for auto-refresh
100
+ const jwtManager = new JWTManager('/path/to/private.pem', {
101
+ expiresIn: 3600,
102
+ refreshThreshold: 300
103
+ });
104
+ const token = jwtManager.getToken(); // Auto-refreshes when needed
105
+ ```
106
+
63
107
  **Setting up the HTTP server:**
64
108
 
65
109
  ```bash
66
110
  # Build the HTTP server
67
111
  cd build && cmake .. -DCMAKE_BUILD_TYPE=Release && make owl_http_server
68
112
 
69
- # Run the server
113
+ # Run with simple token authentication
70
114
  OWL_HTTP_TOKEN=your-secret-token \
71
115
  OWL_BROWSER_PATH=/path/to/owl_browser \
72
116
  ./build/Release/owl_http_server
117
+
118
+ # Run with JWT authentication
119
+ OWL_AUTH_MODE=jwt \
120
+ OWL_JWT_PUBLIC_KEY=/path/to/public.pem \
121
+ OWL_BROWSER_PATH=/path/to/owl_browser \
122
+ ./build/Release/owl_http_server
73
123
  ```
74
124
 
75
- See [HTTP Server Documentation](../http-server/README.md) for more details.
125
+ See [HTTP Server Documentation](../http-server/README.md) for more details on JWT configuration and key generation.
76
126
 
77
127
  ## Quick Start
78
128
 
79
129
  ```typescript
80
- import { Browser } from 'owl-browser-sdk';
130
+ import { Browser } from '@olib-ai/owl-browser-sdk';
81
131
 
82
132
  // Create and launch browser
83
133
  const browser = new Browser();
@@ -328,7 +378,7 @@ const browser = new Browser({
328
378
  ### Demographics & Context Awareness
329
379
 
330
380
  ```typescript
331
- import { Browser } from 'owl-browser-sdk';
381
+ import { Browser } from '@olib-ai/owl-browser-sdk';
332
382
 
333
383
  const browser = new Browser();
334
384
  await browser.launch();
@@ -361,7 +411,7 @@ await browser.close();
361
411
  ### Simple Google Search
362
412
 
363
413
  ```typescript
364
- import { Browser } from 'owl-browser-sdk';
414
+ import { Browser } from '@olib-ai/owl-browser-sdk';
365
415
  import fs from 'fs';
366
416
 
367
417
  async function googleSearch() {
@@ -388,7 +438,7 @@ googleSearch();
388
438
  ### Web Scraping with AI
389
439
 
390
440
  ```typescript
391
- import { Browser } from 'owl-browser-sdk';
441
+ import { Browser } from '@olib-ai/owl-browser-sdk';
392
442
 
393
443
  async function scrapeWithAI() {
394
444
  const browser = new Browser();
@@ -414,7 +464,7 @@ scrapeWithAI();
414
464
  ### Video Recording
415
465
 
416
466
  ```typescript
417
- import { Browser } from 'owl-browser-sdk';
467
+ import { Browser } from '@olib-ai/owl-browser-sdk';
418
468
 
419
469
  async function recordSession() {
420
470
  const browser = new Browser();
@@ -444,7 +494,7 @@ recordSession();
444
494
  This SDK is written in TypeScript and includes full type definitions.
445
495
 
446
496
  ```typescript
447
- import { Browser, BrowserContext, Viewport } from 'owl-browser-sdk';
497
+ import { Browser, BrowserContext, Viewport } from '@olib-ai/owl-browser-sdk';
448
498
 
449
499
  const browser: Browser = new Browser();
450
500
  const page: BrowserContext = await browser.newPage();
@@ -502,11 +552,27 @@ const summary = await page.queryPage('Summarize this article in 2 sentences');
502
552
 
503
553
  ## Error Handling
504
554
 
555
+ The SDK provides specific exception types for different error scenarios:
556
+
505
557
  ```typescript
506
- import { Browser } from 'owl-browser-sdk';
558
+ import {
559
+ Browser,
560
+ AuthenticationError,
561
+ RateLimitError,
562
+ IPBlockedError,
563
+ LicenseError,
564
+ BrowserInitializationError
565
+ } from '@olib-ai/owl-browser-sdk';
507
566
 
508
567
  async function withErrorHandling() {
509
- const browser = new Browser();
568
+ const browser = new Browser({
569
+ mode: 'http',
570
+ http: {
571
+ baseUrl: 'http://localhost:8080',
572
+ authMode: 'jwt',
573
+ jwt: { privateKey: '/path/to/private.pem' }
574
+ }
575
+ });
510
576
 
511
577
  try {
512
578
  await browser.launch();
@@ -516,13 +582,40 @@ async function withErrorHandling() {
516
582
  // Your automation code...
517
583
 
518
584
  } catch (error) {
519
- console.error('Automation failed:', error);
585
+ if (error instanceof AuthenticationError) {
586
+ // 401 - Invalid or expired token
587
+ console.error('Auth failed:', error.message);
588
+ console.error('Reason:', error.reason);
589
+ } else if (error instanceof RateLimitError) {
590
+ // 429 - Too many requests
591
+ console.error('Rate limited. Retry after:', error.retryAfter, 'seconds');
592
+ } else if (error instanceof IPBlockedError) {
593
+ // 403 - IP not whitelisted
594
+ console.error('IP blocked:', error.ipAddress);
595
+ } else if (error instanceof LicenseError) {
596
+ // License validation failed
597
+ console.error('License error:', error.status);
598
+ } else {
599
+ console.error('Automation failed:', error);
600
+ }
520
601
  } finally {
521
602
  await browser.close();
522
603
  }
523
604
  }
524
605
  ```
525
606
 
607
+ ### Exception Types
608
+
609
+ | Exception | HTTP Code | Description |
610
+ |-----------|-----------|-------------|
611
+ | `AuthenticationError` | 401 | Invalid/expired token or JWT signature mismatch |
612
+ | `RateLimitError` | 429 | Too many requests, includes `retryAfter` in seconds |
613
+ | `IPBlockedError` | 403 | Client IP not in whitelist |
614
+ | `LicenseError` | 503 | Browser license validation failed |
615
+ | `BrowserInitializationError` | - | Failed to start/connect to browser |
616
+ | `CommandTimeoutError` | - | Operation timed out |
617
+ | `ElementNotFoundError` | - | Element not found on page |
618
+
526
619
  ## Performance Tips
527
620
 
528
621
  1. **Reuse browser instances** - Creating a new browser is expensive
@@ -51,11 +51,16 @@ export declare class LocalConnection implements BrowserConnection {
51
51
  */
52
52
  export declare class HttpConnection implements BrowserConnection {
53
53
  private baseUrl;
54
- private token;
54
+ private staticToken?;
55
+ private jwtManager?;
55
56
  private timeout;
56
57
  private verbose;
57
58
  private connected;
58
59
  constructor(config: BrowserConfig);
60
+ /**
61
+ * Get the current authentication token (static or JWT)
62
+ */
63
+ private getAuthToken;
59
64
  initialize(): Promise<void>;
60
65
  /**
61
66
  * Map SDK method names to HTTP API tool names
@@ -1 +1 @@
1
- {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EAAE,aAAa,EAA8B,MAAM,SAAS,CAAC;AASzE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,gCAAgC;IAChC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B,4CAA4C;IAC5C,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAExE,8BAA8B;IAC9B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1B,wCAAwC;IACxC,SAAS,IAAI,OAAO,CAAC;CACtB;AA0BD;;GAEG;AACH,qBAAa,eAAgB,YAAW,iBAAiB;IACvD,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,eAAe,CAAqC;IAC5D,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAU;IAGzB,OAAO,CAAC,YAAY,CAA2D;IAC/E,OAAO,CAAC,mBAAmB,CAAuB;gBAEtC,MAAM,EAAE,aAAa;IAOjC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA8BnB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAiHjC;;OAEG;IACH,OAAO,CAAC,cAAc;IAqBhB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IA2B3E,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAgE/B,SAAS,IAAI,OAAO;CAGrB;AAID;;GAEG;AACH,qBAAa,cAAe,YAAW,iBAAiB;IACtD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,SAAS,CAAS;gBAEd,MAAM,EAAE,aAAa;IAU3B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAqCjC;;OAEG;IACH,OAAO,CAAC,eAAe;IAsEvB;;OAEG;IACH,OAAO,CAAC,SAAS;IA8EX,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAsD3E,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAO/B,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,OAAO,CAAC,WAAW;CAuFpB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,iBAAiB,CAWzE"}
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EAAE,aAAa,EAA8B,MAAM,SAAS,CAAC;AAazE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,gCAAgC;IAChC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B,4CAA4C;IAC5C,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAExE,8BAA8B;IAC9B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1B,wCAAwC;IACxC,SAAS,IAAI,OAAO,CAAC;CACtB;AA0BD;;GAEG;AACH,qBAAa,eAAgB,YAAW,iBAAiB;IACvD,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,eAAe,CAAqC;IAC5D,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAU;IAGzB,OAAO,CAAC,YAAY,CAA2D;IAC/E,OAAO,CAAC,mBAAmB,CAAuB;gBAEtC,MAAM,EAAE,aAAa;IAOjC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA8BnB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAiHjC;;OAEG;IACH,OAAO,CAAC,cAAc;IAqBhB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IA2B3E,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAgE/B,SAAS,IAAI,OAAO;CAGrB;AAID;;GAEG;AACH,qBAAa,cAAe,YAAW,iBAAiB;IACtD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,UAAU,CAAC,CAAa;IAChC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,SAAS,CAAS;gBAEd,MAAM,EAAE,aAAa;IAsCjC;;OAEG;IACH,OAAO,CAAC,YAAY;IAUd,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAqCjC;;OAEG;IACH,OAAO,CAAC,eAAe;IAsEvB;;OAEG;IACH,OAAO,CAAC,SAAS;IA8EX,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAsD3E,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAO/B,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,OAAO,CAAC,WAAW;CAwGpB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,iBAAiB,CAWzE"}
@@ -47,6 +47,7 @@ const fs = __importStar(require("fs"));
47
47
  const http = __importStar(require("http"));
48
48
  const https = __importStar(require("https"));
49
49
  const errors_1 = require("./errors");
50
+ const jwt_1 = require("./jwt");
50
51
  // License error detection patterns (matching output from native binary)
51
52
  const LICENSE_ERROR_PATTERNS = {
52
53
  NOT_FOUND: /LICENSE ERROR: No valid license found|License file not found/i,
@@ -318,9 +319,45 @@ class HttpConnection {
318
319
  throw new Error('HTTP configuration is required for HTTP connection mode');
319
320
  }
320
321
  this.baseUrl = config.http.baseUrl.replace(/\/$/, ''); // Remove trailing slash
321
- this.token = config.http.token;
322
322
  this.timeout = config.http.timeout ?? config.initTimeout ?? 30000;
323
323
  this.verbose = config.verbose ?? false;
324
+ // Setup authentication
325
+ const authMode = config.http.authMode ?? 'token';
326
+ if (authMode === 'jwt' && config.http.jwt) {
327
+ // JWT mode with auto-generation
328
+ this.jwtManager = new jwt_1.JWTManager(config.http.jwt.privateKey, {
329
+ expiresIn: config.http.jwt.expiresIn,
330
+ issuer: config.http.jwt.issuer,
331
+ subject: config.http.jwt.subject,
332
+ audience: config.http.jwt.audience,
333
+ claims: config.http.jwt.claims,
334
+ }, config.http.jwt.refreshThreshold);
335
+ if (this.verbose) {
336
+ console.error('[HTTP] Using JWT authentication with auto-refresh');
337
+ }
338
+ }
339
+ else if (config.http.token) {
340
+ // Static token mode
341
+ this.staticToken = config.http.token;
342
+ if (this.verbose) {
343
+ console.error('[HTTP] Using static token authentication');
344
+ }
345
+ }
346
+ else {
347
+ throw new Error('Authentication is required: provide either token or jwt configuration');
348
+ }
349
+ }
350
+ /**
351
+ * Get the current authentication token (static or JWT)
352
+ */
353
+ getAuthToken() {
354
+ if (this.jwtManager) {
355
+ return this.jwtManager.getToken();
356
+ }
357
+ if (this.staticToken) {
358
+ return this.staticToken;
359
+ }
360
+ throw new Error('No authentication token available');
324
361
  }
325
362
  async initialize() {
326
363
  // Check server health
@@ -572,7 +609,7 @@ class HttpConnection {
572
609
  }
573
610
  // Add auth header for non-health endpoints
574
611
  if (path !== '/health') {
575
- headers['Authorization'] = `Bearer ${this.token}`;
612
+ headers['Authorization'] = `Bearer ${this.getAuthToken()}`;
576
613
  }
577
614
  const options = {
578
615
  hostname: url.hostname,
@@ -593,7 +630,15 @@ class HttpConnection {
593
630
  // Handle HTTP error status codes
594
631
  if (res.statusCode && res.statusCode >= 400) {
595
632
  if (res.statusCode === 401) {
596
- reject(new Error('Authentication failed: Invalid or missing token'));
633
+ reject(new errors_1.AuthenticationError(json.error || 'Invalid or missing authorization token', json.reason));
634
+ }
635
+ else if (res.statusCode === 403) {
636
+ // Could be IP blocked
637
+ reject(new errors_1.IPBlockedError(json.error || 'Access forbidden - IP not allowed', json.client_ip));
638
+ }
639
+ else if (res.statusCode === 429) {
640
+ // Rate limit exceeded
641
+ reject(new errors_1.RateLimitError(json.error || 'Rate limit exceeded', json.retry_after || 60, json.limit, json.remaining));
597
642
  }
598
643
  else if (res.statusCode === 503 && json.license_status) {
599
644
  reject(new errors_1.LicenseError(json.license_message || 'License error', json.license_status, json.hardware_fingerprint));
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -80,4 +80,53 @@ export declare class NavigationError extends OwlBrowserError {
80
80
  export declare class ElementNotFoundError extends OwlBrowserError {
81
81
  constructor(selector: string);
82
82
  }
83
+ /**
84
+ * Raised when authentication fails (401 Unauthorized).
85
+ *
86
+ * This can happen when:
87
+ * - The bearer token is invalid or missing
88
+ * - The JWT token has expired
89
+ * - The JWT token signature is invalid
90
+ * - The JWT token was issued for a different audience
91
+ */
92
+ export declare class AuthenticationError extends OwlBrowserError {
93
+ /** The HTTP status code (always 401) */
94
+ readonly statusCode: number;
95
+ /** Optional reason for authentication failure */
96
+ readonly reason?: string;
97
+ constructor(message: string, reason?: string);
98
+ private static formatMessage;
99
+ }
100
+ /**
101
+ * Raised when the client is rate limited (429 Too Many Requests).
102
+ *
103
+ * The server implements rate limiting to prevent abuse. When this error
104
+ * is thrown, the client should wait before retrying.
105
+ */
106
+ export declare class RateLimitError extends OwlBrowserError {
107
+ /** The HTTP status code (always 429) */
108
+ readonly statusCode: number;
109
+ /** Number of seconds to wait before retrying */
110
+ readonly retryAfter: number;
111
+ /** Maximum requests allowed per window */
112
+ readonly limit?: number;
113
+ /** Remaining requests in current window */
114
+ readonly remaining?: number;
115
+ constructor(message: string, retryAfter: number, limit?: number, remaining?: number);
116
+ private static formatMessage;
117
+ }
118
+ /**
119
+ * Raised when the client IP is blacklisted/not whitelisted (403 Forbidden).
120
+ *
121
+ * The server may implement IP-based access control. When this error
122
+ * is thrown, the client's IP is not allowed to access the server.
123
+ */
124
+ export declare class IPBlockedError extends OwlBrowserError {
125
+ /** The HTTP status code (always 403) */
126
+ readonly statusCode: number;
127
+ /** The blocked IP address (if known) */
128
+ readonly ipAddress?: string;
129
+ constructor(message: string, ipAddress?: string);
130
+ private static formatMessage;
131
+ }
83
132
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,oBAAY,aAAa;IACvB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,iBAAiB,sBAAsB;IACvC,SAAS,cAAc;IACvB,iBAAiB,sBAAsB;IACvC,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,iBAAiB,sBAAsB;IACvC,qBAAqB,0BAA0B;IAC/C,yBAAyB,8BAA8B;IACvD,aAAa,kBAAkB;CAChC;AAED;;;;;;;;;;GAUG;AACH,qBAAa,YAAa,SAAQ,eAAe;IAC/C,8BAA8B;IAC9B,SAAgB,MAAM,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,CAAC;IAE3D,uEAAuE;IACvE,SAAgB,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;gBAG9C,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,aAAa,GAAG,MAAM,EAC/B,WAAW,CAAC,EAAE,MAAM;IAQtB,OAAO,CAAC,MAAM,CAAC,aAAa;CAuC7B;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,OAAO,GAAE,MAAiC;CAIvD;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,eAAe;gBACnC,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,eAAe;gBACtC,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,QAAQ,EAAE,MAAM;CAI7B"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,oBAAY,aAAa;IACvB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,iBAAiB,sBAAsB;IACvC,SAAS,cAAc;IACvB,iBAAiB,sBAAsB;IACvC,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,iBAAiB,sBAAsB;IACvC,qBAAqB,0BAA0B;IAC/C,yBAAyB,8BAA8B;IACvD,aAAa,kBAAkB;CAChC;AAED;;;;;;;;;;GAUG;AACH,qBAAa,YAAa,SAAQ,eAAe;IAC/C,8BAA8B;IAC9B,SAAgB,MAAM,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,CAAC;IAE3D,uEAAuE;IACvE,SAAgB,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;gBAG9C,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,aAAa,GAAG,MAAM,EAC/B,WAAW,CAAC,EAAE,MAAM;IAQtB,OAAO,CAAC,MAAM,CAAC,aAAa;CAuC7B;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,OAAO,GAAE,MAAiC;CAIvD;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,eAAe;gBACnC,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,eAAe;gBACtC,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,QAAQ,EAAE,MAAM;CAI7B;AAED;;;;;;;;GAQG;AACH,qBAAa,mBAAoB,SAAQ,eAAe;IACtD,wCAAwC;IACxC,SAAgB,UAAU,EAAE,MAAM,CAAO;IAEzC,iDAAiD;IACjD,SAAgB,MAAM,CAAC,EAAE,MAAM,CAAC;gBAEpB,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;IAM5C,OAAO,CAAC,MAAM,CAAC,aAAa;CAqB7B;AAED;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,eAAe;IACjD,wCAAwC;IACxC,SAAgB,UAAU,EAAE,MAAM,CAAO;IAEzC,gDAAgD;IAChD,SAAgB,UAAU,EAAE,MAAM,CAAC;IAEnC,0CAA0C;IAC1C,SAAgB,KAAK,CAAC,EAAE,MAAM,CAAC;IAE/B,2CAA2C;IAC3C,SAAgB,SAAS,CAAC,EAAE,MAAM,CAAC;gBAGjC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,MAAM;IASpB,OAAO,CAAC,MAAM,CAAC,aAAa;CA0B7B;AAED;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,eAAe;IACjD,wCAAwC;IACxC,SAAgB,UAAU,EAAE,MAAM,CAAO;IAEzC,wCAAwC;IACxC,SAAgB,SAAS,CAAC,EAAE,MAAM,CAAC;gBAEvB,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;IAM/C,OAAO,CAAC,MAAM,CAAC,aAAa;CAoB7B"}
package/dist/errors.js CHANGED
@@ -5,7 +5,7 @@
5
5
  * Custom error classes for better error handling and reporting.
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.ElementNotFoundError = exports.NavigationError = exports.ContextError = exports.CommandTimeoutError = exports.BrowserNotRunningError = exports.BrowserInitializationError = exports.LicenseError = exports.LicenseStatus = exports.OwlBrowserError = void 0;
8
+ exports.IPBlockedError = exports.RateLimitError = exports.AuthenticationError = exports.ElementNotFoundError = exports.NavigationError = exports.ContextError = exports.CommandTimeoutError = exports.BrowserNotRunningError = exports.BrowserInitializationError = exports.LicenseError = exports.LicenseStatus = exports.OwlBrowserError = void 0;
9
9
  /**
10
10
  * Base error for all Owl Browser SDK errors
11
11
  */
@@ -147,4 +147,108 @@ class ElementNotFoundError extends OwlBrowserError {
147
147
  }
148
148
  }
149
149
  exports.ElementNotFoundError = ElementNotFoundError;
150
+ /**
151
+ * Raised when authentication fails (401 Unauthorized).
152
+ *
153
+ * This can happen when:
154
+ * - The bearer token is invalid or missing
155
+ * - The JWT token has expired
156
+ * - The JWT token signature is invalid
157
+ * - The JWT token was issued for a different audience
158
+ */
159
+ class AuthenticationError extends OwlBrowserError {
160
+ constructor(message, reason) {
161
+ super(AuthenticationError.formatMessage(message, reason));
162
+ /** The HTTP status code (always 401) */
163
+ this.statusCode = 401;
164
+ this.name = 'AuthenticationError';
165
+ this.reason = reason;
166
+ }
167
+ static formatMessage(message, reason) {
168
+ const lines = [`Authentication Error: ${message}`];
169
+ if (reason) {
170
+ lines.push(`Reason: ${reason}`);
171
+ }
172
+ lines.push('');
173
+ lines.push('Possible causes:');
174
+ lines.push(' - Invalid or expired bearer token');
175
+ lines.push(' - JWT token has expired (check exp claim)');
176
+ lines.push(' - JWT signature verification failed');
177
+ lines.push(' - Token issued for different audience (aud claim mismatch)');
178
+ lines.push('');
179
+ lines.push('For JWT authentication, ensure your token:');
180
+ lines.push(' - Has not expired (exp > current time)');
181
+ lines.push(' - Is signed with the correct private key');
182
+ lines.push(' - Has matching issuer (iss) and audience (aud) claims');
183
+ return lines.join('\n');
184
+ }
185
+ }
186
+ exports.AuthenticationError = AuthenticationError;
187
+ /**
188
+ * Raised when the client is rate limited (429 Too Many Requests).
189
+ *
190
+ * The server implements rate limiting to prevent abuse. When this error
191
+ * is thrown, the client should wait before retrying.
192
+ */
193
+ class RateLimitError extends OwlBrowserError {
194
+ constructor(message, retryAfter, limit, remaining) {
195
+ super(RateLimitError.formatMessage(message, retryAfter, limit, remaining));
196
+ /** The HTTP status code (always 429) */
197
+ this.statusCode = 429;
198
+ this.name = 'RateLimitError';
199
+ this.retryAfter = retryAfter;
200
+ this.limit = limit;
201
+ this.remaining = remaining;
202
+ }
203
+ static formatMessage(message, retryAfter, limit, remaining) {
204
+ const lines = [`Rate Limit Error: ${message}`];
205
+ lines.push(`Retry After: ${retryAfter} seconds`);
206
+ if (limit !== undefined) {
207
+ lines.push(`Rate Limit: ${limit} requests per window`);
208
+ }
209
+ if (remaining !== undefined) {
210
+ lines.push(`Remaining: ${remaining}`);
211
+ }
212
+ lines.push('');
213
+ lines.push('To avoid rate limiting:');
214
+ lines.push(' - Reduce request frequency');
215
+ lines.push(' - Implement exponential backoff');
216
+ lines.push(' - Contact support for higher limits');
217
+ return lines.join('\n');
218
+ }
219
+ }
220
+ exports.RateLimitError = RateLimitError;
221
+ /**
222
+ * Raised when the client IP is blacklisted/not whitelisted (403 Forbidden).
223
+ *
224
+ * The server may implement IP-based access control. When this error
225
+ * is thrown, the client's IP is not allowed to access the server.
226
+ */
227
+ class IPBlockedError extends OwlBrowserError {
228
+ constructor(message, ipAddress) {
229
+ super(IPBlockedError.formatMessage(message, ipAddress));
230
+ /** The HTTP status code (always 403) */
231
+ this.statusCode = 403;
232
+ this.name = 'IPBlockedError';
233
+ this.ipAddress = ipAddress;
234
+ }
235
+ static formatMessage(message, ipAddress) {
236
+ const lines = [`IP Blocked Error: ${message}`];
237
+ if (ipAddress) {
238
+ lines.push(`Your IP: ${ipAddress}`);
239
+ }
240
+ lines.push('');
241
+ lines.push('Your IP address is not allowed to access this server.');
242
+ lines.push('');
243
+ lines.push('Possible causes:');
244
+ lines.push(' - IP whitelist is enabled and your IP is not whitelisted');
245
+ lines.push(' - Your IP has been blocked due to suspicious activity');
246
+ lines.push('');
247
+ lines.push('To resolve:');
248
+ lines.push(' - Contact the server administrator');
249
+ lines.push(' - Request your IP to be added to the whitelist');
250
+ return lines.join('\n');
251
+ }
252
+ }
253
+ exports.IPBlockedError = IPBlockedError;
150
254
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -9,7 +9,7 @@
9
9
  *
10
10
  * @example Local mode (default)
11
11
  * ```typescript
12
- * import { Browser } from 'owl-browser-sdk';
12
+ * import { Browser } from '@olib-ai/owl-browser-sdk';
13
13
  *
14
14
  * const browser = new Browser();
15
15
  * await browser.launch();
@@ -27,7 +27,7 @@
27
27
  *
28
28
  * @example HTTP mode (remote server)
29
29
  * ```typescript
30
- * import { Browser } from 'owl-browser-sdk';
30
+ * import { Browser } from '@olib-ai/owl-browser-sdk';
31
31
  *
32
32
  * const browser = new Browser({
33
33
  * mode: 'http',
@@ -48,6 +48,8 @@
48
48
  export { Browser } from './browser';
49
49
  export { BrowserContext } from './context';
50
50
  export { sleep } from './helpers';
51
- export { OwlBrowserError, LicenseError, LicenseStatus, BrowserInitializationError, BrowserNotRunningError, CommandTimeoutError, ContextError, NavigationError, ElementNotFoundError, } from './errors';
52
- export type { BrowserConfig, ContextId, NavigateOptions, ScreenshotOptions, Viewport, PageInfo, ElementMatch, CleanLevel, MarkdownOptions, VideoRecordingOptions, VideoStats, WaitForSelectorOptions, LLMStatus, ExtractionTemplate, KeyName, DemographicsInfo, LocationInfo, DateTimeInfo, WeatherInfo, TestStep, TestTemplate, TestExecutionOptions, TestExecutionResult, Cookie, CookieSameSite, SetCookieOptions, ProxyType, ProxyConfig, ProxyStatus, ContextOptions, BrowserFingerprint, BrowserProfile, HttpConfig, ConnectionMode, } from './types';
51
+ export { generateJWT, decodeJWT, isJWTExpired, getJWTRemainingTime, JWTManager, } from './jwt';
52
+ export type { JWTClaims, JWTOptions } from './jwt';
53
+ export { OwlBrowserError, LicenseError, LicenseStatus, BrowserInitializationError, BrowserNotRunningError, CommandTimeoutError, ContextError, NavigationError, ElementNotFoundError, AuthenticationError, RateLimitError, IPBlockedError, } from './errors';
54
+ export type { BrowserConfig, ContextId, NavigateOptions, ScreenshotOptions, Viewport, PageInfo, ElementMatch, CleanLevel, MarkdownOptions, VideoRecordingOptions, VideoStats, WaitForSelectorOptions, LLMStatus, ExtractionTemplate, KeyName, DemographicsInfo, LocationInfo, DateTimeInfo, WeatherInfo, TestStep, TestTemplate, TestExecutionOptions, TestExecutionResult, Cookie, CookieSameSite, SetCookieOptions, ProxyType, ProxyConfig, ProxyStatus, ContextOptions, BrowserFingerprint, BrowserProfile, HttpConfig, JWTConfig, ConnectionMode, AuthMode, } from './types';
53
55
  //# sourceMappingURL=index.d.ts.map