Commit 2e23c29
authored
fix(builder): deduplicate concurrent dynamic imports in ecosystem manager (#351)
* build(deps): update @OpenZeppelin/ui-* packages to latest versions
Bump ui-components to ^1.4.0, ui-renderer to ^1.1.0, ui-storage to
^1.2.0, ui-types to ^1.11.0 across the builder app, export template,
and adapter-evm-core packages.
* feat(adapters): add ./networks subpath export for lightweight network loading
Each adapter now exposes a `./networks` entry point that re-exports the
network configuration without pulling in the full adapter runtime, wallet
libraries, or SDK code. This enables address-book and other cross-network
features to enumerate networks without breaking lazy loading.
* feat(builder): add address book with alias management
Integrate the address alias storage plugin from @openzeppelin/ui-storage:
- Extend IndexedDB schema (v3) with ALIAS_SCHEMA for alias persistence
- Add useAliasStorage hook for alias CRUD operations
- Add AliasLabelBridge context for global address label/suggestion
resolution and inline edit popover
- Add AddressBookDialog with the AddressBookWidget from ui-components
- Add Address Book sidebar entry below Templates
- Refactor ecosystemManager to use lightweight ./networks subpath
imports for cross-network enumeration without loading full adapters
- Add useAllNetworks hook using the lightweight getAllNetworks() helper
* fix(common): update pnpm lock
* fix(builder): add /networks aliases to vitest config and update snapshots
Register the new adapter ./networks subpath in vitest's resolver plugin
and alias map so export tests can resolve the lightweight network
imports. Update versions.ts and export snapshots to match the bumped
@OpenZeppelin/ui-* dependency versions.
* build(deps): update @OpenZeppelin/ui-* packages to latest published versions
Bump ui-types to ^1.11.1, ui-renderer to ^1.1.1, and ui-react
(evm-core devDep) to ^1.1.0. Update versions.ts, export template
package.json, and export snapshots to match.
* fix(builder): use URL constructor for explorer links to preserve query params
Solana devnet/testnet explorer URLs contain query strings
(e.g. ?cluster=devnet) which were broken by simple string
concatenation. Use the URL constructor to properly set the
pathname while preserving the search params.
* fix(builder): deduplicate concurrent dynamic imports in ecosystem manager
Cache in-flight promises instead of resolved values to prevent duplicate
imports when multiple callers request the same ecosystem concurrently.
Remove permanent failure caching so transient errors can be retried.
Simplify getNetworkById by removing redundant cache-only loop.1 parent d867a56 commit 2e23c29
3 files changed
Lines changed: 97 additions & 70 deletions
File tree
- .changeset
- apps/builder/src/core
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
36 | | - | |
| 36 | + | |
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
| 41 | + | |
| 42 | + | |
41 | 43 | | |
42 | 44 | | |
43 | | - | |
| 45 | + | |
44 | 46 | | |
45 | 47 | | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
68 | 72 | | |
69 | | - | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
70 | 80 | | |
71 | | - | |
72 | | - | |
73 | | - | |
| 81 | + | |
74 | 82 | | |
75 | 83 | | |
76 | 84 | | |
77 | 85 | | |
78 | 86 | | |
79 | 87 | | |
80 | 88 | | |
| 89 | + | |
81 | 90 | | |
82 | 91 | | |
83 | 92 | | |
| |||
86 | 95 | | |
87 | 96 | | |
88 | 97 | | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
89 | 102 | | |
90 | 103 | | |
91 | | - | |
92 | | - | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
93 | 109 | | |
94 | | - | |
95 | | - | |
96 | | - | |
97 | | - | |
98 | | - | |
99 | | - | |
100 | | - | |
101 | | - | |
102 | | - | |
103 | | - | |
104 | | - | |
105 | | - | |
106 | | - | |
107 | | - | |
108 | | - | |
109 | | - | |
110 | | - | |
111 | | - | |
112 | | - | |
113 | | - | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
114 | 132 | | |
115 | | - | |
116 | 133 | | |
117 | | - | |
118 | | - | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
119 | 144 | | |
120 | 145 | | |
121 | 146 | | |
| |||
127 | 152 | | |
128 | 153 | | |
129 | 154 | | |
130 | | - | |
131 | 155 | | |
132 | 156 | | |
133 | 157 | | |
| |||
151 | 175 | | |
152 | 176 | | |
153 | 177 | | |
154 | | - | |
155 | | - | |
156 | | - | |
157 | | - | |
158 | | - | |
159 | | - | |
160 | | - | |
161 | | - | |
162 | | - | |
163 | | - | |
164 | | - | |
165 | | - | |
166 | | - | |
167 | | - | |
168 | | - | |
169 | 178 | | |
170 | 179 | | |
171 | 180 | | |
172 | 181 | | |
173 | 182 | | |
174 | 183 | | |
175 | 184 | | |
176 | | - | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
177 | 190 | | |
178 | 191 | | |
179 | 192 | | |
| |||
0 commit comments