@redzone/taunt-logins-ui-react 0.0.17 → 0.0.19

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.
@@ -85,6 +85,8 @@ const TauntContext = react.createContext({
85
85
  tauntServiceEndpoint: "",
86
86
  isLoading: false,
87
87
  loggedIn: false,
88
+ setLoginDetails: ()=>{},
89
+ getMe: ()=>Promise.resolve(undefined),
88
90
  metamaskLogin: ()=>{},
89
91
  otpMagicLogin: ()=>{},
90
92
  telegramLogin: ()=>{},
@@ -551,30 +553,30 @@ function ModalView({ title, content, onClose }) {
551
553
  }
552
554
 
553
555
  const TauntProvider = ({ children, tauntServiceEndpoint, magicKey })=>{
554
- const [deets, setDeets] = react.useState();
556
+ const [loginDetails, setLoginDetails] = react.useState();
555
557
  const taunt = react.useMemo(()=>new tauntLogins.TauntApi(tauntServiceEndpoint), [
556
558
  tauntServiceEndpoint
557
559
  ]);
558
560
  const [isLoading, setIsLoading] = react.useState(false);
559
- const loggedIn = !!deets;
561
+ const loggedIn = !!loginDetails;
560
562
  const otpMagicLogin = react.useCallback((email)=>{
561
563
  if (!magicKey) throw new Error("magicKey is required for OTP login");
562
564
  setIsLoading(true);
563
- tauntLogins.tauntMagicEmailOTPLogin(tauntServiceEndpoint, magicKey, email, taunt).then(setDeets).finally(()=>setIsLoading(false));
565
+ tauntLogins.tauntMagicEmailOTPLogin(tauntServiceEndpoint, magicKey, email, taunt).then(setLoginDetails).finally(()=>setIsLoading(false));
564
566
  }, [
565
567
  tauntServiceEndpoint,
566
568
  magicKey
567
569
  ]);
568
570
  const metamaskLogin = react.useCallback(()=>{
569
571
  setIsLoading(true);
570
- tauntLogins.tauntMetamaskLogin(tauntServiceEndpoint, undefined, taunt).then(setDeets).finally(()=>setIsLoading(false));
572
+ tauntLogins.tauntMetamaskLogin(tauntServiceEndpoint, undefined, taunt).then(setLoginDetails).finally(()=>setIsLoading(false));
571
573
  }, [
572
574
  tauntServiceEndpoint
573
575
  ]);
574
576
  const telegramLogin = react.useCallback(()=>{
575
577
  if (!magicKey) throw new Error("magicKey is required for Telegram login");
576
578
  setIsLoading(true);
577
- tauntLogins.tauntMagicTelegramLogin(tauntServiceEndpoint, magicKey, taunt).then(setDeets).finally(()=>setIsLoading(false));
579
+ tauntLogins.tauntMagicTelegramLogin(tauntServiceEndpoint, magicKey, taunt).then(setLoginDetails).finally(()=>setIsLoading(false));
578
580
  }, [
579
581
  tauntServiceEndpoint,
580
582
  magicKey
@@ -597,15 +599,21 @@ const TauntProvider = ({ children, tauntServiceEndpoint, magicKey })=>{
597
599
  }, [
598
600
  loggedIn
599
601
  ]);
602
+ const getMe = react.useCallback(()=>cc._async_to_generator(function*() {
603
+ if (!loggedIn) return undefined;
604
+ return taunt.getLoggedInUser();
605
+ })(), [
606
+ loggedIn
607
+ ]);
600
608
  const logout = react.useCallback(()=>{
601
- setDeets(undefined);
609
+ setLoginDetails(undefined);
602
610
  }, []);
603
611
  const refreshToken = react.useCallback((token)=>cc._async_to_generator(function*() {
604
612
  if (!token) return;
605
613
  setIsLoading(true);
606
614
  try {
607
615
  const newDeets = yield taunt.refresh(token);
608
- setDeets(newDeets);
616
+ setLoginDetails(newDeets);
609
617
  } catch (error) {
610
618
  console.error("Failed to refresh token:", error);
611
619
  } finally{
@@ -618,6 +626,11 @@ const TauntProvider = ({ children, tauntServiceEndpoint, magicKey })=>{
618
626
  })(), [
619
627
  loggedIn
620
628
  ]);
629
+ const safeSetLoginDetails = react.useCallback((props)=>cc._async_to_generator(function*() {
630
+ taunt.setLoginDetails(props).then(setLoginDetails);
631
+ })(), [
632
+ taunt
633
+ ]);
621
634
  if (!tauntServiceEndpoint) {
622
635
  return /*#__PURE__*/ jsxRuntime.jsx("div", {
623
636
  children: "tauntServiceEndpoint is required"
@@ -628,7 +641,10 @@ const TauntProvider = ({ children, tauntServiceEndpoint, magicKey })=>{
628
641
  tauntServiceEndpoint,
629
642
  loggedIn,
630
643
  isLoading,
631
- deets,
644
+ deets: loginDetails,
645
+ loginDetails,
646
+ setLoginDetails: safeSetLoginDetails,
647
+ getMe,
632
648
  getClaimrData,
633
649
  getClaimrToken,
634
650
  otpMagicLogin,
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as react from 'react';
3
- import { ClaimrCampaignData } from '@redzone/taunt-logins';
3
+ import { TauntAccessDetails, TauntUser, ClaimrCampaignData } from '@redzone/taunt-logins';
4
4
 
5
5
  interface CoinbaseButtonProps {
6
6
  openCoinbase?: () => void;
@@ -86,11 +86,11 @@ declare function ModalView({ title, content, onClose }: ModalProps): react_jsx_r
86
86
  type ContextProps = {
87
87
  tauntServiceEndpoint: string;
88
88
  loggedIn: boolean;
89
- deets?: {
90
- accessToken: string;
91
- refreshToken: string;
92
- };
89
+ deets?: TauntAccessDetails;
90
+ loginDetails?: TauntAccessDetails;
93
91
  isLoading: boolean;
92
+ setLoginDetails: (props: TauntAccessDetails) => void;
93
+ getMe: () => Promise<TauntUser | undefined>;
94
94
  metamaskLogin: () => void;
95
95
  otpMagicLogin: (email: string) => void;
96
96
  telegramLogin: () => void;
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as react from 'react';
3
- import { ClaimrCampaignData } from '@redzone/taunt-logins';
3
+ import { TauntAccessDetails, TauntUser, ClaimrCampaignData } from '@redzone/taunt-logins';
4
4
 
5
5
  interface CoinbaseButtonProps {
6
6
  openCoinbase?: () => void;
@@ -86,11 +86,11 @@ declare function ModalView({ title, content, onClose }: ModalProps): react_jsx_r
86
86
  type ContextProps = {
87
87
  tauntServiceEndpoint: string;
88
88
  loggedIn: boolean;
89
- deets?: {
90
- accessToken: string;
91
- refreshToken: string;
92
- };
89
+ deets?: TauntAccessDetails;
90
+ loginDetails?: TauntAccessDetails;
93
91
  isLoading: boolean;
92
+ setLoginDetails: (props: TauntAccessDetails) => void;
93
+ getMe: () => Promise<TauntUser | undefined>;
94
94
  metamaskLogin: () => void;
95
95
  otpMagicLogin: (email: string) => void;
96
96
  telegramLogin: () => void;
package/dist/es/index.js CHANGED
@@ -85,6 +85,8 @@ const TauntContext = createContext({
85
85
  tauntServiceEndpoint: "",
86
86
  isLoading: false,
87
87
  loggedIn: false,
88
+ setLoginDetails: ()=>{},
89
+ getMe: ()=>Promise.resolve(undefined),
88
90
  metamaskLogin: ()=>{},
89
91
  otpMagicLogin: ()=>{},
90
92
  telegramLogin: ()=>{},
@@ -551,30 +553,30 @@ function ModalView({ title, content, onClose }) {
551
553
  }
552
554
 
553
555
  const TauntProvider = ({ children, tauntServiceEndpoint, magicKey })=>{
554
- const [deets, setDeets] = useState();
556
+ const [loginDetails, setLoginDetails] = useState();
555
557
  const taunt = useMemo(()=>new TauntApi(tauntServiceEndpoint), [
556
558
  tauntServiceEndpoint
557
559
  ]);
558
560
  const [isLoading, setIsLoading] = useState(false);
559
- const loggedIn = !!deets;
561
+ const loggedIn = !!loginDetails;
560
562
  const otpMagicLogin = useCallback((email)=>{
561
563
  if (!magicKey) throw new Error("magicKey is required for OTP login");
562
564
  setIsLoading(true);
563
- tauntMagicEmailOTPLogin(tauntServiceEndpoint, magicKey, email, taunt).then(setDeets).finally(()=>setIsLoading(false));
565
+ tauntMagicEmailOTPLogin(tauntServiceEndpoint, magicKey, email, taunt).then(setLoginDetails).finally(()=>setIsLoading(false));
564
566
  }, [
565
567
  tauntServiceEndpoint,
566
568
  magicKey
567
569
  ]);
568
570
  const metamaskLogin = useCallback(()=>{
569
571
  setIsLoading(true);
570
- tauntMetamaskLogin(tauntServiceEndpoint, undefined, taunt).then(setDeets).finally(()=>setIsLoading(false));
572
+ tauntMetamaskLogin(tauntServiceEndpoint, undefined, taunt).then(setLoginDetails).finally(()=>setIsLoading(false));
571
573
  }, [
572
574
  tauntServiceEndpoint
573
575
  ]);
574
576
  const telegramLogin = useCallback(()=>{
575
577
  if (!magicKey) throw new Error("magicKey is required for Telegram login");
576
578
  setIsLoading(true);
577
- tauntMagicTelegramLogin(tauntServiceEndpoint, magicKey, taunt).then(setDeets).finally(()=>setIsLoading(false));
579
+ tauntMagicTelegramLogin(tauntServiceEndpoint, magicKey, taunt).then(setLoginDetails).finally(()=>setIsLoading(false));
578
580
  }, [
579
581
  tauntServiceEndpoint,
580
582
  magicKey
@@ -597,15 +599,21 @@ const TauntProvider = ({ children, tauntServiceEndpoint, magicKey })=>{
597
599
  }, [
598
600
  loggedIn
599
601
  ]);
602
+ const getMe = useCallback(()=>_async_to_generator(function*() {
603
+ if (!loggedIn) return undefined;
604
+ return taunt.getLoggedInUser();
605
+ })(), [
606
+ loggedIn
607
+ ]);
600
608
  const logout = useCallback(()=>{
601
- setDeets(undefined);
609
+ setLoginDetails(undefined);
602
610
  }, []);
603
611
  const refreshToken = useCallback((token)=>_async_to_generator(function*() {
604
612
  if (!token) return;
605
613
  setIsLoading(true);
606
614
  try {
607
615
  const newDeets = yield taunt.refresh(token);
608
- setDeets(newDeets);
616
+ setLoginDetails(newDeets);
609
617
  } catch (error) {
610
618
  console.error("Failed to refresh token:", error);
611
619
  } finally{
@@ -618,6 +626,11 @@ const TauntProvider = ({ children, tauntServiceEndpoint, magicKey })=>{
618
626
  })(), [
619
627
  loggedIn
620
628
  ]);
629
+ const safeSetLoginDetails = useCallback((props)=>_async_to_generator(function*() {
630
+ taunt.setLoginDetails(props).then(setLoginDetails);
631
+ })(), [
632
+ taunt
633
+ ]);
621
634
  if (!tauntServiceEndpoint) {
622
635
  return /*#__PURE__*/ jsx("div", {
623
636
  children: "tauntServiceEndpoint is required"
@@ -628,7 +641,10 @@ const TauntProvider = ({ children, tauntServiceEndpoint, magicKey })=>{
628
641
  tauntServiceEndpoint,
629
642
  loggedIn,
630
643
  isLoading,
631
- deets,
644
+ deets: loginDetails,
645
+ loginDetails,
646
+ setLoginDetails: safeSetLoginDetails,
647
+ getMe,
632
648
  getClaimrData,
633
649
  getClaimrToken,
634
650
  otpMagicLogin,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redzone/taunt-logins-ui-react",
3
- "version": "0.0.17",
3
+ "version": "0.0.19",
4
4
  "type": "module",
5
5
  "main": "./dist/es/index.js",
6
6
  "module": "./dist/es/index.js",