@oxy.so/services 12.12.0 → 12.13.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.
@@ -25,6 +25,7 @@ var _LanguageBridge = require("./LanguageBridge.js");
25
25
  var _BloomLocaleBridge = require("./BloomLocaleBridge.js");
26
26
  var _oxyRuntimeContext = require("../context/oxyRuntimeContext.js");
27
27
  var _useAccountQueries = require("../hooks/queries/useAccountQueries.js");
28
+ var _useSupervision = require("../hooks/queries/useSupervision.js");
28
29
  var _jsxRuntime = require("react/jsx-runtime");
29
30
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); } /** Hydrate owner preferences after the bearer is ready, including on cold boot. */
30
31
  function AccountProfileObserver() {
@@ -270,7 +271,7 @@ const OxyProvider = ({
270
271
  platformStorage: platformStorage,
271
272
  accountQueries: accountQueries,
272
273
  onAuthStateChange: onAuthStateChange,
273
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(AccountProfileObserver, {}), productAnalytics ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_productAnalytics.ProductAnalyticsObserver, {
274
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(AccountProfileObserver, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_useSupervision.SupervisionStateObserver, {}), productAnalytics ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_productAnalytics.ProductAnalyticsObserver, {
274
275
  analytics: productAnalytics
275
276
  }) : null, language ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_LanguageBridge.LanguageBridge, {
276
277
  ...language
@@ -1 +1 @@
1
- {"version":3,"names":["_oxySupportContext","require","_routes","_react","_reactNative","_reactNativeGestureHandler","_OxyContext","_reactQuery","_surfaces","_toast","_core","_RequireOxyAuth","_queryClient","_storageHelpers","_netConnectivity","_KeyboardBoundary","_SafeAreaRoot","_productAnalytics","_LanguageBridge","_BloomLocaleBridge","_oxyRuntimeContext","_useAccountQueries","_jsxRuntime","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","AccountProfileObserver","canUsePrivateApi","useOxy","useCurrentUser","enabled","bootStyles","StyleSheet","create","providerRoot","flex","isWeb","Platform","OS","OxyProvider","oxyServices","children","onAuthStateChange","onAskAlia","documentationUrl","aliaAvatar","oxyOneArtwork","productAnalytics","storageKeyPrefix","clientId","baseURL","authWebUrl","authRedirectUri","authorizeBaseUrl","sessionMode","webAuthMode","queryClient","providedQueryClient","accountQueries","requireAuth","backgroundSession","language","support","useMemo","useEffect","loadScreens","catch","undefined","queryClientRef","useRef","persistenceUnsubRef","ownsQueryClientRef","accountQueriesRef","platformStorage","setPlatformStorage","useState","current","client","createQueryClient","mounted","bootstrap","storage","createPlatformStorage","error","__DEV__","loggerUtil","warn","component","createMemoryStorage","persistence","attachQueryPersistence","unsubscribe","restored","handleVisibilityChange","focusManager","setFocused","document","visibilityState","addEventListener","removeEventListener","subscription","AppState","state","remove","cleanup","setupNetworkMonitoring","onlineManager","setOnline","navigator","onLine","handleOnline","handleOffline","window","NetInfo","Promise","resolve","then","fetch","isNetConnectivityOnline","coreContent","jsx","QueryClientProvider","jsxs","OxyRuntimeProvider","ProductAnalyticsObserver","analytics","LanguageBridge","BloomLocaleBridge","OxySupportContext","Provider","value","SurfaceProvider","RequireOxyAuth","prompt","ToastOutlet","GestureHandlerRootView","style","SafeAreaRoot","KeyboardBoundary","_default","exports"],"sourceRoot":"../../../../src","sources":["ui/components/OxyProvider.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_oxySupportContext","require","_routes","_react","_reactNative","_reactNativeGestureHandler","_OxyContext","_reactQuery","_surfaces","_toast","_core","_RequireOxyAuth","_queryClient","_storageHelpers","_netConnectivity","_KeyboardBoundary","_SafeAreaRoot","_productAnalytics","_LanguageBridge","_BloomLocaleBridge","_oxyRuntimeContext","_useAccountQueries","_useSupervision","_jsxRuntime","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","AccountProfileObserver","canUsePrivateApi","useOxy","useCurrentUser","enabled","bootStyles","StyleSheet","create","providerRoot","flex","isWeb","Platform","OS","OxyProvider","oxyServices","children","onAuthStateChange","onAskAlia","documentationUrl","aliaAvatar","oxyOneArtwork","productAnalytics","storageKeyPrefix","clientId","baseURL","authWebUrl","authRedirectUri","authorizeBaseUrl","sessionMode","webAuthMode","queryClient","providedQueryClient","accountQueries","requireAuth","backgroundSession","language","support","useMemo","useEffect","loadScreens","catch","undefined","queryClientRef","useRef","persistenceUnsubRef","ownsQueryClientRef","accountQueriesRef","platformStorage","setPlatformStorage","useState","current","client","createQueryClient","mounted","bootstrap","storage","createPlatformStorage","error","__DEV__","loggerUtil","warn","component","createMemoryStorage","persistence","attachQueryPersistence","unsubscribe","restored","handleVisibilityChange","focusManager","setFocused","document","visibilityState","addEventListener","removeEventListener","subscription","AppState","state","remove","cleanup","setupNetworkMonitoring","onlineManager","setOnline","navigator","onLine","handleOnline","handleOffline","window","NetInfo","Promise","resolve","then","fetch","isNetConnectivityOnline","coreContent","jsx","QueryClientProvider","jsxs","OxyRuntimeProvider","SupervisionStateObserver","ProductAnalyticsObserver","analytics","LanguageBridge","BloomLocaleBridge","OxySupportContext","Provider","value","SurfaceProvider","RequireOxyAuth","prompt","ToastOutlet","GestureHandlerRootView","style","SafeAreaRoot","KeyboardBoundary","_default","exports"],"sourceRoot":"../../../../src","sources":["ui/components/OxyProvider.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,35 +3,71 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ exports.SupervisionStateObserver = SupervisionStateObserver;
6
7
  exports.supervisionQueryKeys = void 0;
7
8
  exports.useSupervision = useSupervision;
8
9
  var _reactQuery = require("@tanstack/react-query");
10
+ var _client = require("@oxy.so/contracts/client");
9
11
  var _oxyRuntimeContext = require("../../context/oxyRuntimeContext.js");
12
+ var _useOxyEvent = require("../useOxyEvent.js");
10
13
  const supervisionQueryKeys = exports.supervisionQueryKeys = {
11
14
  all: ['oxy', 'safety', 'supervision'],
12
15
  account: (id, sessionId) => ['oxy', 'safety', 'supervision', id, sessionId]
13
16
  };
14
- /** Advisory UI state only. Every read/write still requires the live server policy. */
17
+
18
+ /**
19
+ * The signed-in personal account's supervision (parental-control) state.
20
+ *
21
+ * Policy: the SDK keeps the session's supervision state always current — it is
22
+ * fetched when the session is established, refetched when the app returns to
23
+ * the foreground, and refetched when the session socket signals
24
+ * `supervision_changed` (`SupervisionStateObserver`, mounted by `OxyProvider`).
25
+ * Screens read it from the cache without waiting for the network: no observer
26
+ * forces its own refetch on mount. `data` is undefined only while the session's
27
+ * first fetch is pending, when the query is disabled (signed out, or not a
28
+ * personal account) and after a failed fetch.
29
+ *
30
+ * Advisory UI state only. The server keeps enforcing supervision on every
31
+ * content request; never treat this value as authorization.
32
+ */
15
33
  function useSupervision() {
16
34
  const {
17
35
  oxyServices,
18
36
  user,
19
- isAuthenticated,
37
+ canUsePrivateApi,
20
38
  activeSessionId
21
39
  } = (0, _oxyRuntimeContext.useOxy)();
22
40
  const result = (0, _reactQuery.useQuery)({
23
41
  queryKey: supervisionQueryKeys.account(user?.id ?? '', activeSessionId ?? ''),
24
42
  queryFn: () => oxyServices.safety.supervisionState(),
25
- enabled: isAuthenticated && !!activeSessionId && user?.kind === 'personal',
26
- staleTime: 0,
27
- gcTime: 0,
28
- refetchOnWindowFocus: 'always',
29
- refetchOnMount: 'always',
30
- retry: false
43
+ enabled: canUsePrivateApi && !!activeSessionId && user?.kind === 'personal',
44
+ // Fresh until the socket signal or a return to the foreground says otherwise.
45
+ staleTime: Number.POSITIVE_INFINITY,
46
+ // The observer below keeps the current session's entry alive; this only
47
+ // bounds how long a previous session's entry outlives it.
48
+ gcTime: 30 * 60 * 1000,
49
+ refetchOnWindowFocus: 'always'
31
50
  });
32
51
  return {
33
52
  ...result,
34
- data: result.isFetchedAfterMount && !result.isError ? result.data : undefined
53
+ data: result.isError ? undefined : result.data
35
54
  };
36
55
  }
56
+
57
+ /**
58
+ * Keeps the session's supervision state current for every `useSupervision()`
59
+ * reader: its observer fetches once the session is established and on each
60
+ * return to the foreground, and the `supervision_changed` socket signal
61
+ * refetches it. Rendered once by `OxyProvider`.
62
+ */
63
+ function SupervisionStateObserver() {
64
+ const queryClient = (0, _reactQuery.useQueryClient)();
65
+ useSupervision();
66
+ (0, _useOxyEvent.useOxyEvent)(_client.SUPERVISION_CHANGED_EVENT, () => {
67
+ void queryClient.invalidateQueries({
68
+ queryKey: supervisionQueryKeys.all
69
+ });
70
+ });
71
+ return null;
72
+ }
37
73
  //# sourceMappingURL=useSupervision.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_reactQuery","require","_oxyRuntimeContext","supervisionQueryKeys","exports","all","account","id","sessionId","useSupervision","oxyServices","user","isAuthenticated","activeSessionId","useOxy","result","useQuery","queryKey","queryFn","safety","supervisionState","enabled","kind","staleTime","gcTime","refetchOnWindowFocus","refetchOnMount","retry","data","isFetchedAfterMount","isError","undefined"],"sourceRoot":"../../../../../src","sources":["ui/hooks/queries/useSupervision.ts"],"mappings":";;;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,kBAAA,GAAAD,OAAA;AACO,MAAME,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAG;EAClCE,GAAG,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,CAAU;EAC9CC,OAAO,EAAEA,CAACC,EAAU,EAAEC,SAAiB,KACrC,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAED,EAAE,EAAEC,SAAS;AAClD,CAAC;AACD;AACO,SAASC,cAAcA,CAAA,EAAG;EAC/B,MAAM;IAAEC,WAAW;IAAEC,IAAI;IAAEC,eAAe;IAAEC;EAAgB,CAAC,GAAG,IAAAC,yBAAM,EAAC,CAAC;EACxE,MAAMC,MAAM,GAAG,IAAAC,oBAAQ,EAAC;IACtBC,QAAQ,EAAEd,oBAAoB,CAACG,OAAO,CAACK,IAAI,EAAEJ,EAAE,IAAI,EAAE,EAAEM,eAAe,IAAI,EAAE,CAAC;IAC7EK,OAAO,EAAEA,CAAA,KAAMR,WAAW,CAACS,MAAM,CAACC,gBAAgB,CAAC,CAAC;IACpDC,OAAO,EAAET,eAAe,IAAI,CAAC,CAACC,eAAe,IAAIF,IAAI,EAAEW,IAAI,KAAK,UAAU;IAC1EC,SAAS,EAAE,CAAC;IACZC,MAAM,EAAE,CAAC;IACTC,oBAAoB,EAAE,QAAQ;IAC9BC,cAAc,EAAE,QAAQ;IACxBC,KAAK,EAAE;EACT,CAAC,CAAC;EACF,OAAO;IACL,GAAGZ,MAAM;IACTa,IAAI,EAAEb,MAAM,CAACc,mBAAmB,IAAI,CAACd,MAAM,CAACe,OAAO,GAAGf,MAAM,CAACa,IAAI,GAAGG;EACtE,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["_reactQuery","require","_client","_oxyRuntimeContext","_useOxyEvent","supervisionQueryKeys","exports","all","account","id","sessionId","useSupervision","oxyServices","user","canUsePrivateApi","activeSessionId","useOxy","result","useQuery","queryKey","queryFn","safety","supervisionState","enabled","kind","staleTime","Number","POSITIVE_INFINITY","gcTime","refetchOnWindowFocus","data","isError","undefined","SupervisionStateObserver","queryClient","useQueryClient","useOxyEvent","SUPERVISION_CHANGED_EVENT","invalidateQueries"],"sourceRoot":"../../../../../src","sources":["ui/hooks/queries/useSupervision.ts"],"mappings":";;;;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,kBAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AAEO,MAAMI,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAG;EAClCE,GAAG,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,CAAU;EAC9CC,OAAO,EAAEA,CAACC,EAAU,EAAEC,SAAiB,KACrC,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAED,EAAE,EAAEC,SAAS;AAClD,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,cAAcA,CAAA,EAAG;EAC/B,MAAM;IAAEC,WAAW;IAAEC,IAAI;IAAEC,gBAAgB;IAAEC;EAAgB,CAAC,GAAG,IAAAC,yBAAM,EAAC,CAAC;EACzE,MAAMC,MAAM,GAAG,IAAAC,oBAAQ,EAAC;IACtBC,QAAQ,EAAEd,oBAAoB,CAACG,OAAO,CAACK,IAAI,EAAEJ,EAAE,IAAI,EAAE,EAAEM,eAAe,IAAI,EAAE,CAAC;IAC7EK,OAAO,EAAEA,CAAA,KAAMR,WAAW,CAACS,MAAM,CAACC,gBAAgB,CAAC,CAAC;IACpDC,OAAO,EAAET,gBAAgB,IAAI,CAAC,CAACC,eAAe,IAAIF,IAAI,EAAEW,IAAI,KAAK,UAAU;IAC3E;IACAC,SAAS,EAAEC,MAAM,CAACC,iBAAiB;IACnC;IACA;IACAC,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;IACtBC,oBAAoB,EAAE;EACxB,CAAC,CAAC;EACF,OAAO;IACL,GAAGZ,MAAM;IACTa,IAAI,EAAEb,MAAM,CAACc,OAAO,GAAGC,SAAS,GAAGf,MAAM,CAACa;EAC5C,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,SAASG,wBAAwBA,CAAA,EAAG;EACzC,MAAMC,WAAW,GAAG,IAAAC,0BAAc,EAAC,CAAC;EACpCxB,cAAc,CAAC,CAAC;EAChB,IAAAyB,wBAAW,EAACC,iCAAyB,EAAE,MAAM;IAC3C,KAAKH,WAAW,CAACI,iBAAiB,CAAC;MAAEnB,QAAQ,EAAEd,oBAAoB,CAACE;IAAI,CAAC,CAAC;EAC5E,CAAC,CAAC;EACF,OAAO,IAAI;AACb","ignoreList":[]}
@@ -21,6 +21,7 @@ import { LanguageBridge } from "./LanguageBridge.js";
21
21
  import { BloomLocaleBridge } from "./BloomLocaleBridge.js";
22
22
  import { useOxy } from "../context/oxyRuntimeContext.js";
23
23
  import { useCurrentUser } from "../hooks/queries/useAccountQueries.js";
24
+ import { SupervisionStateObserver } from "../hooks/queries/useSupervision.js";
24
25
 
25
26
  /** Hydrate owner preferences after the bearer is ready, including on cold boot. */
26
27
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
@@ -267,7 +268,7 @@ const OxyProvider = ({
267
268
  platformStorage: platformStorage,
268
269
  accountQueries: accountQueries,
269
270
  onAuthStateChange: onAuthStateChange,
270
- children: [/*#__PURE__*/_jsx(AccountProfileObserver, {}), productAnalytics ? /*#__PURE__*/_jsx(ProductAnalyticsObserver, {
271
+ children: [/*#__PURE__*/_jsx(AccountProfileObserver, {}), /*#__PURE__*/_jsx(SupervisionStateObserver, {}), productAnalytics ? /*#__PURE__*/_jsx(ProductAnalyticsObserver, {
271
272
  analytics: productAnalytics
272
273
  }) : null, language ? /*#__PURE__*/_jsx(LanguageBridge, {
273
274
  ...language
@@ -1 +1 @@
1
- {"version":3,"names":["OxySupportContext","loadScreens","useEffect","useRef","useState","useMemo","AppState","Platform","StyleSheet","GestureHandlerRootView","OxyRuntimeProvider","QueryClientProvider","focusManager","onlineManager","SurfaceProvider","ToastOutlet","logger","loggerUtil","RequireOxyAuth","attachQueryPersistence","createQueryClient","createMemoryStorage","createPlatformStorage","isNetConnectivityOnline","KeyboardBoundary","SafeAreaRoot","ProductAnalyticsObserver","LanguageBridge","BloomLocaleBridge","useOxy","useCurrentUser","jsx","_jsx","jsxs","_jsxs","AccountProfileObserver","canUsePrivateApi","enabled","bootStyles","create","providerRoot","flex","isWeb","OS","OxyProvider","oxyServices","children","onAuthStateChange","onAskAlia","documentationUrl","aliaAvatar","oxyOneArtwork","productAnalytics","storageKeyPrefix","clientId","baseURL","authWebUrl","authRedirectUri","authorizeBaseUrl","sessionMode","webAuthMode","queryClient","providedQueryClient","accountQueries","requireAuth","backgroundSession","language","support","catch","undefined","queryClientRef","persistenceUnsubRef","ownsQueryClientRef","accountQueriesRef","platformStorage","setPlatformStorage","current","client","mounted","bootstrap","storage","error","__DEV__","warn","component","persistence","unsubscribe","restored","handleVisibilityChange","setFocused","document","visibilityState","addEventListener","removeEventListener","subscription","state","remove","cleanup","setupNetworkMonitoring","setOnline","navigator","onLine","handleOnline","handleOffline","window","NetInfo","default","fetch","coreContent","analytics","Provider","value","prompt","style"],"sourceRoot":"../../../../src","sources":["ui/components/OxyProvider.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["OxySupportContext","loadScreens","useEffect","useRef","useState","useMemo","AppState","Platform","StyleSheet","GestureHandlerRootView","OxyRuntimeProvider","QueryClientProvider","focusManager","onlineManager","SurfaceProvider","ToastOutlet","logger","loggerUtil","RequireOxyAuth","attachQueryPersistence","createQueryClient","createMemoryStorage","createPlatformStorage","isNetConnectivityOnline","KeyboardBoundary","SafeAreaRoot","ProductAnalyticsObserver","LanguageBridge","BloomLocaleBridge","useOxy","useCurrentUser","SupervisionStateObserver","jsx","_jsx","jsxs","_jsxs","AccountProfileObserver","canUsePrivateApi","enabled","bootStyles","create","providerRoot","flex","isWeb","OS","OxyProvider","oxyServices","children","onAuthStateChange","onAskAlia","documentationUrl","aliaAvatar","oxyOneArtwork","productAnalytics","storageKeyPrefix","clientId","baseURL","authWebUrl","authRedirectUri","authorizeBaseUrl","sessionMode","webAuthMode","queryClient","providedQueryClient","accountQueries","requireAuth","backgroundSession","language","support","catch","undefined","queryClientRef","persistenceUnsubRef","ownsQueryClientRef","accountQueriesRef","platformStorage","setPlatformStorage","current","client","mounted","bootstrap","storage","error","__DEV__","warn","component","persistence","unsubscribe","restored","handleVisibilityChange","setFocused","document","visibilityState","addEventListener","removeEventListener","subscription","state","remove","cleanup","setupNetworkMonitoring","setOnline","navigator","onLine","handleOnline","handleOffline","window","NetInfo","default","fetch","coreContent","analytics","Provider","value","prompt","style"],"sourceRoot":"../../../../src","sources":["ui/components/OxyProvider.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,32 +1,67 @@
1
1
  "use strict";
2
2
 
3
- import { useQuery } from '@tanstack/react-query';
3
+ import { useQuery, useQueryClient } from '@tanstack/react-query';
4
+ import { SUPERVISION_CHANGED_EVENT } from '@oxy.so/contracts/client';
4
5
  import { useOxy } from "../../context/oxyRuntimeContext.js";
6
+ import { useOxyEvent } from "../useOxyEvent.js";
5
7
  export const supervisionQueryKeys = {
6
8
  all: ['oxy', 'safety', 'supervision'],
7
9
  account: (id, sessionId) => ['oxy', 'safety', 'supervision', id, sessionId]
8
10
  };
9
- /** Advisory UI state only. Every read/write still requires the live server policy. */
11
+
12
+ /**
13
+ * The signed-in personal account's supervision (parental-control) state.
14
+ *
15
+ * Policy: the SDK keeps the session's supervision state always current — it is
16
+ * fetched when the session is established, refetched when the app returns to
17
+ * the foreground, and refetched when the session socket signals
18
+ * `supervision_changed` (`SupervisionStateObserver`, mounted by `OxyProvider`).
19
+ * Screens read it from the cache without waiting for the network: no observer
20
+ * forces its own refetch on mount. `data` is undefined only while the session's
21
+ * first fetch is pending, when the query is disabled (signed out, or not a
22
+ * personal account) and after a failed fetch.
23
+ *
24
+ * Advisory UI state only. The server keeps enforcing supervision on every
25
+ * content request; never treat this value as authorization.
26
+ */
10
27
  export function useSupervision() {
11
28
  const {
12
29
  oxyServices,
13
30
  user,
14
- isAuthenticated,
31
+ canUsePrivateApi,
15
32
  activeSessionId
16
33
  } = useOxy();
17
34
  const result = useQuery({
18
35
  queryKey: supervisionQueryKeys.account(user?.id ?? '', activeSessionId ?? ''),
19
36
  queryFn: () => oxyServices.safety.supervisionState(),
20
- enabled: isAuthenticated && !!activeSessionId && user?.kind === 'personal',
21
- staleTime: 0,
22
- gcTime: 0,
23
- refetchOnWindowFocus: 'always',
24
- refetchOnMount: 'always',
25
- retry: false
37
+ enabled: canUsePrivateApi && !!activeSessionId && user?.kind === 'personal',
38
+ // Fresh until the socket signal or a return to the foreground says otherwise.
39
+ staleTime: Number.POSITIVE_INFINITY,
40
+ // The observer below keeps the current session's entry alive; this only
41
+ // bounds how long a previous session's entry outlives it.
42
+ gcTime: 30 * 60 * 1000,
43
+ refetchOnWindowFocus: 'always'
26
44
  });
27
45
  return {
28
46
  ...result,
29
- data: result.isFetchedAfterMount && !result.isError ? result.data : undefined
47
+ data: result.isError ? undefined : result.data
30
48
  };
31
49
  }
50
+
51
+ /**
52
+ * Keeps the session's supervision state current for every `useSupervision()`
53
+ * reader: its observer fetches once the session is established and on each
54
+ * return to the foreground, and the `supervision_changed` socket signal
55
+ * refetches it. Rendered once by `OxyProvider`.
56
+ */
57
+ export function SupervisionStateObserver() {
58
+ const queryClient = useQueryClient();
59
+ useSupervision();
60
+ useOxyEvent(SUPERVISION_CHANGED_EVENT, () => {
61
+ void queryClient.invalidateQueries({
62
+ queryKey: supervisionQueryKeys.all
63
+ });
64
+ });
65
+ return null;
66
+ }
32
67
  //# sourceMappingURL=useSupervision.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useQuery","useOxy","supervisionQueryKeys","all","account","id","sessionId","useSupervision","oxyServices","user","isAuthenticated","activeSessionId","result","queryKey","queryFn","safety","supervisionState","enabled","kind","staleTime","gcTime","refetchOnWindowFocus","refetchOnMount","retry","data","isFetchedAfterMount","isError","undefined"],"sourceRoot":"../../../../../src","sources":["ui/hooks/queries/useSupervision.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,MAAM,QAAQ,oCAAiC;AACxD,OAAO,MAAMC,oBAAoB,GAAG;EAClCC,GAAG,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,CAAU;EAC9CC,OAAO,EAAEA,CAACC,EAAU,EAAEC,SAAiB,KACrC,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAED,EAAE,EAAEC,SAAS;AAClD,CAAC;AACD;AACA,OAAO,SAASC,cAAcA,CAAA,EAAG;EAC/B,MAAM;IAAEC,WAAW;IAAEC,IAAI;IAAEC,eAAe;IAAEC;EAAgB,CAAC,GAAGV,MAAM,CAAC,CAAC;EACxE,MAAMW,MAAM,GAAGZ,QAAQ,CAAC;IACtBa,QAAQ,EAAEX,oBAAoB,CAACE,OAAO,CAACK,IAAI,EAAEJ,EAAE,IAAI,EAAE,EAAEM,eAAe,IAAI,EAAE,CAAC;IAC7EG,OAAO,EAAEA,CAAA,KAAMN,WAAW,CAACO,MAAM,CAACC,gBAAgB,CAAC,CAAC;IACpDC,OAAO,EAAEP,eAAe,IAAI,CAAC,CAACC,eAAe,IAAIF,IAAI,EAAES,IAAI,KAAK,UAAU;IAC1EC,SAAS,EAAE,CAAC;IACZC,MAAM,EAAE,CAAC;IACTC,oBAAoB,EAAE,QAAQ;IAC9BC,cAAc,EAAE,QAAQ;IACxBC,KAAK,EAAE;EACT,CAAC,CAAC;EACF,OAAO;IACL,GAAGX,MAAM;IACTY,IAAI,EAAEZ,MAAM,CAACa,mBAAmB,IAAI,CAACb,MAAM,CAACc,OAAO,GAAGd,MAAM,CAACY,IAAI,GAAGG;EACtE,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["useQuery","useQueryClient","SUPERVISION_CHANGED_EVENT","useOxy","useOxyEvent","supervisionQueryKeys","all","account","id","sessionId","useSupervision","oxyServices","user","canUsePrivateApi","activeSessionId","result","queryKey","queryFn","safety","supervisionState","enabled","kind","staleTime","Number","POSITIVE_INFINITY","gcTime","refetchOnWindowFocus","data","isError","undefined","SupervisionStateObserver","queryClient","invalidateQueries"],"sourceRoot":"../../../../../src","sources":["ui/hooks/queries/useSupervision.ts"],"mappings":";;AAAA,SAASA,QAAQ,EAAEC,cAAc,QAAQ,uBAAuB;AAChE,SAASC,yBAAyB,QAAQ,0BAA0B;AACpE,SAASC,MAAM,QAAQ,oCAAiC;AACxD,SAASC,WAAW,QAAQ,mBAAgB;AAE5C,OAAO,MAAMC,oBAAoB,GAAG;EAClCC,GAAG,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,CAAU;EAC9CC,OAAO,EAAEA,CAACC,EAAU,EAAEC,SAAiB,KACrC,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAED,EAAE,EAAEC,SAAS;AAClD,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,cAAcA,CAAA,EAAG;EAC/B,MAAM;IAAEC,WAAW;IAAEC,IAAI;IAAEC,gBAAgB;IAAEC;EAAgB,CAAC,GAAGX,MAAM,CAAC,CAAC;EACzE,MAAMY,MAAM,GAAGf,QAAQ,CAAC;IACtBgB,QAAQ,EAAEX,oBAAoB,CAACE,OAAO,CAACK,IAAI,EAAEJ,EAAE,IAAI,EAAE,EAAEM,eAAe,IAAI,EAAE,CAAC;IAC7EG,OAAO,EAAEA,CAAA,KAAMN,WAAW,CAACO,MAAM,CAACC,gBAAgB,CAAC,CAAC;IACpDC,OAAO,EAAEP,gBAAgB,IAAI,CAAC,CAACC,eAAe,IAAIF,IAAI,EAAES,IAAI,KAAK,UAAU;IAC3E;IACAC,SAAS,EAAEC,MAAM,CAACC,iBAAiB;IACnC;IACA;IACAC,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;IACtBC,oBAAoB,EAAE;EACxB,CAAC,CAAC;EACF,OAAO;IACL,GAAGX,MAAM;IACTY,IAAI,EAAEZ,MAAM,CAACa,OAAO,GAAGC,SAAS,GAAGd,MAAM,CAACY;EAC5C,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASG,wBAAwBA,CAAA,EAAG;EACzC,MAAMC,WAAW,GAAG9B,cAAc,CAAC,CAAC;EACpCS,cAAc,CAAC,CAAC;EAChBN,WAAW,CAACF,yBAAyB,EAAE,MAAM;IAC3C,KAAK6B,WAAW,CAACC,iBAAiB,CAAC;MAAEhB,QAAQ,EAAEX,oBAAoB,CAACC;IAAI,CAAC,CAAC;EAC5E,CAAC,CAAC;EACF,OAAO,IAAI;AACb","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"OxyProvider.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxyProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAwC,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAGtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAsC5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAyNrC,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"OxyProvider.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxyProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAwC,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAGtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAuC5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CA0NrC,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -2,7 +2,21 @@ export declare const supervisionQueryKeys: {
2
2
  all: readonly ["oxy", "safety", "supervision"];
3
3
  account: (id: string, sessionId: string) => readonly ["oxy", "safety", "supervision", string, string];
4
4
  };
5
- /** Advisory UI state only. Every read/write still requires the live server policy. */
5
+ /**
6
+ * The signed-in personal account's supervision (parental-control) state.
7
+ *
8
+ * Policy: the SDK keeps the session's supervision state always current — it is
9
+ * fetched when the session is established, refetched when the app returns to
10
+ * the foreground, and refetched when the session socket signals
11
+ * `supervision_changed` (`SupervisionStateObserver`, mounted by `OxyProvider`).
12
+ * Screens read it from the cache without waiting for the network: no observer
13
+ * forces its own refetch on mount. `data` is undefined only while the session's
14
+ * first fetch is pending, when the query is disabled (signed out, or not a
15
+ * personal account) and after a failed fetch.
16
+ *
17
+ * Advisory UI state only. The server keeps enforcing supervision on every
18
+ * content request; never treat this value as authorization.
19
+ */
6
20
  export declare function useSupervision(): {
7
21
  data: {
8
22
  self: {
@@ -472,4 +486,11 @@ export declare function useSupervision(): {
472
486
  }, Error>>;
473
487
  fetchStatus: import("@tanstack/react-query").FetchStatus;
474
488
  };
489
+ /**
490
+ * Keeps the session's supervision state current for every `useSupervision()`
491
+ * reader: its observer fetches once the session is established and on each
492
+ * return to the foreground, and the `supervision_changed` socket signal
493
+ * refetches it. Rendered once by `OxyProvider`.
494
+ */
495
+ export declare function SupervisionStateObserver(): null;
475
496
  //# sourceMappingURL=useSupervision.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSupervision.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/hooks/queries/useSupervision.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB;;kBAEjB,MAAM,aAAa,MAAM;CAExC,CAAC;AACF,sFAAsF;AACtF,wBAAgB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgB7B"}
1
+ {"version":3,"file":"useSupervision.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/hooks/queries/useSupervision.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,oBAAoB;;kBAEjB,MAAM,aAAa,MAAM;CAExC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiB7B;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,SAOvC"}
@@ -1 +1 @@
1
- {"version":3,"file":"OxyProvider.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxyProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAwC,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAGtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAqB,CAAC;AAsC5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAyNrC,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"OxyProvider.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxyProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAwC,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAGtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAqB,CAAC;AAuC5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CA0NrC,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -2,7 +2,21 @@ export declare const supervisionQueryKeys: {
2
2
  all: readonly ["oxy", "safety", "supervision"];
3
3
  account: (id: string, sessionId: string) => readonly ["oxy", "safety", "supervision", string, string];
4
4
  };
5
- /** Advisory UI state only. Every read/write still requires the live server policy. */
5
+ /**
6
+ * The signed-in personal account's supervision (parental-control) state.
7
+ *
8
+ * Policy: the SDK keeps the session's supervision state always current — it is
9
+ * fetched when the session is established, refetched when the app returns to
10
+ * the foreground, and refetched when the session socket signals
11
+ * `supervision_changed` (`SupervisionStateObserver`, mounted by `OxyProvider`).
12
+ * Screens read it from the cache without waiting for the network: no observer
13
+ * forces its own refetch on mount. `data` is undefined only while the session's
14
+ * first fetch is pending, when the query is disabled (signed out, or not a
15
+ * personal account) and after a failed fetch.
16
+ *
17
+ * Advisory UI state only. The server keeps enforcing supervision on every
18
+ * content request; never treat this value as authorization.
19
+ */
6
20
  export declare function useSupervision(): {
7
21
  data: {
8
22
  self: {
@@ -472,4 +486,11 @@ export declare function useSupervision(): {
472
486
  }, Error>>;
473
487
  fetchStatus: import("@tanstack/react-query").FetchStatus;
474
488
  };
489
+ /**
490
+ * Keeps the session's supervision state current for every `useSupervision()`
491
+ * reader: its observer fetches once the session is established and on each
492
+ * return to the foreground, and the `supervision_changed` socket signal
493
+ * refetches it. Rendered once by `OxyProvider`.
494
+ */
495
+ export declare function SupervisionStateObserver(): null;
475
496
  //# sourceMappingURL=useSupervision.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSupervision.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/hooks/queries/useSupervision.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB;;kBAEjB,MAAM,aAAa,MAAM;CAExC,CAAC;AACF,sFAAsF;AACtF,wBAAgB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgB7B"}
1
+ {"version":3,"file":"useSupervision.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/hooks/queries/useSupervision.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,oBAAoB;;kBAEjB,MAAM,aAAa,MAAM;CAExC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiB7B;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,SAOvC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxy.so/services",
3
- "version": "12.12.0",
3
+ "version": "12.13.0",
4
4
  "description": "OxyHQ Expo/React Native SDK — UI components, screens, and native features",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -147,11 +147,10 @@
147
147
  "copy-assets": "copyfiles -u 1 \"src/assets/**/*\" lib/commonjs/assets && copyfiles -u 1 \"src/assets/**/*\" lib/module/assets",
148
148
  "copy-dts": "copyfiles -u 1 \"src/**/*.d.ts\" lib/typescript",
149
149
  "delete-debug-view": "rm -rf ./lib/commonjs/components/bottomSheetDebugView ./lib/module/components/bottomSheetDebugView ./lib/typescript/components/bottomSheetDebugView || true",
150
- "delete-dts.js": "find ./lib/commonjs -name '*.d.js*' -delete && find ./lib/module -name '*.d.js*' -delete",
151
- "prepublishOnly": "node ../../scripts/assert-bun-publish.mjs && bun run typescript && bun run test && bun run build"
150
+ "delete-dts.js": "find ./lib/commonjs -name '*.d.js*' -delete && find ./lib/module -name '*.d.js*' -delete"
152
151
  },
153
152
  "dependencies": {
154
- "@oxy.so/contracts": "^5.7.0",
153
+ "@oxy.so/contracts": "^5.8.0",
155
154
  "color": "^5.0.3",
156
155
  "@peable.to/sdk": "0.4.1"
157
156
  },
@@ -160,7 +159,7 @@
160
159
  "@commitlint/config-conventional": "^21.2.0",
161
160
  "@expo/app-integrity": "~58.0.2",
162
161
  "@expo/vector-icons": "^15.0.3",
163
- "@oxy.so/core": "6.15.0",
162
+ "@oxy.so/core": "6.15.2",
164
163
  "@react-native-async-storage/async-storage": "^2.0.0",
165
164
  "@react-native-community/netinfo": "^12.0.1",
166
165
  "@react-native/babel-preset": "^0.88.0",
@@ -175,7 +174,7 @@
175
174
  "@types/jest": "^30.0.0",
176
175
  "@types/node": "^20.19.43",
177
176
  "@types/react": "*",
178
- "@oxy.so/bloom": "12.0.0",
177
+ "@oxy.so/bloom": "15.18.0",
179
178
  "copyfiles": "^2.4.1",
180
179
  "expo-clipboard": "~58.0.3",
181
180
  "expo-constants": "~58.0.12",
@@ -24,6 +24,7 @@ import { LanguageBridge } from './LanguageBridge';
24
24
  import { BloomLocaleBridge } from './BloomLocaleBridge';
25
25
  import { useOxy } from '../context/oxyRuntimeContext';
26
26
  import { useCurrentUser } from '../hooks/queries/useAccountQueries';
27
+ import { SupervisionStateObserver } from '../hooks/queries/useSupervision';
27
28
 
28
29
  /** Hydrate owner preferences after the bearer is ready, including on cold boot. */
29
30
  function AccountProfileObserver() {
@@ -283,6 +284,7 @@ const OxyProvider: FC<OxyProviderProps> = ({
283
284
  onAuthStateChange={onAuthStateChange as OxyRuntimeProviderProps['onAuthStateChange']}
284
285
  >
285
286
  <AccountProfileObserver />
287
+ <SupervisionStateObserver />
286
288
  {productAnalytics ? <ProductAnalyticsObserver analytics={productAnalytics} /> : null}
287
289
  {language ? <LanguageBridge {...language} /> : null}
288
290
  <BloomLocaleBridge>
@@ -0,0 +1,73 @@
1
+ import type { ReactNode } from 'react';
2
+ import { act, render, renderHook, waitFor } from '@testing-library/react';
3
+ import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
4
+ import { SUPERVISION_CHANGED_EVENT } from '@oxy.so/contracts/client';
5
+ import { SupervisionStateObserver, useSupervision } from '../useSupervision';
6
+
7
+ const mockSupervisionState = jest.fn();
8
+ const mockServerEvents = new Map<string, (payload: unknown) => void>();
9
+ jest.mock('../../../context/oxyRuntimeContext', () => ({
10
+ useOxy: () => ({
11
+ oxyServices: { safety: { supervisionState: mockSupervisionState } },
12
+ user: { id: 'child', kind: 'personal' },
13
+ canUsePrivateApi: true,
14
+ activeSessionId: 'session',
15
+ sessionClient: {
16
+ onServerEvent: (event: string, listener: (payload: unknown) => void) => {
17
+ mockServerEvents.set(event, listener);
18
+ return () => mockServerEvents.delete(event);
19
+ },
20
+ },
21
+ }),
22
+ }));
23
+
24
+ const state = (status: 'active' | 'ended') => ({
25
+ self: {
26
+ childAccountId: 'child',
27
+ guardianAccountId: 'guardian',
28
+ status,
29
+ policyVersion: '2',
30
+ consentVersion: '1',
31
+ createdAt: '2026-10-23T00:00:00.000Z',
32
+ },
33
+ children: [],
34
+ invitations: [],
35
+ });
36
+
37
+ function setup() {
38
+ const client = new QueryClient();
39
+ const wrapper = ({ children }: { children: ReactNode }) => (
40
+ <QueryClientProvider client={client}>{children}</QueryClientProvider>
41
+ );
42
+ render(<SupervisionStateObserver />, { wrapper });
43
+ return wrapper;
44
+ }
45
+
46
+ beforeEach(() => {
47
+ mockSupervisionState.mockReset();
48
+ mockServerEvents.clear();
49
+ });
50
+
51
+ it('serves the session state to a new screen from the cache, without a request', async () => {
52
+ mockSupervisionState.mockResolvedValue(state('active'));
53
+ const wrapper = setup();
54
+ await waitFor(() => expect(mockSupervisionState).toHaveBeenCalledTimes(1));
55
+ await act(async () => {});
56
+
57
+ const { result } = renderHook(() => useSupervision(), { wrapper });
58
+
59
+ expect(result.current.data?.self?.status).toBe('active');
60
+ expect(mockSupervisionState).toHaveBeenCalledTimes(1);
61
+ });
62
+
63
+ it('refetches when the session socket signals a supervision change', async () => {
64
+ mockSupervisionState.mockResolvedValueOnce(state('active')).mockResolvedValue(state('ended'));
65
+ const wrapper = setup();
66
+ const { result } = renderHook(() => useSupervision(), { wrapper });
67
+ await waitFor(() => expect(result.current.data?.self?.status).toBe('active'));
68
+
69
+ act(() => mockServerEvents.get(SUPERVISION_CHANGED_EVENT)?.(undefined));
70
+
71
+ await waitFor(() => expect(result.current.data?.self?.status).toBe('ended'));
72
+ expect(mockSupervisionState).toHaveBeenCalledTimes(2);
73
+ });
@@ -1,25 +1,59 @@
1
- import { useQuery } from '@tanstack/react-query';
1
+ import { useQuery, useQueryClient } from '@tanstack/react-query';
2
+ import { SUPERVISION_CHANGED_EVENT } from '@oxy.so/contracts/client';
2
3
  import { useOxy } from '../../context/oxyRuntimeContext';
4
+ import { useOxyEvent } from '../useOxyEvent';
5
+
3
6
  export const supervisionQueryKeys = {
4
7
  all: ['oxy', 'safety', 'supervision'] as const,
5
8
  account: (id: string, sessionId: string) =>
6
9
  ['oxy', 'safety', 'supervision', id, sessionId] as const,
7
10
  };
8
- /** Advisory UI state only. Every read/write still requires the live server policy. */
11
+
12
+ /**
13
+ * The signed-in personal account's supervision (parental-control) state.
14
+ *
15
+ * Policy: the SDK keeps the session's supervision state always current — it is
16
+ * fetched when the session is established, refetched when the app returns to
17
+ * the foreground, and refetched when the session socket signals
18
+ * `supervision_changed` (`SupervisionStateObserver`, mounted by `OxyProvider`).
19
+ * Screens read it from the cache without waiting for the network: no observer
20
+ * forces its own refetch on mount. `data` is undefined only while the session's
21
+ * first fetch is pending, when the query is disabled (signed out, or not a
22
+ * personal account) and after a failed fetch.
23
+ *
24
+ * Advisory UI state only. The server keeps enforcing supervision on every
25
+ * content request; never treat this value as authorization.
26
+ */
9
27
  export function useSupervision() {
10
- const { oxyServices, user, isAuthenticated, activeSessionId } = useOxy();
28
+ const { oxyServices, user, canUsePrivateApi, activeSessionId } = useOxy();
11
29
  const result = useQuery({
12
30
  queryKey: supervisionQueryKeys.account(user?.id ?? '', activeSessionId ?? ''),
13
31
  queryFn: () => oxyServices.safety.supervisionState(),
14
- enabled: isAuthenticated && !!activeSessionId && user?.kind === 'personal',
15
- staleTime: 0,
16
- gcTime: 0,
32
+ enabled: canUsePrivateApi && !!activeSessionId && user?.kind === 'personal',
33
+ // Fresh until the socket signal or a return to the foreground says otherwise.
34
+ staleTime: Number.POSITIVE_INFINITY,
35
+ // The observer below keeps the current session's entry alive; this only
36
+ // bounds how long a previous session's entry outlives it.
37
+ gcTime: 30 * 60 * 1000,
17
38
  refetchOnWindowFocus: 'always',
18
- refetchOnMount: 'always',
19
- retry: false,
20
39
  });
21
40
  return {
22
41
  ...result,
23
- data: result.isFetchedAfterMount && !result.isError ? result.data : undefined,
42
+ data: result.isError ? undefined : result.data,
24
43
  };
25
44
  }
45
+
46
+ /**
47
+ * Keeps the session's supervision state current for every `useSupervision()`
48
+ * reader: its observer fetches once the session is established and on each
49
+ * return to the foreground, and the `supervision_changed` socket signal
50
+ * refetches it. Rendered once by `OxyProvider`.
51
+ */
52
+ export function SupervisionStateObserver() {
53
+ const queryClient = useQueryClient();
54
+ useSupervision();
55
+ useOxyEvent(SUPERVISION_CHANGED_EVENT, () => {
56
+ void queryClient.invalidateQueries({ queryKey: supervisionQueryKeys.all });
57
+ });
58
+ return null;
59
+ }