This repository has been archived by the owner on Oct 10, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 50
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- [x] Refactor `Swap` / `SwapView` - [x] Remove `{Swap|View}.styles` - [x] Update misc. styles: `HeaderSettings`, `EditableAddress`, `AssetMenu`, `CheckButton`, `MaxBalanceButton`, `InfoIcon`, `Input`, `InputSearch` - [x] Refactor components: `AssetInput` - [x] Update `InputBigNumber` to handle `onKeyDownHandler` - [x] New components: `SelectableSlipTolerance`, `AssetSelectButton` - [x] Remove helpers:`poolAssetToAsset`, `DEFAULT_SWAP_DATA` - [x] Add helpers: `noDataString`, `assetInList` - [x] Update `i18n` - [x] Update `tailwind` config: `boxShadow` (full, fulld)
- Loading branch information
Showing
59 changed files
with
1,382 additions
and
1,587 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
import React, { useCallback } from 'react' | ||
|
||
import { Popover } from '@headlessui/react' | ||
import { Cog8ToothIcon } from '@heroicons/react/20/solid' | ||
import * as A from 'fp-ts/lib/Array' | ||
import * as FP from 'fp-ts/lib/function' | ||
|
||
import { ChangeSlipToleranceHandler } from '../../services/app/types' | ||
import { SlipTolerance } from '../../types/asgardex' | ||
import { BaseButton } from '../uielements/button' | ||
|
||
export const SLIP_PERCENTAGES: SlipTolerance[] = [0.5, 1, 3, 5, 10] | ||
export const SLIP_TOLERANCE_KEY = 'asgdx-slip-tolerance' | ||
|
||
export type Props = { | ||
value: SlipTolerance | ||
onChange: ChangeSlipToleranceHandler | ||
} | ||
|
||
export const SelectableSlipTolerance: React.FC<Props> = (props): JSX.Element => { | ||
const { onChange, value } = props | ||
|
||
const changeSlipToleranceHandler = useCallback( | ||
(slipTolerance: SlipTolerance) => { | ||
// TODO (@veado) Move storage to services/app, there is already a `changeSlipTolerance` state | ||
localStorage.setItem(SLIP_TOLERANCE_KEY, slipTolerance.toString()) | ||
onChange(slipTolerance) | ||
}, | ||
[onChange] | ||
) | ||
|
||
return ( | ||
<Popover className="relative"> | ||
<Popover.Button className="group flex items-center"> | ||
{value.toString()} % | ||
<Cog8ToothIcon className="ease ml-5px h-[15px] w-[15px] text-gray2 group-hover:rotate-180 dark:text-gray2d" /> | ||
</Popover.Button> | ||
<Popover.Panel className="absolute z-10 translate-y-[-100%] translate-x-[-50%] bg-bg0 shadow dark:bg-bg0d "> | ||
{({ close }) => ( | ||
<div> | ||
{FP.pipe( | ||
SLIP_PERCENTAGES, | ||
A.map((slip) => ( | ||
<BaseButton | ||
font={slip === value ? 'bold' : 'normal'} | ||
className={`w-full hover:bg-bg2 dark:hover:bg-bg2d `} | ||
key={slip} | ||
onClick={() => { | ||
changeSlipToleranceHandler(slip) | ||
close() | ||
}}> | ||
{slip}% | ||
</BaseButton> | ||
)) | ||
)} | ||
</div> | ||
)} | ||
</Popover.Panel> | ||
</Popover> | ||
) | ||
} |
Oops, something went wrong.