@rango-dev/widget-embedded 0.22.0 → 0.22.1

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.
@@ -6,6 +6,7 @@ export declare class TabManager implements TabManagerInterface {
6
6
  private events;
7
7
  private channel;
8
8
  constructor(events: Events);
9
+ init: () => void;
9
10
  /**
10
11
  * This is applicable when a user in an inactive tab seeks to activate that tab.
11
12
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tabManager.d.ts","sourceRoot":"","sources":["../../../src/libs/tabManager/tabManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAGN,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAI5B,qBAAa,UAAW,YAAW,mBAAmB;IACpD,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,KAAK,CAAgE;IAC7E,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,OAAO,CAAmB;gBAEtB,MAAM,EAAE,MAAM;IAQ1B;;OAEG;IACH,UAAU,aAUR;IAEF,SAAS,gBAEP;IAEF;;OAEG;IACH,OAAO,aAOL;IAEF;;OAEG;IACH,OAAO,CAAC,UAAU;IAiBlB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,kBAAkB,CAyBxB;IAEF,OAAO,CAAC,sBAAsB,CAI5B;IAEF,OAAO,CAAC,YAAY,CAOlB;IACF;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAIlC;;;OAGG;YACW,QAAQ;IAatB;;;OAGG;IACH,OAAO,CAAC,KAAK;IAeb,OAAO,CAAC,KAAK;IAKb;;OAEG;IACH,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,cAAc;IAItB;;;OAGG;IACH,OAAO,CAAC,YAAY;CAcrB"}
1
+ {"version":3,"file":"tabManager.d.ts","sourceRoot":"","sources":["../../../src/libs/tabManager/tabManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAGN,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAI5B,qBAAa,UAAW,YAAW,mBAAmB;IACpD,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,KAAK,CAAgE;IAC7E,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,OAAO,CAAmB;gBAEtB,MAAM,EAAE,MAAM;IAM1B,IAAI,aAGF;IAEF;;OAEG;IACH,UAAU,aAUR;IAEF,SAAS,gBAEP;IAEF;;OAEG;IACH,OAAO,aAOL;IAEF;;OAEG;IACH,OAAO,CAAC,UAAU;IAiBlB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,kBAAkB,CAyBxB;IAEF,OAAO,CAAC,sBAAsB,CAI5B;IAEF,OAAO,CAAC,YAAY,CAOlB;IACF;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAIlC;;;OAGG;YACW,QAAQ;IAatB;;;OAGG;IACH,OAAO,CAAC,KAAK;IAeb,OAAO,CAAC,KAAK;IAKb;;OAEG;IACH,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,cAAc;IAItB;;;OAGG;IACH,OAAO,CAAC,YAAY;CAcrB"}
@@ -21,6 +21,7 @@ export type Events = {
21
21
  onRelease?: () => void;
22
22
  };
23
23
  export interface TabManagerInterface {
24
+ init: () => void;
24
25
  forceClaim: () => void;
25
26
  isClaimed: () => boolean;
26
27
  destroy: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"tabManager.types.d.ts","sourceRoot":"","sources":["../../../src/libs/tabManager/tabManager.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,EAAE,GAAG,MAAM,CAAC;AAExB,KAAK,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AACpD,KAAK,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AACpC,KAAK,iBAAiB,GAAG;IACvB,IAAI,EAAE,aAAa,CAAC;IACpB,WAAW,EAAE,EAAE,CAAC;CACjB,CAAC;AACF,KAAK,mBAAmB,GAAG;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,WAAW,EAAE,EAAE,CAAA;CAAE,CAAC;AAEtE,MAAM,MAAM,OAAO,GACf,WAAW,GACX,WAAW,GACX,iBAAiB,GACjB,mBAAmB,CAAC;AAExB,MAAM,MAAM,MAAM,GAAG;IAEnB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,OAAO,CAAC;IACzB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB"}
1
+ {"version":3,"file":"tabManager.types.d.ts","sourceRoot":"","sources":["../../../src/libs/tabManager/tabManager.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,EAAE,GAAG,MAAM,CAAC;AAExB,KAAK,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AACpD,KAAK,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AACpC,KAAK,iBAAiB,GAAG;IACvB,IAAI,EAAE,aAAa,CAAC;IACpB,WAAW,EAAE,EAAE,CAAC;CACjB,CAAC;AACF,KAAK,mBAAmB,GAAG;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,WAAW,EAAE,EAAE,CAAA;CAAE,CAAC;AAEtE,MAAM,MAAM,OAAO,GACf,WAAW,GACX,WAAW,GACX,iBAAiB,GACjB,mBAAmB,CAAC;AAExB,MAAM,MAAM,MAAM,GAAG;IAEnB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,OAAO,CAAC;IACzB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB"}
@@ -1,4 +1,5 @@
1
1
  import type { Watermark } from '../hooks/useFetchApiConfig';
2
+ import type { TabManagerInterface } from '../libs/tabManager';
2
3
  interface UiState {
3
4
  isActiveTab: boolean;
4
5
  tabManagerInitiated: boolean;
@@ -23,7 +24,6 @@ export declare const useUiStore: {
23
24
  setWatermark: () => (watermark: Watermark) => void;
24
25
  };
25
26
  };
26
- export declare const setCurrentTabAsActive: () => void;
27
- export declare const destroyTabManager: () => void;
27
+ export declare const tabManager: TabManagerInterface;
28
28
  export {};
29
29
  //# sourceMappingURL=ui.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/store/ui.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAS5D,UAAU,OAAO;IACf,WAAW,EAAE,OAAO,CAAC;IACrB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,SAAS,EAAE,SAAS,CAAC;IACrB,kBAAkB,EAAE,CAClB,qBAAqB,EAAE,MAAM,IAAI,EACjC,eAAe,EAAE,OAAO,KACrB,IAAI,CAAC;IACV,uBAAuB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,YAAY,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,CAAC;CAC9C;AAED,eAAO,MAAM,UAAU;;;;;;;;;;0DAPI,MAAM,IAAI,mBAChB,OAAO,KACrB,IAAI;8CACuB,OAAO,KAAK,IAAI;wCACtB,SAAS,KAAK,IAAI;;CA0B7C,CAAC;AASF,eAAO,MAAM,qBAAqB,YAAwB,CAAC;AAE3D,eAAO,MAAM,iBAAiB,YAAqB,CAAC"}
1
+ {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/store/ui.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAQ9D,UAAU,OAAO;IACf,WAAW,EAAE,OAAO,CAAC;IACrB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,SAAS,EAAE,SAAS,CAAC;IACrB,kBAAkB,EAAE,CAClB,qBAAqB,EAAE,MAAM,IAAI,EACjC,eAAe,EAAE,OAAO,KACrB,IAAI,CAAC;IACV,uBAAuB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,YAAY,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,CAAC;CAC9C;AAED,eAAO,MAAM,UAAU;;;;;;;;;;0DAPI,MAAM,IAAI,mBAChB,OAAO,KACrB,IAAI;8CACuB,OAAO,KAAK,IAAI;wCACtB,SAAS,KAAK,IAAI;;CA0B7C,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,mBAKvB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rango-dev/widget-embedded",
3
- "version": "0.22.0",
3
+ "version": "0.22.1",
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
+ }
@@ -12,7 +12,7 @@ import { isAppLoadedIntoIframe } from '../../hooks/useIframe/useIframe.helpers';
12
12
  import { useNavigateBack } from '../../hooks/useNavigateBack';
13
13
  import { useTheme } from '../../hooks/useTheme';
14
14
  import { useAppStore } from '../../store/AppStore';
15
- import { setCurrentTabAsActive, useUiStore } from '../../store/ui';
15
+ import { tabManager, useUiStore } from '../../store/ui';
16
16
  import { useWalletsStore } from '../../store/wallets';
17
17
  import { getContainer } from '../../utils/common';
18
18
  import { getPendingSwaps } from '../../utils/queue';
@@ -56,7 +56,7 @@ function Layout(props: PropsWithChildren<PropTypes>) {
56
56
  const hasRunningSwap = pendingSwaps.some((swap) => swap.status === 'running');
57
57
 
58
58
  const onActivateTab = () =>
59
- activateCurrentTab(setCurrentTabAsActive, hasRunningSwap);
59
+ activateCurrentTab(tabManager.forceClaim, hasRunningSwap);
60
60
 
61
61
  const onConnectWallet = () => {
62
62
  header.onWallet?.();
@@ -4,13 +4,14 @@ import type { PropsWithChildren } from 'react';
4
4
  import React, { useEffect } from 'react';
5
5
 
6
6
  import { DEFAULT_CONFIG } from '../../store/slices/config';
7
- import { destroyTabManager } from '../../store/ui';
7
+ import { tabManager } from '../../store/ui';
8
8
  import { Main } from '../App';
9
9
  import { WidgetProvider } from '../WidgetProvider';
10
10
 
11
11
  export function Widget(props: PropsWithChildren<WidgetProps>) {
12
12
  useEffect(() => {
13
- return destroyTabManager;
13
+ tabManager.init();
14
+ return tabManager.destroy;
14
15
  }, []);
15
16
 
16
17
  if (!props.config?.externalWallets) {
@@ -7,7 +7,7 @@ import { useLanguage } from '../../hooks/useLanguage';
7
7
  import { useAppStore } from '../../store/AppStore';
8
8
  import { useNotificationStore } from '../../store/notification';
9
9
  import { useQuoteStore } from '../../store/quote';
10
- import { setCurrentTabAsActive, useUiStore } from '../../store/ui';
10
+ import { tabManager, useUiStore } from '../../store/ui';
11
11
  import { useWalletsStore } from '../../store/wallets';
12
12
  import { calculateWalletUsdValue } from '../../utils/wallets';
13
13
 
@@ -36,7 +36,7 @@ export function WidgetInfo(props: React.PropsWithChildren) {
36
36
  // eslint-disable-next-line react/jsx-no-constructed-context-values
37
37
  const value: WidgetInfoContextInterface = {
38
38
  isActiveTab,
39
- setCurrentTabAsActive,
39
+ setCurrentTabAsActive: tabManager.forceClaim,
40
40
  history,
41
41
  wallets: {
42
42
  isLoading,
@@ -18,9 +18,12 @@ export class TabManager implements TabManagerInterface {
18
18
  this.channel = new BroadcastChannel(CHANNEL_NAME);
19
19
  this.tabId = Math.trunc(Math.random() * MAXIMUM_TAB_ID);
20
20
  this.events = events;
21
+ }
22
+
23
+ init = () => {
21
24
  this.initEvents();
22
25
  void this.tryClaim();
23
- }
26
+ };
24
27
 
25
28
  /**
26
29
  * This is applicable when a user in an inactive tab seeks to activate that tab.
@@ -22,6 +22,7 @@ export type Events = {
22
22
  };
23
23
 
24
24
  export interface TabManagerInterface {
25
+ init: () => void;
25
26
  forceClaim: () => void;
26
27
  isClaimed: () => boolean;
27
28
  destroy: () => void;
package/src/store/ui.ts CHANGED
@@ -45,13 +45,9 @@ export const useUiStore = createSelectors(
45
45
  }))
46
46
  );
47
47
 
48
- const tabManager: TabManagerInterface = new TabManager({
48
+ export const tabManager: TabManagerInterface = new TabManager({
49
49
  onInit: () => useUiStore.setState({ tabManagerInitiated: true }),
50
50
  onClaim: () =>
51
51
  useUiStore.setState({ isActiveTab: true, showActivateTabModal: false }),
52
52
  onRelease: () => useUiStore.setState({ isActiveTab: false }),
53
53
  });
54
-
55
- export const setCurrentTabAsActive = tabManager.forceClaim;
56
-
57
- export const destroyTabManager = tabManager.destroy;