stellar-drive 1.1.19 → 1.1.21
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/auth/resolveAuthState.d.ts +5 -3
- package/dist/auth/resolveAuthState.d.ts.map +1 -1
- package/dist/auth/resolveAuthState.js +12 -8
- package/dist/auth/resolveAuthState.js.map +1 -1
- package/dist/bin/install-pwa.d.ts.map +1 -1
- package/dist/bin/install-pwa.js +30 -2
- package/dist/bin/install-pwa.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/runtime/runtimeConfig.d.ts +96 -13
- package/dist/runtime/runtimeConfig.d.ts.map +1 -1
- package/dist/runtime/runtimeConfig.js +182 -26
- package/dist/runtime/runtimeConfig.js.map +1 -1
- package/dist/supabase/auth.d.ts +6 -4
- package/dist/supabase/auth.d.ts.map +1 -1
- package/dist/supabase/auth.js +12 -7
- package/dist/supabase/auth.js.map +1 -1
- package/dist/sw/sw.js +33 -6
- package/package.json +1 -1
|
@@ -11,9 +11,11 @@
|
|
|
11
11
|
* If not configured, returns `authMode: 'none'` immediately.
|
|
12
12
|
* - Checks local `singleUserConfig` in IndexedDB, handles legacy migration,
|
|
13
13
|
* PIN length migration, session refresh, and offline fallback.
|
|
14
|
-
* - **Offline-first**: When `
|
|
15
|
-
*
|
|
16
|
-
*
|
|
14
|
+
* - **Offline-first**: When `isOffline()` returns `true` (covers both
|
|
15
|
+
* `navigator.onLine` and the network reachability probe), the resolver
|
|
16
|
+
* skips all Supabase SDK calls (which can hang in airplane mode) and goes
|
|
17
|
+
* straight to localStorage/IndexedDB for cached session and offline
|
|
18
|
+
* credentials.
|
|
17
19
|
* - The resolver does NOT start the sync engine -- callers decide whether to
|
|
18
20
|
* start sync based on the returned `authMode`.
|
|
19
21
|
* - On catastrophic failure (corrupted auth state), all Supabase localStorage
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveAuthState.d.ts","sourceRoot":"","sources":["../../src/auth/resolveAuthState.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"resolveAuthState.d.ts","sourceRoot":"","sources":["../../src/auth/resolveAuthState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAoB,MAAM,UAAU,CAAC;AAcrE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,0FAA0F;IAC1F,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAExB;;;;;;OAMG;IACH,QAAQ,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;IAEnD,sFAAsF;IACtF,cAAc,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAE1C;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,eAAe,CAAC,CAiCjE"}
|
|
@@ -11,9 +11,11 @@
|
|
|
11
11
|
* If not configured, returns `authMode: 'none'` immediately.
|
|
12
12
|
* - Checks local `singleUserConfig` in IndexedDB, handles legacy migration,
|
|
13
13
|
* PIN length migration, session refresh, and offline fallback.
|
|
14
|
-
* - **Offline-first**: When `
|
|
15
|
-
*
|
|
16
|
-
*
|
|
14
|
+
* - **Offline-first**: When `isOffline()` returns `true` (covers both
|
|
15
|
+
* `navigator.onLine` and the network reachability probe), the resolver
|
|
16
|
+
* skips all Supabase SDK calls (which can hang in airplane mode) and goes
|
|
17
|
+
* straight to localStorage/IndexedDB for cached session and offline
|
|
18
|
+
* credentials.
|
|
17
19
|
* - The resolver does NOT start the sync engine -- callers decide whether to
|
|
18
20
|
* start sync based on the returned `authMode`.
|
|
19
21
|
* - On catastrophic failure (corrupted auth state), all Supabase localStorage
|
|
@@ -39,6 +41,7 @@ import { getEngineConfig, waitForDb } from '../config';
|
|
|
39
41
|
import { supabase } from '../supabase/client';
|
|
40
42
|
import { debugLog, debugWarn, debugError } from '../debug';
|
|
41
43
|
import { isDemoMode } from '../demo';
|
|
44
|
+
import { isOffline } from '../runtime/runtimeConfig';
|
|
42
45
|
// =============================================================================
|
|
43
46
|
// PUBLIC API
|
|
44
47
|
// =============================================================================
|
|
@@ -170,11 +173,11 @@ async function resolveSingleUserAuthState() {
|
|
|
170
173
|
IMPORTANT: Skip migration when offline — resetSingleUserRemote() makes an
|
|
171
174
|
RPC call that will hang indefinitely in airplane mode. The migration will
|
|
172
175
|
run on the next online startup. */
|
|
173
|
-
const
|
|
176
|
+
const offline = isOffline();
|
|
174
177
|
const expectedCodeLength = getEngineConfig().auth?.singleUser?.codeLength;
|
|
175
178
|
const storedCodeLength = config.codeLength;
|
|
176
179
|
if (expectedCodeLength && storedCodeLength !== expectedCodeLength) {
|
|
177
|
-
if (
|
|
180
|
+
if (offline) {
|
|
178
181
|
debugLog('[Auth] codeLength mismatch detected but offline — deferring migration');
|
|
179
182
|
}
|
|
180
183
|
else {
|
|
@@ -214,9 +217,10 @@ async function resolveSingleUserAuthState() {
|
|
|
214
217
|
// Offline fast path: skip all Supabase SDK calls when offline
|
|
215
218
|
// =========================================================================
|
|
216
219
|
// supabase.auth.getSession() and refreshSession() can hang indefinitely
|
|
217
|
-
// in airplane mode (especially on iOS PWA). When offline
|
|
218
|
-
//
|
|
219
|
-
|
|
220
|
+
// in airplane mode (especially on iOS PWA). When offline — or when
|
|
221
|
+
// initConfig() detected the network is unreachable (navigator.onLine lied)
|
|
222
|
+
// — read the session directly from localStorage and check IndexedDB.
|
|
223
|
+
if (offline) {
|
|
220
224
|
debugLog('[Auth] Offline fast path — reading session from localStorage');
|
|
221
225
|
const cachedSession = getSessionFromStorage();
|
|
222
226
|
/* Even an expired cached Supabase session is usable offline because RLS
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveAuthState.js","sourceRoot":"","sources":["../../src/auth/resolveAuthState.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"resolveAuthState.js","sourceRoot":"","sources":["../../src/auth/resolveAuthState.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-pwa.d.ts","sourceRoot":"","sources":["../../src/bin/install-pwa.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;
|
|
1
|
+
{"version":3,"file":"install-pwa.d.ts","sourceRoot":"","sources":["../../src/bin/install-pwa.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAwqKH;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CA0KzC"}
|
package/dist/bin/install-pwa.js
CHANGED
|
@@ -206,7 +206,7 @@ function generatePackageJson(opts) {
|
|
|
206
206
|
},
|
|
207
207
|
dependencies: {
|
|
208
208
|
postgres: '^3.4.0',
|
|
209
|
-
'stellar-drive': '^1.1.
|
|
209
|
+
'stellar-drive': '^1.1.21'
|
|
210
210
|
},
|
|
211
211
|
type: 'module'
|
|
212
212
|
}, null, 2) + '\n');
|
|
@@ -645,6 +645,28 @@ function generateAppHtml(opts) {
|
|
|
645
645
|
})();
|
|
646
646
|
</script>
|
|
647
647
|
|
|
648
|
+
<!-- ================================================================= -->
|
|
649
|
+
<!-- SW OFFLINE BRIDGE (runs before bundles load) -->
|
|
650
|
+
<!-- ================================================================= -->
|
|
651
|
+
<!--
|
|
652
|
+
Listens for the service worker's NETWORK_UNREACHABLE message, which is
|
|
653
|
+
sent when the SW's navigation fetch times out (1.5s). Sets a global
|
|
654
|
+
flag that probeNetworkReachability() reads so it can skip its own HEAD
|
|
655
|
+
request. The 'online' handler resets the flag when connectivity returns.
|
|
656
|
+
-->
|
|
657
|
+
<script>
|
|
658
|
+
if ('serviceWorker' in navigator) {
|
|
659
|
+
navigator.serviceWorker.addEventListener('message', function (e) {
|
|
660
|
+
if (e.data && e.data.type === 'NETWORK_UNREACHABLE') {
|
|
661
|
+
window.__stellarOffline = true;
|
|
662
|
+
}
|
|
663
|
+
});
|
|
664
|
+
}
|
|
665
|
+
window.addEventListener('online', function () {
|
|
666
|
+
window.__stellarOffline = false;
|
|
667
|
+
});
|
|
668
|
+
</script>
|
|
669
|
+
|
|
648
670
|
<!-- ================================================================= -->
|
|
649
671
|
<!-- SERVICE WORKER REGISTRATION -->
|
|
650
672
|
<!-- ================================================================= -->
|
|
@@ -1442,7 +1464,7 @@ function generateRootLayoutTs(opts) {
|
|
|
1442
1464
|
import { browser } from '$app/environment';
|
|
1443
1465
|
import { redirect } from '@sveltejs/kit';
|
|
1444
1466
|
import { goto } from '$app/navigation';
|
|
1445
|
-
import { initEngine, supabase } from 'stellar-drive';
|
|
1467
|
+
import { initEngine, supabase, probeNetworkReachability } from 'stellar-drive';
|
|
1446
1468
|
import { lockSingleUser } from 'stellar-drive/auth';
|
|
1447
1469
|
import { resolveRootLayout } from 'stellar-drive/kit';
|
|
1448
1470
|
import { isSafeRedirect } from 'stellar-drive/utils';
|
|
@@ -1515,6 +1537,12 @@ const PUBLIC_ROUTES = ['/policy', '/login', '/demo', '/confirm', '/setup'];
|
|
|
1515
1537
|
*/
|
|
1516
1538
|
export const load: LayoutLoad = async ({ url }): Promise<RootLayoutData> => {
|
|
1517
1539
|
if (browser) {
|
|
1540
|
+
/* Probe actual network reachability ONCE before any startup code.
|
|
1541
|
+
Sets the offline flag so initConfig(), resolveAuthState(), and
|
|
1542
|
+
getSession() can skip network calls synchronously. If the SW has
|
|
1543
|
+
already set the flag via NETWORK_UNREACHABLE postMessage, the probe
|
|
1544
|
+
returns immediately without a network request. */
|
|
1545
|
+
await probeNetworkReachability();
|
|
1518
1546
|
const result = await resolveRootLayout();
|
|
1519
1547
|
|
|
1520
1548
|
if (result.authMode === 'none') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-pwa.js","sourceRoot":"","sources":["../../src/bin/install-pwa.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"install-pwa.js","sourceRoot":"","sources":["../../src/bin/install-pwa.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -57,7 +57,7 @@ export { createCollectionStore, createDetailStore } from './stores/factories';
|
|
|
57
57
|
export type { CollectionStore, CollectionStoreConfig, DetailStore, DetailStoreConfig } from './stores/factories';
|
|
58
58
|
export { onRealtimeDataUpdate } from './realtime';
|
|
59
59
|
export { supabase } from './supabase/client';
|
|
60
|
-
export { initConfig, getConfig, setConfig } from './runtime/runtimeConfig';
|
|
60
|
+
export { initConfig, getConfig, setConfig, probeNetworkReachability, isOffline, setOfflineFlag } from './runtime/runtimeConfig';
|
|
61
61
|
export type { AppConfig } from './runtime/runtimeConfig';
|
|
62
62
|
export { debug, isDebugMode, setDebugMode } from './debug';
|
|
63
63
|
export { generateId, now, calculateNewOrder, snakeToCamel, formatBytes } from './utils';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AASH,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAS/E,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAClD,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClE,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAYtD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAa1C,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,eAAe,EAChB,MAAM,QAAQ,CAAC;AAChB,YAAY,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAY7C,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAWnG,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAQzE,OAAO,EACL,OAAO,EACP,uBAAuB,EACvB,cAAc,EACd,aAAa,EACb,SAAS,EACT,eAAe,EAChB,MAAM,iBAAiB,CAAC;AASzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAQ/D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAQpD,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,oBAAoB,EACpB,uBAAuB,EACvB,eAAe,EACf,uBAAuB,EACvB,0BAA0B,EAC1B,sBAAsB,EACtB,MAAM,EACN,qBAAqB,EACrB,6BAA6B,EAC7B,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAS3B,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAa5F,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,SAAS,EACT,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACf,MAAM,2BAA2B,CAAC;AAWnC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAQjF,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,YAAY,EACV,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAS5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AASlD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -166,7 +166,10 @@ export { supabase } from './supabase/client';
|
|
|
166
166
|
// - `initConfig` — initializes with defaults on app boot.
|
|
167
167
|
// - `getConfig` — reads the current configuration snapshot.
|
|
168
168
|
// - `setConfig` — merges partial updates into the active configuration.
|
|
169
|
-
|
|
169
|
+
// - `probeNetworkReachability` — async probe that tests actual connectivity.
|
|
170
|
+
// - `isOffline` — synchronous check: is the device effectively offline?
|
|
171
|
+
// - `setOfflineFlag` — manual offline flag control (internal / SW bridge).
|
|
172
|
+
export { initConfig, getConfig, setConfig, probeNetworkReachability, isOffline, setOfflineFlag } from './runtime/runtimeConfig';
|
|
170
173
|
// =============================================================================
|
|
171
174
|
// Debug Utilities
|
|
172
175
|
// =============================================================================
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,17 +13,24 @@
|
|
|
13
13
|
* 4. If the network is unreachable (offline PWA), the cached config is used
|
|
14
14
|
* as-is — ensuring the app can boot without connectivity.
|
|
15
15
|
*
|
|
16
|
-
* **Offline
|
|
17
|
-
*
|
|
18
|
-
* `
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* `
|
|
16
|
+
* **Offline detection:**
|
|
17
|
+
* The module provides a unified `isOffline()` check that combines the
|
|
18
|
+
* browser's `navigator.onLine` flag with a network reachability probe
|
|
19
|
+
* result (`probeNetworkReachability()`). The consumer app calls the probe
|
|
20
|
+
* once before `resolveRootLayout()`, and all downstream code uses
|
|
21
|
+
* `isOffline()` synchronously. The service worker can also set the offline
|
|
22
|
+
* flag early via `postMessage` → `window.__stellarOffline` bridge, so the
|
|
23
|
+
* probe returns instantly when the SW already detected a network timeout.
|
|
22
24
|
*
|
|
23
25
|
* @see {@link initConfig} for the async initialisation flow
|
|
24
26
|
* @see {@link getConfig} for synchronous access after initialisation
|
|
25
27
|
* @see {@link setConfig} for programmatic updates (e.g., after a setup wizard)
|
|
26
28
|
*/
|
|
29
|
+
declare global {
|
|
30
|
+
interface Window {
|
|
31
|
+
__stellarOffline?: boolean;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
27
34
|
/**
|
|
28
35
|
* Shape of the application configuration object returned by `/api/config`.
|
|
29
36
|
*
|
|
@@ -56,20 +63,96 @@ export interface AppConfig {
|
|
|
56
63
|
* ```
|
|
57
64
|
*/
|
|
58
65
|
export declare function _setConfigPrefix(prefix: string): void;
|
|
66
|
+
/**
|
|
67
|
+
* Whether the app should treat itself as offline.
|
|
68
|
+
*
|
|
69
|
+
* Returns `true` if any of the following are true:
|
|
70
|
+
* - The last {@link probeNetworkReachability} probe failed (timeout / error).
|
|
71
|
+
* - The service worker reported a navigation timeout via `postMessage`
|
|
72
|
+
* (bridged through `window.__stellarOffline`).
|
|
73
|
+
* - `navigator.onLine` is `false`.
|
|
74
|
+
*
|
|
75
|
+
* This is a **synchronous** check — no network request is made. All
|
|
76
|
+
* startup-path code should use this instead of raw `navigator.onLine`
|
|
77
|
+
* checks or the old `isNetworkUnreachable()`.
|
|
78
|
+
*
|
|
79
|
+
* @returns `true` if the device is effectively offline.
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* ```ts
|
|
83
|
+
* import { isOffline } from 'stellar-drive';
|
|
84
|
+
*
|
|
85
|
+
* if (isOffline()) {
|
|
86
|
+
* // Skip network calls, use cached data
|
|
87
|
+
* }
|
|
88
|
+
* ```
|
|
89
|
+
*
|
|
90
|
+
* @see {@link probeNetworkReachability} — async probe that sets the flag
|
|
91
|
+
* @see {@link setOfflineFlag} — manual flag control (internal)
|
|
92
|
+
*/
|
|
93
|
+
export declare function isOffline(): boolean;
|
|
94
|
+
/**
|
|
95
|
+
* Manually set the offline flag.
|
|
96
|
+
*
|
|
97
|
+
* Used internally by the `online` event handler and the service worker
|
|
98
|
+
* message bridge. Consumer apps should not need to call this directly —
|
|
99
|
+
* use {@link probeNetworkReachability} instead.
|
|
100
|
+
*
|
|
101
|
+
* @param value - `true` to mark offline, `false` to mark online.
|
|
102
|
+
* @internal
|
|
103
|
+
*/
|
|
104
|
+
export declare function setOfflineFlag(value: boolean): void;
|
|
105
|
+
/**
|
|
106
|
+
* Probe whether the network is actually reachable.
|
|
107
|
+
*
|
|
108
|
+
* `navigator.onLine` is unreliable on iOS PWA — it often reports `true` even
|
|
109
|
+
* in airplane mode. This function performs a real network probe by sending a
|
|
110
|
+
* `HEAD` request to `/api/config` (which bypasses the service worker, since
|
|
111
|
+
* the SW skips `/api/*` routes) with a **500 ms timeout**.
|
|
112
|
+
*
|
|
113
|
+
* The result is stored in the module-level `_offline` flag, readable
|
|
114
|
+
* synchronously via {@link isOffline}. The consumer app should call this
|
|
115
|
+
* **once** before `resolveRootLayout()` so all downstream code can use
|
|
116
|
+
* `isOffline()` without any network calls.
|
|
117
|
+
*
|
|
118
|
+
* If the service worker has already detected a network timeout, the probe
|
|
119
|
+
* returns instantly without making a request. The SW signals this via two
|
|
120
|
+
* mechanisms: a Cache API entry (`stellar-network/__status`) for cold starts,
|
|
121
|
+
* and a `postMessage` → `window.__stellarOffline` bridge for warm reloads.
|
|
122
|
+
*
|
|
123
|
+
* **Behaviour:**
|
|
124
|
+
* - If `navigator.onLine` is `false`, returns `false` immediately (no probe).
|
|
125
|
+
* - If already known offline (flag set), returns `false` immediately.
|
|
126
|
+
* - If the `HEAD` request succeeds within 1.5s, returns `true`.
|
|
127
|
+
* - If the request times out or fails, returns `false`.
|
|
128
|
+
*
|
|
129
|
+
* @returns `true` if the network is reachable, `false` otherwise.
|
|
130
|
+
*
|
|
131
|
+
* @example
|
|
132
|
+
* ```ts
|
|
133
|
+
* // In your root layout load function — call once before startup:
|
|
134
|
+
* await probeNetworkReachability();
|
|
135
|
+
* const result = await resolveRootLayout();
|
|
136
|
+
* ```
|
|
137
|
+
*
|
|
138
|
+
* @see {@link isOffline} — synchronous check of the offline flag
|
|
139
|
+
*/
|
|
140
|
+
export declare function probeNetworkReachability(): Promise<boolean>;
|
|
59
141
|
/**
|
|
60
142
|
* Initialise the runtime config.
|
|
61
143
|
*
|
|
62
144
|
* **Strategy:**
|
|
63
145
|
* 1. Return the in-flight promise if already initialising (de-duplication).
|
|
64
146
|
* 2. Try localStorage first for an instant, synchronous result.
|
|
65
|
-
* 3.
|
|
66
|
-
*
|
|
67
|
-
* 4. Fetch `/api/config`
|
|
68
|
-
* the cached value. The timeout defends against iOS PWA environments
|
|
69
|
-
* where `navigator.onLine` falsely reports `true` but fetch hangs.
|
|
147
|
+
* 3. Check {@link isOffline} — if the offline flag is set (by the probe or
|
|
148
|
+
* the SW message bridge), return the cached config immediately.
|
|
149
|
+
* 4. Fetch `/api/config` from the server to validate / update the cache.
|
|
70
150
|
* 5. If the server says "not configured", clear any stale cache and return `null`.
|
|
71
|
-
* 6. If the
|
|
72
|
-
*
|
|
151
|
+
* 6. If the fetch fails, fall back to the cached config (offline PWA).
|
|
152
|
+
*
|
|
153
|
+
* **Important:** The consumer app must call {@link probeNetworkReachability}
|
|
154
|
+
* before `resolveRootLayout()` (which calls `initConfig()`). This ensures the
|
|
155
|
+
* offline flag is already set by the time we reach step 3.
|
|
73
156
|
*
|
|
74
157
|
* @returns A promise resolving to the `AppConfig` if the app is configured,
|
|
75
158
|
* or `null` if not yet configured / unreachable.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtimeConfig.d.ts","sourceRoot":"","sources":["../../src/runtime/runtimeConfig.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"runtimeConfig.d.ts","sourceRoot":"","sources":["../../src/runtime/runtimeConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAIH,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B;CACF;AAMD;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IACxB,8EAA8E;IAC9E,WAAW,EAAE,MAAM,CAAC;IAEpB,2DAA2D;IAC3D,sBAAsB,EAAE,MAAM,CAAC;IAE/B;;;OAGG;IACH,UAAU,EAAE,OAAO,CAAC;CACrB;AAaD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,QAE9C;AAuCD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,SAAS,IAAI,OAAO,CAWnC;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAEnD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,OAAO,CAAC,CA6DjE;AAqDD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAqD5D;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,SAAS,IAAI,SAAS,GAAG,IAAI,CAQ5C;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAGjD"}
|
|
@@ -13,12 +13,14 @@
|
|
|
13
13
|
* 4. If the network is unreachable (offline PWA), the cached config is used
|
|
14
14
|
* as-is — ensuring the app can boot without connectivity.
|
|
15
15
|
*
|
|
16
|
-
* **Offline
|
|
17
|
-
*
|
|
18
|
-
* `
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* `
|
|
16
|
+
* **Offline detection:**
|
|
17
|
+
* The module provides a unified `isOffline()` check that combines the
|
|
18
|
+
* browser's `navigator.onLine` flag with a network reachability probe
|
|
19
|
+
* result (`probeNetworkReachability()`). The consumer app calls the probe
|
|
20
|
+
* once before `resolveRootLayout()`, and all downstream code uses
|
|
21
|
+
* `isOffline()` synchronously. The service worker can also set the offline
|
|
22
|
+
* flag early via `postMessage` → `window.__stellarOffline` bridge, so the
|
|
23
|
+
* probe returns instantly when the SW already detected a network timeout.
|
|
22
24
|
*
|
|
23
25
|
* @see {@link initConfig} for the async initialisation flow
|
|
24
26
|
* @see {@link getConfig} for synchronous access after initialisation
|
|
@@ -71,6 +73,165 @@ let configCache = null;
|
|
|
71
73
|
* concurrent callers share a single network request instead of racing.
|
|
72
74
|
*/
|
|
73
75
|
let configPromise = null;
|
|
76
|
+
/**
|
|
77
|
+
* Module-level offline flag. Set by {@link probeNetworkReachability} or by the
|
|
78
|
+
* service worker via the `window.__stellarOffline` bridge. Read by
|
|
79
|
+
* {@link isOffline}. Reset to `false` when a probe succeeds or the browser
|
|
80
|
+
* fires an `online` event.
|
|
81
|
+
*/
|
|
82
|
+
let _offline = false;
|
|
83
|
+
// =============================================================================
|
|
84
|
+
// OFFLINE DETECTION
|
|
85
|
+
// =============================================================================
|
|
86
|
+
/**
|
|
87
|
+
* Whether the app should treat itself as offline.
|
|
88
|
+
*
|
|
89
|
+
* Returns `true` if any of the following are true:
|
|
90
|
+
* - The last {@link probeNetworkReachability} probe failed (timeout / error).
|
|
91
|
+
* - The service worker reported a navigation timeout via `postMessage`
|
|
92
|
+
* (bridged through `window.__stellarOffline`).
|
|
93
|
+
* - `navigator.onLine` is `false`.
|
|
94
|
+
*
|
|
95
|
+
* This is a **synchronous** check — no network request is made. All
|
|
96
|
+
* startup-path code should use this instead of raw `navigator.onLine`
|
|
97
|
+
* checks or the old `isNetworkUnreachable()`.
|
|
98
|
+
*
|
|
99
|
+
* @returns `true` if the device is effectively offline.
|
|
100
|
+
*
|
|
101
|
+
* @example
|
|
102
|
+
* ```ts
|
|
103
|
+
* import { isOffline } from 'stellar-drive';
|
|
104
|
+
*
|
|
105
|
+
* if (isOffline()) {
|
|
106
|
+
* // Skip network calls, use cached data
|
|
107
|
+
* }
|
|
108
|
+
* ```
|
|
109
|
+
*
|
|
110
|
+
* @see {@link probeNetworkReachability} — async probe that sets the flag
|
|
111
|
+
* @see {@link setOfflineFlag} — manual flag control (internal)
|
|
112
|
+
*/
|
|
113
|
+
export function isOffline() {
|
|
114
|
+
if (_offline)
|
|
115
|
+
return true;
|
|
116
|
+
if (typeof navigator !== 'undefined' && !navigator.onLine)
|
|
117
|
+
return true;
|
|
118
|
+
/* Bridge: an inline script in app.html listens for the service worker's
|
|
119
|
+
NETWORK_UNREACHABLE message and sets this global before JS bundles load.
|
|
120
|
+
Promote it to the module flag so we don't re-check the global. */
|
|
121
|
+
if (typeof window !== 'undefined' && window.__stellarOffline) {
|
|
122
|
+
_offline = true;
|
|
123
|
+
return true;
|
|
124
|
+
}
|
|
125
|
+
return false;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Manually set the offline flag.
|
|
129
|
+
*
|
|
130
|
+
* Used internally by the `online` event handler and the service worker
|
|
131
|
+
* message bridge. Consumer apps should not need to call this directly —
|
|
132
|
+
* use {@link probeNetworkReachability} instead.
|
|
133
|
+
*
|
|
134
|
+
* @param value - `true` to mark offline, `false` to mark online.
|
|
135
|
+
* @internal
|
|
136
|
+
*/
|
|
137
|
+
export function setOfflineFlag(value) {
|
|
138
|
+
_offline = value;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Probe whether the network is actually reachable.
|
|
142
|
+
*
|
|
143
|
+
* `navigator.onLine` is unreliable on iOS PWA — it often reports `true` even
|
|
144
|
+
* in airplane mode. This function performs a real network probe by sending a
|
|
145
|
+
* `HEAD` request to `/api/config` (which bypasses the service worker, since
|
|
146
|
+
* the SW skips `/api/*` routes) with a **500 ms timeout**.
|
|
147
|
+
*
|
|
148
|
+
* The result is stored in the module-level `_offline` flag, readable
|
|
149
|
+
* synchronously via {@link isOffline}. The consumer app should call this
|
|
150
|
+
* **once** before `resolveRootLayout()` so all downstream code can use
|
|
151
|
+
* `isOffline()` without any network calls.
|
|
152
|
+
*
|
|
153
|
+
* If the service worker has already detected a network timeout, the probe
|
|
154
|
+
* returns instantly without making a request. The SW signals this via two
|
|
155
|
+
* mechanisms: a Cache API entry (`stellar-network/__status`) for cold starts,
|
|
156
|
+
* and a `postMessage` → `window.__stellarOffline` bridge for warm reloads.
|
|
157
|
+
*
|
|
158
|
+
* **Behaviour:**
|
|
159
|
+
* - If `navigator.onLine` is `false`, returns `false` immediately (no probe).
|
|
160
|
+
* - If already known offline (flag set), returns `false` immediately.
|
|
161
|
+
* - If the `HEAD` request succeeds within 1.5s, returns `true`.
|
|
162
|
+
* - If the request times out or fails, returns `false`.
|
|
163
|
+
*
|
|
164
|
+
* @returns `true` if the network is reachable, `false` otherwise.
|
|
165
|
+
*
|
|
166
|
+
* @example
|
|
167
|
+
* ```ts
|
|
168
|
+
* // In your root layout load function — call once before startup:
|
|
169
|
+
* await probeNetworkReachability();
|
|
170
|
+
* const result = await resolveRootLayout();
|
|
171
|
+
* ```
|
|
172
|
+
*
|
|
173
|
+
* @see {@link isOffline} — synchronous check of the offline flag
|
|
174
|
+
*/
|
|
175
|
+
export async function probeNetworkReachability() {
|
|
176
|
+
/* Fast path: navigator.onLine says we're offline */
|
|
177
|
+
if (typeof navigator !== 'undefined' && !navigator.onLine) {
|
|
178
|
+
_offline = true;
|
|
179
|
+
return false;
|
|
180
|
+
}
|
|
181
|
+
/* If already known offline (set by SW message bridge or prior probe),
|
|
182
|
+
skip the HEAD request. The flag is reset when a probe succeeds or
|
|
183
|
+
when the browser fires an 'online' event. */
|
|
184
|
+
if (_offline) {
|
|
185
|
+
return false;
|
|
186
|
+
}
|
|
187
|
+
/* Check the SW bridge global (inline script in app.html may have set
|
|
188
|
+
this before our JS bundle loaded — works for warm reloads). */
|
|
189
|
+
if (typeof window !== 'undefined' && window.__stellarOffline) {
|
|
190
|
+
_offline = true;
|
|
191
|
+
return false;
|
|
192
|
+
}
|
|
193
|
+
/* Check the Cache API for a recent SW network status entry.
|
|
194
|
+
On cold starts, postMessage doesn't work because the page doesn't
|
|
195
|
+
exist as a client yet when the SW sends the message. So the SW also
|
|
196
|
+
writes a timestamp entry to the Cache API, which IS accessible from
|
|
197
|
+
both the SW and main thread regardless of timing. */
|
|
198
|
+
try {
|
|
199
|
+
if (typeof caches !== 'undefined') {
|
|
200
|
+
const cache = await caches.open('stellar-network');
|
|
201
|
+
const entry = await cache.match('/__status');
|
|
202
|
+
if (entry) {
|
|
203
|
+
const ts = parseInt(entry.headers.get('x-ts') || '0');
|
|
204
|
+
/* Trust the entry if it was written within the last 10 seconds
|
|
205
|
+
(i.e., the SW's navigation fetch just timed out moments ago). */
|
|
206
|
+
if (Date.now() - ts < 10000) {
|
|
207
|
+
_offline = true;
|
|
208
|
+
await cache.delete('/__status');
|
|
209
|
+
return false;
|
|
210
|
+
}
|
|
211
|
+
/* Stale entry — clean it up */
|
|
212
|
+
await cache.delete('/__status');
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
catch {
|
|
217
|
+
/* Cache API unavailable or error — fall through to probe */
|
|
218
|
+
}
|
|
219
|
+
/* Probe: send a lightweight HEAD request to /api/config which bypasses
|
|
220
|
+
the service worker (SW skips /api/* routes), giving a true network check.
|
|
221
|
+
1.5s timeout avoids false positives on slow connections. */
|
|
222
|
+
try {
|
|
223
|
+
const controller = new AbortController();
|
|
224
|
+
const timeoutId = setTimeout(() => controller.abort(), 1500);
|
|
225
|
+
await fetch('/api/config', { method: 'HEAD', signal: controller.signal });
|
|
226
|
+
clearTimeout(timeoutId);
|
|
227
|
+
_offline = false;
|
|
228
|
+
return true;
|
|
229
|
+
}
|
|
230
|
+
catch {
|
|
231
|
+
_offline = true;
|
|
232
|
+
return false;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
74
235
|
// =============================================================================
|
|
75
236
|
// LOCAL STORAGE HELPERS
|
|
76
237
|
// =============================================================================
|
|
@@ -129,14 +290,15 @@ function saveToCache(config) {
|
|
|
129
290
|
* **Strategy:**
|
|
130
291
|
* 1. Return the in-flight promise if already initialising (de-duplication).
|
|
131
292
|
* 2. Try localStorage first for an instant, synchronous result.
|
|
132
|
-
* 3.
|
|
133
|
-
*
|
|
134
|
-
* 4. Fetch `/api/config`
|
|
135
|
-
* the cached value. The timeout defends against iOS PWA environments
|
|
136
|
-
* where `navigator.onLine` falsely reports `true` but fetch hangs.
|
|
293
|
+
* 3. Check {@link isOffline} — if the offline flag is set (by the probe or
|
|
294
|
+
* the SW message bridge), return the cached config immediately.
|
|
295
|
+
* 4. Fetch `/api/config` from the server to validate / update the cache.
|
|
137
296
|
* 5. If the server says "not configured", clear any stale cache and return `null`.
|
|
138
|
-
* 6. If the
|
|
139
|
-
*
|
|
297
|
+
* 6. If the fetch fails, fall back to the cached config (offline PWA).
|
|
298
|
+
*
|
|
299
|
+
* **Important:** The consumer app must call {@link probeNetworkReachability}
|
|
300
|
+
* before `resolveRootLayout()` (which calls `initConfig()`). This ensures the
|
|
301
|
+
* offline flag is already set by the time we reach step 3.
|
|
140
302
|
*
|
|
141
303
|
* @returns A promise resolving to the `AppConfig` if the app is configured,
|
|
142
304
|
* or `null` if not yet configured / unreachable.
|
|
@@ -159,21 +321,15 @@ export async function initConfig() {
|
|
|
159
321
|
if (cached) {
|
|
160
322
|
configCache = cached;
|
|
161
323
|
}
|
|
162
|
-
/*
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
if (isOffline && configCache) {
|
|
324
|
+
/* Check the offline flag (set by probeNetworkReachability() which the
|
|
325
|
+
consumer calls before resolveRootLayout(), or by the SW message bridge).
|
|
326
|
+
When offline, return the cached config without attempting a fetch. */
|
|
327
|
+
if (isOffline()) {
|
|
167
328
|
return configCache;
|
|
168
329
|
}
|
|
169
|
-
/*
|
|
170
|
-
Use a 3s AbortController timeout as defense against iOS PWA environments
|
|
171
|
-
where navigator.onLine falsely reports true but the network is unreachable. */
|
|
330
|
+
/* Network is reachable — fetch from server to validate/update */
|
|
172
331
|
try {
|
|
173
|
-
const
|
|
174
|
-
const timeoutId = setTimeout(() => controller.abort(), 3000);
|
|
175
|
-
const response = await fetch('/api/config', { signal: controller.signal });
|
|
176
|
-
clearTimeout(timeoutId);
|
|
332
|
+
const response = await fetch('/api/config');
|
|
177
333
|
if (response.ok) {
|
|
178
334
|
const serverConfig = await response.json();
|
|
179
335
|
if (serverConfig.configured) {
|
|
@@ -195,7 +351,7 @@ export async function initConfig() {
|
|
|
195
351
|
}
|
|
196
352
|
}
|
|
197
353
|
catch {
|
|
198
|
-
/* Network error
|
|
354
|
+
/* Network error — use cached config if available */
|
|
199
355
|
if (configCache) {
|
|
200
356
|
return configCache;
|
|
201
357
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtimeConfig.js","sourceRoot":"","sources":["../../src/runtime/runtimeConfig.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"runtimeConfig.js","sourceRoot":"","sources":["../../src/runtime/runtimeConfig.ts"],"names":[],"mappings":"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"}
|
package/dist/supabase/auth.d.ts
CHANGED
|
@@ -78,10 +78,12 @@ export declare function signOut(options?: {
|
|
|
78
78
|
* Get the current Supabase session.
|
|
79
79
|
*
|
|
80
80
|
* Uses an **offline-first** strategy:
|
|
81
|
-
* - When `
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
*
|
|
81
|
+
* - When {@link isOffline} returns `true` (covers `navigator.onLine`, the
|
|
82
|
+
* network reachability probe, and the SW message bridge), goes straight
|
|
83
|
+
* to localStorage via {@link getSessionFromStorage} without calling the
|
|
84
|
+
* Supabase SDK. This prevents `supabase.auth.getSession()` from triggering
|
|
85
|
+
* a token refresh that hangs indefinitely in airplane mode (especially on
|
|
86
|
+
* iOS PWA where `navigator.onLine` falsely reports `true`).
|
|
85
87
|
* - When online, delegates to `supabase.auth.getSession()` which may trigger
|
|
86
88
|
* a token refresh if the access token is close to expiry.
|
|
87
89
|
* - If the SDK call fails with a corrupted-session error, falls back to
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/supabase/auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAGH,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/supabase/auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAGH,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AA4C3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAsB,OAAO,CAAC,OAAO,CAAC,EAAE;IACtC,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,GAAG,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAqEpC;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CA0C1D;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,GAAG,IAAI,CAuBtD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,CAMjE;AAMD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAMzE;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAqBnC;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAW9F;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,SAAS,CAC7B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,QAAQ,GAAG,OAAO,GAAG,cAAc,GACxC,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAQnC;AAMD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAK/D"}
|
package/dist/supabase/auth.js
CHANGED
|
@@ -40,6 +40,7 @@ import { clearOfflineSession } from '../auth/offlineSession';
|
|
|
40
40
|
import { resetLoginGuard } from '../auth/loginGuard';
|
|
41
41
|
import { debugLog, debugWarn, debugError } from '../debug';
|
|
42
42
|
import { getEngineConfig } from '../config';
|
|
43
|
+
import { isOffline } from '../runtime/runtimeConfig';
|
|
43
44
|
import { syncStatusStore } from '../stores/sync';
|
|
44
45
|
import { authState } from '../stores/authState';
|
|
45
46
|
import { isDemoMode } from '../demo';
|
|
@@ -173,10 +174,12 @@ export async function signOut(options) {
|
|
|
173
174
|
* Get the current Supabase session.
|
|
174
175
|
*
|
|
175
176
|
* Uses an **offline-first** strategy:
|
|
176
|
-
* - When `
|
|
177
|
-
*
|
|
178
|
-
*
|
|
179
|
-
*
|
|
177
|
+
* - When {@link isOffline} returns `true` (covers `navigator.onLine`, the
|
|
178
|
+
* network reachability probe, and the SW message bridge), goes straight
|
|
179
|
+
* to localStorage via {@link getSessionFromStorage} without calling the
|
|
180
|
+
* Supabase SDK. This prevents `supabase.auth.getSession()` from triggering
|
|
181
|
+
* a token refresh that hangs indefinitely in airplane mode (especially on
|
|
182
|
+
* iOS PWA where `navigator.onLine` falsely reports `true`).
|
|
180
183
|
* - When online, delegates to `supabase.auth.getSession()` which may trigger
|
|
181
184
|
* a token refresh if the access token is close to expiry.
|
|
182
185
|
* - If the SDK call fails with a corrupted-session error, falls back to
|
|
@@ -203,11 +206,13 @@ export async function signOut(options) {
|
|
|
203
206
|
export async function getSession() {
|
|
204
207
|
if (isDemoMode())
|
|
205
208
|
return null;
|
|
206
|
-
const isOffline = typeof navigator !== 'undefined' && !navigator.onLine;
|
|
207
209
|
/* Offline fast path: skip the SDK call entirely when offline to prevent
|
|
208
210
|
supabase.auth.getSession() from triggering a token refresh that hangs
|
|
209
|
-
in airplane mode. Go straight to localStorage.
|
|
210
|
-
|
|
211
|
+
in airplane mode. Go straight to localStorage.
|
|
212
|
+
|
|
213
|
+
isOffline() checks the probe flag (catches iOS PWA where navigator.onLine
|
|
214
|
+
lies), the SW message bridge, and navigator.onLine — all synchronously. */
|
|
215
|
+
if (isOffline()) {
|
|
211
216
|
debugLog('[Auth] Offline - reading session from localStorage directly');
|
|
212
217
|
return getSessionFromStorage();
|
|
213
218
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/supabase/auth.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/supabase/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/sw/sw.js
CHANGED
|
@@ -13,9 +13,13 @@
|
|
|
13
13
|
* Stored in `SHELL_CACHE` which is keyed by `APP_VERSION` and
|
|
14
14
|
* automatically cleaned up when a new SW activates.
|
|
15
15
|
*
|
|
16
|
-
* - **Navigation requests** (HTML) — network-first with a
|
|
17
|
-
* timeout, falling back to the cached root `/` document.
|
|
18
|
-
*
|
|
16
|
+
* - **Navigation requests** (HTML) — network-first with a 1.5-second
|
|
17
|
+
* timeout, falling back to the cached root `/` document. When the
|
|
18
|
+
* fetch times out, the SW writes a timestamp to the Cache API
|
|
19
|
+
* (`stellar-network/__status`) and broadcasts `NETWORK_UNREACHABLE`
|
|
20
|
+
* to clients. The main thread's `probeNetworkReachability()` checks
|
|
21
|
+
* the Cache API entry first, so it can skip its own HEAD request.
|
|
22
|
+
* Ensures the app loads offline while staying fresh when online.
|
|
19
23
|
*
|
|
20
24
|
* - **Background precaching** — after install, the SW can be told to
|
|
21
25
|
* fetch all assets listed in `asset-manifest.json`, downloading only
|
|
@@ -273,9 +277,11 @@ async function handleNavigationRequest(request) {
|
|
|
273
277
|
});
|
|
274
278
|
}
|
|
275
279
|
try {
|
|
276
|
-
/*
|
|
280
|
+
/* 1.5-second timeout — don't leave the user staring at a blank screen.
|
|
281
|
+
When this times out, the catch block notifies the main thread via
|
|
282
|
+
NETWORK_UNREACHABLE so the probe can skip its own HEAD request. */
|
|
277
283
|
const controller = new AbortController();
|
|
278
|
-
const timeoutId = setTimeout(() => controller.abort(),
|
|
284
|
+
const timeoutId = setTimeout(() => controller.abort(), 1500);
|
|
279
285
|
const response = await fetch(request, { signal: controller.signal });
|
|
280
286
|
clearTimeout(timeoutId);
|
|
281
287
|
if (response.ok) {
|
|
@@ -288,6 +294,22 @@ async function handleNavigationRequest(request) {
|
|
|
288
294
|
catch {
|
|
289
295
|
/* Network failed or timed out — serve cached HTML */
|
|
290
296
|
console.log('[SW] Navigation offline, serving cache');
|
|
297
|
+
/* Signal the main thread that the network is unreachable.
|
|
298
|
+
|
|
299
|
+
Two mechanisms for different timing scenarios:
|
|
300
|
+
|
|
301
|
+
1. Cache API entry (for cold starts): probeNetworkReachability()
|
|
302
|
+
checks this before making its own HEAD request. Works even when
|
|
303
|
+
no page client exists yet (SW is serving the HTML that will
|
|
304
|
+
create the client).
|
|
305
|
+
|
|
306
|
+
2. postMessage (for warm reloads): If a page is already open,
|
|
307
|
+
the inline listener in app.html catches this and sets
|
|
308
|
+
window.__stellarOffline immediately. */
|
|
309
|
+
caches
|
|
310
|
+
.open('stellar-network')
|
|
311
|
+
.then((c) => c.put('/__status', new Response('', { headers: { 'x-ts': Date.now().toString() } })));
|
|
312
|
+
notifyClients({ type: 'NETWORK_UNREACHABLE' });
|
|
291
313
|
const cached = await cache.match('/');
|
|
292
314
|
if (cached)
|
|
293
315
|
return cached;
|
|
@@ -608,7 +630,7 @@ function getOfflineHTML() {
|
|
|
608
630
|
/**
|
|
609
631
|
* Listens for messages from the app's client-side code.
|
|
610
632
|
*
|
|
611
|
-
* **Supported message types:**
|
|
633
|
+
* **Supported message types (inbound, client → SW):**
|
|
612
634
|
* - `SKIP_WAITING` --> Immediately activate the waiting SW (user accepted update)
|
|
613
635
|
* - `GET_VERSION` --> Responds with the current `APP_VERSION` via `MessagePort`
|
|
614
636
|
* - `PRECACHE_ALL` --> Triggers {@link backgroundPrecache} to download all assets
|
|
@@ -616,6 +638,11 @@ function getOfflineHTML() {
|
|
|
616
638
|
* - `CACHE_URLS` --> Caches a specific list of URLs (used for route prefetching)
|
|
617
639
|
* - `GET_CACHE_STATUS` --> Responds with cache completeness info via `MessagePort`
|
|
618
640
|
*
|
|
641
|
+
* **Outbound messages (SW → client):**
|
|
642
|
+
* - `SW_INSTALLED` --> Sent when a new SW version has been installed
|
|
643
|
+
* - `NETWORK_UNREACHABLE` --> Sent when the navigation fetch times out, so the
|
|
644
|
+
* main thread can set the offline flag immediately
|
|
645
|
+
*
|
|
619
646
|
* @param event - The {@link ExtendableMessageEvent} from a client.
|
|
620
647
|
*/
|
|
621
648
|
self.addEventListener('message', (event) => {
|