3939 <div class =" slider-controls" ref =" $slide" @click =" onMove($event, true);" >
4040 <div class =" slider-controls-wrapper" >
4141 <div class =" slider-progress-bar" ref =" $progressBar" />
42- <div class =" slider-dual"
43- v-if =" ENABLED.dualSlider"
44- ref =" $dualSlider" />
4542 <div class =" slider-knob"
4643 ref =" $knob"
4744 @touchstart =" atClick"
4845 @mousedown =" atClick" >
49- <OneLeafStakingIcon v-if =" currentPercentage < 50 && !ENABLED.dualSlider " />
50- <StakingIcon v-else-if =" currentPercentage < 75 && !ENABLED.dualSlider " />
46+ <OneLeafStakingIcon v-if =" currentPercentage < 50" />
47+ <StakingIcon v-else-if =" currentPercentage < 75" />
5148 <ThreeLeafStakingIcon v-else />
5249 </div >
5350 </div >
6057import { Ref , defineComponent , ref , computed , onMounted } from ' @vue/composition-api' ;
6158import { Amount } from ' @nimiq/vue-components' ;
6259import { useAddressStore } from ' ../../stores/Address' ;
63- import { ENABLED_FEATURES as ENABLED } from ' ../widgets/DevBar.vue' ;
6460import { calculateDisplayedDecimals , formatAmount } from ' ../../lib/NumberFormatting' ;
6561
6662import StakingIcon from ' ../icons/Staking/StakingIcon.vue' ;
@@ -115,6 +111,12 @@ const extractEventPosition = (e: MouseEvent | TouchEvent):Point => {
115111};
116112
117113export default defineComponent ({
114+ props: {
115+ stakedAmount: {
116+ type: Number ,
117+ required: true ,
118+ },
119+ },
118120 setup(props , context ) {
119121 const { activeAddressInfo } = useAddressStore ();
120122
@@ -161,7 +163,6 @@ export default defineComponent({
161163 const $container = ref <HTMLElement >(null );
162164 const $knob = ref <HTMLElement >(null );
163165 const $slide = ref <HTMLElement >(null );
164- const $dualSlider = ref <HTMLElement >(null );
165166 const $backgroundLinesLeft = ref <HTMLElement >(null );
166167 const $backgroundMiddlePlant = ref <HTMLElement >(null );
167168 const $backgroundLinesRight = ref <HTMLElement >(null );
@@ -249,31 +250,13 @@ export default defineComponent({
249250 const offsetX = getPointAtPercent (percent );
250251 currentAmount .value = (percent / 100 ) * availableAmount .value ! ;
251252
252- if (alreadyStaked .value === true ) {
253+ if (alreadyStaked .value ) {
253254 if (percent < alreadyStakedPercentage .value ) {
254255 if (! skipSignals ) {
255256 context .emit (' amount-unstaked' , alreadyStakedAmount .value - currentAmount .value );
256257 }
257- if (ENABLED .dualSlider ) {
258- $dualSlider .value ! .style .display = ' inline-block' ;
259- $dualSlider .value ! .style .width = ` ${(initialX + knobBox .width ) - offsetX }px ` ;
260- $dualSlider .value ! .style .left = ` ${offsetX }px ` ;
261- $dualSlider .value ! .style .border = ' 0.25rem solid var(--nimiq-gold)' ;
262- $dualSlider .value ! .style .background = ' radial-gradient(100% 100% at 100% 100%'
263- + ' , rgba(33, 186, 163, 0.1) 0%, rgba(33, 186, 163, 0.9) 100%)' ;
264- }
265- } else {
266- if (ENABLED .dualSlider && percent > alreadyStakedPercentage .value ) {
267- $dualSlider .value ! .style .display = ' inline-block' ;
268- $dualSlider .value ! .style .width = ` ${(offsetX - initialX ) + knobBox .width }px ` ;
269- $dualSlider .value ! .style .left = ` ${initialX }px ` ;
270- $dualSlider .value ! .style .border = ' 0' ;
271- $dualSlider .value ! .style .background = ' radial-gradient(100% 100% at 100% 100%'
272- + ' , #15a2da 0%, #0582ca 100%)' ;
273- }
274- if (! skipSignals ) {
275- context .emit (' amount-unstaked' , 0 );
276- }
258+ } else if (! skipSignals ) {
259+ context .emit (' amount-unstaked' , 0 );
277260 }
278261 }
279262 if (! skipSignals ) {
@@ -351,16 +334,13 @@ export default defineComponent({
351334 if (alreadyStaked .value ) {
352335 $dotIndicator .value ! .style .left = ` ${getPointAtPercent (alreadyStakedPercentage .value ! )
353336 + (knobBox .width / 2 ) - 5 }px ` ;
354- if (! ENABLED .dualSlider ) {
355- fillBackground (0 , alreadyStakedPercentage .value );
356- }
337+ fillBackground (0 , alreadyStakedPercentage .value );
357338 }
358339 });
359340 return {
360341 NIM_DECIMALS ,
361342 STAKING_CURRENCY: CryptoCurrency .NIM ,
362343 DISPLAYED_DECIMALS: calculateDisplayedDecimals (availableAmount .value ! , CryptoCurrency .NIM ),
363- ENABLED ,
364344 readonly ,
365345 atClick ,
366346 onMove ,
@@ -383,16 +363,9 @@ export default defineComponent({
383363 $backgroundRightPlant ,
384364 $progressBar ,
385365 $dotIndicator ,
386- $dualSlider ,
387366 buildSVG ,
388367 };
389368 },
390- props: {
391- stakedAmount: {
392- type: Number ,
393- required: true ,
394- },
395- },
396369 components: {
397370 Amount ,
398371 StakingIcon ,
@@ -550,16 +523,6 @@ export default defineComponent({
550523 height : 100% ;
551524 border-radius : 3rem ;
552525 }
553- .slider-dual {
554- display : none ;
555- position : absolute ;
556- left : 0 ;
557- top : 0 ;
558- background : none ;
559- height : 100% ;
560- border : 0.25rem solid var (--nimiq-gold );
561- border-radius : 3rem ;
562- }
563526 .slider-knob {
564527 display : flex ;
565528 position : absolute ;
0 commit comments