@oxy.so/services 11.0.0 → 11.2.0-oxy-one.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.
Files changed (145) hide show
  1. package/lib/commonjs/index.js +13 -0
  2. package/lib/commonjs/index.js.map +1 -1
  3. package/lib/commonjs/ui/boot/runProviderColdBoot.js +14 -1
  4. package/lib/commonjs/ui/boot/runProviderColdBoot.js.map +1 -1
  5. package/lib/commonjs/ui/components/OxySignInButton.js +25 -7
  6. package/lib/commonjs/ui/components/OxySignInButton.js.map +1 -1
  7. package/lib/commonjs/ui/context/OxyContext.js +198 -41
  8. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  9. package/lib/commonjs/ui/context/commitSessionFlow.js +5 -0
  10. package/lib/commonjs/ui/context/commitSessionFlow.js.map +1 -1
  11. package/lib/commonjs/ui/context/hooks/useAuthOperations.js +56 -9
  12. package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +1 -1
  13. package/lib/commonjs/ui/context/isolatedOAuthSession.js +52 -0
  14. package/lib/commonjs/ui/context/isolatedOAuthSession.js.map +1 -0
  15. package/lib/commonjs/ui/context/useOxyAccountGraph.js +7 -5
  16. package/lib/commonjs/ui/context/useOxyAccountGraph.js.map +1 -1
  17. package/lib/commonjs/ui/hooks/queries/usePersonalPlans.js +43 -0
  18. package/lib/commonjs/ui/hooks/queries/usePersonalPlans.js.map +1 -0
  19. package/lib/commonjs/ui/hooks/useAuth.js +7 -3
  20. package/lib/commonjs/ui/hooks/useAuth.js.map +1 -1
  21. package/lib/commonjs/ui/oauth/applicationSessionLane.js +32 -0
  22. package/lib/commonjs/ui/oauth/applicationSessionLane.js.map +1 -0
  23. package/lib/commonjs/ui/oauth/completeOAuthCode.js +4 -2
  24. package/lib/commonjs/ui/oauth/completeOAuthCode.js.map +1 -1
  25. package/lib/commonjs/ui/oauth/nativeAuthTransport.js +119 -0
  26. package/lib/commonjs/ui/oauth/nativeAuthTransport.js.map +1 -0
  27. package/lib/commonjs/ui/session/createSessionClient.js +14 -2
  28. package/lib/commonjs/ui/session/createSessionClient.js.map +1 -1
  29. package/lib/commonjs/ui/session/deviceCredentialTracker.js +8 -0
  30. package/lib/commonjs/ui/session/deviceCredentialTracker.js.map +1 -1
  31. package/lib/module/index.js +1 -0
  32. package/lib/module/index.js.map +1 -1
  33. package/lib/module/ui/boot/runProviderColdBoot.js +14 -1
  34. package/lib/module/ui/boot/runProviderColdBoot.js.map +1 -1
  35. package/lib/module/ui/components/OxySignInButton.js +25 -7
  36. package/lib/module/ui/components/OxySignInButton.js.map +1 -1
  37. package/lib/module/ui/context/OxyContext.js +200 -43
  38. package/lib/module/ui/context/OxyContext.js.map +1 -1
  39. package/lib/module/ui/context/commitSessionFlow.js +5 -0
  40. package/lib/module/ui/context/commitSessionFlow.js.map +1 -1
  41. package/lib/module/ui/context/hooks/useAuthOperations.js +56 -9
  42. package/lib/module/ui/context/hooks/useAuthOperations.js.map +1 -1
  43. package/lib/module/ui/context/isolatedOAuthSession.js +44 -0
  44. package/lib/module/ui/context/isolatedOAuthSession.js.map +1 -0
  45. package/lib/module/ui/context/useOxyAccountGraph.js +7 -5
  46. package/lib/module/ui/context/useOxyAccountGraph.js.map +1 -1
  47. package/lib/module/ui/hooks/queries/usePersonalPlans.js +39 -0
  48. package/lib/module/ui/hooks/queries/usePersonalPlans.js.map +1 -0
  49. package/lib/module/ui/hooks/useAuth.js +7 -3
  50. package/lib/module/ui/hooks/useAuth.js.map +1 -1
  51. package/lib/module/ui/oauth/applicationSessionLane.js +26 -0
  52. package/lib/module/ui/oauth/applicationSessionLane.js.map +1 -0
  53. package/lib/module/ui/oauth/completeOAuthCode.js +4 -2
  54. package/lib/module/ui/oauth/completeOAuthCode.js.map +1 -1
  55. package/lib/module/ui/oauth/nativeAuthTransport.js +115 -0
  56. package/lib/module/ui/oauth/nativeAuthTransport.js.map +1 -0
  57. package/lib/module/ui/session/createSessionClient.js +14 -2
  58. package/lib/module/ui/session/createSessionClient.js.map +1 -1
  59. package/lib/module/ui/session/deviceCredentialTracker.js +8 -0
  60. package/lib/module/ui/session/deviceCredentialTracker.js.map +1 -1
  61. package/lib/typescript/commonjs/index.d.ts +2 -0
  62. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  63. package/lib/typescript/commonjs/ui/boot/runProviderColdBoot.d.ts +7 -0
  64. package/lib/typescript/commonjs/ui/boot/runProviderColdBoot.d.ts.map +1 -1
  65. package/lib/typescript/commonjs/ui/components/OxySignInButton.d.ts +2 -0
  66. package/lib/typescript/commonjs/ui/components/OxySignInButton.d.ts.map +1 -1
  67. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts +3 -1
  68. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
  69. package/lib/typescript/commonjs/ui/context/commitSessionFlow.d.ts +2 -0
  70. package/lib/typescript/commonjs/ui/context/commitSessionFlow.d.ts.map +1 -1
  71. package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts +3 -2
  72. package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  73. package/lib/typescript/commonjs/ui/context/isolatedOAuthSession.d.ts +19 -0
  74. package/lib/typescript/commonjs/ui/context/isolatedOAuthSession.d.ts.map +1 -0
  75. package/lib/typescript/commonjs/ui/context/oxyContextTypes.d.ts +3 -0
  76. package/lib/typescript/commonjs/ui/context/oxyContextTypes.d.ts.map +1 -1
  77. package/lib/typescript/commonjs/ui/context/useOxyAccountGraph.d.ts +2 -1
  78. package/lib/typescript/commonjs/ui/context/useOxyAccountGraph.d.ts.map +1 -1
  79. package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts +6 -0
  80. package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  81. package/lib/typescript/commonjs/ui/hooks/queries/usePersonalPlans.d.ts +64 -0
  82. package/lib/typescript/commonjs/ui/hooks/queries/usePersonalPlans.d.ts.map +1 -0
  83. package/lib/typescript/commonjs/ui/hooks/useAuth.d.ts.map +1 -1
  84. package/lib/typescript/commonjs/ui/oauth/applicationSessionLane.d.ts +6 -0
  85. package/lib/typescript/commonjs/ui/oauth/applicationSessionLane.d.ts.map +1 -0
  86. package/lib/typescript/commonjs/ui/oauth/completeOAuthCode.d.ts +2 -2
  87. package/lib/typescript/commonjs/ui/oauth/nativeAuthTransport.d.ts +28 -0
  88. package/lib/typescript/commonjs/ui/oauth/nativeAuthTransport.d.ts.map +1 -0
  89. package/lib/typescript/commonjs/ui/session/createSessionClient.d.ts +1 -1
  90. package/lib/typescript/commonjs/ui/session/createSessionClient.d.ts.map +1 -1
  91. package/lib/typescript/commonjs/ui/session/deviceCredentialTracker.d.ts.map +1 -1
  92. package/lib/typescript/module/index.d.ts +2 -0
  93. package/lib/typescript/module/index.d.ts.map +1 -1
  94. package/lib/typescript/module/ui/boot/runProviderColdBoot.d.ts +7 -0
  95. package/lib/typescript/module/ui/boot/runProviderColdBoot.d.ts.map +1 -1
  96. package/lib/typescript/module/ui/components/OxySignInButton.d.ts +2 -0
  97. package/lib/typescript/module/ui/components/OxySignInButton.d.ts.map +1 -1
  98. package/lib/typescript/module/ui/context/OxyContext.d.ts +3 -1
  99. package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
  100. package/lib/typescript/module/ui/context/commitSessionFlow.d.ts +2 -0
  101. package/lib/typescript/module/ui/context/commitSessionFlow.d.ts.map +1 -1
  102. package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts +3 -2
  103. package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  104. package/lib/typescript/module/ui/context/isolatedOAuthSession.d.ts +19 -0
  105. package/lib/typescript/module/ui/context/isolatedOAuthSession.d.ts.map +1 -0
  106. package/lib/typescript/module/ui/context/oxyContextTypes.d.ts +3 -0
  107. package/lib/typescript/module/ui/context/oxyContextTypes.d.ts.map +1 -1
  108. package/lib/typescript/module/ui/context/useOxyAccountGraph.d.ts +2 -1
  109. package/lib/typescript/module/ui/context/useOxyAccountGraph.d.ts.map +1 -1
  110. package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts +6 -0
  111. package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  112. package/lib/typescript/module/ui/hooks/queries/usePersonalPlans.d.ts +64 -0
  113. package/lib/typescript/module/ui/hooks/queries/usePersonalPlans.d.ts.map +1 -0
  114. package/lib/typescript/module/ui/hooks/useAuth.d.ts.map +1 -1
  115. package/lib/typescript/module/ui/oauth/applicationSessionLane.d.ts +6 -0
  116. package/lib/typescript/module/ui/oauth/applicationSessionLane.d.ts.map +1 -0
  117. package/lib/typescript/module/ui/oauth/completeOAuthCode.d.ts +2 -2
  118. package/lib/typescript/module/ui/oauth/nativeAuthTransport.d.ts +28 -0
  119. package/lib/typescript/module/ui/oauth/nativeAuthTransport.d.ts.map +1 -0
  120. package/lib/typescript/module/ui/session/createSessionClient.d.ts +1 -1
  121. package/lib/typescript/module/ui/session/createSessionClient.d.ts.map +1 -1
  122. package/lib/typescript/module/ui/session/deviceCredentialTracker.d.ts.map +1 -1
  123. package/package.json +30 -30
  124. package/src/index.ts +4 -0
  125. package/src/ui/boot/__tests__/coldBootNoIdpRedirect.test.ts +56 -2
  126. package/src/ui/boot/runProviderColdBoot.ts +22 -2
  127. package/src/ui/components/OxySignInButton.tsx +20 -4
  128. package/src/ui/context/OxyContext.tsx +171 -40
  129. package/src/ui/context/__tests__/commitSessionFlow.test.ts +13 -0
  130. package/src/ui/context/__tests__/isolatedOAuthSession.test.ts +35 -0
  131. package/src/ui/context/commitSessionFlow.ts +8 -0
  132. package/src/ui/context/hooks/useAuthOperations.ts +55 -9
  133. package/src/ui/context/isolatedOAuthSession.ts +48 -0
  134. package/src/ui/context/oxyContextTypes.ts +4 -0
  135. package/src/ui/context/useOxyAccountGraph.ts +8 -5
  136. package/src/ui/hooks/queries/usePersonalPlans.ts +23 -0
  137. package/src/ui/hooks/useAuth.ts +6 -2
  138. package/src/ui/oauth/__tests__/completeOAuthCode.test.ts +1 -1
  139. package/src/ui/oauth/__tests__/nativeAuthTransport.test.ts +57 -0
  140. package/src/ui/oauth/__tests__/oauthBearerCommit.http.test.ts +131 -0
  141. package/src/ui/oauth/applicationSessionLane.ts +26 -0
  142. package/src/ui/oauth/completeOAuthCode.ts +3 -3
  143. package/src/ui/oauth/nativeAuthTransport.ts +67 -0
  144. package/src/ui/session/createSessionClient.ts +13 -1
  145. package/src/ui/session/deviceCredentialTracker.ts +7 -1
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ import { useQuery } from '@tanstack/react-query';
4
+ import { authenticatedApiCall } from '@oxy.so/core';
5
+ import { useOxy } from "../../context/OxyContext.js";
6
+
7
+ /** Public discovery; deliberately outside persisted customer payment queries. */
8
+ export function usePersonalPlans() {
9
+ const {
10
+ oxyServices
11
+ } = useOxy();
12
+ return useQuery({
13
+ queryKey: ['personal-plan-catalogue'],
14
+ queryFn: () => oxyServices.billing.personalPlans(),
15
+ staleTime: 0
16
+ });
17
+ }
18
+
19
+ /** Account and session partitioning plus a server-side expected-subject fence. */
20
+ export function usePersonalPlanSubscriptions() {
21
+ const {
22
+ oxyServices,
23
+ user,
24
+ isAuthenticated,
25
+ activeSessionId
26
+ } = useOxy();
27
+ const accountId = user?.id;
28
+ return useQuery({
29
+ queryKey: ['personal-plan-sources', accountId, activeSessionId],
30
+ queryFn: () => {
31
+ if (!accountId) throw new Error('Authentication required');
32
+ return authenticatedApiCall(oxyServices, activeSessionId, () => oxyServices.billing.productSubscriptions(accountId));
33
+ },
34
+ enabled: isAuthenticated && !!accountId,
35
+ staleTime: 0,
36
+ gcTime: 0
37
+ });
38
+ }
39
+ //# sourceMappingURL=usePersonalPlans.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useQuery","authenticatedApiCall","useOxy","usePersonalPlans","oxyServices","queryKey","queryFn","billing","personalPlans","staleTime","usePersonalPlanSubscriptions","user","isAuthenticated","activeSessionId","accountId","id","Error","productSubscriptions","enabled","gcTime"],"sourceRoot":"../../../../../src","sources":["ui/hooks/queries/usePersonalPlans.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,oBAAoB,QAAQ,cAAc;AACnD,SAASC,MAAM,QAAQ,6BAA0B;;AAEjD;AACA,OAAO,SAASC,gBAAgBA,CAAA,EAAG;EACjC,MAAM;IAAEC;EAAY,CAAC,GAAGF,MAAM,CAAC,CAAC;EAChC,OAAOF,QAAQ,CAAC;IAAEK,QAAQ,EAAE,CAAC,yBAAyB,CAAC;IACrDC,OAAO,EAAEA,CAAA,KAAMF,WAAW,CAACG,OAAO,CAACC,aAAa,CAAC,CAAC;IAAEC,SAAS,EAAE;EAAE,CAAC,CAAC;AACvE;;AAEA;AACA,OAAO,SAASC,4BAA4BA,CAAA,EAAG;EAC7C,MAAM;IAAEN,WAAW;IAAEO,IAAI;IAAEC,eAAe;IAAEC;EAAgB,CAAC,GAAGX,MAAM,CAAC,CAAC;EACxE,MAAMY,SAAS,GAAGH,IAAI,EAAEI,EAAE;EAC1B,OAAOf,QAAQ,CAAC;IAAEK,QAAQ,EAAE,CAAC,uBAAuB,EAAES,SAAS,EAAED,eAAe,CAAC;IAC/EP,OAAO,EAAEA,CAAA,KAAM;MACb,IAAI,CAACQ,SAAS,EAAE,MAAM,IAAIE,KAAK,CAAC,yBAAyB,CAAC;MAC1D,OAAOf,oBAAoB,CAACG,WAAW,EAAES,eAAe,EACtD,MAAMT,WAAW,CAACG,OAAO,CAACU,oBAAoB,CAACH,SAAS,CAAC,CAAC;IAC9D,CAAC;IACDI,OAAO,EAAEN,eAAe,IAAI,CAAC,CAACE,SAAS;IAAEL,SAAS,EAAE,CAAC;IAAEU,MAAM,EAAE;EAAE,CAAC,CAAC;AACvE","ignoreList":[]}
@@ -79,9 +79,12 @@ export function useAuth() {
79
79
  getPublicKey,
80
80
  showBottomSheet,
81
81
  openAvatarPicker,
82
- openAccountDialog
82
+ openAccountDialog,
83
+ ensureDeviceSessionLane
83
84
  } = useOxyAuthActions();
84
85
  const signIn = useCallback(async publicKey => {
86
+ const classification = ensureDeviceSessionLane();
87
+ if (classification) await classification;
85
88
  // Native: sign in directly with the cryptographic identity when a public key
86
89
  // is provided, or an existing keychain identity is found.
87
90
  if (publicKey) {
@@ -112,9 +115,10 @@ export function useAuth() {
112
115
  return {
113
116
  status: 'dialog-opened'
114
117
  };
115
- }, [oxySignIn, hasIdentity, getPublicKey, openAccountDialog]);
118
+ }, [oxySignIn, hasIdentity, getPublicKey, openAccountDialog, ensureDeviceSessionLane]);
116
119
  const signOut = useCallback(async () => {
117
- await logout();
120
+ const result = await logout();
121
+ if (result.status === 'failed') throw result.error;
118
122
  }, [logout]);
119
123
  const signOutAll = useCallback(async () => {
120
124
  await logoutAll();
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useOxyAuthActions","isWebBrowser","useOxyRuntime","useRuntimeSelector","selectAuthState","snapshot","user","account","isAuthenticated","isLoading","isReady","tokenReady","hasAccessToken","canUsePrivateApi","authResolved","isPrivateApiPending","isAuthResolved","error","message","authStatesEqual","left","right","useAuth","runtime","signIn","oxySignIn","logout","logoutAll","refreshSessions","oxyServices","switchToAccount","hasIdentity","getPublicKey","showBottomSheet","openAvatarPicker","openAccountDialog","publicKey","status","hasExisting","existingKey","signOut","signOutAll","refresh"],"sourceRoot":"../../../../src","sources":["ui/hooks/useAuth.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useOxyAuthActions","isWebBrowser","useOxyRuntime","useRuntimeSelector","selectAuthState","snapshot","user","account","isAuthenticated","isLoading","isReady","tokenReady","hasAccessToken","canUsePrivateApi","authResolved","isPrivateApiPending","isAuthResolved","error","message","authStatesEqual","left","right","useAuth","runtime","signIn","oxySignIn","logout","logoutAll","refreshSessions","oxyServices","switchToAccount","hasIdentity","getPublicKey","showBottomSheet","openAvatarPicker","openAccountDialog","ensureDeviceSessionLane","publicKey","classification","status","hasExisting","existingKey","signOut","result","signOutAll","refresh"],"sourceRoot":"../../../../src","sources":["ui/hooks/useAuth.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ import { publicApplicationSchema } from '@oxy.so/contracts';
4
+ export function classifyApplicationSessionLane(metadata) {
5
+ const application = publicApplicationSchema.parse(metadata);
6
+ return application.type === 'third_party' && !application.isOfficial && !application.isInternal ? 'oauth' : 'device';
7
+ }
8
+ export const APPLICATION_CLASSIFICATION_DEADLINE_MS = 5000;
9
+
10
+ /** The active registry projection is authoritative; names and origins confer no trust. */
11
+ export async function resolveApplicationSessionLane(oxyServices, clientId) {
12
+ if (!clientId) throw new Error('A registered clientId is required');
13
+ // The public endpoint rejects inactive applications and unusable credentials.
14
+ let timer;
15
+ try {
16
+ const metadata = await Promise.race([oxyServices.apps.getPublic(clientId, {
17
+ cache: false
18
+ }), new Promise((_, reject) => {
19
+ timer = setTimeout(() => reject(new Error('Application classification timed out')), APPLICATION_CLASSIFICATION_DEADLINE_MS);
20
+ })]);
21
+ return classifyApplicationSessionLane(metadata);
22
+ } finally {
23
+ if (timer !== undefined) clearTimeout(timer);
24
+ }
25
+ }
26
+ //# sourceMappingURL=applicationSessionLane.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["publicApplicationSchema","classifyApplicationSessionLane","metadata","application","parse","type","isOfficial","isInternal","APPLICATION_CLASSIFICATION_DEADLINE_MS","resolveApplicationSessionLane","oxyServices","clientId","Error","timer","Promise","race","apps","getPublic","cache","_","reject","setTimeout","undefined","clearTimeout"],"sourceRoot":"../../../../src","sources":["ui/oauth/applicationSessionLane.ts"],"mappings":";;AAAA,SAASA,uBAAuB,QAAQ,mBAAmB;AAG3D,OAAO,SAASC,8BAA8BA,CAACC,QAAiB,EAAsB;EACpF,MAAMC,WAAW,GAAGH,uBAAuB,CAACI,KAAK,CAACF,QAAQ,CAAC;EAC3D,OAAOC,WAAW,CAACE,IAAI,KAAK,aAAa,IAAI,CAACF,WAAW,CAACG,UAAU,IAAI,CAACH,WAAW,CAACI,UAAU,GAAG,OAAO,GAAG,QAAQ;AACtH;AAEA,OAAO,MAAMC,sCAAsC,GAAG,IAAI;;AAE1D;AACA,OAAO,eAAeC,6BAA6BA,CACjDC,WAAwB,EACxBC,QAAmC,EACN;EAC7B,IAAI,CAACA,QAAQ,EAAE,MAAM,IAAIC,KAAK,CAAC,mCAAmC,CAAC;EACnE;EACA,IAAIC,KAAgD;EACpD,IAAI;IACF,MAAMX,QAAQ,GAAG,MAAMY,OAAO,CAACC,IAAI,CAAC,CAClCL,WAAW,CAACM,IAAI,CAACC,SAAS,CAACN,QAAQ,EAAE;MAAEO,KAAK,EAAE;IAAM,CAAC,CAAC,EACtD,IAAIJ,OAAO,CAAQ,CAACK,CAAC,EAAEC,MAAM,KAAK;MAAEP,KAAK,GAAGQ,UAAU,CAAC,MAAMD,MAAM,CAAC,IAAIR,KAAK,CAAC,sCAAsC,CAAC,CAAC,EAAEJ,sCAAsC,CAAC;IAAE,CAAC,CAAC,CACpK,CAAC;IACF,OAAOP,8BAA8B,CAACC,QAAQ,CAAC;EACjD,CAAC,SAAS;IAAE,IAAIW,KAAK,KAAKS,SAAS,EAAEC,YAAY,CAACV,KAAK,CAAC;EAAE;AAC5D","ignoreList":[]}
@@ -11,10 +11,10 @@
11
11
  *
12
12
  * Ordering is deliberate and load-bearing:
13
13
  * 1. validate `state` BEFORE anything is sent to the token endpoint,
14
- * 2. exchange the code for a session,
14
+ * 2. exchange the code for session material without changing the bearer,
15
15
  * 3. run `cleanup` (drop the persisted handshake / strip `?code=` from the
16
16
  * URL) BEFORE the commit, so a stale code can never re-enter the exchange,
17
- * 4. commit the session.
17
+ * 4. validate and commit the session through the provider's funnel.
18
18
  *
19
19
  * `cleanup` runs exactly once on EVERY exit path, including a state mismatch
20
20
  * and a failed exchange.
@@ -47,6 +47,8 @@ export async function completeOAuthCode(input) {
47
47
  clientId: input.clientId,
48
48
  redirectUri: input.redirectUri,
49
49
  codeVerifier: input.handshake.codeVerifier
50
+ }, {
51
+ plantTokens: false
50
52
  });
51
53
  runCleanup();
52
54
  await input.commitSession({
@@ -1 +1 @@
1
- {"version":3,"names":["logger","completeOAuthCode","input","cleaned","runCleanup","cleanup","handshake","returnedState","state","warn","component","ok","reason","result","oxyServices","auth","oauth","exchangeCode","code","clientId","redirectUri","codeVerifier","commitSession","sessionId","accessToken","deviceId","deviceSecret","userId","user","id","expiresAt","error"],"sourceRoot":"../../../../src","sources":["ui/oauth/completeOAuthCode.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAASA,MAAM,QAAQ,cAAc;;AAGrC;;AA2BA,OAAO,eAAeC,iBAAiBA,CACrCC,KAA6B,EACG;EAChC,IAAIC,OAAO,GAAG,KAAK;EACnB,MAAMC,UAAU,GAAGA,CAAA,KAAY;IAC7B,IAAID,OAAO,EAAE;IACbA,OAAO,GAAG,IAAI;IACdD,KAAK,CAACG,OAAO,GAAG,CAAC;EACnB,CAAC;EAED,IAAI,CAACH,KAAK,CAACI,SAAS,IAAI,CAACJ,KAAK,CAACK,aAAa,IAAIL,KAAK,CAACI,SAAS,CAACE,KAAK,KAAKN,KAAK,CAACK,aAAa,EAAE;IAC7FP,MAAM,CAACS,IAAI,CAAC,wDAAwD,EAAE;MACpEC,SAAS,EAAE;IACb,CAAC,CAAC;IACFN,UAAU,CAAC,CAAC;IACZ,OAAO;MAAEO,EAAE,EAAE,KAAK;MAAEC,MAAM,EAAE;IAAiB,CAAC;EAChD;EAEA,IAAI;IACF,MAAMC,MAAM,GAAG,MAAMX,KAAK,CAACY,WAAW,CAACC,IAAI,CAACC,KAAK,CAACC,YAAY,CAAC;MAC7DC,IAAI,EAAEhB,KAAK,CAACgB,IAAI;MAChBC,QAAQ,EAAEjB,KAAK,CAACiB,QAAQ;MACxBC,WAAW,EAAElB,KAAK,CAACkB,WAAW;MAC9BC,YAAY,EAAEnB,KAAK,CAACI,SAAS,CAACe;IAChC,CAAC,CAAC;IACFjB,UAAU,CAAC,CAAC;IACZ,MAAMF,KAAK,CAACoB,aAAa,CAAC;MACxBC,SAAS,EAAEV,MAAM,CAACU,SAAS;MAC3BC,WAAW,EAAEX,MAAM,CAACW,WAAW;MAC/BC,QAAQ,EAAEZ,MAAM,CAACY,QAAQ;MACzBC,YAAY,EAAEb,MAAM,CAACa,YAAY;MACjCC,MAAM,EAAEd,MAAM,CAACe,IAAI,CAACC,EAAE;MACtBC,SAAS,EAAEjB,MAAM,CAACiB,SAAS;MAC3BF,IAAI,EAAEf,MAAM,CAACe;IACf,CAAC,CAAC;IACF,OAAO;MAAEjB,EAAE,EAAE;IAAK,CAAC;EACrB,CAAC,CAAC,OAAOoB,KAAK,EAAE;IACd/B,MAAM,CAACS,IAAI,CAAC,4BAA4B,EAAE;MAAEC,SAAS,EAAE;IAAoB,CAAC,EAAEqB,KAAK,CAAC;IACpF3B,UAAU,CAAC,CAAC;IACZ,OAAO;MAAEO,EAAE,EAAE,KAAK;MAAEC,MAAM,EAAE;IAAkB,CAAC;EACjD;AACF","ignoreList":[]}
1
+ {"version":3,"names":["logger","completeOAuthCode","input","cleaned","runCleanup","cleanup","handshake","returnedState","state","warn","component","ok","reason","result","oxyServices","auth","oauth","exchangeCode","code","clientId","redirectUri","codeVerifier","plantTokens","commitSession","sessionId","accessToken","deviceId","deviceSecret","userId","user","id","expiresAt","error"],"sourceRoot":"../../../../src","sources":["ui/oauth/completeOAuthCode.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAASA,MAAM,QAAQ,cAAc;;AAGrC;;AA2BA,OAAO,eAAeC,iBAAiBA,CACrCC,KAA6B,EACG;EAChC,IAAIC,OAAO,GAAG,KAAK;EACnB,MAAMC,UAAU,GAAGA,CAAA,KAAY;IAC7B,IAAID,OAAO,EAAE;IACbA,OAAO,GAAG,IAAI;IACdD,KAAK,CAACG,OAAO,GAAG,CAAC;EACnB,CAAC;EAED,IAAI,CAACH,KAAK,CAACI,SAAS,IAAI,CAACJ,KAAK,CAACK,aAAa,IAAIL,KAAK,CAACI,SAAS,CAACE,KAAK,KAAKN,KAAK,CAACK,aAAa,EAAE;IAC7FP,MAAM,CAACS,IAAI,CAAC,wDAAwD,EAAE;MACpEC,SAAS,EAAE;IACb,CAAC,CAAC;IACFN,UAAU,CAAC,CAAC;IACZ,OAAO;MAAEO,EAAE,EAAE,KAAK;MAAEC,MAAM,EAAE;IAAiB,CAAC;EAChD;EAEA,IAAI;IACF,MAAMC,MAAM,GAAG,MAAMX,KAAK,CAACY,WAAW,CAACC,IAAI,CAACC,KAAK,CAACC,YAAY,CAAC;MAC7DC,IAAI,EAAEhB,KAAK,CAACgB,IAAI;MAChBC,QAAQ,EAAEjB,KAAK,CAACiB,QAAQ;MACxBC,WAAW,EAAElB,KAAK,CAACkB,WAAW;MAC9BC,YAAY,EAAEnB,KAAK,CAACI,SAAS,CAACe;IAChC,CAAC,EAAE;MAAEC,WAAW,EAAE;IAAM,CAAC,CAAC;IAC1BlB,UAAU,CAAC,CAAC;IACZ,MAAMF,KAAK,CAACqB,aAAa,CAAC;MACxBC,SAAS,EAAEX,MAAM,CAACW,SAAS;MAC3BC,WAAW,EAAEZ,MAAM,CAACY,WAAW;MAC/BC,QAAQ,EAAEb,MAAM,CAACa,QAAQ;MACzBC,YAAY,EAAEd,MAAM,CAACc,YAAY;MACjCC,MAAM,EAAEf,MAAM,CAACgB,IAAI,CAACC,EAAE;MACtBC,SAAS,EAAElB,MAAM,CAACkB,SAAS;MAC3BF,IAAI,EAAEhB,MAAM,CAACgB;IACf,CAAC,CAAC;IACF,OAAO;MAAElB,EAAE,EAAE;IAAK,CAAC;EACrB,CAAC,CAAC,OAAOqB,KAAK,EAAE;IACdhC,MAAM,CAACS,IAAI,CAAC,4BAA4B,EAAE;MAAEC,SAAS,EAAE;IAAoB,CAAC,EAAEsB,KAAK,CAAC;IACpF5B,UAAU,CAAC,CAAC;IACZ,OAAO;MAAEO,EAAE,EAAE,KAAK;MAAEC,MAAM,EAAE;IAAkB,CAAC;EACjD;AACF","ignoreList":[]}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+
3
+ import { openAuthorizeUrlNative } from "../components/oauthNavigation.js";
4
+ import { resolveApplicationSessionLane } from "./applicationSessionLane.js";
5
+ import { completeOAuthCode } from "./completeOAuthCode.js";
6
+ import { prepareAuthorizeRequest } from "./oauthHandshake.js";
7
+ const attempts = new WeakSet();
8
+ function isExactRedirectUri(value) {
9
+ if (!value || value !== value.trim() || /\s/.test(value)) return false;
10
+ try {
11
+ const uri = new URL(value);
12
+ return !uri.username && !uri.password && !uri.hash && !['code', 'state', 'error', 'error_description'].some(key => uri.searchParams.has(key));
13
+ } catch {
14
+ return false;
15
+ }
16
+ }
17
+
18
+ /** SDK owns the in-memory handshake, observed native callback and session commit. */
19
+ export async function startNativeOAuthSignIn(context, options) {
20
+ if (context.platform !== 'native') return {
21
+ status: 'unsupported',
22
+ reason: 'unsupported-platform'
23
+ };
24
+ if (!context.clientId) return {
25
+ status: 'unsupported',
26
+ reason: 'missing-client-id'
27
+ };
28
+ if (context.identityBound) return {
29
+ status: 'unsupported',
30
+ reason: 'identity-bound'
31
+ };
32
+ if (!isExactRedirectUri(options.redirectUri)) return {
33
+ status: 'failed',
34
+ reason: 'invalid-redirect-uri'
35
+ };
36
+ if (attempts.has(context.oxyServices)) return {
37
+ status: 'failed',
38
+ reason: 'already-in-progress'
39
+ };
40
+ attempts.add(context.oxyServices);
41
+ try {
42
+ let lane;
43
+ try {
44
+ lane = await resolveApplicationSessionLane(context.oxyServices, context.clientId);
45
+ } catch {
46
+ return {
47
+ status: 'failed',
48
+ reason: 'client-resolution-failed'
49
+ };
50
+ }
51
+ if (lane !== 'oauth') return {
52
+ status: 'unsupported',
53
+ reason: 'not-third-party'
54
+ };
55
+ const prepared = await prepareAuthorizeRequest({
56
+ clientId: context.clientId,
57
+ redirectUri: options.redirectUri,
58
+ authorizeBaseUrl: context.authorizeBaseUrl
59
+ });
60
+ const {
61
+ redirectUrl
62
+ } = await openAuthorizeUrlNative(prepared.authorizeUrl, options.redirectUri, {
63
+ allowExternalFallback: false
64
+ });
65
+ if (!redirectUrl) return {
66
+ status: 'cancelled'
67
+ };
68
+ const prefix = `${options.redirectUri}${options.redirectUri.includes('?') ? '&' : '?'}`;
69
+ if (!redirectUrl.startsWith(prefix) || redirectUrl.includes('#')) return {
70
+ status: 'failed',
71
+ reason: 'native-callback-invalid'
72
+ };
73
+ const parameters = new URLSearchParams(redirectUrl.slice(prefix.length));
74
+ if ([...new URL(options.redirectUri).searchParams.keys()].some(key => parameters.has(key))) return {
75
+ status: 'failed',
76
+ reason: 'native-callback-invalid'
77
+ };
78
+ if (['code', 'state', 'error', 'error_description'].some(key => parameters.getAll(key).length > 1)) return {
79
+ status: 'failed',
80
+ reason: 'native-callback-invalid'
81
+ };
82
+ if (parameters.get('state') !== prepared.handshake.state) return {
83
+ status: 'failed',
84
+ reason: 'state-mismatch'
85
+ };
86
+ const code = parameters.get('code');
87
+ if (parameters.has('error') || !code) return {
88
+ status: 'failed',
89
+ reason: 'native-callback-invalid'
90
+ };
91
+ const completion = await completeOAuthCode({
92
+ oxyServices: context.oxyServices,
93
+ clientId: context.clientId,
94
+ code,
95
+ returnedState: parameters.get('state'),
96
+ handshake: prepared.handshake,
97
+ redirectUri: options.redirectUri,
98
+ commitSession: context.commitSession
99
+ });
100
+ return completion.ok ? {
101
+ status: 'signed-in'
102
+ } : {
103
+ status: 'failed',
104
+ reason: completion.reason
105
+ };
106
+ } catch {
107
+ return {
108
+ status: 'failed',
109
+ reason: 'exchange-failed'
110
+ };
111
+ } finally {
112
+ attempts.delete(context.oxyServices);
113
+ }
114
+ }
115
+ //# sourceMappingURL=nativeAuthTransport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["openAuthorizeUrlNative","resolveApplicationSessionLane","completeOAuthCode","prepareAuthorizeRequest","attempts","WeakSet","isExactRedirectUri","value","trim","test","uri","URL","username","password","hash","some","key","searchParams","has","startNativeOAuthSignIn","context","options","platform","status","reason","clientId","identityBound","redirectUri","oxyServices","add","lane","prepared","authorizeBaseUrl","redirectUrl","authorizeUrl","allowExternalFallback","prefix","includes","startsWith","parameters","URLSearchParams","slice","length","keys","getAll","get","handshake","state","code","completion","returnedState","commitSession","ok","delete"],"sourceRoot":"../../../../src","sources":["ui/oauth/nativeAuthTransport.ts"],"mappings":"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","ignoreList":[]}
@@ -37,12 +37,24 @@ import { createTokenTransport } from "./tokenTransport.js";
37
37
  * account, the client tracks device state truthfully but never re-binds its
38
38
  * bearer to the device's mutable active account.
39
39
  */
40
- export function createSessionClient(oxyServices, onUnauthenticated, getPinnedAccountId) {
41
- const host = createSessionClientHost(oxyServices);
40
+ export function createSessionClient(oxyServices, onUnauthenticated, getPinnedAccountId, isDeviceSessionAllowed = () => true, onFullExplicitSignOut) {
41
+ const baseHost = createSessionClientHost(oxyServices);
42
+ const host = {
43
+ ...baseHost,
44
+ getAccessToken: () => isDeviceSessionAllowed() ? baseHost.getAccessToken() : null,
45
+ setTokens: token => {
46
+ if (isDeviceSessionAllowed()) baseHost.setTokens(token);
47
+ },
48
+ makeRequest: async (method, url, data, requestOptions) => {
49
+ if (!isDeviceSessionAllowed()) throw new Error('An isolated OAuth session cannot access the shared device');
50
+ return baseHost.makeRequest(method, url, data, requestOptions);
51
+ }
52
+ };
42
53
  const transport = createTokenTransport(oxyServices, getPinnedAccountId);
43
54
  const client = new SessionClient(host, {
44
55
  transport,
45
56
  onUnauthenticated,
57
+ onFullExplicitSignOut,
46
58
  getPinnedAccountId
47
59
  });
48
60
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["SessionClient","createSessionClientHost","createTokenTransport","createSessionClient","oxyServices","onUnauthenticated","getPinnedAccountId","host","transport","client"],"sourceRoot":"../../../../src","sources":["ui/session/createSessionClient.ts"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,uBAAuB,QAAiC,sBAAsB;AAEtG,SAASC,oBAAoB,QAAQ,qBAAkB;;AAEvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,mBAAmBA,CACjCC,WAAwB,EACxBC,iBAAwD,EACxDC,kBAAwC,EAIxC;EACA,MAAMC,IAAI,GAAGN,uBAAuB,CAACG,WAAW,CAAC;EACjD,MAAMI,SAAS,GAAGN,oBAAoB,CAACE,WAAW,EAAEE,kBAAkB,CAAC;EACvE,MAAMG,MAAM,GAAG,IAAIT,aAAa,CAACO,IAAI,EAAE;IACrCC,SAAS;IACTH,iBAAiB;IACjBC;EACF,CAAC,CAAC;EACF,OAAO;IAAEG,MAAM;IAAEF;EAAK,CAAC;AACzB","ignoreList":[]}
1
+ {"version":3,"names":["SessionClient","createSessionClientHost","createTokenTransport","createSessionClient","oxyServices","onUnauthenticated","getPinnedAccountId","isDeviceSessionAllowed","onFullExplicitSignOut","baseHost","host","getAccessToken","setTokens","token","makeRequest","method","url","data","requestOptions","Error","transport","client"],"sourceRoot":"../../../../src","sources":["ui/session/createSessionClient.ts"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,uBAAuB,QAAiC,sBAAsB;AAEtG,SAASC,oBAAoB,QAAQ,qBAAkB;;AAEvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,mBAAmBA,CACjCC,WAAwB,EACxBC,iBAAwD,EACxDC,kBAAwC,EACxCC,sBAAqC,GAAGA,CAAA,KAAM,IAAI,EAClDC,qBAA2C,EAI3C;EACA,MAAMC,QAAQ,GAAGR,uBAAuB,CAACG,WAAW,CAAC;EACrD,MAAMM,IAAI,GAAG;IACX,GAAGD,QAAQ;IACXE,cAAc,EAAEA,CAAA,KAAMJ,sBAAsB,CAAC,CAAC,GAAGE,QAAQ,CAACE,cAAc,CAAC,CAAC,GAAG,IAAI;IACjFC,SAAS,EAAGC,KAAa,IAAK;MAAE,IAAIN,sBAAsB,CAAC,CAAC,EAAEE,QAAQ,CAACG,SAAS,CAACC,KAAK,CAAC;IAAE,CAAC;IAC1FC,WAAW,EAAE,MAAAA,CAAUC,MAAsB,EAAEC,GAAW,EAAEC,IAAc,EAAEC,cAAoC,KAAiB;MAC/H,IAAI,CAACX,sBAAsB,CAAC,CAAC,EAAE,MAAM,IAAIY,KAAK,CAAC,2DAA2D,CAAC;MAC3G,OAAOV,QAAQ,CAACK,WAAW,CAAIC,MAAM,EAAEC,GAAG,EAAEC,IAAI,EAAEC,cAAc,CAAC;IACnE;EACF,CAAC;EACD,MAAME,SAAS,GAAGlB,oBAAoB,CAACE,WAAW,EAAEE,kBAAkB,CAAC;EACvE,MAAMe,MAAM,GAAG,IAAIrB,aAAa,CAACU,IAAI,EAAE;IACrCU,SAAS;IACTf,iBAAiB;IACjBG,qBAAqB;IACrBF;EACF,CAAC,CAAC;EACF,OAAO;IAAEe,MAAM;IAAEX;EAAK,CAAC;AACzB","ignoreList":[]}
@@ -19,6 +19,7 @@ function credentialOf(state) {
19
19
  export function trackDeviceCredential(store) {
20
20
  let held;
21
21
  return {
22
+ ...store,
22
23
  load: async () => {
23
24
  const state = await store.load();
24
25
  held = credentialOf(state);
@@ -28,6 +29,13 @@ export function trackDeviceCredential(store) {
28
29
  held = credentialOf(state);
29
30
  return store.save(state);
30
31
  },
32
+ ...(store.saveIfCurrent ? {
33
+ saveIfCurrent: async (state, guard) => {
34
+ const committed = await store.saveIfCurrent?.(state, guard);
35
+ if (committed) held = credentialOf(state);
36
+ return committed === true;
37
+ }
38
+ } : {}),
31
39
  clear: async () => {
32
40
  held = null;
33
41
  await store.clear();
@@ -1 +1 @@
1
- {"version":3,"names":["credentialOf","state","deviceId","deviceSecret","trackDeviceCredential","store","held","load","save","clear","heldDeviceCredential"],"sourceRoot":"../../../../src","sources":["ui/session/deviceCredentialTracker.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAgBA,SAASA,YAAYA,CAACC,KAA0D,EAA+B;EAC7G,OAAOA,KAAK,EAAEC,QAAQ,IAAID,KAAK,CAACE,YAAY,GACxC;IAAED,QAAQ,EAAED,KAAK,CAACC,QAAQ;IAAEC,YAAY,EAAEF,KAAK,CAACE;EAAa,CAAC,GAC9D,IAAI;AACV;AAEA,OAAO,SAASC,qBAAqBA,CAACC,KAAqB,EAAoC;EAC7F,IAAIC,IAA6C;EACjD,OAAO;IACLC,IAAI,EAAE,MAAAA,CAAA,KAAY;MAChB,MAAMN,KAAK,GAAG,MAAMI,KAAK,CAACE,IAAI,CAAC,CAAC;MAChCD,IAAI,GAAGN,YAAY,CAACC,KAAK,CAAC;MAC1B,OAAOA,KAAK;IACd,CAAC;IACDO,IAAI,EAAE,MAAOP,KAAK,IAAK;MACrBK,IAAI,GAAGN,YAAY,CAACC,KAAK,CAAC;MAC1B,OAAOI,KAAK,CAACG,IAAI,CAACP,KAAK,CAAC;IAC1B,CAAC;IACDQ,KAAK,EAAE,MAAAA,CAAA,KAAY;MACjBH,IAAI,GAAG,IAAI;MACX,MAAMD,KAAK,CAACI,KAAK,CAAC,CAAC;IACrB,CAAC;IACDC,oBAAoB,EAAEA,CAAA,KAAMJ;EAC9B,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["credentialOf","state","deviceId","deviceSecret","trackDeviceCredential","store","held","load","save","saveIfCurrent","guard","committed","clear","heldDeviceCredential"],"sourceRoot":"../../../../src","sources":["ui/session/deviceCredentialTracker.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAgBA,SAASA,YAAYA,CAACC,KAA0D,EAA+B;EAC7G,OAAOA,KAAK,EAAEC,QAAQ,IAAID,KAAK,CAACE,YAAY,GACxC;IAAED,QAAQ,EAAED,KAAK,CAACC,QAAQ;IAAEC,YAAY,EAAEF,KAAK,CAACE;EAAa,CAAC,GAC9D,IAAI;AACV;AAEA,OAAO,SAASC,qBAAqBA,CAACC,KAAqB,EAAoC;EAC7F,IAAIC,IAA6C;EACjD,OAAO;IACL,GAAGD,KAAK;IACRE,IAAI,EAAE,MAAAA,CAAA,KAAY;MAChB,MAAMN,KAAK,GAAG,MAAMI,KAAK,CAACE,IAAI,CAAC,CAAC;MAChCD,IAAI,GAAGN,YAAY,CAACC,KAAK,CAAC;MAC1B,OAAOA,KAAK;IACd,CAAC;IACDO,IAAI,EAAE,MAAOP,KAAK,IAAK;MACrBK,IAAI,GAAGN,YAAY,CAACC,KAAK,CAAC;MAC1B,OAAOI,KAAK,CAACG,IAAI,CAACP,KAAK,CAAC;IAC1B,CAAC;IACD,IAAII,KAAK,CAACI,aAAa,GAAG;MAACA,aAAa,EAAE,MAAAA,CAAOR,KAAyB,EAAES,KAA0B,KAAK;QACzG,MAAMC,SAAS,GAAG,MAAMN,KAAK,CAACI,aAAa,GAAGR,KAAK,EAAES,KAAK,CAAC;QAC3D,IAAIC,SAAS,EAAEL,IAAI,GAAGN,YAAY,CAACC,KAAK,CAAC;QACzC,OAAOU,SAAS,KAAK,IAAI;MAC3B;IAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACRC,KAAK,EAAE,MAAAA,CAAA,KAAY;MACjBN,IAAI,GAAG,IAAI;MACX,MAAMD,KAAK,CAACO,KAAK,CAAC,CAAC;IACrB,CAAC;IACDC,oBAAoB,EAAEA,CAAA,KAAMP;EAC9B,CAAC;AACH","ignoreList":[]}
@@ -122,4 +122,6 @@ export type { RouteName } from './ui/navigation/routes';
122
122
  export { useSurfaceHeader, type SurfaceHeaderContent } from './ui/hooks/useSurfaceHeader';
123
123
  export { SurfaceHeaderAction, type SurfaceHeaderActionProps } from './ui/components/SurfaceHeaderAction';
124
124
  export { openAccountDialog, closeAccountDialog, subscribeToAccountDialog, } from './ui/navigation/accountDialogManager';
125
+ export type { StartNativeOAuthSignInOptions, NativeOAuthSignInResult } from './ui/oauth/nativeAuthTransport';
126
+ export { usePersonalPlans, usePersonalPlanSubscriptions } from './ui/hooks/queries/usePersonalPlans';
125
127
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
@@ -32,9 +32,16 @@ export interface RunProviderColdBootOptions {
32
32
  /** The identity binding required by `sessionMode: 'identity'`. */
33
33
  identity?: IdentityBinding;
34
34
  sessionClient: SessionClient;
35
+ /** Provider-owned fresh classifier, also used by explicit action recovery. */
36
+ resolveSessionLane?: () => Promise<'device' | 'oauth'>;
37
+ /** Identity pin work may run only after a fresh device classification. */
38
+ onClassified?: (lane: 'device' | 'oauth') => void | Promise<void>;
39
+ beforeDeviceBoot?: () => Promise<void>;
40
+ afterDeviceBoot?: () => Promise<void>;
35
41
  syncDeviceCredentialToHost: () => Promise<void>;
36
42
  commitSession: (input: CommitInput, options: {
37
43
  activate: boolean;
44
+ oauth?: boolean;
38
45
  }) => Promise<void>;
39
46
  markAuthResolved: () => void;
40
47
  setTokenReady: (ready: boolean) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"runProviderColdBoot.d.ts","sourceRoot":"","sources":["../../../../../src/ui/boot/runProviderColdBoot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAsB,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACvH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAM1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAE9D,iFAAiF;AACjF,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,6BAA6B,QAAS,CAAC;AA0CpD,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,cAAc,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,kEAAkE;IAClE,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,0BAA0B,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,aAAa,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrF,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,aAAa,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACzC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,0BAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CAmIzF"}
1
+ {"version":3,"file":"runProviderColdBoot.d.ts","sourceRoot":"","sources":["../../../../../src/ui/boot/runProviderColdBoot.ts"],"names":[],"mappings":"AACA,OAAO,EAAwB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAsB,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACvH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAM1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAE9D,iFAAiF;AACjF,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,6BAA6B,QAAS,CAAC;AA0CpD,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,cAAc,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,kEAAkE;IAClE,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,8EAA8E;IAC9E,kBAAkB,CAAC,EAAE,MAAM,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC;IACvD,0EAA0E;IAC1E,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,0BAA0B,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,aAAa,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtG,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,aAAa,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACzC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,0BAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CAgJzF"}
@@ -103,6 +103,8 @@ export interface OxySignInButtonProps {
103
103
  * ```
104
104
  */
105
105
  onOAuthResult?: (result: OxyOAuthResult) => void;
106
+ /** Opt in to the shared SDK native finalizer. Mutually exclusive with onOAuthResult. */
107
+ nativeOAuthCompletion?: 'sdk';
106
108
  }
107
109
  /**
108
110
  * A pre-styled button component for signing in with Oxy identity
@@ -1 +1 @@
1
- {"version":3,"file":"OxySignInButton.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxySignInButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAY,MAAM,cAAc,CAAC;AAUxF,OAAO,EAGH,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACxB,MAAM,6BAA6B,CAAC;AASrC;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC3B,sGAAsG;IACtG,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,sFAAsF;IACtF,KAAK,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,uFAAuF;AACvF,MAAM,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AAEvD,MAAM,WAAW,oBAAoB;IACjC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IAE9C;;;OAGG;IACH,UAAU,CAAC,EAAE,sBAAsB,CAAC;IAEpC;;;;OAIG;IACH,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAE/B,iEAAiE;IACjE,IAAI,CAAC,EAAE,gBAAgB,CAAC;IAExB,iEAAiE;IACjE,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAErB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAE7B;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAEjC;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAC;CACpD;AAQD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAqR1D,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"OxySignInButton.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxySignInButton.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAY,MAAM,cAAc,CAAC;AAUxF,OAAO,EAGH,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACxB,MAAM,6BAA6B,CAAC;AASrC;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC3B,sGAAsG;IACtG,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,sFAAsF;IACtF,KAAK,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,uFAAuF;AACvF,MAAM,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AAEvD,MAAM,WAAW,oBAAoB;IACjC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IAE9C;;;OAGG;IACH,UAAU,CAAC,EAAE,sBAAsB,CAAC;IAEpC;;;;OAIG;IACH,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAE/B,iEAAiE;IACjE,IAAI,CAAC,EAAE,gBAAgB,CAAC;IAExB,iEAAiE;IACjE,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAErB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAE7B;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAEjC;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAC;IACjD,wFAAwF;IACxF,qBAAqB,CAAC,EAAE,KAAK,CAAC;CACjC;AAQD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAkS1D,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -1,7 +1,9 @@
1
1
  import type React from 'react';
2
2
  import type { OxyContextState, OxyRuntimeProviderProps } from './oxyContextTypes';
3
3
  export type { LogoutResult, OxyContextState, OxyRuntimeProviderProps } from './oxyContextTypes';
4
- type OxyAuthActionsContextState = Pick<OxyContextState, 'signIn' | 'logout' | 'logoutAll' | 'refreshSessions' | 'oxyServices' | 'switchToAccount' | 'hasIdentity' | 'getPublicKey' | 'showBottomSheet' | 'openAvatarPicker' | 'openAccountDialog'>;
4
+ type OxyAuthActionsContextState = Pick<OxyContextState, 'signIn' | 'logout' | 'logoutAll' | 'refreshSessions' | 'oxyServices' | 'switchToAccount' | 'hasIdentity' | 'getPublicKey' | 'showBottomSheet' | 'openAvatarPicker' | 'openAccountDialog'> & {
5
+ ensureDeviceSessionLane: () => void | Promise<void>;
6
+ };
5
7
  /**
6
8
  * The SDK's internal runtime provider — the session/account state machine that
7
9
  * backs `useOxy()`.
@@ -1 +1 @@
1
- {"version":3,"file":"OxyContext.d.ts","sourceRoot":"","sources":["../../../../../src/ui/context/OxyContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgF/B,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EAExB,MAAM,mBAAmB,CAAC;AAU3B,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAMhG,KAAK,0BAA0B,GAAG,IAAI,CACpC,eAAe,EACb,QAAQ,GACR,QAAQ,GACR,WAAW,GACX,iBAAiB,GACjB,aAAa,GACb,iBAAiB,GACjB,aAAa,GACb,cAAc,GACd,iBAAiB,GACjB,kBAAkB,GAClB,mBAAmB,CACtB,CAAC;AAIF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAqxChE,CAAC;AAMF,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,IAAI,0BAA0B;;CAMxC;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,MAAM,QAAO,eAMzB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,QAAO,eAAe,GAAG,IAAqC,CAAC;AAE1F,kFAAkF;AAClF,eAAO,MAAM,iBAAiB,QAAO,0BAMpC,CAAC"}
1
+ {"version":3,"file":"OxyContext.d.ts","sourceRoot":"","sources":["../../../../../src/ui/context/OxyContext.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAmF/B,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EAExB,MAAM,mBAAmB,CAAC;AAU3B,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAMhG,KAAK,0BAA0B,GAAG,IAAI,CACpC,eAAe,EACb,QAAQ,GACR,QAAQ,GACR,WAAW,GACX,iBAAiB,GACjB,aAAa,GACb,iBAAiB,GACjB,aAAa,GACb,cAAc,GACd,iBAAiB,GACjB,kBAAkB,GAClB,mBAAmB,CACtB,GAAG;IAAE,uBAAuB,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,CAAC;AAI5D;;;;;;;;;;GAUG;AACH,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAm5ChE,CAAC;AAMF,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,IAAI,0BAA0B;;CAMxC;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,MAAM,QAAO,eAMzB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,QAAO,eAAe,GAAG,IAAqC,CAAC;AAE1F,kFAAkF;AAClF,eAAO,MAAM,iBAAiB,QAAO,0BAMpC,CAAC"}
@@ -7,6 +7,8 @@ export interface CommitDeviceSetAndResolveDeps {
7
7
  * reconciles the device set in the background).
8
8
  */
9
9
  activate: boolean;
10
+ /** Trusted provider provenance from the completed third-party OAuth exchange. */
11
+ isolatedOAuth?: boolean;
10
12
  /** Cold boot already carries authoritative device state from the mint. */
11
13
  hasDeviceState?: boolean;
12
14
  /** The committing account id (only used by `registerAndActivate`). */
@@ -1 +1 @@
1
- {"version":3,"file":"commitSessionFlow.d.ts","sourceRoot":"","sources":["../../../../../src/ui/context/commitSessionFlow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAMzC,MAAM,WAAW,6BAA6B;IAC5C;;;;;OAKG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB,0EAA0E;IAC1E,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,YAAY,EAAE,IAAI,GAAG,IAAI,CAAC;IAC1B,6EAA6E;IAC7E,mBAAmB,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,8EAA8E;IAC9E,iBAAiB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,sCAAsC;IACtC,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,yEAAyE;IACzE,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,6EAA6E;IAC7E,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IAC3C,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IACnC,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IAChD,gBAAgB,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED;;;;;;;;;GASG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,6BAA6B,GAClC,OAAO,CAAC,IAAI,CAAC,CAoFf"}
1
+ {"version":3,"file":"commitSessionFlow.d.ts","sourceRoot":"","sources":["../../../../../src/ui/context/commitSessionFlow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAMzC,MAAM,WAAW,6BAA6B;IAC5C;;;;;OAKG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB,iFAAiF;IACjF,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,0EAA0E;IAC1E,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,YAAY,EAAE,IAAI,GAAG,IAAI,CAAC;IAC1B,6EAA6E;IAC7E,mBAAmB,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,8EAA8E;IAC9E,iBAAiB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,sCAAsC;IACtC,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,yEAAyE;IACzE,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,6EAA6E;IAC7E,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IAC3C,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IACnC,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IAChD,gBAAgB,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED;;;;;;;;;GASG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,6BAA6B,GAClC,OAAO,CAAC,IAAI,CAAC,CA0Ff"}
@@ -6,6 +6,7 @@ import type { StorageInterface } from '../../utils/storageHelpers';
6
6
  import type { OxyServices } from '@oxy.so/core';
7
7
  export interface UseAuthOperationsOptions {
8
8
  oxyServices: OxyServices;
9
+ ensureDeviceSessionLane: () => void | Promise<void>;
9
10
  storage: StorageInterface | null;
10
11
  /**
11
12
  * The device-first persisted auth-state store. On EXPLICIT full sign-out the
@@ -63,10 +64,10 @@ export interface UseAuthOperationsResult {
63
64
  * `logout` / `logoutAll` paths — a remote sign-out is indistinguishable from a
64
65
  * local one to the next cold boot.
65
66
  */
66
- export declare function clearPersistedAuthSafe(store: AuthStateStore, logger?: (message: string, error?: unknown) => void): void;
67
+ export declare function clearPersistedAuthSafe(store: AuthStateStore, logger?: (message: string, error?: unknown) => void): Promise<void>;
67
68
  /**
68
69
  * Authentication operations using public key cryptography.
69
70
  * Accepts public key as parameter - identity management is handled by the app layer.
70
71
  */
71
- export declare const useAuthOperations: ({ oxyServices, store, runtime, saveActiveSessionId, clearSessionState, switchSession, sessionClient, syncFromClient, onAuthStateChange, onError, logger, identityBinding, refreshPinnedAccountId, }: UseAuthOperationsOptions) => UseAuthOperationsResult;
72
+ export declare const useAuthOperations: ({ oxyServices, ensureDeviceSessionLane, store, runtime, saveActiveSessionId, clearSessionState, switchSession, sessionClient, syncFromClient, onAuthStateChange, onError, logger, identityBinding, refreshPinnedAccountId, }: UseAuthOperationsOptions) => UseAuthOperationsResult;
72
73
  //# sourceMappingURL=useAuthOperations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAuthOperations.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/context/hooks/useAuthOperations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE3F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAIvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,WAAW,wBAAwB;IACvC,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACjC;;;;;;OAMG;IACH,KAAK,EAAE,cAAc,CAAC;IACtB;;;;OAIG;IACH,OAAO,EAAE,UAAU,CAAC;IACpB,mBAAmB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,iBAAiB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,0JAA0J;IAC1J,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD;;;;;OAKG;IACH,aAAa,EAAE,aAAa,CAAC;IAC7B,+MAA+M;IAC/M,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IAChD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACpD;;;;;OAKG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,+EAA+E;IAC/E,sBAAsB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CACvD;AAED,MAAM,WAAW,uBAAuB;IACtC,uCAAuC;IACvC,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,6EAA6E;IAC7E,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IAC5D,+BAA+B;IAC/B,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC;AAMD;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,cAAc,EACrB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,GAClD,IAAI,CAIN;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAI,qMAc/B,wBAAwB,KAAG,uBAqU7B,CAAC"}
1
+ {"version":3,"file":"useAuthOperations.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/context/hooks/useAuthOperations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE3F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAIvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,WAAW,wBAAwB;IACvC,WAAW,EAAE,WAAW,CAAC;IACzB,uBAAuB,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACjC;;;;;;OAMG;IACH,KAAK,EAAE,cAAc,CAAC;IACtB;;;;OAIG;IACH,OAAO,EAAE,UAAU,CAAC;IACpB,mBAAmB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,iBAAiB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,0JAA0J;IAC1J,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD;;;;;OAKG;IACH,aAAa,EAAE,aAAa,CAAC;IAC7B,+MAA+M;IAC/M,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IAChD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACpD;;;;;OAKG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,+EAA+E;IAC/E,sBAAsB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CACvD;AAED,MAAM,WAAW,uBAAuB;IACtC,uCAAuC;IACvC,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,6EAA6E;IAC7E,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IAC5D,+BAA+B;IAC/B,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC;AAMD;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,cAAc,EACrB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,GAClD,OAAO,CAAC,IAAI,CAAC,CAIf;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAI,8NAe/B,wBAAwB,KAAG,uBAgX7B,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { OxyRuntime } from '../runtime';
2
+ import type { LogoutResult } from './oxyContextTypes';
3
+ interface IsolatedOAuthSession {
4
+ readonly sessionId: string;
5
+ readonly clientId: string;
6
+ }
7
+ export declare function setIsolatedOAuthSession(runtime: OxyRuntime, session: IsolatedOAuthSession): void;
8
+ export declare function hasIsolatedOAuthSession(runtime: OxyRuntime): boolean;
9
+ export declare function clearIsolatedOAuthSession(runtime: OxyRuntime): void;
10
+ export declare function readIsolatedOAuthSession(runtime: OxyRuntime): IsolatedOAuthSession | null;
11
+ /** Exact self-revocation; never a fallback for an unknown device session. */
12
+ export declare function logoutIsolatedOAuthSession(input: {
13
+ session: IsolatedOAuthSession;
14
+ targetSessionId?: string;
15
+ revokeSelf: (sessionId: string) => Promise<void>;
16
+ clearSessionState: () => Promise<void>;
17
+ }): Promise<LogoutResult>;
18
+ export {};
19
+ //# sourceMappingURL=isolatedOAuthSession.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isolatedOAuthSession.d.ts","sourceRoot":"","sources":["../../../../../src/ui/context/isolatedOAuthSession.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD,UAAU,oBAAoB;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAMD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,oBAAoB,GAAG,IAAI,CAEhG;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAEpE;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,CAEnE;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,UAAU,GAAG,oBAAoB,GAAG,IAAI,CAGzF;AAED,6EAA6E;AAC7E,wBAAsB,0BAA0B,CAAC,KAAK,EAAE;IACtD,OAAO,EAAE,oBAAoB,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,iBAAiB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACxC,GAAG,OAAO,CAAC,YAAY,CAAC,CAWxB"}
@@ -1,3 +1,4 @@
1
+ import type { StartNativeOAuthSignInOptions, NativeOAuthSignInResult } from '../oauth/nativeAuthTransport';
1
2
  import type { ReactNode } from 'react';
2
3
  import type { LoginSessionResult } from '@oxy.so/contracts';
3
4
  import type { OxyServices, User, SessionLoginResponse, AccountNode, CreateAccountInput, ClientSession, ApiError } from '@oxy.so/core';
@@ -102,6 +103,8 @@ export interface OxyContextState {
102
103
  * No-op outside a browser and in `sessionMode: 'identity'`, both of which
103
104
  * resolve to `{ status: 'unsupported' }`.
104
105
  */
106
+ /** Native SDK finalizer; call only from an explicit user gesture. */
107
+ startNativeOAuthSignIn: (options: StartNativeOAuthSignInOptions) => Promise<NativeOAuthSignInResult>;
105
108
  startWebOAuthSignIn: (options: StartWebOAuthSignInOptions) => Promise<WebOAuthSignInResult>;
106
109
  /**
107
110
  * Ask the already-authenticated user for explicit OAuth consent to exact
@@ -1 +1 @@
1
- {"version":3,"file":"oxyContextTypes.d.ts","sourceRoot":"","sources":["../../../../../src/ui/context/oxyContextTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oxyContextTypes.d.ts","sourceRoot":"","sources":["../../../../../src/ui/context/oxyContextTypes.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ interface UseOxyAccountGraphParams {
12
12
  * permanently. The graph is therefore never fetched and every switch rejects.
13
13
  */
14
14
  identityBound: boolean;
15
+ isolatedOAuth: boolean;
15
16
  oxyServices: OxyServices;
16
17
  sessionClient: SessionClient;
17
18
  syncFromClient: () => Promise<void>;
@@ -21,7 +22,7 @@ interface UseOxyAccountGraphParams {
21
22
  accountDialogControllerRef: RefObject<AccountDialogController | null>;
22
23
  clearSessionStateRef: RefObject<() => Promise<void>>;
23
24
  }
24
- export declare function useOxyAccountGraph({ isAuthenticated, tokenReady, initialized, identityBound, oxyServices, sessionClient, syncFromClient, commitSession, accountDialogControllerRef, clearSessionStateRef, }: UseOxyAccountGraphParams): {
25
+ export declare function useOxyAccountGraph({ isAuthenticated, tokenReady, initialized, identityBound, isolatedOAuth, oxyServices, sessionClient, syncFromClient, commitSession, accountDialogControllerRef, clearSessionStateRef, }: UseOxyAccountGraphParams): {
25
26
  accounts: AccountNode[];
26
27
  refreshAccounts: () => Promise<void>;
27
28
  switchToAccount: (accountId: string) => Promise<void>;