@lifi/widget 3.30.10 → 3.30.11

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/CHANGELOG.md CHANGED
@@ -2,6 +2,13 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [3.30.11](https://github.com/lifinance/widget/compare/v3.30.10...v3.30.11) (2025-09-15)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * add chain pinned event ([#552](https://github.com/lifinance/widget/issues/552)) ([7817b03](https://github.com/lifinance/widget/commit/7817b03a0a65899c2a66b545956eaee2c6efdfd4))
11
+
5
12
  ### [3.30.10](https://github.com/lifinance/widget/compare/v3.30.9...v3.30.10) (2025-09-15)
6
13
 
7
14
 
@@ -1,2 +1,2 @@
1
1
  export declare const name = "@lifi/widget";
2
- export declare const version = "3.30.10";
2
+ export declare const version = "3.30.11";
@@ -1,3 +1,3 @@
1
1
  export const name = '@lifi/widget';
2
- export const version = '3.30.10';
2
+ export const version = '3.30.11';
3
3
  //# sourceMappingURL=version.js.map
@@ -1,5 +1,7 @@
1
1
  import { persist } from 'zustand/middleware';
2
2
  import { createWithEqualityFn } from 'zustand/traditional';
3
+ import { widgetEvents } from '../../hooks/useWidgetEvents.js';
4
+ import { WidgetEvent } from '../../types/events.js';
3
5
  // (10 tiles: 9 + 1 for "All chains")
4
6
  export const maxGridItemsToShow = 10;
5
7
  export const maxChainsToShow = maxGridItemsToShow - 1;
@@ -74,9 +76,11 @@ export const createChainOrderStore = ({ namePrefix }) => createWithEqualityFn(pe
74
76
  set({ [`${formType}ShowAllNetworks`]: showAllNetworks });
75
77
  },
76
78
  setPinnedChain: (chainId) => {
79
+ const currentPinnedChains = get().pinnedChains;
80
+ const wasAlreadyPinned = currentPinnedChains.includes(chainId);
77
81
  set((state) => {
78
82
  const pinnedChains = [...state.pinnedChains];
79
- if (pinnedChains.includes(chainId)) {
83
+ if (wasAlreadyPinned) {
80
84
  return {
81
85
  pinnedChains: pinnedChains.filter((id) => id !== chainId),
82
86
  };
@@ -86,6 +90,10 @@ export const createChainOrderStore = ({ namePrefix }) => createWithEqualityFn(pe
86
90
  pinnedChains,
87
91
  };
88
92
  });
93
+ widgetEvents.emit(WidgetEvent.ChainPinned, {
94
+ chainId,
95
+ pinned: !wasAlreadyPinned,
96
+ });
89
97
  },
90
98
  }), {
91
99
  name: `${namePrefix || 'li.fi'}-widget-chains-order`,
@@ -1 +1 @@
1
- {"version":3,"file":"createChainOrderStore.js","sourceRoot":"","sources":["../../../../src/stores/chains/createChainOrderStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createChainOrderStore.js","sourceRoot":"","sources":["../../../../src/stores/chains/createChainOrderStore.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,8 @@ export declare enum WidgetEvent {
24
24
  FormFieldChanged = "formFieldChanged",
25
25
  SettingUpdated = "settingUpdated",
26
26
  TokenSearch = "tokenSearch",
27
- LowAddressActivityConfirmed = "lowAddressActivityConfirmed"
27
+ LowAddressActivityConfirmed = "lowAddressActivityConfirmed",
28
+ ChainPinned = "chainPinned"
28
29
  }
29
30
  export type WidgetEvents = {
30
31
  routeExecutionStarted: Route;
@@ -45,6 +46,7 @@ export type WidgetEvents = {
45
46
  pageEntered: NavigationRouteType;
46
47
  settingUpdated: SettingUpdated;
47
48
  tokenSearch: TokenSearch;
49
+ chainPinned: ChainPinned;
48
50
  [WidgetEvent.LowAddressActivityConfirmed]: {
49
51
  address: string;
50
52
  chainId: number;
@@ -95,3 +97,7 @@ export type SettingUpdated<K extends keyof SettingsProps = keyof SettingsProps>
95
97
  newSettings: SettingsProps;
96
98
  oldSettings: SettingsProps;
97
99
  };
100
+ export type ChainPinned = {
101
+ chainId: number;
102
+ pinned: boolean;
103
+ };
@@ -21,5 +21,6 @@ export var WidgetEvent;
21
21
  WidgetEvent["SettingUpdated"] = "settingUpdated";
22
22
  WidgetEvent["TokenSearch"] = "tokenSearch";
23
23
  WidgetEvent["LowAddressActivityConfirmed"] = "lowAddressActivityConfirmed";
24
+ WidgetEvent["ChainPinned"] = "chainPinned";
24
25
  })(WidgetEvent || (WidgetEvent = {}));
25
26
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/types/events.ts"],"names":[],"mappings":"AAMA,MAAM,CAAN,IAAY,WAsBX;AAtBD,WAAY,WAAW;IACrB,8DAA+C,CAAA;IAC/C,8DAA+C,CAAA;IAC/C,kEAAmD,CAAA;IACnD,4DAA6C,CAAA;IAC7C,wDAAyC,CAAA;IACzC,8CAA+B,CAAA;IAC/B,kDAAmC,CAAA;IACnC,gDAAiC,CAAA;IACjC,oEAAqD,CAAA;IACrD,8EAA+D,CAAA;IAC/D,0DAA2C,CAAA;IAC3C;;OAEG;IACH,4EAA6D,CAAA;IAC7D,gDAAiC,CAAA;IACjC,0CAA2B,CAAA;IAC3B,oDAAqC,CAAA;IACrC,gDAAiC,CAAA;IACjC,0CAA2B,CAAA;IAC3B,0EAA2D,CAAA;AAC7D,CAAC,EAtBW,WAAW,KAAX,WAAW,QAsBtB"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/types/events.ts"],"names":[],"mappings":"AAMA,MAAM,CAAN,IAAY,WAuBX;AAvBD,WAAY,WAAW;IACrB,8DAA+C,CAAA;IAC/C,8DAA+C,CAAA;IAC/C,kEAAmD,CAAA;IACnD,4DAA6C,CAAA;IAC7C,wDAAyC,CAAA;IACzC,8CAA+B,CAAA;IAC/B,kDAAmC,CAAA;IACnC,gDAAiC,CAAA;IACjC,oEAAqD,CAAA;IACrD,8EAA+D,CAAA;IAC/D,0DAA2C,CAAA;IAC3C;;OAEG;IACH,4EAA6D,CAAA;IAC7D,gDAAiC,CAAA;IACjC,0CAA2B,CAAA;IAC3B,oDAAqC,CAAA;IACrC,gDAAiC,CAAA;IACjC,0CAA2B,CAAA;IAC3B,0EAA2D,CAAA;IAC3D,0CAA2B,CAAA;AAC7B,CAAC,EAvBW,WAAW,KAAX,WAAW,QAuBtB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lifi/widget",
3
- "version": "3.30.10",
3
+ "version": "3.30.11",
4
4
  "description": "LI.FI Widget for cross-chain bridging and swapping. It will drive your multi-chain strategy and attract new users from everywhere.",
5
5
  "type": "module",
6
6
  "main": "./dist/esm/index.js",
package/package.json.tmp CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lifi/widget",
3
- "version": "3.30.10",
3
+ "version": "3.30.11",
4
4
  "description": "LI.FI Widget for cross-chain bridging and swapping. It will drive your multi-chain strategy and attract new users from everywhere.",
5
5
  "type": "module",
6
6
  "main": "./src/index.ts",
@@ -1,2 +1,2 @@
1
1
  export const name = '@lifi/widget'
2
- export const version = '3.30.10'
2
+ export const version = '3.30.11'
@@ -1,6 +1,8 @@
1
1
  import type { StateCreator } from 'zustand'
2
2
  import { persist } from 'zustand/middleware'
3
3
  import { createWithEqualityFn } from 'zustand/traditional'
4
+ import { widgetEvents } from '../../hooks/useWidgetEvents.js'
5
+ import { WidgetEvent } from '../../types/events.js'
4
6
  import type { PersistStoreProps } from '../types.js'
5
7
  import type { ChainOrderState } from './types.js'
6
8
 
@@ -92,9 +94,11 @@ export const createChainOrderStore = ({ namePrefix }: PersistStoreProps) =>
92
94
  set({ [`${formType}ShowAllNetworks`]: showAllNetworks })
93
95
  },
94
96
  setPinnedChain: (chainId) => {
97
+ const currentPinnedChains = get().pinnedChains
98
+ const wasAlreadyPinned = currentPinnedChains.includes(chainId)
95
99
  set((state: ChainOrderState) => {
96
100
  const pinnedChains = [...state.pinnedChains]
97
- if (pinnedChains.includes(chainId)) {
101
+ if (wasAlreadyPinned) {
98
102
  return {
99
103
  pinnedChains: pinnedChains.filter((id) => id !== chainId),
100
104
  }
@@ -104,6 +108,10 @@ export const createChainOrderStore = ({ namePrefix }: PersistStoreProps) =>
104
108
  pinnedChains,
105
109
  }
106
110
  })
111
+ widgetEvents.emit(WidgetEvent.ChainPinned, {
112
+ chainId,
113
+ pinned: !wasAlreadyPinned,
114
+ })
107
115
  },
108
116
  }),
109
117
  {
@@ -26,6 +26,7 @@ export enum WidgetEvent {
26
26
  SettingUpdated = 'settingUpdated',
27
27
  TokenSearch = 'tokenSearch',
28
28
  LowAddressActivityConfirmed = 'lowAddressActivityConfirmed',
29
+ ChainPinned = 'chainPinned',
29
30
  }
30
31
 
31
32
  export type WidgetEvents = {
@@ -47,6 +48,7 @@ export type WidgetEvents = {
47
48
  pageEntered: NavigationRouteType
48
49
  settingUpdated: SettingUpdated
49
50
  tokenSearch: TokenSearch
51
+ chainPinned: ChainPinned
50
52
  [WidgetEvent.LowAddressActivityConfirmed]: {
51
53
  address: string
52
54
  chainId: number
@@ -108,3 +110,8 @@ export type SettingUpdated<
108
110
  newSettings: SettingsProps
109
111
  oldSettings: SettingsProps
110
112
  }
113
+
114
+ export type ChainPinned = {
115
+ chainId: number
116
+ pinned: boolean
117
+ }