@rango-dev/widget-embedded 0.20.1-next.13 → 0.20.1-next.14

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.
@@ -8,7 +8,7 @@ export declare const AppStoreContext: React.Context<import("zustand").UseBoundSt
8
8
  persist: {
9
9
  setOptions: (options: Partial<import("zustand/middleware").PersistOptions<import("./app").AppStoreState, {
10
10
  theme: import("./slices/settings").ThemeMode;
11
- language: "en" | "es" | "ja" | "fr";
11
+ language: "en" | "es" | "ja" | "fr" | null;
12
12
  affiliatePercent: number | null;
13
13
  affiliateRef: string | null;
14
14
  affiliateWallets: {
@@ -27,7 +27,7 @@ export declare const AppStoreContext: React.Context<import("zustand").UseBoundSt
27
27
  onFinishHydration: (fn: (state: import("./app").AppStoreState) => void) => () => void;
28
28
  getOptions: () => Partial<import("zustand/middleware").PersistOptions<import("./app").AppStoreState, {
29
29
  theme: import("./slices/settings").ThemeMode;
30
- language: "en" | "es" | "ja" | "fr";
30
+ language: "en" | "es" | "ja" | "fr" | null;
31
31
  affiliatePercent: number | null;
32
32
  affiliateRef: string | null;
33
33
  affiliateWallets: {
@@ -9,7 +9,7 @@ export declare function createAppStore(initialData?: WidgetConfig): import("zust
9
9
  persist: {
10
10
  setOptions: (options: Partial<import("zustand/middleware").PersistOptions<AppStoreState, {
11
11
  theme: import("./slices/settings").ThemeMode;
12
- language: "en" | "es" | "ja" | "fr";
12
+ language: "en" | "es" | "ja" | "fr" | null;
13
13
  affiliatePercent: number | null;
14
14
  affiliateRef: string | null;
15
15
  affiliateWallets: {
@@ -28,7 +28,7 @@ export declare function createAppStore(initialData?: WidgetConfig): import("zust
28
28
  onFinishHydration: (fn: (state: AppStoreState) => void) => () => void;
29
29
  getOptions: () => Partial<import("zustand/middleware").PersistOptions<AppStoreState, {
30
30
  theme: import("./slices/settings").ThemeMode;
31
- language: "en" | "es" | "ja" | "fr";
31
+ language: "en" | "es" | "ja" | "fr" | null;
32
32
  affiliatePercent: number | null;
33
33
  affiliateRef: string | null;
34
34
  affiliateWallets: {
@@ -6,7 +6,7 @@ import { type Language } from '@rango-dev/ui';
6
6
  export type ThemeMode = 'auto' | 'dark' | 'light';
7
7
  export interface SettingsSlice {
8
8
  theme: ThemeMode;
9
- language: Language;
9
+ language: Language | null;
10
10
  disabledLiquiditySources: string[];
11
11
  /** Keeping a history of blockchains that user has selected (in Swap process) */
12
12
  preferredBlockchains: string[];
@@ -23,7 +23,7 @@ export interface SettingsSlice {
23
23
  toggleInfiniteApprove: () => void;
24
24
  toggleLiquiditySource: (name: string) => void;
25
25
  setTheme: (theme: ThemeMode) => void;
26
- setLanguage: (language: Language) => void;
26
+ setLanguage: (language: Language | null) => void;
27
27
  toggleAllLiquiditySources: (swappers: SwapperMeta[], shouldReset?: boolean) => void;
28
28
  setAffiliateRef: (affiliateRef: string | null) => void;
29
29
  setAffiliatePercent: (affiliatePercent: number | null) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../src/store/slices/settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAQ9C,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAElD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,gFAAgF;IAChF,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gBAAgB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAEnD,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,iBAAiB,EAAE,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3D,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAClC,qBAAqB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,WAAW,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC1C,yBAAyB,EAAE,CACzB,QAAQ,EAAE,WAAW,EAAE,EACvB,WAAW,CAAC,EAAE,OAAO,KAClB,IAAI,CAAC;IACV,eAAe,EAAE,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACvD,mBAAmB,EAAE,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC/D,mBAAmB,EAAE,CACnB,gBAAgB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,IAAI,KAC/C,IAAI,CAAC;IACV,sBAAsB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,cAAc,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;CAChD;AAED,eAAO,MAAM,mBAAmB,EAAE,YAAY,CAC5C,aAAa,GAAG,WAAW,EAC3B;CAAE,EACF;CAAE,EACF,aAAa,CAoHb,CAAC"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../src/store/slices/settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAQ9C,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAElD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,gFAAgF;IAChF,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gBAAgB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAEnD,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,iBAAiB,EAAE,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3D,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAClC,qBAAqB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,WAAW,EAAE,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,yBAAyB,EAAE,CACzB,QAAQ,EAAE,WAAW,EAAE,EACvB,WAAW,CAAC,EAAE,OAAO,KAClB,IAAI,CAAC;IACV,eAAe,EAAE,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACvD,mBAAmB,EAAE,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC/D,mBAAmB,EAAE,CACnB,gBAAgB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,IAAI,KAC/C,IAAI,CAAC;IACV,sBAAsB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,cAAc,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;CAChD;AAED,eAAO,MAAM,mBAAmB,EAAE,YAAY,CAC5C,aAAa,GAAG,WAAW,EAC3B;CAAE,EACF;CAAE,EACF,aAAa,CAoHb,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rango-dev/widget-embedded",
3
- "version": "0.20.1-next.13",
3
+ "version": "0.20.1-next.14",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "source": "./src/index.ts",
@@ -47,4 +47,4 @@
47
47
  "publishConfig": {
48
48
  "access": "public"
49
49
  }
50
- }
50
+ }
@@ -20,7 +20,7 @@ export function Main() {
20
20
 
21
21
  const { config } = useAppStore();
22
22
  const { activeTheme } = useTheme(config?.theme || {});
23
- const { activeLanguage, changeLanguage } = useLanguage();
23
+ const { activeLanguage } = useLanguage();
24
24
  const [lastConnectedWalletWithNetwork, setLastConnectedWalletWithNetwork] =
25
25
  useState<string>('');
26
26
  const [disconnectedWallet, setDisconnectedWallet] = useState<WalletType>();
@@ -30,9 +30,6 @@ export function Main() {
30
30
  void useNotificationStore.persist.rehydrate();
31
31
  widgetContext.onConnectWallet(setLastConnectedWalletWithNetwork);
32
32
  }, []);
33
- useEffect(() => {
34
- changeLanguage(config?.language);
35
- }, [config?.language]);
36
33
 
37
34
  return (
38
35
  <I18nManager language={activeLanguage}>
@@ -3,6 +3,7 @@ import type { WidgetInfoContextInterface } from './WidgetInfo.types';
3
3
  import { useManager } from '@rango-dev/queue-manager-react';
4
4
  import React, { createContext, useContext } from 'react';
5
5
 
6
+ import { useLanguage } from '../../hooks/useLanguage';
6
7
  import { useAppStore } from '../../store/AppStore';
7
8
  import { useQuoteStore } from '../../store/quote';
8
9
  import { useWalletsStore } from '../../store/wallets';
@@ -26,6 +27,7 @@ export function WidgetInfo(props: React.PropsWithChildren) {
26
27
  const tokens = useAppStore().tokens();
27
28
  const swappers = useAppStore().swappers();
28
29
  const loadingStatus = useAppStore().fetchStatus;
30
+ const resetLanguage = useLanguage().resetLanguage;
29
31
 
30
32
  // eslint-disable-next-line react/jsx-no-constructed-context-values
31
33
  const value = {
@@ -42,6 +44,7 @@ export function WidgetInfo(props: React.PropsWithChildren) {
42
44
  swappers,
43
45
  loadingStatus,
44
46
  },
47
+ resetLanguage,
45
48
  };
46
49
 
47
50
  return (
@@ -18,4 +18,5 @@ export interface WidgetInfoContextInterface {
18
18
  swappers: SwapperMeta[];
19
19
  loadingStatus: FetchStatus;
20
20
  };
21
+ resetLanguage: () => void;
21
22
  }
@@ -9,18 +9,20 @@ interface UseLanguage {
9
9
  languages: LanguageItem[];
10
10
  defaultLanguage: Language;
11
11
  activeLanguage: Language;
12
- changeLanguage: (language?: Language) => void;
12
+ changeLanguage: (language?: Language | null) => void;
13
+ resetLanguage: () => void;
13
14
  }
14
15
 
15
16
  export function useLanguage(): UseLanguage {
16
- const { setLanguage, language } = useAppStore();
17
+ const { setLanguage, language, config } = useAppStore();
17
18
  const languages = LANGUAGES;
18
- const defaultLanguage = DEFAULT_LANGUAGE;
19
+ const defaultLanguage = config?.language || DEFAULT_LANGUAGE;
19
20
 
20
21
  return {
21
- activeLanguage: language,
22
+ activeLanguage: language || defaultLanguage,
22
23
  languages,
23
24
  defaultLanguage,
24
25
  changeLanguage: (language) => setLanguage(language || DEFAULT_LANGUAGE),
26
+ resetLanguage: () => setLanguage(null),
25
27
  };
26
28
  }
@@ -15,7 +15,7 @@ export type ThemeMode = 'auto' | 'dark' | 'light';
15
15
 
16
16
  export interface SettingsSlice {
17
17
  theme: ThemeMode;
18
- language: Language;
18
+ language: Language | null;
19
19
  disabledLiquiditySources: string[];
20
20
  /** Keeping a history of blockchains that user has selected (in Swap process) */
21
21
  preferredBlockchains: string[];
@@ -31,7 +31,7 @@ export interface SettingsSlice {
31
31
  toggleInfiniteApprove: () => void;
32
32
  toggleLiquiditySource: (name: string) => void;
33
33
  setTheme: (theme: ThemeMode) => void;
34
- setLanguage: (language: Language) => void;
34
+ setLanguage: (language: Language | null) => void;
35
35
  toggleAllLiquiditySources: (
36
36
  swappers: SwapperMeta[],
37
37
  shouldReset?: boolean
@@ -53,7 +53,7 @@ export const createSettingsSlice: StateCreator<
53
53
  > = (set, get) => ({
54
54
  disabledLiquiditySources: [],
55
55
  theme: 'auto',
56
- language: DEFAULT_LANGUAGE,
56
+ language: null,
57
57
  preferredBlockchains: [],
58
58
  slippage: DEFAULT_SLIPPAGE,
59
59
  customSlippage: null,