@volr/react 0.1.15 → 0.1.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -9030,7 +9030,7 @@ var safeStorage = {
9030
9030
  }
9031
9031
  };
9032
9032
 
9033
- // ../shared/src/constants/storage.ts
9033
+ // ../shared/dist/constants/storage.js
9034
9034
  var STORAGE_KEYS = {
9035
9035
  accessToken: "volr:accessToken",
9036
9036
  refreshToken: "volr:refreshToken",
@@ -18509,41 +18509,9 @@ function useVolrWallet() {
18509
18509
  );
18510
18510
  return { evm };
18511
18511
  }
18512
- function createAxiosInstance(baseUrl, apiKey) {
18513
- const instance = axios__default.default.create({
18514
- baseURL: baseUrl.replace(/\/+$/, ""),
18515
- // Remove trailing slashes
18516
- withCredentials: true,
18517
- // Include cookies
18518
- headers: {
18519
- "Content-Type": "application/json"
18520
- }
18521
- });
18522
- instance.interceptors.request.use((config) => {
18523
- if (apiKey) {
18524
- config.headers["X-API-Key"] = apiKey;
18525
- }
18526
- return config;
18527
- });
18528
- instance.interceptors.response.use(
18529
- (response) => response,
18530
- (error) => {
18531
- if (error.response?.data) {
18532
- const errorData = error.response.data;
18533
- if (errorData.error?.message) {
18534
- error.message = errorData.error.message;
18535
- }
18536
- }
18537
- return Promise.reject(error);
18538
- }
18539
- );
18540
- return instance;
18541
- }
18542
-
18543
- // src/hooks/useVolrLogin.ts
18544
18512
  function useVolrLogin() {
18545
18513
  const { config, setUser } = useVolr();
18546
- const { setAccessToken, setRefreshToken } = useInternalAuth();
18514
+ const { setAccessToken, setRefreshToken, client } = useInternalAuth();
18547
18515
  const toVolrUser = react.useCallback((u) => {
18548
18516
  return {
18549
18517
  id: u.id,
@@ -18560,27 +18528,18 @@ function useVolrLogin() {
18560
18528
  };
18561
18529
  }, []);
18562
18530
  const apiBaseUrl = resolveApiBaseUrl(config);
18563
- const api = react.useMemo(
18564
- () => createAxiosInstance(apiBaseUrl, config.projectApiKey),
18565
- [apiBaseUrl, config.projectApiKey]
18566
- );
18567
18531
  const requestEmailCode = react.useCallback(
18568
18532
  async (email) => {
18569
18533
  const normalizedEmail = email.trim().toLowerCase();
18570
18534
  if (!normalizedEmail || !normalizedEmail.includes("@")) {
18571
18535
  throw new Error("Invalid email address");
18572
18536
  }
18573
- const response = await api.post("/auth/email/send", {
18537
+ await client.post("/auth/email/send", {
18574
18538
  email: normalizedEmail
18575
18539
  });
18576
- if (!response.data?.ok) {
18577
- throw new Error(
18578
- response.data?.error?.message || "Failed to send verification code"
18579
- );
18580
- }
18581
18540
  safeStorage.setItem(STORAGE_KEYS.lastEmail, normalizedEmail);
18582
18541
  },
18583
- [api]
18542
+ [client]
18584
18543
  );
18585
18544
  const verifyEmailCode = react.useCallback(
18586
18545
  async (email, code) => {
@@ -18592,24 +18551,13 @@ function useVolrLogin() {
18592
18551
  if (!/^\d{6}$/.test(normalizedCode)) {
18593
18552
  throw new Error("Invalid code format");
18594
18553
  }
18595
- const response = await api.post("/auth/email/verify", {
18554
+ const response = await client.post("/auth/email/verify", {
18596
18555
  email: normalizedEmail,
18597
18556
  code: normalizedCode
18598
18557
  });
18599
- if (!response.data?.ok) {
18600
- throw new Error(
18601
- response.data?.error?.message || "Invalid verification code"
18602
- );
18603
- }
18604
- const verifyData = response.data;
18605
- const userFromServer = verifyData?.data?.user;
18606
- const isNewUser = !!verifyData?.data?.isNewUser;
18607
- const accessToken = verifyData?.data?.accessToken || "";
18608
- const refreshToken = verifyData?.data?.refreshToken || "";
18558
+ const { user: userFromServer, isNewUser, accessToken, refreshToken } = response;
18609
18559
  if (!accessToken) {
18610
- throw new Error(
18611
- "Access token is required but was not provided by the server"
18612
- );
18560
+ throw new Error("Access token is required but was not provided by the server");
18613
18561
  }
18614
18562
  setAccessToken(accessToken);
18615
18563
  if (refreshToken) {
@@ -18628,7 +18576,7 @@ function useVolrLogin() {
18628
18576
  accessToken
18629
18577
  };
18630
18578
  },
18631
- [api, setAccessToken, setRefreshToken, setUser, toVolrUser]
18579
+ [client, setAccessToken, setRefreshToken, setUser, toVolrUser]
18632
18580
  );
18633
18581
  const handleSocialLogin = react.useCallback(
18634
18582
  async (provider) => {
@@ -18640,41 +18588,21 @@ function useVolrLogin() {
18640
18588
  [apiBaseUrl, config.projectApiKey]
18641
18589
  );
18642
18590
  const requestSiweNonce = react.useCallback(async () => {
18643
- const response = await api.get("/auth/siwe/nonce");
18644
- if (!response.data?.ok) {
18645
- throw new Error(
18646
- response.data?.error?.message || "Failed to generate nonce"
18647
- );
18648
- }
18649
- return response.data.data.nonce;
18650
- }, [api]);
18591
+ const response = await client.get("/auth/siwe/nonce");
18592
+ return response.nonce;
18593
+ }, [client]);
18651
18594
  const verifySiweSignature = react.useCallback(
18652
18595
  async (message, signature, options) => {
18653
18596
  try {
18654
- const response = await api.post("/auth/siwe/verify", {
18597
+ const response = await client.post("/auth/siwe/verify", {
18655
18598
  message,
18656
18599
  signature,
18657
18600
  walletConnector: options?.walletConnector,
18658
18601
  chainId: options?.chainId
18659
18602
  });
18660
- if (!response.data?.ok) {
18661
- console.error(
18662
- "[verifySiweSignature] Backend returned error:",
18663
- response.data
18664
- );
18665
- throw new Error(
18666
- response.data?.error?.message || "Invalid SIWE signature"
18667
- );
18668
- }
18669
- const verifyData = response.data;
18670
- const userFromServer = verifyData?.data?.user;
18671
- const isNewUser = !!verifyData?.data?.isNewUser;
18672
- const accessToken = verifyData?.data?.accessToken || "";
18673
- const refreshToken = verifyData?.data?.refreshToken || "";
18603
+ const { user: userFromServer, isNewUser, accessToken, refreshToken } = response;
18674
18604
  if (!accessToken) {
18675
- throw new Error(
18676
- "Access token is required but was not provided by the server"
18677
- );
18605
+ throw new Error("Access token is required but was not provided by the server");
18678
18606
  }
18679
18607
  setAccessToken(accessToken);
18680
18608
  if (refreshToken) {
@@ -18699,7 +18627,7 @@ function useVolrLogin() {
18699
18627
  throw error;
18700
18628
  }
18701
18629
  },
18702
- [api, setAccessToken, setRefreshToken, setUser, toVolrUser]
18630
+ [client, setAccessToken, setRefreshToken, setUser, toVolrUser]
18703
18631
  );
18704
18632
  const handlePasskeyComplete = react.useCallback(async () => {
18705
18633
  }, []);
@@ -18712,6 +18640,38 @@ function useVolrLogin() {
18712
18640
  handlePasskeyComplete
18713
18641
  };
18714
18642
  }
18643
+ function createAxiosInstance(baseUrl, apiKey) {
18644
+ const instance = axios__default.default.create({
18645
+ baseURL: baseUrl.replace(/\/+$/, ""),
18646
+ // Remove trailing slashes
18647
+ withCredentials: true,
18648
+ // Include cookies
18649
+ headers: {
18650
+ "Content-Type": "application/json"
18651
+ }
18652
+ });
18653
+ instance.interceptors.request.use((config) => {
18654
+ if (apiKey) {
18655
+ config.headers["X-API-Key"] = apiKey;
18656
+ }
18657
+ return config;
18658
+ });
18659
+ instance.interceptors.response.use(
18660
+ (response) => response,
18661
+ (error) => {
18662
+ if (error.response?.data) {
18663
+ const errorData = error.response.data;
18664
+ if (errorData.error?.message) {
18665
+ error.message = errorData.error.message;
18666
+ }
18667
+ }
18668
+ return Promise.reject(error);
18669
+ }
18670
+ );
18671
+ return instance;
18672
+ }
18673
+
18674
+ // src/hooks/useVolrAuthCallback.ts
18715
18675
  function useVolrAuthCallback(options = {}) {
18716
18676
  const { config, setUser } = useVolr();
18717
18677
  const { refreshAccessToken, setAccessToken, setRefreshToken, client } = useInternalAuth();