@tern-secure/react 1.1.5 → 1.1.7

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 (235) hide show
  1. package/dist/ctx/AuthProvider.d.mts +13 -3
  2. package/dist/ctx/AuthProvider.d.ts +13 -3
  3. package/dist/ctx/AuthProvider.js +1 -1
  4. package/dist/ctx/AuthProvider.js.map +1 -1
  5. package/dist/ctx/AuthProvider.mjs +1 -1
  6. package/dist/ctx/AuthProvider.mjs.map +1 -1
  7. package/dist/ctx/IsomorphicTernSecureCtx.d.mts +5 -5
  8. package/dist/ctx/IsomorphicTernSecureCtx.d.ts +5 -5
  9. package/dist/ctx/IsomorphicTernSecureCtx.js +1 -1
  10. package/dist/ctx/IsomorphicTernSecureCtx.js.map +1 -1
  11. package/dist/ctx/IsomorphicTernSecureCtx.mjs +1 -1
  12. package/dist/ctx/IsomorphicTernSecureCtx.mjs.map +1 -1
  13. package/dist/ctx/TernSecureAuthResourcesCtx.d.mts +6 -0
  14. package/dist/ctx/TernSecureAuthResourcesCtx.d.ts +6 -0
  15. package/dist/ctx/TernSecureAuthResourcesCtx.js +2 -0
  16. package/dist/ctx/TernSecureAuthResourcesCtx.js.map +1 -0
  17. package/dist/ctx/TernSecureAuthResourcesCtx.mjs +2 -0
  18. package/dist/ctx/TernSecureAuthResourcesCtx.mjs.map +1 -0
  19. package/dist/ctx/TernSecureCtxProvider.d.mts +6 -8
  20. package/dist/ctx/TernSecureCtxProvider.d.ts +6 -8
  21. package/dist/ctx/TernSecureCtxProvider.js +1 -1
  22. package/dist/ctx/TernSecureCtxProvider.js.map +1 -1
  23. package/dist/ctx/TernSecureCtxProvider.mjs +1 -1
  24. package/dist/ctx/TernSecureCtxProvider.mjs.map +1 -1
  25. package/dist/ctx/TernSecureProvider.js +1 -1
  26. package/dist/ctx/TernSecureProvider.js.map +1 -1
  27. package/dist/ctx/TernSecureProvider.mjs +1 -1
  28. package/dist/ctx/TernSecureProvider.mjs.map +1 -1
  29. package/dist/hooks/useAssertWrappedTernSecureProvider.d.mts +2 -2
  30. package/dist/hooks/useAssertWrappedTernSecureProvider.d.ts +2 -2
  31. package/dist/hooks/useAssertWrappedTernSecureProvider.js +2 -2
  32. package/dist/hooks/useAssertWrappedTernSecureProvider.js.map +1 -1
  33. package/dist/hooks/useAssertWrappedTernSecureProvider.mjs +2 -2
  34. package/dist/hooks/useAssertWrappedTernSecureProvider.mjs.map +1 -1
  35. package/dist/hooks/useAuth.d.mts +2 -2
  36. package/dist/hooks/useAuth.d.ts +2 -2
  37. package/dist/hooks/useAuth.js +1 -1
  38. package/dist/hooks/useAuth.js.map +1 -1
  39. package/dist/hooks/useAuth.mjs +1 -1
  40. package/dist/hooks/useAuth.mjs.map +1 -1
  41. package/dist/hooks/useIdToken.js +1 -1
  42. package/dist/hooks/useIdToken.js.map +1 -1
  43. package/dist/hooks/useIdToken.mjs +1 -1
  44. package/dist/hooks/useIdToken.mjs.map +1 -1
  45. package/dist/hooks/useSession.js +1 -1
  46. package/dist/hooks/useSession.js.map +1 -1
  47. package/dist/hooks/useSession.mjs +1 -1
  48. package/dist/hooks/useSession.mjs.map +1 -1
  49. package/dist/hooks/useSignIn.d.mts +17 -0
  50. package/dist/hooks/useSignIn.d.ts +17 -0
  51. package/dist/hooks/useSignIn.js +2 -0
  52. package/dist/hooks/useSignIn.js.map +1 -0
  53. package/dist/hooks/useSignIn.mjs +2 -0
  54. package/dist/hooks/useSignIn.mjs.map +1 -0
  55. package/dist/index.d.mts +2 -7
  56. package/dist/index.d.ts +2 -7
  57. package/dist/index.js +1 -1
  58. package/dist/index.js.map +1 -1
  59. package/dist/index.mjs +1 -1
  60. package/dist/index.mjs.map +1 -1
  61. package/dist/lib/isoTernSecureAuth.d.mts +46 -0
  62. package/dist/lib/isoTernSecureAuth.d.ts +46 -0
  63. package/dist/lib/isoTernSecureAuth.js +2 -0
  64. package/dist/lib/isoTernSecureAuth.js.map +1 -0
  65. package/dist/lib/isoTernSecureAuth.mjs +2 -0
  66. package/dist/lib/isoTernSecureAuth.mjs.map +1 -0
  67. package/dist/lib/utils.js.map +1 -1
  68. package/dist/lib/utils.mjs.map +1 -1
  69. package/dist/types.d.mts +16 -6
  70. package/dist/types.d.ts +16 -6
  71. package/dist/types.js +1 -1
  72. package/dist/types.js.map +1 -1
  73. package/dist/types.mjs.map +1 -1
  74. package/dist/utils/config.js +2 -2
  75. package/dist/utils/config.js.map +1 -1
  76. package/dist/utils/config.mjs +3 -3
  77. package/dist/utils/config.mjs.map +1 -1
  78. package/dist/utils/construct.js.map +1 -1
  79. package/dist/utils/construct.mjs +1 -1
  80. package/dist/utils/construct.mjs.map +1 -1
  81. package/dist/utils/debug.js +1 -1
  82. package/dist/utils/debug.js.map +1 -1
  83. package/dist/utils/debug.mjs +1 -1
  84. package/dist/utils/debug.mjs.map +1 -1
  85. package/package.json +6 -5
  86. package/dist/client/actions.d.mts +0 -2
  87. package/dist/client/actions.d.ts +0 -2
  88. package/dist/client/actions.js +0 -2
  89. package/dist/client/actions.js.map +0 -1
  90. package/dist/client/actions.mjs +0 -1
  91. package/dist/client/actions.mjs.map +0 -1
  92. package/dist/client/session.d.mts +0 -9
  93. package/dist/client/session.d.ts +0 -9
  94. package/dist/client/session.js +0 -2
  95. package/dist/client/session.js.map +0 -1
  96. package/dist/client/session.mjs +0 -2
  97. package/dist/client/session.mjs.map +0 -1
  98. package/dist/components/TernSecureHostRenderer.d.mts +0 -32
  99. package/dist/components/TernSecureHostRenderer.d.ts +0 -32
  100. package/dist/components/TernSecureHostRenderer.js +0 -2
  101. package/dist/components/TernSecureHostRenderer.js.map +0 -1
  102. package/dist/components/TernSecureHostRenderer.mjs +0 -2
  103. package/dist/components/TernSecureHostRenderer.mjs.map +0 -1
  104. package/dist/components/background.d.mts +0 -5
  105. package/dist/components/background.d.ts +0 -5
  106. package/dist/components/background.js +0 -2
  107. package/dist/components/background.js.map +0 -1
  108. package/dist/components/background.mjs +0 -2
  109. package/dist/components/background.mjs.map +0 -1
  110. package/dist/components/old.d.mts +0 -2
  111. package/dist/components/old.d.ts +0 -2
  112. package/dist/components/old.js +0 -2
  113. package/dist/components/old.js.map +0 -1
  114. package/dist/components/old.mjs +0 -1
  115. package/dist/components/old.mjs.map +0 -1
  116. package/dist/components/uiComponent.d.mts +0 -30
  117. package/dist/components/uiComponent.d.ts +0 -30
  118. package/dist/components/uiComponent.js +0 -2
  119. package/dist/components/uiComponent.js.map +0 -1
  120. package/dist/components/uiComponent.mjs +0 -2
  121. package/dist/components/uiComponent.mjs.map +0 -1
  122. package/dist/components/withTernSecure.d.mts +0 -19
  123. package/dist/components/withTernSecure.d.ts +0 -19
  124. package/dist/components/withTernSecure.js +0 -2
  125. package/dist/components/withTernSecure.js.map +0 -1
  126. package/dist/components/withTernSecure.mjs +0 -2
  127. package/dist/components/withTernSecure.mjs.map +0 -1
  128. package/dist/hooks/useAuthState.d.mts +0 -17
  129. package/dist/hooks/useAuthState.d.ts +0 -17
  130. package/dist/hooks/useAuthState.js +0 -2
  131. package/dist/hooks/useAuthState.js.map +0 -1
  132. package/dist/hooks/useAuthState.mjs +0 -2
  133. package/dist/hooks/useAuthState.mjs.map +0 -1
  134. package/dist/hooks/useMaxAllowedInstances.d.mts +0 -6
  135. package/dist/hooks/useMaxAllowedInstances.d.ts +0 -6
  136. package/dist/hooks/useMaxAllowedInstances.js +0 -2
  137. package/dist/hooks/useMaxAllowedInstances.js.map +0 -1
  138. package/dist/hooks/useMaxAllowedInstances.mjs +0 -2
  139. package/dist/hooks/useMaxAllowedInstances.mjs.map +0 -1
  140. package/dist/hooks/useSignUp.d.mts +0 -13
  141. package/dist/hooks/useSignUp.d.ts +0 -13
  142. package/dist/hooks/useSignUp.js +0 -2
  143. package/dist/hooks/useSignUp.js.map +0 -1
  144. package/dist/hooks/useSignUp.mjs +0 -2
  145. package/dist/hooks/useSignUp.mjs.map +0 -1
  146. package/dist/hooks/useWaitForComponentMount.d.mts +0 -8
  147. package/dist/hooks/useWaitForComponentMount.d.ts +0 -8
  148. package/dist/hooks/useWaitForComponentMount.js +0 -2
  149. package/dist/hooks/useWaitForComponentMount.js.map +0 -1
  150. package/dist/hooks/useWaitForComponentMount.mjs +0 -2
  151. package/dist/hooks/useWaitForComponentMount.mjs.map +0 -1
  152. package/dist/lib/isomorphicTernSecure.d.mts +0 -73
  153. package/dist/lib/isomorphicTernSecure.d.ts +0 -73
  154. package/dist/lib/isomorphicTernSecure.js +0 -2
  155. package/dist/lib/isomorphicTernSecure.js.map +0 -1
  156. package/dist/lib/isomorphicTernSecure.mjs +0 -2
  157. package/dist/lib/isomorphicTernSecure.mjs.map +0 -1
  158. package/dist/types/auth.d.mts +0 -2
  159. package/dist/types/auth.d.ts +0 -2
  160. package/dist/types/auth.js +0 -2
  161. package/dist/types/auth.js.map +0 -1
  162. package/dist/types/auth.mjs +0 -1
  163. package/dist/types/auth.mjs.map +0 -1
  164. package/dist/types/client/actions.d.ts +0 -2
  165. package/dist/types/client/actions.d.ts.map +0 -1
  166. package/dist/types/client/session.d.ts +0 -7
  167. package/dist/types/client/session.d.ts.map +0 -1
  168. package/dist/types/components/TernSecureHostRenderer.d.ts +0 -30
  169. package/dist/types/components/TernSecureHostRenderer.d.ts.map +0 -1
  170. package/dist/types/components/background.d.ts +0 -2
  171. package/dist/types/components/background.d.ts.map +0 -1
  172. package/dist/types/components/old.d.ts +0 -2
  173. package/dist/types/components/old.d.ts.map +0 -1
  174. package/dist/types/components/uiComponent.d.ts +0 -27
  175. package/dist/types/components/uiComponent.d.ts.map +0 -1
  176. package/dist/types/components/withTernSecure.d.ts +0 -16
  177. package/dist/types/components/withTernSecure.d.ts.map +0 -1
  178. package/dist/types/ctx/AuthProvider.d.ts +0 -3
  179. package/dist/types/ctx/AuthProvider.d.ts.map +0 -1
  180. package/dist/types/ctx/IsomorphicTernSecureCtx.d.ts +0 -6
  181. package/dist/types/ctx/IsomorphicTernSecureCtx.d.ts.map +0 -1
  182. package/dist/types/ctx/SessionCtx.d.ts +0 -2
  183. package/dist/types/ctx/SessionCtx.d.ts.map +0 -1
  184. package/dist/types/ctx/TernSecureCtxProvider.d.ts +0 -14
  185. package/dist/types/ctx/TernSecureCtxProvider.d.ts.map +0 -1
  186. package/dist/types/ctx/TernSecureProvider.d.ts +0 -6
  187. package/dist/types/ctx/TernSecureProvider.d.ts.map +0 -1
  188. package/dist/types/ctx/UserCtx.d.ts +0 -2
  189. package/dist/types/ctx/UserCtx.d.ts.map +0 -1
  190. package/dist/types/hooks/useAssertWrappedTernSecureProvider.d.ts +0 -2
  191. package/dist/types/hooks/useAssertWrappedTernSecureProvider.d.ts.map +0 -1
  192. package/dist/types/hooks/useAuth.d.ts +0 -3
  193. package/dist/types/hooks/useAuth.d.ts.map +0 -1
  194. package/dist/types/hooks/useAuthState.d.ts +0 -14
  195. package/dist/types/hooks/useAuthState.d.ts.map +0 -1
  196. package/dist/types/hooks/useIdToken.d.ts +0 -19
  197. package/dist/types/hooks/useIdToken.d.ts.map +0 -1
  198. package/dist/types/hooks/useMaxAllowedInstances.d.ts +0 -4
  199. package/dist/types/hooks/useMaxAllowedInstances.d.ts.map +0 -1
  200. package/dist/types/hooks/useSession.d.ts +0 -12
  201. package/dist/types/hooks/useSession.d.ts.map +0 -1
  202. package/dist/types/hooks/useSignUp.d.ts +0 -11
  203. package/dist/types/hooks/useSignUp.d.ts.map +0 -1
  204. package/dist/types/hooks/useWaitForComponentMount.d.ts +0 -8
  205. package/dist/types/hooks/useWaitForComponentMount.d.ts.map +0 -1
  206. package/dist/types/index.d.ts +0 -14
  207. package/dist/types/index.d.ts.map +0 -1
  208. package/dist/types/lib/isomorphicTernSecure.d.ts +0 -70
  209. package/dist/types/lib/isomorphicTernSecure.d.ts.map +0 -1
  210. package/dist/types/lib/utils.d.ts +0 -3
  211. package/dist/types/lib/utils.d.ts.map +0 -1
  212. package/dist/types/route-handler/internal-route.d.ts +0 -13
  213. package/dist/types/route-handler/internal-route.d.ts.map +0 -1
  214. package/dist/types/types/auth.d.ts +0 -2
  215. package/dist/types/types/auth.d.ts.map +0 -1
  216. package/dist/types/types.d.ts +0 -94
  217. package/dist/types/types.d.ts.map +0 -1
  218. package/dist/types/utils/client-init.d.ts +0 -2
  219. package/dist/types/utils/client-init.d.ts.map +0 -1
  220. package/dist/types/utils/config.d.ts +0 -35
  221. package/dist/types/utils/config.d.ts.map +0 -1
  222. package/dist/types/utils/construct.d.ts +0 -38
  223. package/dist/types/utils/construct.d.ts.map +0 -1
  224. package/dist/types/utils/create-styles.d.ts +0 -99
  225. package/dist/types/utils/create-styles.d.ts.map +0 -1
  226. package/dist/types/utils/debug.d.ts +0 -13
  227. package/dist/types/utils/debug.d.ts.map +0 -1
  228. package/dist/types/utils/redirect.d.ts +0 -9
  229. package/dist/types/utils/redirect.d.ts.map +0 -1
  230. package/dist/utils/client-init.d.mts +0 -2
  231. package/dist/utils/client-init.d.ts +0 -2
  232. package/dist/utils/client-init.js +0 -2
  233. package/dist/utils/client-init.js.map +0 -1
  234. package/dist/utils/client-init.mjs +0 -1
  235. package/dist/utils/client-init.mjs.map +0 -1
@@ -1,5 +1,15 @@
1
- import { TernSecureState } from '@tern-secure/types';
1
+ import * as React from 'react';
2
+ import { TernSecureUser } from '@tern-secure/types';
2
3
 
3
- declare function useAuthProviderCtx(): TernSecureState;
4
+ type AuthProviderCtxValue = {
5
+ userId: string | null | undefined;
6
+ token: string | null;
7
+ email: string | null;
8
+ user?: TernSecureUser | null;
9
+ };
10
+ declare const AuthProviderCtx: React.Context<{
11
+ value: AuthProviderCtxValue;
12
+ } | undefined>;
13
+ declare const useAuthProviderCtx: () => AuthProviderCtxValue;
4
14
 
5
- export { useAuthProviderCtx };
15
+ export { AuthProviderCtx, type AuthProviderCtxValue, useAuthProviderCtx };
@@ -1,5 +1,15 @@
1
- import { TernSecureState } from '@tern-secure/types';
1
+ import * as React from 'react';
2
+ import { TernSecureUser } from '@tern-secure/types';
2
3
 
3
- declare function useAuthProviderCtx(): TernSecureState;
4
+ type AuthProviderCtxValue = {
5
+ userId: string | null | undefined;
6
+ token: string | null;
7
+ email: string | null;
8
+ user?: TernSecureUser | null;
9
+ };
10
+ declare const AuthProviderCtx: React.Context<{
11
+ value: AuthProviderCtxValue;
12
+ } | undefined>;
13
+ declare const useAuthProviderCtx: () => AuthProviderCtxValue;
4
14
 
5
- export { useAuthProviderCtx };
15
+ export { AuthProviderCtx, type AuthProviderCtxValue, useAuthProviderCtx };
@@ -1,2 +1,2 @@
1
- "use strict";var o=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var x=Object.getOwnPropertyNames;var S=Object.prototype.hasOwnProperty;var a=(e,t)=>{for(var n in t)o(e,n,{get:t[n],enumerable:!0})},i=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of x(t))!S.call(e,u)&&u!==n&&o(e,u,{get:()=>t[u],enumerable:!(s=c(t,u))||s.enumerable});return e};var p=e=>i(o({},"__esModule",{value:!0}),e);var m={};a(m,{useAuthProviderCtx:()=>h});module.exports=p(m);var r=require("@tern-secure/shared/react");function h(){const e=(0,r.useTernSecureAuthContext)();return(0,r.assertContextExists)(e,r.TernSecureAuthContext),e.authState}0&&(module.exports={useAuthProviderCtx});
1
+ "use strict";var n=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var s=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var x=(r,e)=>{for(var u in e)n(r,u,{get:e[u],enumerable:!0})},p=(r,e,u,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of s(e))!d.call(r,t)&&t!==u&&n(r,t,{get:()=>e[t],enumerable:!(o=l(e,t))||o.enumerable});return r};var A=r=>p(n({},"__esModule",{value:!0}),r);var h={};x(h,{AuthProviderCtx:()=>C,useAuthProviderCtx:()=>c});module.exports=A(h);var i=require("@tern-secure/shared/react");const[C,c]=(0,i.createContextAndHook)("AuthProviderCtx");0&&(module.exports={AuthProviderCtx,useAuthProviderCtx});
2
2
  //# sourceMappingURL=AuthProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ctx/AuthProvider.tsx"],"sourcesContent":["import { \n assertContextExists,\n TernSecureAuthContext,\n useTernSecureAuthContext\n } from \"@tern-secure/shared/react\"\n\nimport type {\n TernSecureState,\n} from \"@tern-secure/types\"\n\n\nexport function useAuthProviderCtx(): TernSecureState {\n const ctx = useTernSecureAuthContext();\n assertContextExists(ctx, TernSecureAuthContext)\n return ctx.authState;\n}\n\n\n\n\n\n\n\n\n\n\n\n{/*import { createContextAndHook } from \"@tern-secure/shared/react\";\nimport type { \n TernSecureState, \n SignInResponse, \n} from '@tern-secure/types';\n\n\nexport interface AuthProviderCtxValue extends TernSecureState {\n //signOut?: () => Promise<void>\n setEmail?: (email: string) => void\n getAuthError?: () => SignInResponse\n redirectToLogin?: () => void\n}\n\nexport const [AuthProviderCtx, useAuthProviderCtx] = createContextAndHook<AuthProviderCtxValue>('AuthProviderCtx');*/}"],"mappings":"yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAIQ,qCAOD,SAASF,GAAsC,CAClD,MAAMG,KAAM,4BAAyB,EACrC,gCAAoBA,EAAK,uBAAqB,EACvCA,EAAI,SACf","names":["AuthProvider_exports","__export","useAuthProviderCtx","__toCommonJS","import_react","ctx"]}
1
+ {"version":3,"sources":["../../src/ctx/AuthProvider.tsx"],"sourcesContent":["import { createContextAndHook } from \"@tern-secure/shared/react\";\nimport type { TernSecureUser } from \"@tern-secure/types\";\n\nexport type AuthProviderCtxValue = {\n userId: string | null | undefined;\n token: string | null;\n email: string | null;\n user?: TernSecureUser | null;\n};\n\nexport const [AuthProviderCtx, useAuthProviderCtx] =\n createContextAndHook<AuthProviderCtxValue>(\"AuthProviderCtx\");\n"],"mappings":"yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,EAAA,uBAAAC,IAAA,eAAAC,EAAAJ,GAAA,IAAAK,EAAqC,qCAU9B,KAAM,CAACH,EAAiBC,CAAkB,KAC/C,wBAA2C,iBAAiB","names":["AuthProvider_exports","__export","AuthProviderCtx","useAuthProviderCtx","__toCommonJS","import_react"]}
@@ -1,2 +1,2 @@
1
- import{assertContextExists as t,TernSecureAuthContext as r,useTernSecureAuthContext as u}from"@tern-secure/shared/react";function o(){const e=u();return t(e,r),e.authState}export{o as useAuthProviderCtx};
1
+ import{createContextAndHook as e}from"@tern-secure/shared/react";const[t,u]=e("AuthProviderCtx");export{t as AuthProviderCtx,u as useAuthProviderCtx};
2
2
  //# sourceMappingURL=AuthProvider.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ctx/AuthProvider.tsx"],"sourcesContent":["import { \n assertContextExists,\n TernSecureAuthContext,\n useTernSecureAuthContext\n } from \"@tern-secure/shared/react\"\n\nimport type {\n TernSecureState,\n} from \"@tern-secure/types\"\n\n\nexport function useAuthProviderCtx(): TernSecureState {\n const ctx = useTernSecureAuthContext();\n assertContextExists(ctx, TernSecureAuthContext)\n return ctx.authState;\n}\n\n\n\n\n\n\n\n\n\n\n\n{/*import { createContextAndHook } from \"@tern-secure/shared/react\";\nimport type { \n TernSecureState, \n SignInResponse, \n} from '@tern-secure/types';\n\n\nexport interface AuthProviderCtxValue extends TernSecureState {\n //signOut?: () => Promise<void>\n setEmail?: (email: string) => void\n getAuthError?: () => SignInResponse\n redirectToLogin?: () => void\n}\n\nexport const [AuthProviderCtx, useAuthProviderCtx] = createContextAndHook<AuthProviderCtxValue>('AuthProviderCtx');*/}"],"mappings":"AAAA,OACI,uBAAAA,EACA,yBAAAC,EACA,4BAAAC,MACI,4BAOD,SAASC,GAAsC,CAClD,MAAMC,EAAMF,EAAyB,EACrC,OAAAF,EAAoBI,EAAKH,CAAqB,EACvCG,EAAI,SACf","names":["assertContextExists","TernSecureAuthContext","useTernSecureAuthContext","useAuthProviderCtx","ctx"]}
1
+ {"version":3,"sources":["../../src/ctx/AuthProvider.tsx"],"sourcesContent":["import { createContextAndHook } from \"@tern-secure/shared/react\";\nimport type { TernSecureUser } from \"@tern-secure/types\";\n\nexport type AuthProviderCtxValue = {\n userId: string | null | undefined;\n token: string | null;\n email: string | null;\n user?: TernSecureUser | null;\n};\n\nexport const [AuthProviderCtx, useAuthProviderCtx] =\n createContextAndHook<AuthProviderCtxValue>(\"AuthProviderCtx\");\n"],"mappings":"AAAA,OAAS,wBAAAA,MAA4B,4BAU9B,KAAM,CAACC,EAAiBC,CAAkB,EAC/CF,EAA2C,iBAAiB","names":["createContextAndHook","AuthProviderCtx","useAuthProviderCtx"]}
@@ -1,11 +1,11 @@
1
1
  import * as React from 'react';
2
2
  import * as _tern_secure_types from '@tern-secure/types';
3
- import { IsomorphicTernSecure } from '../lib/isomorphicTernSecure.mjs';
3
+ import { IsoTernSecureAuth } from '../lib/isoTernSecureAuth.mjs';
4
4
  import '../types.mjs';
5
5
 
6
- declare const IsomorphicTernSecureCtx: React.Context<{
7
- value: _tern_secure_types.TernSecureInstanceTree;
6
+ declare const IsoTernSecureAuthCtx: React.Context<{
7
+ value: _tern_secure_types.TernSecureAuth;
8
8
  } | undefined>;
9
- declare const useIsomorphicTernSecureCtx: () => IsomorphicTernSecure;
9
+ declare const useIsoTernSecureAuthCtx: () => IsoTernSecureAuth;
10
10
 
11
- export { IsomorphicTernSecureCtx, useIsomorphicTernSecureCtx };
11
+ export { IsoTernSecureAuthCtx, useIsoTernSecureAuthCtx };
@@ -1,11 +1,11 @@
1
1
  import * as React from 'react';
2
2
  import * as _tern_secure_types from '@tern-secure/types';
3
- import { IsomorphicTernSecure } from '../lib/isomorphicTernSecure.js';
3
+ import { IsoTernSecureAuth } from '../lib/isoTernSecureAuth.js';
4
4
  import '../types.js';
5
5
 
6
- declare const IsomorphicTernSecureCtx: React.Context<{
7
- value: _tern_secure_types.TernSecureInstanceTree;
6
+ declare const IsoTernSecureAuthCtx: React.Context<{
7
+ value: _tern_secure_types.TernSecureAuth;
8
8
  } | undefined>;
9
- declare const useIsomorphicTernSecureCtx: () => IsomorphicTernSecure;
9
+ declare const useIsoTernSecureAuthCtx: () => IsoTernSecureAuth;
10
10
 
11
- export { IsomorphicTernSecureCtx, useIsomorphicTernSecureCtx };
11
+ export { IsoTernSecureAuthCtx, useIsoTernSecureAuthCtx };
@@ -1,2 +1,2 @@
1
- "use strict";var t=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var i=(r,e)=>{for(var n in e)t(r,n,{get:e[n],enumerable:!0})},x=(r,e,n,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of m(e))!p.call(r,o)&&o!==n&&t(r,o,{get:()=>e[o],enumerable:!(s=u(e,o))||s.enumerable});return r};var I=r=>x(t({},"__esModule",{value:!0}),r);var a={};i(a,{IsomorphicTernSecureCtx:()=>S,useIsomorphicTernSecureCtx:()=>T});module.exports=I(a);var c=require("@tern-secure/shared/react");const S=c.TernSecureInstanceContext,T=c.useTernSecureInstanceContext;0&&(module.exports={IsomorphicTernSecureCtx,useIsomorphicTernSecureCtx});
1
+ "use strict";var n=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var h=Object.getOwnPropertyNames;var A=Object.prototype.hasOwnProperty;var S=(r,e)=>{for(var u in e)n(r,u,{get:e[u],enumerable:!0})},T=(r,e,u,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of h(e))!A.call(r,t)&&t!==u&&n(r,t,{get:()=>e[t],enumerable:!(s=c(e,t))||s.enumerable});return r};var x=r=>T(n({},"__esModule",{value:!0}),r);var m={};S(m,{IsoTernSecureAuthCtx:()=>p,useIsoTernSecureAuthCtx:()=>i});module.exports=x(m);var o=require("@tern-secure/shared/react");const p=o.TernSecureAuthCtx,i=o.useTernSecureAuthCtx;0&&(module.exports={IsoTernSecureAuthCtx,useIsoTernSecureAuthCtx});
2
2
  //# sourceMappingURL=IsomorphicTernSecureCtx.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ctx/IsomorphicTernSecureCtx.tsx"],"sourcesContent":["import {\n TernSecureInstanceContext,\n useTernSecureInstanceContext,\n} from '@tern-secure/shared/react';\n\nimport { IsomorphicTernSecure } from '../lib/isomorphicTernSecure';\n\nexport const IsomorphicTernSecureCtx = TernSecureInstanceContext;\nexport const useIsomorphicTernSecureCtx = useTernSecureInstanceContext as unknown as ()=> IsomorphicTernSecure;"],"mappings":"yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,6BAAAE,EAAA,+BAAAC,IAAA,eAAAC,EAAAJ,GAAA,IAAAK,EAGO,qCAIA,MAAMH,EAA0B,4BAC1BC,EAA6B","names":["IsomorphicTernSecureCtx_exports","__export","IsomorphicTernSecureCtx","useIsomorphicTernSecureCtx","__toCommonJS","import_react"]}
1
+ {"version":3,"sources":["../../src/ctx/IsomorphicTernSecureCtx.tsx"],"sourcesContent":["import {\n TernSecureAuthCtx,\n useTernSecureAuthCtx,\n} from '@tern-secure/shared/react';\n\nimport type { IsoTernSecureAuth } from '../lib/isoTernSecureAuth';\n\nexport const IsoTernSecureAuthCtx = TernSecureAuthCtx;\nexport const useIsoTernSecureAuthCtx = useTernSecureAuthCtx as unknown as ()=> IsoTernSecureAuth;"],"mappings":"yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,0BAAAE,EAAA,4BAAAC,IAAA,eAAAC,EAAAJ,GAAA,IAAAK,EAGO,qCAIA,MAAMH,EAAuB,oBACvBC,EAA0B","names":["IsomorphicTernSecureCtx_exports","__export","IsoTernSecureAuthCtx","useIsoTernSecureAuthCtx","__toCommonJS","import_react"]}
@@ -1,2 +1,2 @@
1
- import{TernSecureInstanceContext as e,useTernSecureInstanceContext as r}from"@tern-secure/shared/react";const t=e,s=r;export{t as IsomorphicTernSecureCtx,s as useIsomorphicTernSecureCtx};
1
+ import{TernSecureAuthCtx as e,useTernSecureAuthCtx as r}from"@tern-secure/shared/react";const u=e,o=r;export{u as IsoTernSecureAuthCtx,o as useIsoTernSecureAuthCtx};
2
2
  //# sourceMappingURL=IsomorphicTernSecureCtx.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ctx/IsomorphicTernSecureCtx.tsx"],"sourcesContent":["import {\n TernSecureInstanceContext,\n useTernSecureInstanceContext,\n} from '@tern-secure/shared/react';\n\nimport { IsomorphicTernSecure } from '../lib/isomorphicTernSecure';\n\nexport const IsomorphicTernSecureCtx = TernSecureInstanceContext;\nexport const useIsomorphicTernSecureCtx = useTernSecureInstanceContext as unknown as ()=> IsomorphicTernSecure;"],"mappings":"AAAA,OACI,6BAAAA,EACA,gCAAAC,MACG,4BAIA,MAAMC,EAA0BF,EAC1BG,EAA6BF","names":["TernSecureInstanceContext","useTernSecureInstanceContext","IsomorphicTernSecureCtx","useIsomorphicTernSecureCtx"]}
1
+ {"version":3,"sources":["../../src/ctx/IsomorphicTernSecureCtx.tsx"],"sourcesContent":["import {\n TernSecureAuthCtx,\n useTernSecureAuthCtx,\n} from '@tern-secure/shared/react';\n\nimport type { IsoTernSecureAuth } from '../lib/isoTernSecureAuth';\n\nexport const IsoTernSecureAuthCtx = TernSecureAuthCtx;\nexport const useIsoTernSecureAuthCtx = useTernSecureAuthCtx as unknown as ()=> IsoTernSecureAuth;"],"mappings":"AAAA,OACI,qBAAAA,EACA,wBAAAC,MACG,4BAIA,MAAMC,EAAuBF,EACvBG,EAA0BF","names":["TernSecureAuthCtx","useTernSecureAuthCtx","IsoTernSecureAuthCtx","useIsoTernSecureAuthCtx"]}
@@ -0,0 +1,6 @@
1
+ import { SignInResource, SignUpResource } from '@tern-secure/types';
2
+
3
+ declare function useAuthSignInCtx(): SignInResource | undefined | null;
4
+ declare function useAuthSignUpCtx(): SignUpResource | undefined | null;
5
+
6
+ export { useAuthSignInCtx, useAuthSignUpCtx };
@@ -0,0 +1,6 @@
1
+ import { SignInResource, SignUpResource } from '@tern-secure/types';
2
+
3
+ declare function useAuthSignInCtx(): SignInResource | undefined | null;
4
+ declare function useAuthSignUpCtx(): SignUpResource | undefined | null;
5
+
6
+ export { useAuthSignInCtx, useAuthSignUpCtx };
@@ -0,0 +1,2 @@
1
+ "use strict";var s=Object.defineProperty;var o=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var x=(e,n)=>{for(var r in n)s(e,r,{get:n[r],enumerable:!0})},g=(e,n,r,i)=>{if(n&&typeof n=="object"||typeof n=="function")for(let u of c(n))!p.call(e,u)&&u!==r&&s(e,u,{get:()=>n[u],enumerable:!(i=o(n,u))||i.enumerable});return e};var S=e=>g(s({},"__esModule",{value:!0}),e);var d={};x(d,{useAuthSignInCtx:()=>f,useAuthSignUpCtx:()=>C});module.exports=S(d);var t=require("@tern-secure/shared/react");function f(){const e=(0,t.useTernSecureAuthCtx)();return(0,t.assertContextExists)(e,t.TernSecureAuthCtx),e.signIn}function C(){const e=(0,t.useTernSecureAuthCtx)();return(0,t.assertContextExists)(e,t.TernSecureAuthCtx),e.signUp}0&&(module.exports={useAuthSignInCtx,useAuthSignUpCtx});
2
+ //# sourceMappingURL=TernSecureAuthResourcesCtx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/ctx/TernSecureAuthResourcesCtx.tsx"],"sourcesContent":["import { \n assertContextExists,\n TernSecureAuthCtx,\n useTernSecureAuthCtx\n } from \"@tern-secure/shared/react\"\nimport type {\n SignInResource,\n SignUpResource,\n} from \"@tern-secure/types\"\n\n\nexport function useAuthSignInCtx(): SignInResource | undefined | null {\n const ctx = useTernSecureAuthCtx();\n assertContextExists(ctx, TernSecureAuthCtx)\n return ctx.signIn;\n}\n\nexport function useAuthSignUpCtx(): SignUpResource | undefined | null {\n const ctx = useTernSecureAuthCtx();\n assertContextExists(ctx, TernSecureAuthCtx)\n return ctx.signUp;\n}\n\n"],"mappings":"yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,sBAAAE,EAAA,qBAAAC,IAAA,eAAAC,EAAAJ,GAAA,IAAAK,EAIQ,qCAOD,SAASH,GAAsD,CAClE,MAAMI,KAAM,wBAAqB,EACjC,gCAAoBA,EAAK,mBAAiB,EACnCA,EAAI,MACf,CAEO,SAASH,GAAsD,CAClE,MAAMG,KAAM,wBAAqB,EACjC,gCAAoBA,EAAK,mBAAiB,EACnCA,EAAI,MACf","names":["TernSecureAuthResourcesCtx_exports","__export","useAuthSignInCtx","useAuthSignUpCtx","__toCommonJS","import_react","ctx"]}
@@ -0,0 +1,2 @@
1
+ import{assertContextExists as n,TernSecureAuthCtx as t,useTernSecureAuthCtx as u}from"@tern-secure/shared/react";function s(){const e=u();return n(e,t),e.signIn}function i(){const e=u();return n(e,t),e.signUp}export{s as useAuthSignInCtx,i as useAuthSignUpCtx};
2
+ //# sourceMappingURL=TernSecureAuthResourcesCtx.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/ctx/TernSecureAuthResourcesCtx.tsx"],"sourcesContent":["import { \n assertContextExists,\n TernSecureAuthCtx,\n useTernSecureAuthCtx\n } from \"@tern-secure/shared/react\"\nimport type {\n SignInResource,\n SignUpResource,\n} from \"@tern-secure/types\"\n\n\nexport function useAuthSignInCtx(): SignInResource | undefined | null {\n const ctx = useTernSecureAuthCtx();\n assertContextExists(ctx, TernSecureAuthCtx)\n return ctx.signIn;\n}\n\nexport function useAuthSignUpCtx(): SignUpResource | undefined | null {\n const ctx = useTernSecureAuthCtx();\n assertContextExists(ctx, TernSecureAuthCtx)\n return ctx.signUp;\n}\n\n"],"mappings":"AAAA,OACI,uBAAAA,EACA,qBAAAC,EACA,wBAAAC,MACI,4BAOD,SAASC,GAAsD,CAClE,MAAMC,EAAMF,EAAqB,EACjC,OAAAF,EAAoBI,EAAKH,CAAiB,EACnCG,EAAI,MACf,CAEO,SAASC,GAAsD,CAClE,MAAMD,EAAMF,EAAqB,EACjC,OAAAF,EAAoBI,EAAKH,CAAiB,EACnCG,EAAI,MACf","names":["assertContextExists","TernSecureAuthCtx","useTernSecureAuthCtx","useAuthSignInCtx","ctx","useAuthSignUpCtx"]}
@@ -1,16 +1,14 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { InitialState, TernSecureResources } from '@tern-secure/types';
2
3
  import React__default from 'react';
3
- import { IsomorphicTernSecureOptions } from '../types.mjs';
4
- import { TernSecureState } from '@tern-secure/types';
4
+ import { IsoTernSecureAuthOptions } from '../types.mjs';
5
5
 
6
6
  type TernSecureCtxProviderProps = {
7
7
  children: React__default.ReactNode;
8
- instanceOptions: IsomorphicTernSecureOptions;
9
- initialState: TernSecureState | undefined;
10
- };
11
- type AuthStateProps = {
12
- authState: TernSecureState;
8
+ instanceOptions: IsoTernSecureAuthOptions;
9
+ initialState: InitialState | undefined;
13
10
  };
11
+ type TernSecureCtxProviderState = TernSecureResources;
14
12
  declare function TernSecureCtxProvider(props: TernSecureCtxProviderProps): react_jsx_runtime.JSX.Element;
15
13
 
16
- export { type AuthStateProps, TernSecureCtxProvider };
14
+ export { TernSecureCtxProvider, type TernSecureCtxProviderState };
@@ -1,16 +1,14 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { InitialState, TernSecureResources } from '@tern-secure/types';
2
3
  import React__default from 'react';
3
- import { IsomorphicTernSecureOptions } from '../types.js';
4
- import { TernSecureState } from '@tern-secure/types';
4
+ import { IsoTernSecureAuthOptions } from '../types.js';
5
5
 
6
6
  type TernSecureCtxProviderProps = {
7
7
  children: React__default.ReactNode;
8
- instanceOptions: IsomorphicTernSecureOptions;
9
- initialState: TernSecureState | undefined;
10
- };
11
- type AuthStateProps = {
12
- authState: TernSecureState;
8
+ instanceOptions: IsoTernSecureAuthOptions;
9
+ initialState: InitialState | undefined;
13
10
  };
11
+ type TernSecureCtxProviderState = TernSecureResources;
14
12
  declare function TernSecureCtxProvider(props: TernSecureCtxProviderProps): react_jsx_runtime.JSX.Element;
15
13
 
16
- export { type AuthStateProps, TernSecureCtxProvider };
14
+ export { TernSecureCtxProvider, type TernSecureCtxProviderState };
@@ -1,2 +1,2 @@
1
- "use strict";"use client";var p=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var A=Object.prototype.hasOwnProperty;var C=(e,r)=>{for(var i in r)p(e,i,{get:r[i],enumerable:!0})},P=(e,r,i,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of f(r))!A.call(e,o)&&o!==i&&p(e,o,{get:()=>r[o],enumerable:!(n=v(r,o))||n.enumerable});return e};var I=e=>P(p({},"__esModule",{value:!0}),e);var O={};C(O,{TernSecureCtxProvider:()=>x});module.exports=I(O);var S=require("react/jsx-runtime"),t=require("react"),h=require("./IsomorphicTernSecureCtx"),d=require("../lib/isomorphicTernSecure"),l=require("@tern-secure/types"),m=require("@tern-secure/shared/react");function x(e){const{children:r,initialState:i,instanceOptions:n}=e,o=e.instanceOptions.requiresVerification,{isomorphicTernSecure:c,instanceStatus:s}=E(n),a=(0,t.useMemo)(()=>({value:c,instanceStatus:s}),[c,s]),u=(0,t.useMemo)(()=>({value:{authProvider:c.ternAuth,authState:c.ternAuth?.internalAuthState||l.DEFAULT_TERN_SECURE_STATE}}),[c.ternAuth,c.ternAuth?.internalAuthState]),T=(0,t.useMemo)(()=>(0,S.jsx)(h.IsomorphicTernSecureCtx.Provider,{value:a}),[a,u]);return s==="loading"||!c.ternAuth?T:(0,S.jsx)(h.IsomorphicTernSecureCtx.Provider,{value:a,children:(0,S.jsx)(m.TernSecureAuthContext.Provider,{value:u,children:r})})}const E=e=>{const[r,i]=(0,t.useState)(null),n=(0,t.useMemo)(()=>d.IsomorphicTernSecure.getOrCreateInstance(e),[]),[o,c]=(0,t.useState)(n.status);return(0,t.useEffect)(()=>{const s=n.events.onStatusChanged(u=>{c(u),console.log("[useLoadIsomorphicTernSecure] Status changed:",u)}),a=n.events.onError(u=>{i(u instanceof Error?u:new Error("Unknown error"))});return()=>{s?.(),a?.()}},[o,r]),(0,t.useEffect)(()=>{n.initialize({appearance:e.defaultAppearance})},[e.mode,e.defaultAppearance]),(0,t.useEffect)(()=>()=>{d.IsomorphicTernSecure.clearInstance()},[]),{isomorphicTernSecure:n,error:r,instanceStatus:o}};0&&(module.exports={TernSecureCtxProvider});
1
+ "use strict";"use client";var y=Object.create;var i=Object.defineProperty;var O=Object.getOwnPropertyDescriptor;var R=Object.getOwnPropertyNames;var E=Object.getPrototypeOf,g=Object.prototype.hasOwnProperty;var k=(t,e)=>{for(var n in e)i(t,n,{get:e[n],enumerable:!0})},l=(t,e,n,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let u of R(e))!g.call(t,u)&&u!==n&&i(t,u,{get:()=>e[u],enumerable:!(s=O(e,u))||s.enumerable});return t};var w=(t,e,n)=>(n=t!=null?y(E(t)):{},l(e||!t||!t.__esModule?i(n,"default",{value:t,enumerable:!0}):n,t)),L=t=>l(i({},"__esModule",{value:!0}),t);var N={};k(N,{TernSecureCtxProvider:()=>z});module.exports=L(N);var a=require("react/jsx-runtime"),T=require("@tern-secure/shared/derivedAuthState"),r=w(require("react")),c=require("../lib/isoTernSecureAuth"),m=require("./AuthProvider"),A=require("./IsomorphicTernSecureCtx");function z(t){const{children:e,initialState:n,instanceOptions:s}=t,{isoTernSecureAuth:u,instanceStatus:o}=M(s),[I,f]=(0,r.useState)({user:u.user});r.default.useEffect(()=>u.addListener(v=>f({...v})),[]);const P=(0,T.deriveAuthState)(I,n),{token:S,email:d,user:p,userId:h}=P,x=(0,r.useMemo)(()=>({value:{userId:h,token:S,email:d,user:p}}),[h,S,d,p]),C=(0,r.useMemo)(()=>({value:u,instanceStatus:o}),[u,o]);return(0,a.jsx)(A.IsoTernSecureAuthCtx.Provider,{value:C,children:(0,a.jsx)(m.AuthProviderCtx.Provider,{value:x,children:e})})}const M=t=>{const e=(0,r.useMemo)(()=>c.IsoTernSecureAuth.getOrCreateInstance(t),[]),[n,s]=(0,r.useState)(e.status);return(0,r.useEffect)(()=>(e.on("status",s),console.warn("[useInitTernSecureAuth] Status changed:",n),()=>e.off("status",s)),[e]),(0,r.useEffect)(()=>{const u=e.addListener(o=>{console.warn("[useInitTernSecureAuth] Event received:",o)});return()=>u()},[e]),(0,r.useEffect)(()=>{e.initialize()},[e]),(0,r.useEffect)(()=>()=>{c.IsoTernSecureAuth.clearInstance()},[]),{isoTernSecureAuth:e,instanceStatus:n}};0&&(module.exports={TernSecureCtxProvider});
2
2
  //# sourceMappingURL=TernSecureCtxProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ctx/TernSecureCtxProvider.tsx"],"sourcesContent":["'use client'\n\nimport React, { useEffect, useState, useMemo } from \"react\"\nimport { IsomorphicTernSecureCtx } from \"./IsomorphicTernSecureCtx\"\nimport { IsomorphicTernSecure } from \"../lib/isomorphicTernSecure\"\nimport type { \n IsomorphicTernSecureOptions,\n} from '../types'\nimport {\n DEFAULT_TERN_SECURE_STATE,\n type TernSecureState\n} from '@tern-secure/types'\nimport { \n TernSecureAuthContext,\n} from '@tern-secure/shared/react'\n\n\ntype TernSecureCtxProviderProps = {\n children: React.ReactNode\n instanceOptions: IsomorphicTernSecureOptions\n initialState: TernSecureState | undefined\n}\n\nexport type AuthStateProps = {\n authState: TernSecureState\n}\n\n\n\nexport function TernSecureCtxProvider(props: TernSecureCtxProviderProps) {\n const { \n children,\n initialState, \n instanceOptions\n } = props\n\n const rv = props.instanceOptions.requiresVerification\n\n const { isomorphicTernSecure: instance, instanceStatus} = useLoadIsomorphicTernSecure(instanceOptions)\n\n\n const ternsecureCtx = useMemo(() => ({\n value: instance,\n instanceStatus\n }), [instance, instanceStatus]);\n\n\n const ternAuthCtx = useMemo(() => {\n const value = {\n authProvider: instance.ternAuth,\n authState: instance.ternAuth?.internalAuthState || DEFAULT_TERN_SECURE_STATE,\n }\n\n return { value}\n }, [instance.ternAuth, instance.ternAuth?.internalAuthState]);\n \n const loadingComponent = useMemo(() => (\n <IsomorphicTernSecureCtx.Provider value={ternsecureCtx}>\n </IsomorphicTernSecureCtx.Provider>\n ), [ternsecureCtx, ternAuthCtx])\n\n\n if (instanceStatus === 'loading' || !instance.ternAuth) {\n return loadingComponent;\n }\n\n\n return (\n <IsomorphicTernSecureCtx.Provider value={ternsecureCtx}>\n <TernSecureAuthContext.Provider value={ternAuthCtx}>\n {children}\n </TernSecureAuthContext.Provider>\n </IsomorphicTernSecureCtx.Provider>\n )\n}\n\nconst useLoadIsomorphicTernSecure = (options: IsomorphicTernSecureOptions) => {\n const [error, setError] = useState<Error | null>(null);\n\n const isomorphicTernSecure = useMemo(() => {\n return IsomorphicTernSecure.getOrCreateInstance(options);\n }, []);\n\n const [instanceStatus, setInstanceStatus] = useState(isomorphicTernSecure.status)\n \n useEffect(() => {\n const unsubscribeStatus = isomorphicTernSecure.events.onStatusChanged((newStatus) => {\n setInstanceStatus(newStatus);\n console.log('[useLoadIsomorphicTernSecure] Status changed:', newStatus);\n });\n \n const unsubscribeError = isomorphicTernSecure.events.onError((errorEvent) => {\n setError(errorEvent instanceof Error ? errorEvent : new Error('Unknown error'));\n });\n\n return () => {\n unsubscribeStatus?.();\n unsubscribeError?.();\n };\n }, [instanceStatus, error]);\n\n useEffect(() => {\n void isomorphicTernSecure.initialize({ //check awai\n appearance: options.defaultAppearance\n })\n }, [options.mode, options.defaultAppearance]);\n\n useEffect(() => {\n return () => {\n IsomorphicTernSecure.clearInstance();\n };\n }, []);\n\n return {\n isomorphicTernSecure,\n error,\n instanceStatus\n };\n};"],"mappings":"sbAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,2BAAAE,IAAA,eAAAC,EAAAH,GAyDI,IAAAI,EAAA,6BAvDJC,EAAoD,iBACpDC,EAAwC,qCACxCC,EAAqC,uCAIrCC,EAGO,8BACPH,EAEO,qCAeA,SAASH,EAAsBO,EAAmC,CACvE,KAAM,CACJ,SAAAC,EACA,aAAAC,EACA,gBAAAC,CACF,EAAIH,EAEEI,EAAKJ,EAAM,gBAAgB,qBAE3B,CAAE,qBAAsBK,EAAU,eAAAC,CAAc,EAAIC,EAA4BJ,CAAe,EAG/FK,KAAgB,WAAQ,KAAO,CACnC,MAAOH,EACP,eAAAC,CACF,GAAI,CAACD,EAAUC,CAAc,CAAC,EAGxBG,KAAc,WAAQ,KAMnB,CAAE,MALK,CACZ,aAAcJ,EAAS,SACvB,UAAWA,EAAS,UAAU,mBAAqB,2BACrD,CAEc,GACb,CAACA,EAAS,SAAUA,EAAS,UAAU,iBAAiB,CAAC,EAEtDK,KAAmB,WAAQ,OAC/B,OAAC,0BAAwB,SAAxB,CAAiC,MAAOF,EACzC,EACC,CAACA,EAAeC,CAAW,CAAC,EAG/B,OAAIH,IAAmB,WAAa,CAACD,EAAS,SACrCK,KAKP,OAAC,0BAAwB,SAAxB,CAAiC,MAAOF,EACvC,mBAAC,wBAAsB,SAAtB,CAA+B,MAAOC,EAC9B,SAAAR,EACT,EACF,CAEJ,CAEA,MAAMM,EAA+BI,GAAyC,CAC5E,KAAM,CAACC,EAAOC,CAAQ,KAAI,YAAuB,IAAI,EAE/CC,KAAuB,WAAQ,IAC5B,uBAAqB,oBAAoBH,CAAO,EACtD,CAAC,CAAC,EAEC,CAACL,EAAgBS,CAAiB,KAAI,YAASD,EAAqB,MAAM,EAEhF,sBAAU,IAAM,CACd,MAAME,EAAoBF,EAAqB,OAAO,gBAAiBG,GAAc,CACnFF,EAAkBE,CAAS,EAC3B,QAAQ,IAAI,gDAAiDA,CAAS,CACxE,CAAC,EAEKC,EAAmBJ,EAAqB,OAAO,QAASK,GAAe,CAC3EN,EAASM,aAAsB,MAAQA,EAAa,IAAI,MAAM,eAAe,CAAC,CAChF,CAAC,EAED,MAAO,IAAM,CACXH,IAAoB,EACpBE,IAAmB,CACrB,CACF,EAAG,CAACZ,EAAgBM,CAAK,CAAC,KAE1B,aAAU,IAAM,CACTE,EAAqB,WAAW,CACnC,WAAYH,EAAQ,iBACtB,CAAC,CACH,EAAG,CAACA,EAAQ,KAAMA,EAAQ,iBAAiB,CAAC,KAE5C,aAAU,IACD,IAAM,CACX,uBAAqB,cAAc,CACrC,EACC,CAAC,CAAC,EAEE,CACL,qBAAAG,EACA,MAAAF,EACA,eAAAN,CACF,CACF","names":["TernSecureCtxProvider_exports","__export","TernSecureCtxProvider","__toCommonJS","import_jsx_runtime","import_react","import_IsomorphicTernSecureCtx","import_isomorphicTernSecure","import_types","props","children","initialState","instanceOptions","rv","instance","instanceStatus","useLoadIsomorphicTernSecure","ternsecureCtx","ternAuthCtx","loadingComponent","options","error","setError","isomorphicTernSecure","setInstanceStatus","unsubscribeStatus","newStatus","unsubscribeError","errorEvent"]}
1
+ {"version":3,"sources":["../../src/ctx/TernSecureCtxProvider.tsx"],"sourcesContent":["'use client';\n\nimport { deriveAuthState } from '@tern-secure/shared/derivedAuthState';\nimport { type InitialState, type TernSecureResources } from '@tern-secure/types';\nimport React, { useEffect, useMemo,useState } from 'react';\n\nimport { IsoTernSecureAuth } from '../lib/isoTernSecureAuth';\nimport type { IsoTernSecureAuthOptions } from '../types';\nimport { AuthProviderCtx } from './AuthProvider';\nimport { IsoTernSecureAuthCtx } from './IsomorphicTernSecureCtx';\n\ntype TernSecureCtxProviderProps = {\n children: React.ReactNode;\n instanceOptions: IsoTernSecureAuthOptions;\n initialState: InitialState | undefined;\n};\n\nexport type TernSecureCtxProviderState = TernSecureResources;\n\nexport function TernSecureCtxProvider(props: TernSecureCtxProviderProps) {\n const { children, initialState, instanceOptions } = props;\n\n const { isoTernSecureAuth: instance, instanceStatus } = useInitTernSecureAuth(instanceOptions);\n\n const [authState, setAuthState] = useState<TernSecureCtxProviderState>({\n user: instance.user,\n });\n\n React.useEffect(() => {\n return instance.addListener(e => setAuthState({ ...e }));\n }, []);\n\n const derivedState = deriveAuthState(authState, initialState);\n const { token, email, user, userId } = derivedState;\n\n const authCtx = useMemo(() => {\n const value = {\n userId: userId,\n token: token,\n email: email,\n user: user,\n };\n return { value };\n }, [userId, token, email, user]);\n\n const ternAuthCtx = useMemo(\n () => ({\n value: instance,\n instanceStatus,\n }),\n [instance, instanceStatus],\n );\n\n return (\n <IsoTernSecureAuthCtx.Provider value={ternAuthCtx}>\n <AuthProviderCtx.Provider value={authCtx}>{children}</AuthProviderCtx.Provider>\n </IsoTernSecureAuthCtx.Provider>\n );\n}\n\nconst useInitTernSecureAuth = (options: IsoTernSecureAuthOptions) => {\n const isoTernSecureAuth = useMemo(() => {\n return IsoTernSecureAuth.getOrCreateInstance(options);\n }, []);\n\n const [instanceStatus, setInstanceStatus] = useState(isoTernSecureAuth.status);\n\n useEffect(() => {\n void isoTernSecureAuth.on('status', setInstanceStatus);\n console.warn('[useInitTernSecureAuth] Status changed:', instanceStatus);\n\n return () => isoTernSecureAuth.off('status', setInstanceStatus);\n }, [isoTernSecureAuth]);\n\n useEffect(() => {\n const un = isoTernSecureAuth.addListener(event => {\n console.warn('[useInitTernSecureAuth] Event received:', event);\n });\n return () => un();\n }, [isoTernSecureAuth]);\n\n useEffect(() => {\n isoTernSecureAuth.initialize();\n }, [isoTernSecureAuth]);\n\n useEffect(() => {\n return () => {\n IsoTernSecureAuth.clearInstance();\n };\n }, []);\n\n return {\n isoTernSecureAuth,\n instanceStatus,\n };\n};\n"],"mappings":"ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,2BAAAE,IAAA,eAAAC,EAAAH,GAuDM,IAAAI,EAAA,6BArDNC,EAAgC,gDAEhCC,EAAmD,oBAEnDC,EAAkC,oCAElCC,EAAgC,0BAChCC,EAAqC,qCAU9B,SAASP,EAAsBQ,EAAmC,CACvE,KAAM,CAAE,SAAAC,EAAU,aAAAC,EAAc,gBAAAC,CAAgB,EAAIH,EAE9C,CAAE,kBAAmBI,EAAU,eAAAC,CAAe,EAAIC,EAAsBH,CAAe,EAEvF,CAACI,EAAWC,CAAY,KAAI,YAAqC,CACrE,KAAMJ,EAAS,IACjB,CAAC,EAED,EAAAK,QAAM,UAAU,IACPL,EAAS,YAAYM,GAAKF,EAAa,CAAE,GAAGE,CAAE,CAAC,CAAC,EACtD,CAAC,CAAC,EAEL,MAAMC,KAAe,mBAAgBJ,EAAWL,CAAY,EACtD,CAAE,MAAAU,EAAO,MAAAC,EAAO,KAAAC,EAAM,OAAAC,CAAO,EAAIJ,EAEjCK,KAAU,WAAQ,KAOf,CAAE,MANK,CACZ,OAAQD,EACR,MAAOH,EACP,MAAOC,EACP,KAAMC,CACR,CACe,GACd,CAACC,EAAQH,EAAOC,EAAOC,CAAI,CAAC,EAEzBG,KAAc,WAClB,KAAO,CACL,MAAOb,EACP,eAAAC,CACF,GACA,CAACD,EAAUC,CAAc,CAC3B,EAEA,SACE,OAAC,uBAAqB,SAArB,CAA8B,MAAOY,EACpC,mBAAC,kBAAgB,SAAhB,CAAyB,MAAOD,EAAU,SAAAf,EAAS,EACtD,CAEJ,CAEA,MAAMK,EAAyBY,GAAsC,CACnE,MAAMC,KAAoB,WAAQ,IACzB,oBAAkB,oBAAoBD,CAAO,EACnD,CAAC,CAAC,EAEC,CAACb,EAAgBe,CAAiB,KAAI,YAASD,EAAkB,MAAM,EAE7E,sBAAU,KACHA,EAAkB,GAAG,SAAUC,CAAiB,EACrD,QAAQ,KAAK,0CAA2Cf,CAAc,EAE/D,IAAMc,EAAkB,IAAI,SAAUC,CAAiB,GAC7D,CAACD,CAAiB,CAAC,KAEtB,aAAU,IAAM,CACd,MAAME,EAAKF,EAAkB,YAAYG,GAAS,CAChD,QAAQ,KAAK,0CAA2CA,CAAK,CAC/D,CAAC,EACD,MAAO,IAAMD,EAAG,CAClB,EAAG,CAACF,CAAiB,CAAC,KAEtB,aAAU,IAAM,CACdA,EAAkB,WAAW,CAC/B,EAAG,CAACA,CAAiB,CAAC,KAEtB,aAAU,IACD,IAAM,CACX,oBAAkB,cAAc,CAClC,EACC,CAAC,CAAC,EAEE,CACL,kBAAAA,EACA,eAAAd,CACF,CACF","names":["TernSecureCtxProvider_exports","__export","TernSecureCtxProvider","__toCommonJS","import_jsx_runtime","import_derivedAuthState","import_react","import_isoTernSecureAuth","import_AuthProvider","import_IsomorphicTernSecureCtx","props","children","initialState","instanceOptions","instance","instanceStatus","useInitTernSecureAuth","authState","setAuthState","React","e","derivedState","token","email","user","userId","authCtx","ternAuthCtx","options","isoTernSecureAuth","setInstanceStatus","un","event"]}
@@ -1,2 +1,2 @@
1
- "use client";import{jsx as S}from"react/jsx-runtime";import{useEffect as a,useState as h,useMemo as i}from"react";import{IsomorphicTernSecureCtx as d}from"./IsomorphicTernSecureCtx";import{IsomorphicTernSecure as l}from"../lib/isomorphicTernSecure";import{DEFAULT_TERN_SECURE_STATE as T}from"@tern-secure/types";import{TernSecureAuthContext as v}from"@tern-secure/shared/react";function g(t){const{children:u,initialState:p,instanceOptions:n}=t,s=t.instanceOptions.requiresVerification,{isomorphicTernSecure:e,instanceStatus:o}=f(n),c=i(()=>({value:e,instanceStatus:o}),[e,o]),r=i(()=>({value:{authProvider:e.ternAuth,authState:e.ternAuth?.internalAuthState||T}}),[e.ternAuth,e.ternAuth?.internalAuthState]),m=i(()=>S(d.Provider,{value:c}),[c,r]);return o==="loading"||!e.ternAuth?m:S(d.Provider,{value:c,children:S(v.Provider,{value:r,children:u})})}const f=t=>{const[u,p]=h(null),n=i(()=>l.getOrCreateInstance(t),[]),[s,e]=h(n.status);return a(()=>{const o=n.events.onStatusChanged(r=>{e(r),console.log("[useLoadIsomorphicTernSecure] Status changed:",r)}),c=n.events.onError(r=>{p(r instanceof Error?r:new Error("Unknown error"))});return()=>{o?.(),c?.()}},[s,u]),a(()=>{n.initialize({appearance:t.defaultAppearance})},[t.mode,t.defaultAppearance]),a(()=>()=>{l.clearInstance()},[]),{isomorphicTernSecure:n,error:u,instanceStatus:s}};export{g as TernSecureCtxProvider};
1
+ "use client";import{jsx as l}from"react/jsx-runtime";import{deriveAuthState as P}from"@tern-secure/shared/derivedAuthState";import x,{useEffect as s,useMemo as i,useState as h}from"react";import{IsoTernSecureAuth as v}from"../lib/isoTernSecureAuth";import{AuthProviderCtx as C}from"./AuthProvider";import{IsoTernSecureAuthCtx as y}from"./IsomorphicTernSecureCtx";function z(o){const{children:e,initialState:r,instanceOptions:n}=o,{isoTernSecureAuth:t,instanceStatus:u}=O(n),[T,m]=h({user:t.user});x.useEffect(()=>t.addListener(p=>m({...p})),[]);const A=P(T,r),{token:c,email:a,user:S,userId:d}=A,I=i(()=>({value:{userId:d,token:c,email:a,user:S}}),[d,c,a,S]),f=i(()=>({value:t,instanceStatus:u}),[t,u]);return l(y.Provider,{value:f,children:l(C.Provider,{value:I,children:e})})}const O=o=>{const e=i(()=>v.getOrCreateInstance(o),[]),[r,n]=h(e.status);return s(()=>(e.on("status",n),console.warn("[useInitTernSecureAuth] Status changed:",r),()=>e.off("status",n)),[e]),s(()=>{const t=e.addListener(u=>{console.warn("[useInitTernSecureAuth] Event received:",u)});return()=>t()},[e]),s(()=>{e.initialize()},[e]),s(()=>()=>{v.clearInstance()},[]),{isoTernSecureAuth:e,instanceStatus:r}};export{z as TernSecureCtxProvider};
2
2
  //# sourceMappingURL=TernSecureCtxProvider.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ctx/TernSecureCtxProvider.tsx"],"sourcesContent":["'use client'\n\nimport React, { useEffect, useState, useMemo } from \"react\"\nimport { IsomorphicTernSecureCtx } from \"./IsomorphicTernSecureCtx\"\nimport { IsomorphicTernSecure } from \"../lib/isomorphicTernSecure\"\nimport type { \n IsomorphicTernSecureOptions,\n} from '../types'\nimport {\n DEFAULT_TERN_SECURE_STATE,\n type TernSecureState\n} from '@tern-secure/types'\nimport { \n TernSecureAuthContext,\n} from '@tern-secure/shared/react'\n\n\ntype TernSecureCtxProviderProps = {\n children: React.ReactNode\n instanceOptions: IsomorphicTernSecureOptions\n initialState: TernSecureState | undefined\n}\n\nexport type AuthStateProps = {\n authState: TernSecureState\n}\n\n\n\nexport function TernSecureCtxProvider(props: TernSecureCtxProviderProps) {\n const { \n children,\n initialState, \n instanceOptions\n } = props\n\n const rv = props.instanceOptions.requiresVerification\n\n const { isomorphicTernSecure: instance, instanceStatus} = useLoadIsomorphicTernSecure(instanceOptions)\n\n\n const ternsecureCtx = useMemo(() => ({\n value: instance,\n instanceStatus\n }), [instance, instanceStatus]);\n\n\n const ternAuthCtx = useMemo(() => {\n const value = {\n authProvider: instance.ternAuth,\n authState: instance.ternAuth?.internalAuthState || DEFAULT_TERN_SECURE_STATE,\n }\n\n return { value}\n }, [instance.ternAuth, instance.ternAuth?.internalAuthState]);\n \n const loadingComponent = useMemo(() => (\n <IsomorphicTernSecureCtx.Provider value={ternsecureCtx}>\n </IsomorphicTernSecureCtx.Provider>\n ), [ternsecureCtx, ternAuthCtx])\n\n\n if (instanceStatus === 'loading' || !instance.ternAuth) {\n return loadingComponent;\n }\n\n\n return (\n <IsomorphicTernSecureCtx.Provider value={ternsecureCtx}>\n <TernSecureAuthContext.Provider value={ternAuthCtx}>\n {children}\n </TernSecureAuthContext.Provider>\n </IsomorphicTernSecureCtx.Provider>\n )\n}\n\nconst useLoadIsomorphicTernSecure = (options: IsomorphicTernSecureOptions) => {\n const [error, setError] = useState<Error | null>(null);\n\n const isomorphicTernSecure = useMemo(() => {\n return IsomorphicTernSecure.getOrCreateInstance(options);\n }, []);\n\n const [instanceStatus, setInstanceStatus] = useState(isomorphicTernSecure.status)\n \n useEffect(() => {\n const unsubscribeStatus = isomorphicTernSecure.events.onStatusChanged((newStatus) => {\n setInstanceStatus(newStatus);\n console.log('[useLoadIsomorphicTernSecure] Status changed:', newStatus);\n });\n \n const unsubscribeError = isomorphicTernSecure.events.onError((errorEvent) => {\n setError(errorEvent instanceof Error ? errorEvent : new Error('Unknown error'));\n });\n\n return () => {\n unsubscribeStatus?.();\n unsubscribeError?.();\n };\n }, [instanceStatus, error]);\n\n useEffect(() => {\n void isomorphicTernSecure.initialize({ //check awai\n appearance: options.defaultAppearance\n })\n }, [options.mode, options.defaultAppearance]);\n\n useEffect(() => {\n return () => {\n IsomorphicTernSecure.clearInstance();\n };\n }, []);\n\n return {\n isomorphicTernSecure,\n error,\n instanceStatus\n };\n};"],"mappings":"aAyDI,cAAAA,MAAA,oBAvDJ,OAAgB,aAAAC,EAAW,YAAAC,EAAU,WAAAC,MAAe,QACpD,OAAS,2BAAAC,MAA+B,4BACxC,OAAS,wBAAAC,MAA4B,8BAIrC,OACE,6BAAAC,MAEK,qBACP,OACE,yBAAAC,MACK,4BAeA,SAASC,EAAsBC,EAAmC,CACvE,KAAM,CACJ,SAAAC,EACA,aAAAC,EACA,gBAAAC,CACF,EAAIH,EAEEI,EAAKJ,EAAM,gBAAgB,qBAE3B,CAAE,qBAAsBK,EAAU,eAAAC,CAAc,EAAIC,EAA4BJ,CAAe,EAG/FK,EAAgBd,EAAQ,KAAO,CACnC,MAAOW,EACP,eAAAC,CACF,GAAI,CAACD,EAAUC,CAAc,CAAC,EAGxBG,EAAcf,EAAQ,KAMnB,CAAE,MALK,CACZ,aAAcW,EAAS,SACvB,UAAWA,EAAS,UAAU,mBAAqBR,CACrD,CAEc,GACb,CAACQ,EAAS,SAAUA,EAAS,UAAU,iBAAiB,CAAC,EAEtDK,EAAmBhB,EAAQ,IAC/BH,EAACI,EAAwB,SAAxB,CAAiC,MAAOa,EACzC,EACC,CAACA,EAAeC,CAAW,CAAC,EAG/B,OAAIH,IAAmB,WAAa,CAACD,EAAS,SACrCK,EAKPnB,EAACI,EAAwB,SAAxB,CAAiC,MAAOa,EACvC,SAAAjB,EAACO,EAAsB,SAAtB,CAA+B,MAAOW,EAC9B,SAAAR,EACT,EACF,CAEJ,CAEA,MAAMM,EAA+BI,GAAyC,CAC5E,KAAM,CAACC,EAAOC,CAAQ,EAAIpB,EAAuB,IAAI,EAE/CqB,EAAuBpB,EAAQ,IAC5BE,EAAqB,oBAAoBe,CAAO,EACtD,CAAC,CAAC,EAEC,CAACL,EAAgBS,CAAiB,EAAItB,EAASqB,EAAqB,MAAM,EAEhF,OAAAtB,EAAU,IAAM,CACd,MAAMwB,EAAoBF,EAAqB,OAAO,gBAAiBG,GAAc,CACnFF,EAAkBE,CAAS,EAC3B,QAAQ,IAAI,gDAAiDA,CAAS,CACxE,CAAC,EAEKC,EAAmBJ,EAAqB,OAAO,QAASK,GAAe,CAC3EN,EAASM,aAAsB,MAAQA,EAAa,IAAI,MAAM,eAAe,CAAC,CAChF,CAAC,EAED,MAAO,IAAM,CACXH,IAAoB,EACpBE,IAAmB,CACrB,CACF,EAAG,CAACZ,EAAgBM,CAAK,CAAC,EAE1BpB,EAAU,IAAM,CACTsB,EAAqB,WAAW,CACnC,WAAYH,EAAQ,iBACtB,CAAC,CACH,EAAG,CAACA,EAAQ,KAAMA,EAAQ,iBAAiB,CAAC,EAE5CnB,EAAU,IACD,IAAM,CACXI,EAAqB,cAAc,CACrC,EACC,CAAC,CAAC,EAEE,CACL,qBAAAkB,EACA,MAAAF,EACA,eAAAN,CACF,CACF","names":["jsx","useEffect","useState","useMemo","IsomorphicTernSecureCtx","IsomorphicTernSecure","DEFAULT_TERN_SECURE_STATE","TernSecureAuthContext","TernSecureCtxProvider","props","children","initialState","instanceOptions","rv","instance","instanceStatus","useLoadIsomorphicTernSecure","ternsecureCtx","ternAuthCtx","loadingComponent","options","error","setError","isomorphicTernSecure","setInstanceStatus","unsubscribeStatus","newStatus","unsubscribeError","errorEvent"]}
1
+ {"version":3,"sources":["../../src/ctx/TernSecureCtxProvider.tsx"],"sourcesContent":["'use client';\n\nimport { deriveAuthState } from '@tern-secure/shared/derivedAuthState';\nimport { type InitialState, type TernSecureResources } from '@tern-secure/types';\nimport React, { useEffect, useMemo,useState } from 'react';\n\nimport { IsoTernSecureAuth } from '../lib/isoTernSecureAuth';\nimport type { IsoTernSecureAuthOptions } from '../types';\nimport { AuthProviderCtx } from './AuthProvider';\nimport { IsoTernSecureAuthCtx } from './IsomorphicTernSecureCtx';\n\ntype TernSecureCtxProviderProps = {\n children: React.ReactNode;\n instanceOptions: IsoTernSecureAuthOptions;\n initialState: InitialState | undefined;\n};\n\nexport type TernSecureCtxProviderState = TernSecureResources;\n\nexport function TernSecureCtxProvider(props: TernSecureCtxProviderProps) {\n const { children, initialState, instanceOptions } = props;\n\n const { isoTernSecureAuth: instance, instanceStatus } = useInitTernSecureAuth(instanceOptions);\n\n const [authState, setAuthState] = useState<TernSecureCtxProviderState>({\n user: instance.user,\n });\n\n React.useEffect(() => {\n return instance.addListener(e => setAuthState({ ...e }));\n }, []);\n\n const derivedState = deriveAuthState(authState, initialState);\n const { token, email, user, userId } = derivedState;\n\n const authCtx = useMemo(() => {\n const value = {\n userId: userId,\n token: token,\n email: email,\n user: user,\n };\n return { value };\n }, [userId, token, email, user]);\n\n const ternAuthCtx = useMemo(\n () => ({\n value: instance,\n instanceStatus,\n }),\n [instance, instanceStatus],\n );\n\n return (\n <IsoTernSecureAuthCtx.Provider value={ternAuthCtx}>\n <AuthProviderCtx.Provider value={authCtx}>{children}</AuthProviderCtx.Provider>\n </IsoTernSecureAuthCtx.Provider>\n );\n}\n\nconst useInitTernSecureAuth = (options: IsoTernSecureAuthOptions) => {\n const isoTernSecureAuth = useMemo(() => {\n return IsoTernSecureAuth.getOrCreateInstance(options);\n }, []);\n\n const [instanceStatus, setInstanceStatus] = useState(isoTernSecureAuth.status);\n\n useEffect(() => {\n void isoTernSecureAuth.on('status', setInstanceStatus);\n console.warn('[useInitTernSecureAuth] Status changed:', instanceStatus);\n\n return () => isoTernSecureAuth.off('status', setInstanceStatus);\n }, [isoTernSecureAuth]);\n\n useEffect(() => {\n const un = isoTernSecureAuth.addListener(event => {\n console.warn('[useInitTernSecureAuth] Event received:', event);\n });\n return () => un();\n }, [isoTernSecureAuth]);\n\n useEffect(() => {\n isoTernSecureAuth.initialize();\n }, [isoTernSecureAuth]);\n\n useEffect(() => {\n return () => {\n IsoTernSecureAuth.clearInstance();\n };\n }, []);\n\n return {\n isoTernSecureAuth,\n instanceStatus,\n };\n};\n"],"mappings":"aAuDM,cAAAA,MAAA,oBArDN,OAAS,mBAAAC,MAAuB,uCAEhC,OAAOC,GAAS,aAAAC,EAAW,WAAAC,EAAQ,YAAAC,MAAgB,QAEnD,OAAS,qBAAAC,MAAyB,2BAElC,OAAS,mBAAAC,MAAuB,iBAChC,OAAS,wBAAAC,MAA4B,4BAU9B,SAASC,EAAsBC,EAAmC,CACvE,KAAM,CAAE,SAAAC,EAAU,aAAAC,EAAc,gBAAAC,CAAgB,EAAIH,EAE9C,CAAE,kBAAmBI,EAAU,eAAAC,CAAe,EAAIC,EAAsBH,CAAe,EAEvF,CAACI,EAAWC,CAAY,EAAIb,EAAqC,CACrE,KAAMS,EAAS,IACjB,CAAC,EAEDZ,EAAM,UAAU,IACPY,EAAS,YAAYK,GAAKD,EAAa,CAAE,GAAGC,CAAE,CAAC,CAAC,EACtD,CAAC,CAAC,EAEL,MAAMC,EAAenB,EAAgBgB,EAAWL,CAAY,EACtD,CAAE,MAAAS,EAAO,MAAAC,EAAO,KAAAC,EAAM,OAAAC,CAAO,EAAIJ,EAEjCK,EAAUrB,EAAQ,KAOf,CAAE,MANK,CACZ,OAAQoB,EACR,MAAOH,EACP,MAAOC,EACP,KAAMC,CACR,CACe,GACd,CAACC,EAAQH,EAAOC,EAAOC,CAAI,CAAC,EAEzBG,EAActB,EAClB,KAAO,CACL,MAAOU,EACP,eAAAC,CACF,GACA,CAACD,EAAUC,CAAc,CAC3B,EAEA,OACEf,EAACQ,EAAqB,SAArB,CAA8B,MAAOkB,EACpC,SAAA1B,EAACO,EAAgB,SAAhB,CAAyB,MAAOkB,EAAU,SAAAd,EAAS,EACtD,CAEJ,CAEA,MAAMK,EAAyBW,GAAsC,CACnE,MAAMC,EAAoBxB,EAAQ,IACzBE,EAAkB,oBAAoBqB,CAAO,EACnD,CAAC,CAAC,EAEC,CAACZ,EAAgBc,CAAiB,EAAIxB,EAASuB,EAAkB,MAAM,EAE7E,OAAAzB,EAAU,KACHyB,EAAkB,GAAG,SAAUC,CAAiB,EACrD,QAAQ,KAAK,0CAA2Cd,CAAc,EAE/D,IAAMa,EAAkB,IAAI,SAAUC,CAAiB,GAC7D,CAACD,CAAiB,CAAC,EAEtBzB,EAAU,IAAM,CACd,MAAM2B,EAAKF,EAAkB,YAAYG,GAAS,CAChD,QAAQ,KAAK,0CAA2CA,CAAK,CAC/D,CAAC,EACD,MAAO,IAAMD,EAAG,CAClB,EAAG,CAACF,CAAiB,CAAC,EAEtBzB,EAAU,IAAM,CACdyB,EAAkB,WAAW,CAC/B,EAAG,CAACA,CAAiB,CAAC,EAEtBzB,EAAU,IACD,IAAM,CACXG,EAAkB,cAAc,CAClC,EACC,CAAC,CAAC,EAEE,CACL,kBAAAsB,EACA,eAAAb,CACF,CACF","names":["jsx","deriveAuthState","React","useEffect","useMemo","useState","IsoTernSecureAuth","AuthProviderCtx","IsoTernSecureAuthCtx","TernSecureCtxProvider","props","children","initialState","instanceOptions","instance","instanceStatus","useInitTernSecureAuth","authState","setAuthState","e","derivedState","token","email","user","userId","authCtx","ternAuthCtx","options","isoTernSecureAuth","setInstanceStatus","un","event"]}
@@ -1,2 +1,2 @@
1
- "use strict";var S=Object.create;var n=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var T=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty;var f=(e,r)=>{for(var i in r)n(e,i,{get:r[i],enumerable:!0})},c=(e,r,i,t)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of v(r))!l.call(e,o)&&o!==i&&n(e,o,{get:()=>r[o],enumerable:!(t=m(r,o))||t.enumerable});return e};var y=(e,r,i)=>(i=e!=null?S(T(e)):{},c(r||!e||!e.__esModule?n(i,"default",{value:e,enumerable:!0}):i,e)),h=e=>c(n({},"__esModule",{value:!0}),e);var C={};f(C,{TernSecureProvider:()=>s});module.exports=h(C);var d=require("react/jsx-runtime"),a=y(require("react")),p=require("./TernSecureCtxProvider");function x(e){const{children:r,initialState:i,bypassApiKey:t,...o}=e,{customDomain:u="",TernSecure:P}=o;return P||u||console.warn("TernSecureProvider: Instance is not initialized. Please ensure you have provided the correct instance options."),(0,d.jsx)(p.TernSecureCtxProvider,{initialState:i,instanceOptions:o,children:r})}const s=a.default.memo(x);s.displayName="TernSecureProvider";0&&(module.exports={TernSecureProvider});
1
+ "use strict";var d=Object.create;var t=Object.defineProperty;var S=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var u=Object.getPrototypeOf,v=Object.prototype.hasOwnProperty;var T=(e,r)=>{for(var o in r)t(e,o,{get:r[o],enumerable:!0})},c=(e,r,o,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of m(r))!v.call(e,i)&&i!==o&&t(e,i,{get:()=>r[i],enumerable:!(n=S(r,i))||n.enumerable});return e};var y=(e,r,o)=>(o=e!=null?d(u(e)):{},c(r||!e||!e.__esModule?t(o,"default",{value:e,enumerable:!0}):o,e)),f=e=>c(t({},"__esModule",{value:!0}),e);var x={};T(x,{TernSecureProvider:()=>p});module.exports=f(x);var a=require("react/jsx-runtime"),s=y(require("react")),P=require("./TernSecureCtxProvider");function l(e){const{children:r,initialState:o,bypassApiKey:n,...i}=e;return(0,a.jsx)(P.TernSecureCtxProvider,{initialState:o,instanceOptions:i,children:r})}const p=s.default.memo(l);p.displayName="TernSecureProvider";0&&(module.exports={TernSecureProvider});
2
2
  //# sourceMappingURL=TernSecureProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ctx/TernSecureProvider.tsx"],"sourcesContent":["import React from 'react'\nimport { TernSecureCtxProvider } from './TernSecureCtxProvider'\nimport type { TernSecureProviderProps } from '../types'\n\nfunction TernSecureProviderBase(props: TernSecureProviderProps) {\n const { \n children, \n initialState, \n bypassApiKey,\n ...restProps\n } = props\n\n const { customDomain = '', TernSecure: userInitialised } = restProps\n\n if (!userInitialised) {\n if(!customDomain) {\n console.warn('TernSecureProvider: Instance is not initialized. Please ensure you have provided the correct instance options.')\n }\n }\n\n return (\n <TernSecureCtxProvider\n initialState={initialState}\n instanceOptions={restProps}\n >\n {children}\n </TernSecureCtxProvider>\n )\n}\n\n// Memoize the provider to prevent unnecessary re-renders\nconst TernSecureProvider = React.memo(TernSecureProviderBase)\n\nTernSecureProvider.displayName = 'TernSecureProvider'\n\nexport { TernSecureProvider }"],"mappings":"0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wBAAAE,IAAA,eAAAC,EAAAH,GAqBQ,IAAAI,EAAA,6BArBRC,EAAkB,oBAClBC,EAAsC,mCAGtC,SAASC,EAAuBC,EAAgC,CAC5D,KAAM,CACF,SAAAC,EACA,aAAAC,EACA,aAAAC,EACA,GAAGC,CACP,EAAIJ,EAEE,CAAE,aAAAK,EAAe,GAAI,WAAYC,CAAgB,EAAIF,EAE3D,OAAKE,GACGD,GACJ,QAAQ,KAAK,gHAAgH,KAK7H,OAAC,yBACC,aAAcH,EACd,gBAAiBE,EAEd,SAAAH,EACL,CAER,CAGA,MAAMP,EAAqB,EAAAa,QAAM,KAAKR,CAAsB,EAE5DL,EAAmB,YAAc","names":["TernSecureProvider_exports","__export","TernSecureProvider","__toCommonJS","import_jsx_runtime","import_react","import_TernSecureCtxProvider","TernSecureProviderBase","props","children","initialState","bypassApiKey","restProps","customDomain","userInitialised","React"]}
1
+ {"version":3,"sources":["../../src/ctx/TernSecureProvider.tsx"],"sourcesContent":["import React from 'react'\n\nimport type { TernSecureProviderProps } from '../types'\nimport { TernSecureCtxProvider } from './TernSecureCtxProvider'\n\nfunction TernSecureProviderBase(props: TernSecureProviderProps) {\n const { \n children, \n initialState, \n bypassApiKey,\n ...restProps\n } = props\n\n\n return (\n <TernSecureCtxProvider\n initialState={initialState}\n instanceOptions={restProps}\n >\n {children}\n </TernSecureCtxProvider>\n )\n}\n\n// Memoize the provider to prevent unnecessary re-renders\nconst TernSecureProvider = React.memo(TernSecureProviderBase)\n\nTernSecureProvider.displayName = 'TernSecureProvider'\n\nexport { TernSecureProvider }"],"mappings":"0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wBAAAE,IAAA,eAAAC,EAAAH,GAeQ,IAAAI,EAAA,6BAfRC,EAAkB,oBAGlBC,EAAsC,mCAEtC,SAASC,EAAuBC,EAAgC,CAC5D,KAAM,CACF,SAAAC,EACA,aAAAC,EACA,aAAAC,EACA,GAAGC,CACP,EAAIJ,EAGJ,SACI,OAAC,yBACC,aAAcE,EACd,gBAAiBE,EAEd,SAAAH,EACL,CAER,CAGA,MAAMP,EAAqB,EAAAW,QAAM,KAAKN,CAAsB,EAE5DL,EAAmB,YAAc","names":["TernSecureProvider_exports","__export","TernSecureProvider","__toCommonJS","import_jsx_runtime","import_react","import_TernSecureCtxProvider","TernSecureProviderBase","props","children","initialState","bypassApiKey","restProps","React"]}
@@ -1,2 +1,2 @@
1
- import{jsx as d}from"react/jsx-runtime";import c from"react";import{TernSecureCtxProvider as a}from"./TernSecureCtxProvider";function p(i){const{children:o,initialState:n,bypassApiKey:u,...e}=i,{customDomain:t="",TernSecure:s}=e;return s||t||console.warn("TernSecureProvider: Instance is not initialized. Please ensure you have provided the correct instance options."),d(a,{initialState:n,instanceOptions:e,children:o})}const r=c.memo(p);r.displayName="TernSecureProvider";export{r as TernSecureProvider};
1
+ import{jsx as s}from"react/jsx-runtime";import n from"react";import{TernSecureCtxProvider as p}from"./TernSecureCtxProvider";function c(r){const{children:o,initialState:i,bypassApiKey:P,...t}=r;return s(p,{initialState:i,instanceOptions:t,children:o})}const e=n.memo(c);e.displayName="TernSecureProvider";export{e as TernSecureProvider};
2
2
  //# sourceMappingURL=TernSecureProvider.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ctx/TernSecureProvider.tsx"],"sourcesContent":["import React from 'react'\nimport { TernSecureCtxProvider } from './TernSecureCtxProvider'\nimport type { TernSecureProviderProps } from '../types'\n\nfunction TernSecureProviderBase(props: TernSecureProviderProps) {\n const { \n children, \n initialState, \n bypassApiKey,\n ...restProps\n } = props\n\n const { customDomain = '', TernSecure: userInitialised } = restProps\n\n if (!userInitialised) {\n if(!customDomain) {\n console.warn('TernSecureProvider: Instance is not initialized. Please ensure you have provided the correct instance options.')\n }\n }\n\n return (\n <TernSecureCtxProvider\n initialState={initialState}\n instanceOptions={restProps}\n >\n {children}\n </TernSecureCtxProvider>\n )\n}\n\n// Memoize the provider to prevent unnecessary re-renders\nconst TernSecureProvider = React.memo(TernSecureProviderBase)\n\nTernSecureProvider.displayName = 'TernSecureProvider'\n\nexport { TernSecureProvider }"],"mappings":"AAqBQ,cAAAA,MAAA,oBArBR,OAAOC,MAAW,QAClB,OAAS,yBAAAC,MAA6B,0BAGtC,SAASC,EAAuBC,EAAgC,CAC5D,KAAM,CACF,SAAAC,EACA,aAAAC,EACA,aAAAC,EACA,GAAGC,CACP,EAAIJ,EAEE,CAAE,aAAAK,EAAe,GAAI,WAAYC,CAAgB,EAAIF,EAE3D,OAAKE,GACGD,GACJ,QAAQ,KAAK,gHAAgH,EAK7HT,EAACE,EAAA,CACC,aAAcI,EACd,gBAAiBE,EAEd,SAAAH,EACL,CAER,CAGA,MAAMM,EAAqBV,EAAM,KAAKE,CAAsB,EAE5DQ,EAAmB,YAAc","names":["jsx","React","TernSecureCtxProvider","TernSecureProviderBase","props","children","initialState","bypassApiKey","restProps","customDomain","userInitialised","TernSecureProvider"]}
1
+ {"version":3,"sources":["../../src/ctx/TernSecureProvider.tsx"],"sourcesContent":["import React from 'react'\n\nimport type { TernSecureProviderProps } from '../types'\nimport { TernSecureCtxProvider } from './TernSecureCtxProvider'\n\nfunction TernSecureProviderBase(props: TernSecureProviderProps) {\n const { \n children, \n initialState, \n bypassApiKey,\n ...restProps\n } = props\n\n\n return (\n <TernSecureCtxProvider\n initialState={initialState}\n instanceOptions={restProps}\n >\n {children}\n </TernSecureCtxProvider>\n )\n}\n\n// Memoize the provider to prevent unnecessary re-renders\nconst TernSecureProvider = React.memo(TernSecureProviderBase)\n\nTernSecureProvider.displayName = 'TernSecureProvider'\n\nexport { TernSecureProvider }"],"mappings":"AAeQ,cAAAA,MAAA,oBAfR,OAAOC,MAAW,QAGlB,OAAS,yBAAAC,MAA6B,0BAEtC,SAASC,EAAuBC,EAAgC,CAC5D,KAAM,CACF,SAAAC,EACA,aAAAC,EACA,aAAAC,EACA,GAAGC,CACP,EAAIJ,EAGJ,OACIJ,EAACE,EAAA,CACC,aAAcI,EACd,gBAAiBE,EAEd,SAAAH,EACL,CAER,CAGA,MAAMI,EAAqBR,EAAM,KAAKE,CAAsB,EAE5DM,EAAmB,YAAc","names":["jsx","React","TernSecureCtxProvider","TernSecureProviderBase","props","children","initialState","bypassApiKey","restProps","TernSecureProvider"]}
@@ -1,3 +1,3 @@
1
- declare const useAssertWrappedByTernSecureProvider: (source: string) => void;
1
+ declare const useAssertWrappedByTernSecureAuthProvider: (source: string) => void;
2
2
 
3
- export { useAssertWrappedByTernSecureProvider };
3
+ export { useAssertWrappedByTernSecureAuthProvider };
@@ -1,3 +1,3 @@
1
- declare const useAssertWrappedByTernSecureProvider: (source: string) => void;
1
+ declare const useAssertWrappedByTernSecureAuthProvider: (source: string) => void;
2
2
 
3
- export { useAssertWrappedByTernSecureProvider };
3
+ export { useAssertWrappedByTernSecureAuthProvider };
@@ -1,5 +1,5 @@
1
- "use strict";var i=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var a=(e,r)=>{for(var s in r)i(e,s,{get:r[s],enumerable:!0})},d=(e,r,s,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of c(r))!u.call(e,o)&&o!==s&&i(e,o,{get:()=>r[o],enumerable:!(n=p(r,o))||n.enumerable});return e};var v=e=>d(i({},"__esModule",{value:!0}),e);var h={};a(h,{useAssertWrappedByTernSecureProvider:()=>y});module.exports=v(h);var t=require("@tern-secure/shared/react");const y=e=>{(0,t.useAssertWrappedByTernSecureProvider)(()=>{throw new Error(`${e} can only be used within the <TernSecureProvider /> component.
1
+ "use strict";var t=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var a=(e,r)=>{for(var s in r)t(e,s,{get:r[s],enumerable:!0})},d=(e,r,s,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of u(r))!c.call(e,o)&&o!==s&&t(e,o,{get:()=>r[o],enumerable:!(i=p(r,o))||i.enumerable});return e};var h=e=>d(t({},"__esModule",{value:!0}),e);var y={};a(y,{useAssertWrappedByTernSecureAuthProvider:()=>v});module.exports=h(y);var n=require("@tern-secure/shared/react");const v=e=>{(0,n.useAssertWrappedByTernSecureAuthProvider)(()=>{throw new Error(`${e} can only be used within the <TernSecureProvider /> component.
2
2
  Possible fixes:
3
3
  1. Ensure that the <TernSecureProvider /> is correctly wrapping your application
4
- 2. Check for multiple versions of @tern-secure packages in your project`)})};0&&(module.exports={useAssertWrappedByTernSecureProvider});
4
+ 2. Check for multiple versions of @tern-secure packages in your project`)})};0&&(module.exports={useAssertWrappedByTernSecureAuthProvider});
5
5
  //# sourceMappingURL=useAssertWrappedTernSecureProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/hooks/useAssertWrappedTernSecureProvider.tsx"],"sourcesContent":["import {\n useAssertWrappedByTernSecureProvider as useAssertWrappedByTernSecureProviderBase,\n} from '@tern-secure/shared/react'\n\nexport const useAssertWrappedByTernSecureProvider = (source: string): void => {\n useAssertWrappedByTernSecureProviderBase(() => {\n throw new Error(\n `${source} can only be used within the <TernSecureProvider /> component.\nPossible fixes:\n1. Ensure that the <TernSecureProvider /> is correctly wrapping your application\n2. Check for multiple versions of @tern-secure packages in your project`\n );\n }\n );\n}"],"mappings":"yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,0CAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAEO,qCAEA,MAAMF,EAAwCG,GAAyB,IAC1E,EAAAC,sCAAyC,IAAM,CAC3C,MAAM,IAAI,MACN,GAAGD,CAAM;AAAA;AAAA;AAAA,wEAIb,CACJ,CACA,CACJ","names":["useAssertWrappedTernSecureProvider_exports","__export","useAssertWrappedByTernSecureProvider","__toCommonJS","import_react","source","useAssertWrappedByTernSecureProviderBase"]}
1
+ {"version":3,"sources":["../../src/hooks/useAssertWrappedTernSecureProvider.tsx"],"sourcesContent":["import {\n useAssertWrappedByTernSecureAuthProvider as useAssertWrappedByTernSecureProviderBase,\n} from '@tern-secure/shared/react'\n\nexport const useAssertWrappedByTernSecureAuthProvider = (source: string): void => {\n useAssertWrappedByTernSecureProviderBase(() => {\n throw new Error(\n `${source} can only be used within the <TernSecureProvider /> component.\nPossible fixes:\n1. Ensure that the <TernSecureProvider /> is correctly wrapping your application\n2. Check for multiple versions of @tern-secure packages in your project`\n );\n }\n );\n}"],"mappings":"yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,8CAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAEO,qCAEA,MAAMF,EAA4CG,GAAyB,IAC9E,EAAAC,0CAAyC,IAAM,CAC3C,MAAM,IAAI,MACN,GAAGD,CAAM;AAAA;AAAA;AAAA,wEAIb,CACJ,CACA,CACJ","names":["useAssertWrappedTernSecureProvider_exports","__export","useAssertWrappedByTernSecureAuthProvider","__toCommonJS","import_react","source","useAssertWrappedByTernSecureProviderBase"]}
@@ -1,5 +1,5 @@
1
- import{useAssertWrappedByTernSecureProvider as r}from"@tern-secure/shared/react";const s=e=>{r(()=>{throw new Error(`${e} can only be used within the <TernSecureProvider /> component.
1
+ import{useAssertWrappedByTernSecureAuthProvider as r}from"@tern-secure/shared/react";const s=e=>{r(()=>{throw new Error(`${e} can only be used within the <TernSecureProvider /> component.
2
2
  Possible fixes:
3
3
  1. Ensure that the <TernSecureProvider /> is correctly wrapping your application
4
- 2. Check for multiple versions of @tern-secure packages in your project`)})};export{s as useAssertWrappedByTernSecureProvider};
4
+ 2. Check for multiple versions of @tern-secure packages in your project`)})};export{s as useAssertWrappedByTernSecureAuthProvider};
5
5
  //# sourceMappingURL=useAssertWrappedTernSecureProvider.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/hooks/useAssertWrappedTernSecureProvider.tsx"],"sourcesContent":["import {\n useAssertWrappedByTernSecureProvider as useAssertWrappedByTernSecureProviderBase,\n} from '@tern-secure/shared/react'\n\nexport const useAssertWrappedByTernSecureProvider = (source: string): void => {\n useAssertWrappedByTernSecureProviderBase(() => {\n throw new Error(\n `${source} can only be used within the <TernSecureProvider /> component.\nPossible fixes:\n1. Ensure that the <TernSecureProvider /> is correctly wrapping your application\n2. Check for multiple versions of @tern-secure packages in your project`\n );\n }\n );\n}"],"mappings":"AAAA,OACI,wCAAwCA,MACrC,4BAEA,MAAMC,EAAwCC,GAAyB,CAC1EF,EAAyC,IAAM,CAC3C,MAAM,IAAI,MACN,GAAGE,CAAM;AAAA;AAAA;AAAA,wEAIb,CACJ,CACA,CACJ","names":["useAssertWrappedByTernSecureProviderBase","useAssertWrappedByTernSecureProvider","source"]}
1
+ {"version":3,"sources":["../../src/hooks/useAssertWrappedTernSecureProvider.tsx"],"sourcesContent":["import {\n useAssertWrappedByTernSecureAuthProvider as useAssertWrappedByTernSecureProviderBase,\n} from '@tern-secure/shared/react'\n\nexport const useAssertWrappedByTernSecureAuthProvider = (source: string): void => {\n useAssertWrappedByTernSecureProviderBase(() => {\n throw new Error(\n `${source} can only be used within the <TernSecureProvider /> component.\nPossible fixes:\n1. Ensure that the <TernSecureProvider /> is correctly wrapping your application\n2. Check for multiple versions of @tern-secure packages in your project`\n );\n }\n );\n}"],"mappings":"AAAA,OACI,4CAA4CA,MACzC,4BAEA,MAAMC,EAA4CC,GAAyB,CAC9EF,EAAyC,IAAM,CAC3C,MAAM,IAAI,MACN,GAAGE,CAAM;AAAA;AAAA;AAAA,wEAIb,CACJ,CACA,CACJ","names":["useAssertWrappedByTernSecureProviderBase","useAssertWrappedByTernSecureAuthProvider","source"]}
@@ -1,5 +1,5 @@
1
- import { TernSecureState } from '@tern-secure/types';
1
+ import { UseAuthReturn } from '@tern-secure/types';
2
2
 
3
- declare const useAuth: () => TernSecureState;
3
+ declare const useAuth: () => UseAuthReturn;
4
4
 
5
5
  export { useAuth };
@@ -1,5 +1,5 @@
1
- import { TernSecureState } from '@tern-secure/types';
1
+ import { UseAuthReturn } from '@tern-secure/types';
2
2
 
3
- declare const useAuth: () => TernSecureState;
3
+ declare const useAuth: () => UseAuthReturn;
4
4
 
5
5
  export { useAuth };
@@ -1,2 +1,2 @@
1
- "use strict";"use client";var i=Object.defineProperty;var n=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var A=(e,r)=>{for(var s in r)i(e,s,{get:r[s],enumerable:!0})},f=(e,r,s,u)=>{if(r&&typeof r=="object"||typeof r=="function")for(let t of c(r))!l.call(e,t)&&t!==s&&i(e,t,{get:()=>r[t],enumerable:!(u=n(r,t))||u.enumerable});return e};var m=e=>f(i({},"__esModule",{value:!0}),e);var T={};A(T,{useAuth:()=>S});module.exports=m(T);var o=require("./useAssertWrappedTernSecureProvider"),d=require("@tern-secure/types"),a=require("../ctx/AuthProvider");const S=()=>{(0,o.useAssertWrappedByTernSecureProvider)("useAuth");const e=(0,a.useAuthProviderCtx)();return e.isLoaded?{userId:e.userId,isLoaded:e.isLoaded,error:e.error,isValid:e.isValid,isVerified:e.isVerified,isAuthenticated:e.isAuthenticated,token:e.token,email:e.email,status:e.status,user:e.user}:(console.warn("[useAuth] TernSecure is not loaded yet. Returning default state."),{...d.DEFAULT_TERN_SECURE_STATE,isLoaded:!1})};0&&(module.exports={useAuth});
1
+ "use strict";"use client";var s=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var m=(e,t)=>{for(var r in t)s(e,r,{get:t[r],enumerable:!0})},g=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of S(t))!l.call(e,u)&&u!==r&&s(e,u,{get:()=>t[u],enumerable:!(n=A(t,u))||n.enumerable});return e};var O=e=>g(s({},"__esModule",{value:!0}),e);var b={};m(b,{useAuth:()=>I});module.exports=O(b);var a=require("react"),c=require("../ctx/AuthProvider"),d=require("../ctx/IsomorphicTernSecureCtx"),f=require("./useAssertWrappedTernSecureProvider");const p=e=>async t=>{try{t?.onBeforeSignOut&&await t.onBeforeSignOut(),await e.signOut(t),t?.onAfterSignOut&&await t.onAfterSignOut()}catch(r){throw console.error("[useAuth] Sign out failed:",r),r}},I=()=>{(0,f.useAssertWrappedByTernSecureAuthProvider)("useAuth");const e=(0,c.useAuthProviderCtx)(),t=(0,d.useIsoTernSecureAuthCtx)(),r=(0,a.useCallback)(p(t),[t]),n=!!e.user||e.userId!==void 0,u=!!e.userId,i=!!e.user?.emailVerified,o=u&&i,h=y(n,o,i);return{userId:e.userId,email:e.email,token:e.token,user:e.user,isLoaded:n,isValid:u,isVerified:i,isAuthenticated:o,status:h,signOut:r}},y=(e,t,r)=>e?t?r?"authenticated":"unverified":"unauthenticated":"loading";0&&(module.exports={useAuth});
2
2
  //# sourceMappingURL=useAuth.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/hooks/useAuth.ts"],"sourcesContent":["\"use client\"\r\n\r\nimport { useAssertWrappedByTernSecureProvider } from './useAssertWrappedTernSecureProvider'\r\nimport { DEFAULT_TERN_SECURE_STATE, TernSecureState } from '@tern-secure/types'\r\nimport { useAuthProviderCtx } from '../ctx/AuthProvider'\r\n\r\n\r\nexport const useAuth = (): TernSecureState => {\r\n useAssertWrappedByTernSecureProvider('useAuth')\r\n \r\n const ctx = useAuthProviderCtx()\r\n\r\n if (!ctx.isLoaded) {\r\n console.warn('[useAuth] TernSecure is not loaded yet. Returning default state.')\r\n return {\r\n ...DEFAULT_TERN_SECURE_STATE,\r\n isLoaded: false,\r\n }\r\n }\r\n \r\n return {\r\n userId: ctx.userId,\r\n isLoaded: ctx.isLoaded,\r\n error: ctx.error,\r\n isValid: ctx.isValid,\r\n isVerified: ctx.isVerified,\r\n isAuthenticated: ctx.isAuthenticated,\r\n token: ctx.token,\r\n email: ctx.email,\r\n status: ctx.status,\r\n user: ctx.user\r\n }\r\n}\r\n"],"mappings":"sbAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GAEA,IAAAI,EAAqD,gDACrDC,EAA2D,8BAC3DC,EAAmC,+BAG5B,MAAMJ,EAAU,IAAuB,IAC5C,wCAAqC,SAAS,EAE9C,MAAMK,KAAO,sBAAmB,EAEhC,OAAKA,EAAI,SAQF,CACL,OAAQA,EAAI,OACZ,SAAUA,EAAI,SACd,MAAOA,EAAI,MACX,QAASA,EAAI,QACb,WAAYA,EAAI,WAChB,gBAAiBA,EAAI,gBACrB,MAAOA,EAAI,MACX,MAAOA,EAAI,MACX,OAAQA,EAAI,OACZ,KAAMA,EAAI,IACZ,GAlBE,QAAQ,KAAK,kEAAkE,EACxE,CACL,GAAG,4BACH,SAAU,EACZ,EAeJ","names":["useAuth_exports","__export","useAuth","__toCommonJS","import_useAssertWrappedTernSecureProvider","import_types","import_AuthProvider","ctx"]}
1
+ {"version":3,"sources":["../../src/hooks/useAuth.ts"],"sourcesContent":["\"use client\";\r\n\r\nimport type { SignOut, SignOutOptions, UseAuthReturn } from \"@tern-secure/types\";\r\nimport { useCallback } from \"react\";\r\n\r\nimport { useAuthProviderCtx } from \"../ctx/AuthProvider\";\r\nimport { useIsoTernSecureAuthCtx } from \"../ctx/IsomorphicTernSecureCtx\";\r\nimport type { IsoTernSecureAuth } from \"../lib/isoTernSecureAuth\";\r\nimport { useAssertWrappedByTernSecureAuthProvider } from \"./useAssertWrappedTernSecureProvider\";\r\n\r\nconst handleSignOut = (instance: IsoTernSecureAuth) => {\r\n return async (options?: SignOutOptions) => {\r\n try {\r\n if (options?.onBeforeSignOut) {\r\n await options.onBeforeSignOut();\r\n }\r\n\r\n await instance.signOut(options);\r\n\r\n if (options?.onAfterSignOut) {\r\n await options.onAfterSignOut();\r\n }\r\n } catch (error) {\r\n console.error(\"[useAuth] Sign out failed:\", error);\r\n throw error;\r\n }\r\n };\r\n};\r\n\r\nexport const useAuth = (): UseAuthReturn => {\r\n useAssertWrappedByTernSecureAuthProvider(\"useAuth\");\r\n\r\n const ctx = useAuthProviderCtx();\r\n const instance = useIsoTernSecureAuthCtx();\r\n const signOut: SignOut = useCallback(handleSignOut(instance), [instance]);\r\n\r\n const isLoaded = !!ctx.user || ctx.userId !== undefined;\r\n const isValid = !!ctx.userId;\r\n const isVerified = !!ctx.user?.emailVerified;\r\n const isAuthenticated = isValid && isVerified;\r\n const status = deriveAuthStatus(isLoaded, isAuthenticated, isVerified);\r\n\r\n return {\r\n userId: ctx.userId,\r\n email: ctx.email,\r\n token: ctx.token,\r\n user: ctx.user,\r\n isLoaded,\r\n isValid,\r\n isVerified,\r\n isAuthenticated,\r\n status,\r\n signOut,\r\n };\r\n};\r\n\r\nconst deriveAuthStatus = (\r\n isLoaded: boolean,\r\n isAuthenticated: boolean,\r\n isVerified: boolean\r\n): UseAuthReturn[\"status\"] => {\r\n if (!isLoaded) return \"loading\";\r\n if (!isAuthenticated) return \"unauthenticated\";\r\n if (!isVerified) return \"unverified\";\r\n return \"authenticated\";\r\n};\r\n"],"mappings":"sbAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GAGA,IAAAI,EAA4B,iBAE5BC,EAAmC,+BACnCC,EAAwC,0CAExCC,EAAyD,gDAEzD,MAAMC,EAAiBC,GACd,MAAOC,GAA6B,CACzC,GAAI,CACEA,GAAS,iBACX,MAAMA,EAAQ,gBAAgB,EAGhC,MAAMD,EAAS,QAAQC,CAAO,EAE1BA,GAAS,gBACX,MAAMA,EAAQ,eAAe,CAEjC,OAASC,EAAO,CACd,cAAQ,MAAM,6BAA8BA,CAAK,EAC3CA,CACR,CACF,EAGWT,EAAU,IAAqB,IAC1C,4CAAyC,SAAS,EAElD,MAAMU,KAAM,sBAAmB,EACzBH,KAAW,2BAAwB,EACnCI,KAAmB,eAAYL,EAAcC,CAAQ,EAAG,CAACA,CAAQ,CAAC,EAElEK,EAAW,CAAC,CAACF,EAAI,MAAQA,EAAI,SAAW,OACxCG,EAAU,CAAC,CAACH,EAAI,OAChBI,EAAa,CAAC,CAACJ,EAAI,MAAM,cACzBK,EAAkBF,GAAWC,EAC7BE,EAASC,EAAiBL,EAAUG,EAAiBD,CAAU,EAErE,MAAO,CACL,OAAQJ,EAAI,OACZ,MAAOA,EAAI,MACX,MAAOA,EAAI,MACX,KAAMA,EAAI,KACV,SAAAE,EACA,QAAAC,EACA,WAAAC,EACA,gBAAAC,EACA,OAAAC,EACA,QAAAL,CACF,CACF,EAEMM,EAAmB,CACvBL,EACAG,EACAD,IAEKF,EACAG,EACAD,EACE,gBADiB,aADK,kBADP","names":["useAuth_exports","__export","useAuth","__toCommonJS","import_react","import_AuthProvider","import_IsomorphicTernSecureCtx","import_useAssertWrappedTernSecureProvider","handleSignOut","instance","options","error","ctx","signOut","isLoaded","isValid","isVerified","isAuthenticated","status","deriveAuthStatus"]}
@@ -1,2 +1,2 @@
1
- "use client";import{useAssertWrappedByTernSecureProvider as r}from"./useAssertWrappedTernSecureProvider";import{DEFAULT_TERN_SECURE_STATE as t}from"@tern-secure/types";import{useAuthProviderCtx as s}from"../ctx/AuthProvider";const a=()=>{r("useAuth");const e=s();return e.isLoaded?{userId:e.userId,isLoaded:e.isLoaded,error:e.error,isValid:e.isValid,isVerified:e.isVerified,isAuthenticated:e.isAuthenticated,token:e.token,email:e.email,status:e.status,user:e.user}:(console.warn("[useAuth] TernSecure is not loaded yet. Returning default state."),{...t,isLoaded:!1})};export{a as useAuth};
1
+ "use client";import{useCallback as a}from"react";import{useAuthProviderCtx as c}from"../ctx/AuthProvider";import{useIsoTernSecureAuthCtx as d}from"../ctx/IsomorphicTernSecureCtx";import{useAssertWrappedByTernSecureAuthProvider as f}from"./useAssertWrappedTernSecureProvider";const h=e=>async t=>{try{t?.onBeforeSignOut&&await t.onBeforeSignOut(),await e.signOut(t),t?.onAfterSignOut&&await t.onAfterSignOut()}catch(r){throw console.error("[useAuth] Sign out failed:",r),r}},O=()=>{f("useAuth");const e=c(),t=d(),r=a(h(t),[t]),n=!!e.user||e.userId!==void 0,i=!!e.userId,u=!!e.user?.emailVerified,s=i&&u,o=A(n,s,u);return{userId:e.userId,email:e.email,token:e.token,user:e.user,isLoaded:n,isValid:i,isVerified:u,isAuthenticated:s,status:o,signOut:r}},A=(e,t,r)=>e?t?r?"authenticated":"unverified":"unauthenticated":"loading";export{O as useAuth};
2
2
  //# sourceMappingURL=useAuth.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/hooks/useAuth.ts"],"sourcesContent":["\"use client\"\r\n\r\nimport { useAssertWrappedByTernSecureProvider } from './useAssertWrappedTernSecureProvider'\r\nimport { DEFAULT_TERN_SECURE_STATE, TernSecureState } from '@tern-secure/types'\r\nimport { useAuthProviderCtx } from '../ctx/AuthProvider'\r\n\r\n\r\nexport const useAuth = (): TernSecureState => {\r\n useAssertWrappedByTernSecureProvider('useAuth')\r\n \r\n const ctx = useAuthProviderCtx()\r\n\r\n if (!ctx.isLoaded) {\r\n console.warn('[useAuth] TernSecure is not loaded yet. Returning default state.')\r\n return {\r\n ...DEFAULT_TERN_SECURE_STATE,\r\n isLoaded: false,\r\n }\r\n }\r\n \r\n return {\r\n userId: ctx.userId,\r\n isLoaded: ctx.isLoaded,\r\n error: ctx.error,\r\n isValid: ctx.isValid,\r\n isVerified: ctx.isVerified,\r\n isAuthenticated: ctx.isAuthenticated,\r\n token: ctx.token,\r\n email: ctx.email,\r\n status: ctx.status,\r\n user: ctx.user\r\n }\r\n}\r\n"],"mappings":"aAEA,OAAS,wCAAAA,MAA4C,uCACrD,OAAS,6BAAAC,MAAkD,qBAC3D,OAAS,sBAAAC,MAA0B,sBAG5B,MAAMC,EAAU,IAAuB,CAC5CH,EAAqC,SAAS,EAE9C,MAAMI,EAAOF,EAAmB,EAEhC,OAAKE,EAAI,SAQF,CACL,OAAQA,EAAI,OACZ,SAAUA,EAAI,SACd,MAAOA,EAAI,MACX,QAASA,EAAI,QACb,WAAYA,EAAI,WAChB,gBAAiBA,EAAI,gBACrB,MAAOA,EAAI,MACX,MAAOA,EAAI,MACX,OAAQA,EAAI,OACZ,KAAMA,EAAI,IACZ,GAlBE,QAAQ,KAAK,kEAAkE,EACxE,CACL,GAAGH,EACH,SAAU,EACZ,EAeJ","names":["useAssertWrappedByTernSecureProvider","DEFAULT_TERN_SECURE_STATE","useAuthProviderCtx","useAuth","ctx"]}
1
+ {"version":3,"sources":["../../src/hooks/useAuth.ts"],"sourcesContent":["\"use client\";\r\n\r\nimport type { SignOut, SignOutOptions, UseAuthReturn } from \"@tern-secure/types\";\r\nimport { useCallback } from \"react\";\r\n\r\nimport { useAuthProviderCtx } from \"../ctx/AuthProvider\";\r\nimport { useIsoTernSecureAuthCtx } from \"../ctx/IsomorphicTernSecureCtx\";\r\nimport type { IsoTernSecureAuth } from \"../lib/isoTernSecureAuth\";\r\nimport { useAssertWrappedByTernSecureAuthProvider } from \"./useAssertWrappedTernSecureProvider\";\r\n\r\nconst handleSignOut = (instance: IsoTernSecureAuth) => {\r\n return async (options?: SignOutOptions) => {\r\n try {\r\n if (options?.onBeforeSignOut) {\r\n await options.onBeforeSignOut();\r\n }\r\n\r\n await instance.signOut(options);\r\n\r\n if (options?.onAfterSignOut) {\r\n await options.onAfterSignOut();\r\n }\r\n } catch (error) {\r\n console.error(\"[useAuth] Sign out failed:\", error);\r\n throw error;\r\n }\r\n };\r\n};\r\n\r\nexport const useAuth = (): UseAuthReturn => {\r\n useAssertWrappedByTernSecureAuthProvider(\"useAuth\");\r\n\r\n const ctx = useAuthProviderCtx();\r\n const instance = useIsoTernSecureAuthCtx();\r\n const signOut: SignOut = useCallback(handleSignOut(instance), [instance]);\r\n\r\n const isLoaded = !!ctx.user || ctx.userId !== undefined;\r\n const isValid = !!ctx.userId;\r\n const isVerified = !!ctx.user?.emailVerified;\r\n const isAuthenticated = isValid && isVerified;\r\n const status = deriveAuthStatus(isLoaded, isAuthenticated, isVerified);\r\n\r\n return {\r\n userId: ctx.userId,\r\n email: ctx.email,\r\n token: ctx.token,\r\n user: ctx.user,\r\n isLoaded,\r\n isValid,\r\n isVerified,\r\n isAuthenticated,\r\n status,\r\n signOut,\r\n };\r\n};\r\n\r\nconst deriveAuthStatus = (\r\n isLoaded: boolean,\r\n isAuthenticated: boolean,\r\n isVerified: boolean\r\n): UseAuthReturn[\"status\"] => {\r\n if (!isLoaded) return \"loading\";\r\n if (!isAuthenticated) return \"unauthenticated\";\r\n if (!isVerified) return \"unverified\";\r\n return \"authenticated\";\r\n};\r\n"],"mappings":"aAGA,OAAS,eAAAA,MAAmB,QAE5B,OAAS,sBAAAC,MAA0B,sBACnC,OAAS,2BAAAC,MAA+B,iCAExC,OAAS,4CAAAC,MAAgD,uCAEzD,MAAMC,EAAiBC,GACd,MAAOC,GAA6B,CACzC,GAAI,CACEA,GAAS,iBACX,MAAMA,EAAQ,gBAAgB,EAGhC,MAAMD,EAAS,QAAQC,CAAO,EAE1BA,GAAS,gBACX,MAAMA,EAAQ,eAAe,CAEjC,OAASC,EAAO,CACd,cAAQ,MAAM,6BAA8BA,CAAK,EAC3CA,CACR,CACF,EAGWC,EAAU,IAAqB,CAC1CL,EAAyC,SAAS,EAElD,MAAMM,EAAMR,EAAmB,EACzBI,EAAWH,EAAwB,EACnCQ,EAAmBV,EAAYI,EAAcC,CAAQ,EAAG,CAACA,CAAQ,CAAC,EAElEM,EAAW,CAAC,CAACF,EAAI,MAAQA,EAAI,SAAW,OACxCG,EAAU,CAAC,CAACH,EAAI,OAChBI,EAAa,CAAC,CAACJ,EAAI,MAAM,cACzBK,EAAkBF,GAAWC,EAC7BE,EAASC,EAAiBL,EAAUG,EAAiBD,CAAU,EAErE,MAAO,CACL,OAAQJ,EAAI,OACZ,MAAOA,EAAI,MACX,MAAOA,EAAI,MACX,KAAMA,EAAI,KACV,SAAAE,EACA,QAAAC,EACA,WAAAC,EACA,gBAAAC,EACA,OAAAC,EACA,QAAAL,CACF,CACF,EAEMM,EAAmB,CACvBL,EACAG,EACAD,IAEKF,EACAG,EACAD,EACE,gBADiB,aADK,kBADP","names":["useCallback","useAuthProviderCtx","useIsoTernSecureAuthCtx","useAssertWrappedByTernSecureAuthProvider","handleSignOut","instance","options","error","useAuth","ctx","signOut","isLoaded","isValid","isVerified","isAuthenticated","status","deriveAuthStatus"]}
@@ -1,2 +1,2 @@
1
- "use strict";"use client";var c=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var I=Object.prototype.hasOwnProperty;var S=(t,e)=>{for(var o in e)c(t,o,{get:e[o],enumerable:!0})},h=(t,e,o,l)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of p(e))!I.call(t,n)&&n!==o&&c(t,n,{get:()=>e[n],enumerable:!(l=g(e,n))||l.enumerable});return t};var R=t=>h(c({},"__esModule",{value:!0}),t);var x={};S(x,{useIdToken:()=>y,useIdTokenInternal:()=>m});module.exports=R(x);var i=require("react"),k=require("@tern-secure/shared/react"),T=require("./useAssertWrappedTernSecureProvider");function m(){const t=(0,k.useTernSecureAuthContext)();(0,T.useAssertWrappedByTernSecureProvider)("useIdToken");const e=t,{authState:o}=e,l=o.isLoaded,n=o.user,[f,u]=(0,i.useState)({tokenResult:null,loading:!0,error:null}),d=(0,i.useCallback)(async s=>{const r=await s.getIdTokenResult();return{token:r.token,claims:r.claims,issuedAtTime:r.issuedAtTime,expirationTime:r.expirationTime,authTime:r.authTime,signInProvider:r.signInProvider}},[]),a=(0,i.useCallback)(async()=>{if(!n){u({tokenResult:null,loading:!1,error:null});return}try{u(r=>({...r,loading:!0}));const s=await d(n);u({tokenResult:s,loading:!1,error:null})}catch(s){console.error("Failed to refresh token:",s),u({tokenResult:null,loading:!1,error:s instanceof Error?s:new Error("Failed to refresh token")})}},[d,n]);return(0,i.useEffect)(()=>{l&&a()},[l,a]),{...f,refreshToken:a}}const y=m;0&&(module.exports={useIdToken,useIdTokenInternal});
1
+ "use strict";"use client";var a=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var f=Object.prototype.hasOwnProperty;var g=(r,e)=>{for(var i in e)a(r,i,{get:e[i],enumerable:!0})},p=(r,e,i,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of m(e))!f.call(r,t)&&t!==i&&a(r,t,{get:()=>e[t],enumerable:!(o=T(e,t))||o.enumerable});return r};var I=r=>p(a({},"__esModule",{value:!0}),r);var h={};g(h,{useIdToken:()=>R,useIdTokenInternal:()=>k});module.exports=I(h);var l=require("react"),d=require("./useAssertWrappedTernSecureProvider"),c=require("./useAuth");function k(){(0,d.useAssertWrappedByTernSecureAuthProvider)("useIdToken");const{isLoaded:r,user:e}=(0,c.useAuth)(),[i,o]=(0,l.useState)({tokenResult:null,loading:!0,error:null}),t=(0,l.useCallback)(async s=>{const n=await s.getIdTokenResult();return{token:n.token,claims:n.claims,issuedAtTime:n.issuedAtTime,expirationTime:n.expirationTime,authTime:n.authTime,signInProvider:n.signInProvider}},[]),u=(0,l.useCallback)(async()=>{if(!e){o({tokenResult:null,loading:!1,error:null});return}try{o(n=>({...n,loading:!0}));const s=await t(e);o({tokenResult:s,loading:!1,error:null})}catch(s){console.error("Failed to refresh token:",s),o({tokenResult:null,loading:!1,error:s instanceof Error?s:new Error("Failed to refresh token")})}},[t,e]);return(0,l.useEffect)(()=>{r&&u()},[r,u]),{...i,refreshToken:u}}const R=k;0&&(module.exports={useIdToken,useIdTokenInternal});
2
2
  //# sourceMappingURL=useIdToken.js.map