@@ -14,6 +14,13 @@ import {
14
14
networkRightOptions ,
15
15
} from "./const/configurationOptions" ;
16
16
import { AssetConfiguration , NetworkConfiguration } from "./types" ;
17
+ import {
18
+ assetsLeftElementOptions ,
19
+ assetsRightElementOptions ,
20
+ networksLeftElementOptions ,
21
+ networksRightElementOptions ,
22
+ } from "@ledgerhq/live-common/wallet-api/ModularDrawer/types" ;
23
+ import { getElement , makeOnValueChange } from "./utils" ;
17
24
18
25
function ModularDrawerScreenDebug ( ) {
19
26
const { openDrawer } = useModularDrawerController ( ) ;
@@ -46,16 +53,12 @@ function ModularDrawerScreenDebug() {
46
53
flow : "debug_flow" ,
47
54
source : "debug_source" ,
48
55
assetsConfiguration : {
49
- leftElement :
50
- selectedAssetLeftElement === "undefined" ? undefined : selectedAssetLeftElement ,
51
- rightElement :
52
- selectedAssetRightElement === "undefined" ? undefined : selectedAssetRightElement ,
56
+ leftElement : getElement ( selectedAssetLeftElement ) ,
57
+ rightElement : getElement ( selectedAssetRightElement ) ,
53
58
} ,
54
59
networksConfiguration : {
55
- leftElement :
56
- selectedNetworkLeftElement === "undefined" ? undefined : selectedNetworkLeftElement ,
57
- rightElement :
58
- selectedNetworkRightElement === "undefined" ? undefined : selectedNetworkRightElement ,
60
+ leftElement : getElement ( selectedNetworkLeftElement ) ,
61
+ rightElement : getElement ( selectedNetworkRightElement ) ,
59
62
} ,
60
63
} ) ;
61
64
} , [
@@ -85,12 +88,14 @@ function ModularDrawerScreenDebug() {
85
88
</ SectionCard >
86
89
87
90
< SectionCard title = "Feature Flag" >
88
- < FeatureFlagDetails
89
- key = { "llmModularDrawer" }
90
- focused = { isFocused }
91
- flagName = { "llmModularDrawer" }
92
- setFocusedName = { v => setIsFocused ( v === "llmModularDrawer" ) }
93
- />
91
+ { ( [ "llmModularDrawer" , "llmModularDrawerBackendData" ] as const ) . map ( flag => (
92
+ < FeatureFlagDetails
93
+ key = { flag }
94
+ focused = { isFocused }
95
+ flagName = { flag }
96
+ setFocusedName = { v => setIsFocused ( v === flag ) }
97
+ />
98
+ ) ) }
94
99
</ SectionCard >
95
100
96
101
< SectionCard title = "Basic Configuration" >
@@ -125,23 +130,18 @@ function ModularDrawerScreenDebug() {
125
130
label = "Left Element"
126
131
description = "Choose what to display on the left side of asset rows"
127
132
value = { selectedAssetLeftElement || "undefined" }
128
- onValueChange = { ( value : string ) => {
129
- if ( value === "undefined" || value === "apy" || value === "priceVariation" ) {
130
- setSelectedAssetLeftElement ( value ) ;
131
- }
132
- } }
133
+ onValueChange = { makeOnValueChange ( assetsLeftElementOptions , setSelectedAssetLeftElement ) }
133
134
options = { assetLeftOptions }
134
135
/>
135
136
136
137
< PickerField
137
138
label = "Right Element"
138
139
description = "Choose what to display on the right side of asset rows"
139
140
value = { selectedAssetRightElement || "undefined" }
140
- onValueChange = { ( value : string ) => {
141
- if ( value === "undefined" || value === "balance" || value === "marketTrend" ) {
142
- setSelectedAssetRightElement ( value ) ;
143
- }
144
- } }
141
+ onValueChange = { makeOnValueChange (
142
+ assetsRightElementOptions ,
143
+ setSelectedAssetRightElement ,
144
+ ) }
145
145
options = { assetRightOptions }
146
146
/>
147
147
</ SectionCard >
@@ -151,27 +151,21 @@ function ModularDrawerScreenDebug() {
151
151
label = "Left Element"
152
152
description = "Choose what to display on the left side of network rows"
153
153
value = { selectedNetworkLeftElement || "undefined" }
154
- onValueChange = { ( value : string ) => {
155
- if (
156
- value === "undefined" ||
157
- value === "numberOfAccounts" ||
158
- value === "numberOfAccountsAndApy"
159
- ) {
160
- setSelectedNetworkLeftElement ( value ) ;
161
- }
162
- } }
154
+ onValueChange = { makeOnValueChange (
155
+ networksLeftElementOptions ,
156
+ setSelectedNetworkLeftElement ,
157
+ ) }
163
158
options = { networkLeftOptions }
164
159
/>
165
160
166
161
< PickerField
167
162
label = "Right Element"
168
163
description = "Choose what to display on the right side of network rows"
169
164
value = { selectedNetworkRightElement || "undefined" }
170
- onValueChange = { ( value : string ) => {
171
- if ( value === "undefined" || value === "balance" ) {
172
- setSelectedNetworkRightElement ( value ) ;
173
- }
174
- } }
165
+ onValueChange = { makeOnValueChange (
166
+ networksRightElementOptions ,
167
+ setSelectedNetworkRightElement ,
168
+ ) }
175
169
options = { networkRightOptions }
176
170
/>
177
171
</ SectionCard >
0 commit comments