@blinkdotnew/dev-sdk 2.3.1 → 2.3.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.js CHANGED
@@ -4576,10 +4576,22 @@ var BlinkAuth = class {
4576
4576
  }
4577
4577
  const { sessionId, authUrl } = await this.initiateMobileOAuth(provider, options);
4578
4578
  console.log("\u{1F510} Opening OAuth browser for", provider);
4579
- webBrowser.openAuthSessionAsync(authUrl).then((result) => {
4580
- console.log("\u{1F510} Browser closed with result:", result.type);
4581
- }).catch(() => {
4582
- });
4579
+ const browserPromise = webBrowser.openAuthSessionAsync(authUrl);
4580
+ const raceResult = await Promise.race([
4581
+ browserPromise.then((result) => ({ closed: true, result })).catch((err) => ({ closed: true, error: err })),
4582
+ new Promise(
4583
+ (resolve) => setTimeout(() => resolve({ closed: false }), 5e3)
4584
+ )
4585
+ ]);
4586
+ if (raceResult.closed) {
4587
+ if ("result" in raceResult) {
4588
+ console.log("\u{1F510} Browser closed with result:", raceResult.result.type);
4589
+ } else {
4590
+ console.log("\u{1F510} Browser closed with error");
4591
+ }
4592
+ } else {
4593
+ console.log("\u{1F510} Browser still open (new tab/stuck popup), starting to poll...");
4594
+ }
4583
4595
  const user = await this.pollMobileOAuthSession(sessionId, {
4584
4596
  maxAttempts: 120,
4585
4597
  // 60 seconds (give user time to complete auth)
package/dist/index.mjs CHANGED
@@ -4574,10 +4574,22 @@ var BlinkAuth = class {
4574
4574
  }
4575
4575
  const { sessionId, authUrl } = await this.initiateMobileOAuth(provider, options);
4576
4576
  console.log("\u{1F510} Opening OAuth browser for", provider);
4577
- webBrowser.openAuthSessionAsync(authUrl).then((result) => {
4578
- console.log("\u{1F510} Browser closed with result:", result.type);
4579
- }).catch(() => {
4580
- });
4577
+ const browserPromise = webBrowser.openAuthSessionAsync(authUrl);
4578
+ const raceResult = await Promise.race([
4579
+ browserPromise.then((result) => ({ closed: true, result })).catch((err) => ({ closed: true, error: err })),
4580
+ new Promise(
4581
+ (resolve) => setTimeout(() => resolve({ closed: false }), 5e3)
4582
+ )
4583
+ ]);
4584
+ if (raceResult.closed) {
4585
+ if ("result" in raceResult) {
4586
+ console.log("\u{1F510} Browser closed with result:", raceResult.result.type);
4587
+ } else {
4588
+ console.log("\u{1F510} Browser closed with error");
4589
+ }
4590
+ } else {
4591
+ console.log("\u{1F510} Browser still open (new tab/stuck popup), starting to poll...");
4592
+ }
4581
4593
  const user = await this.pollMobileOAuthSession(sessionId, {
4582
4594
  maxAttempts: 120,
4583
4595
  // 60 seconds (give user time to complete auth)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blinkdotnew/dev-sdk",
3
- "version": "2.3.1",
3
+ "version": "2.3.2",
4
4
  "description": "Blink TypeScript SDK for client-side applications - Zero-boilerplate CRUD + auth + AI + analytics + notifications for modern SaaS/AI apps",
5
5
  "keywords": [
6
6
  "blink",