@terreno/rtk 0.13.0 → 0.14.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/dist/authSlice.test.js +2 -10
- package/dist/authSlice.test.js.map +1 -1
- package/dist/authSliceNative.test.js +11 -3
- package/dist/authSliceNative.test.js.map +1 -1
- package/dist/betterAuthSlice.test.js +1 -25
- package/dist/betterAuthSlice.test.js.map +1 -1
- package/dist/buildNumber.test.js +19 -0
- package/dist/buildNumber.test.js.map +1 -1
- package/dist/constants.d.ts +3 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +11 -3
- package/dist/constants.js.map +1 -1
- package/dist/constants.test.js +44 -2
- package/dist/constants.test.js.map +1 -1
- package/dist/emptyApi.d.ts +2 -0
- package/dist/emptyApi.d.ts.map +1 -1
- package/dist/emptyApi.js +5 -0
- package/dist/emptyApi.js.map +1 -1
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/isolated/constants.isolated.js +7 -1
- package/dist/isolated/constants.isolated.js.map +1 -1
- package/dist/isolated/offlineMiddleware.isolated.d.ts +2 -0
- package/dist/isolated/offlineMiddleware.isolated.d.ts.map +1 -0
- package/dist/isolated/offlineMiddleware.isolated.js +516 -0
- package/dist/isolated/offlineMiddleware.isolated.js.map +1 -0
- package/dist/isolated/offlineMiddleware.native.isolated.d.ts +2 -0
- package/dist/isolated/offlineMiddleware.native.isolated.d.ts.map +1 -0
- package/dist/isolated/offlineMiddleware.native.isolated.js +70 -0
- package/dist/isolated/offlineMiddleware.native.isolated.js.map +1 -0
- package/dist/isolated/useUpgradeCheck.mobile.isolated.d.ts +2 -0
- package/dist/isolated/useUpgradeCheck.mobile.isolated.d.ts.map +1 -0
- package/dist/{useUpgradeCheck.mobile.test.js → isolated/useUpgradeCheck.mobile.isolated.js} +13 -5
- package/dist/isolated/useUpgradeCheck.mobile.isolated.js.map +1 -0
- package/dist/isolated/useUpgradeCheck.web.isolated.d.ts +2 -0
- package/dist/isolated/useUpgradeCheck.web.isolated.d.ts.map +1 -0
- package/dist/{useUpgradeCheck.test.js → isolated/useUpgradeCheck.web.isolated.js} +37 -7
- package/dist/isolated/useUpgradeCheck.web.isolated.js.map +1 -0
- package/dist/mongooseSlice.test.js +1 -1
- package/dist/mongooseSlice.test.js.map +1 -1
- package/dist/offlineGate.d.ts +8 -0
- package/dist/offlineGate.d.ts.map +1 -0
- package/dist/offlineGate.js +20 -0
- package/dist/offlineGate.js.map +1 -0
- package/dist/offlineGate.test.d.ts +2 -0
- package/dist/offlineGate.test.d.ts.map +1 -0
- package/dist/offlineGate.test.js +46 -0
- package/dist/offlineGate.test.js.map +1 -0
- package/dist/offlineMiddleware.d.ts +46 -0
- package/dist/offlineMiddleware.d.ts.map +1 -0
- package/dist/offlineMiddleware.js +591 -0
- package/dist/offlineMiddleware.js.map +1 -0
- package/dist/offlineMiddleware.test.d.ts +2 -0
- package/dist/offlineMiddleware.test.d.ts.map +1 -0
- package/dist/offlineMiddleware.test.js +145 -0
- package/dist/offlineMiddleware.test.js.map +1 -0
- package/dist/offlineSlice.d.ts +232 -0
- package/dist/offlineSlice.d.ts.map +1 -0
- package/dist/offlineSlice.js +65 -0
- package/dist/offlineSlice.js.map +1 -0
- package/dist/offlineSlice.test.d.ts +2 -0
- package/dist/offlineSlice.test.d.ts.map +1 -0
- package/dist/offlineSlice.test.js +153 -0
- package/dist/offlineSlice.test.js.map +1 -0
- package/dist/realtime.d.ts +123 -0
- package/dist/realtime.d.ts.map +1 -0
- package/dist/realtime.js +299 -0
- package/dist/realtime.js.map +1 -0
- package/dist/realtime.test.d.ts +2 -0
- package/dist/realtime.test.d.ts.map +1 -0
- package/dist/realtime.test.js +339 -0
- package/dist/realtime.test.js.map +1 -0
- package/dist/socket.d.ts.map +1 -1
- package/dist/socket.js +29 -28
- package/dist/socket.js.map +1 -1
- package/dist/sync.d.ts +35 -0
- package/dist/sync.d.ts.map +1 -0
- package/dist/sync.js +205 -0
- package/dist/sync.js.map +1 -0
- package/dist/tagGenerator.d.ts +20 -1
- package/dist/tagGenerator.d.ts.map +1 -1
- package/dist/tagGenerator.js +1 -2
- package/dist/tagGenerator.js.map +1 -1
- package/dist/useOfflineStatus.d.ts +33 -0
- package/dist/useOfflineStatus.d.ts.map +1 -0
- package/dist/useOfflineStatus.js +43 -0
- package/dist/useOfflineStatus.js.map +1 -0
- package/dist/useOfflineStatus.test.d.ts +2 -0
- package/dist/useOfflineStatus.test.d.ts.map +1 -0
- package/dist/useOfflineStatus.test.js +119 -0
- package/dist/useOfflineStatus.test.js.map +1 -0
- package/dist/useRealtimeDebug.d.ts +6 -0
- package/dist/useRealtimeDebug.d.ts.map +1 -0
- package/dist/useRealtimeDebug.js +41 -0
- package/dist/useRealtimeDebug.js.map +1 -0
- package/dist/useServerStatus.d.ts +29 -0
- package/dist/useServerStatus.d.ts.map +1 -0
- package/dist/useServerStatus.js +89 -0
- package/dist/useServerStatus.js.map +1 -0
- package/dist/useUpgradeCheck.d.ts +7 -3
- package/dist/useUpgradeCheck.d.ts.map +1 -1
- package/dist/useUpgradeCheck.js +27 -13
- package/dist/useUpgradeCheck.js.map +1 -1
- package/package.json +2 -2
- package/src/authSlice.test.ts +2 -11
- package/src/authSliceNative.test.ts +11 -4
- package/src/betterAuthSlice.test.ts +1 -25
- package/src/buildNumber.test.ts +19 -0
- package/src/constants.test.ts +54 -1
- package/src/constants.ts +14 -3
- package/src/emptyApi.ts +8 -0
- package/src/index.ts +8 -0
- package/src/isolated/constants.isolated.ts +7 -3
- package/src/isolated/offlineMiddleware.isolated.ts +696 -0
- package/src/isolated/offlineMiddleware.native.isolated.ts +80 -0
- package/src/{useUpgradeCheck.mobile.test.ts → isolated/useUpgradeCheck.mobile.isolated.ts} +13 -4
- package/src/{useUpgradeCheck.test.ts → isolated/useUpgradeCheck.web.isolated.ts} +48 -6
- package/src/mongooseSlice.test.ts +1 -1
- package/src/offlineGate.test.ts +55 -0
- package/src/offlineGate.ts +25 -0
- package/src/offlineMiddleware.test.ts +187 -0
- package/src/offlineMiddleware.ts +718 -0
- package/src/offlineSlice.test.ts +204 -0
- package/src/offlineSlice.ts +130 -0
- package/src/realtime.test.ts +404 -0
- package/src/realtime.ts +408 -0
- package/src/socket.ts +33 -32
- package/src/sync.ts +310 -0
- package/src/tagGenerator.ts +29 -11
- package/src/useOfflineStatus.test.ts +157 -0
- package/src/useOfflineStatus.ts +82 -0
- package/src/useRealtimeDebug.ts +51 -0
- package/src/useServerStatus.ts +122 -0
- package/src/useUpgradeCheck.ts +35 -13
- package/dist/isolated/useUpgradeCheck.isolated.d.ts +0 -2
- package/dist/isolated/useUpgradeCheck.isolated.d.ts.map +0 -1
- package/dist/isolated/useUpgradeCheck.isolated.js +0 -153
- package/dist/isolated/useUpgradeCheck.isolated.js.map +0 -1
- package/dist/useUpgradeCheck.mobile.test.d.ts +0 -2
- package/dist/useUpgradeCheck.mobile.test.d.ts.map +0 -1
- package/dist/useUpgradeCheck.mobile.test.js.map +0 -1
- package/dist/useUpgradeCheck.test.d.ts +0 -2
- package/dist/useUpgradeCheck.test.d.ts.map +0 -1
- package/dist/useUpgradeCheck.test.js.map +0 -1
- package/src/isolated/useUpgradeCheck.isolated.ts +0 -201
package/src/emptyApi.ts
CHANGED
|
@@ -18,6 +18,7 @@ import {DateTime} from "luxon";
|
|
|
18
18
|
import qs from "qs";
|
|
19
19
|
import {generateProfileEndpoints, getAuthToken} from "./authSlice";
|
|
20
20
|
import {AUTH_DEBUG, baseUrl, LOGOUT_ACTION_TYPE, TOKEN_REFRESHED_SUCCESS} from "./constants";
|
|
21
|
+
import {shouldDeferOfflineMutation} from "./offlineGate";
|
|
21
22
|
import {IsWeb} from "./platform";
|
|
22
23
|
|
|
23
24
|
const log = AUTH_DEBUG ? (s: string): void => console.debug(`[auth] ${s}`) : (): void => {};
|
|
@@ -25,6 +26,8 @@ const log = AUTH_DEBUG ? (s: string): void => console.debug(`[auth] ${s}`) : ():
|
|
|
25
26
|
/** Response from Terreno `GET /version-check` (VersionCheckPlugin). */
|
|
26
27
|
export interface VersionCheckResponse {
|
|
27
28
|
message?: string;
|
|
29
|
+
/** How often the client should poll for updates, in milliseconds. */
|
|
30
|
+
pollingIntervalMs?: number;
|
|
28
31
|
requiredVersion?: number;
|
|
29
32
|
status: "ok" | "warning" | "required";
|
|
30
33
|
updateUrl?: string;
|
|
@@ -210,6 +213,11 @@ export const getBaseQuery = (
|
|
|
210
213
|
|
|
211
214
|
export const staggeredBaseQuery = retry(
|
|
212
215
|
async (args: string | FetchArgs, api, extraOptions) => {
|
|
216
|
+
// Short-circuit immediately when offline for configured mutation endpoints
|
|
217
|
+
if (api.type === "mutation" && shouldDeferOfflineMutation(api.endpoint, api.getState)) {
|
|
218
|
+
retry.fail({error: "Network unavailable", status: "FETCH_ERROR"});
|
|
219
|
+
}
|
|
220
|
+
|
|
213
221
|
// wait until the mutex is available without locking it
|
|
214
222
|
await mutex.waitForUnlock();
|
|
215
223
|
let token = await getAuthToken();
|
package/src/index.ts
CHANGED
|
@@ -5,8 +5,16 @@ export * from "./betterAuthTypes";
|
|
|
5
5
|
export * from "./constants";
|
|
6
6
|
export * from "./emptyApi";
|
|
7
7
|
export * from "./mongooseSlice";
|
|
8
|
+
export * from "./offlineGate";
|
|
9
|
+
export * from "./offlineMiddleware";
|
|
10
|
+
export * from "./offlineSlice";
|
|
8
11
|
export * from "./platform";
|
|
12
|
+
export * from "./realtime";
|
|
9
13
|
export * from "./socket";
|
|
14
|
+
export * from "./sync";
|
|
10
15
|
export * from "./tagGenerator";
|
|
11
16
|
export * from "./useFeatureFlags";
|
|
17
|
+
export * from "./useOfflineStatus";
|
|
18
|
+
export * from "./useRealtimeDebug";
|
|
19
|
+
export * from "./useServerStatus";
|
|
12
20
|
export * from "./useUpgradeCheck";
|
|
@@ -36,10 +36,15 @@ describe("expo tunnel warning", () => {
|
|
|
36
36
|
describe("AUTH_DEBUG enabled path", () => {
|
|
37
37
|
it("logs debug messages from logAuth when AUTH_DEBUG is true on module load", async () => {
|
|
38
38
|
const debugCalls: unknown[][] = [];
|
|
39
|
+
const infoCalls: unknown[][] = [];
|
|
39
40
|
const originalDebug = console.debug;
|
|
41
|
+
const originalInfo = console.info;
|
|
40
42
|
console.debug = (...args: unknown[]): void => {
|
|
41
43
|
debugCalls.push(args);
|
|
42
44
|
};
|
|
45
|
+
console.info = (...args: unknown[]): void => {
|
|
46
|
+
infoCalls.push(args);
|
|
47
|
+
};
|
|
43
48
|
mock.module("expo-constants", () => ({
|
|
44
49
|
default: {expoConfig: {extra: {AUTH_DEBUG: "true", WEBSOCKETS_DEBUG: "true"}}},
|
|
45
50
|
}));
|
|
@@ -51,11 +56,10 @@ describe("AUTH_DEBUG enabled path", () => {
|
|
|
51
56
|
loaded.logAuth("hello");
|
|
52
57
|
expect(debugCalls.length).toBe(preLength + 1);
|
|
53
58
|
loaded.logSocket(undefined, "ws on");
|
|
54
|
-
expect(
|
|
55
|
-
true
|
|
56
|
-
);
|
|
59
|
+
expect(infoCalls.some((args) => args[0] === "[websocket]" && args[1] === "ws on")).toBe(true);
|
|
57
60
|
} finally {
|
|
58
61
|
console.debug = originalDebug;
|
|
62
|
+
console.info = originalInfo;
|
|
59
63
|
mock.module("expo-constants", () => ({default: {expoConfig: {extra: {}}}}));
|
|
60
64
|
}
|
|
61
65
|
});
|