ui fixes
This commit is contained in:
parent
400d8e0253
commit
3803368f53
File diff suppressed because it is too large
Load Diff
@ -1,11 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {
|
import { AreaSeries, Chart, PriceLine } from "svelte-lightweight-charts";
|
||||||
AreaSeries,
|
|
||||||
Chart,
|
|
||||||
PriceLine,
|
|
||||||
CandlestickSeries,
|
|
||||||
} from "svelte-lightweight-charts";
|
|
||||||
import { DateTime } from "luxon";
|
|
||||||
import { TrackingModeExitMode, ColorType } from "lightweight-charts";
|
import { TrackingModeExitMode, ColorType } from "lightweight-charts";
|
||||||
import {
|
import {
|
||||||
getCache,
|
getCache,
|
||||||
@ -54,8 +48,6 @@
|
|||||||
export let data;
|
export let data;
|
||||||
export let form;
|
export let form;
|
||||||
|
|
||||||
let displayChartType = "line";
|
|
||||||
|
|
||||||
let prePostData = {};
|
let prePostData = {};
|
||||||
let communitySentiment = {};
|
let communitySentiment = {};
|
||||||
|
|
||||||
@ -605,9 +597,11 @@
|
|||||||
crosshair: {
|
crosshair: {
|
||||||
horzLine: {
|
horzLine: {
|
||||||
visible: true,
|
visible: true,
|
||||||
|
labelBackgroundColor: "#7E3AF2",
|
||||||
},
|
},
|
||||||
vertLine: {
|
vertLine: {
|
||||||
labelVisible: true,
|
labelVisible: true,
|
||||||
|
labelBackgroundColor: "#7E3AF2",
|
||||||
style: 0,
|
style: 0,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -667,14 +661,6 @@
|
|||||||
$globalForm = [];
|
$globalForm = [];
|
||||||
});
|
});
|
||||||
|
|
||||||
function changeChartType() {
|
|
||||||
if (displayChartType === "line") {
|
|
||||||
displayChartType = "candlestick";
|
|
||||||
} else {
|
|
||||||
displayChartType = "line";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$: dataMapping = {
|
$: dataMapping = {
|
||||||
"1D": oneDayPrice,
|
"1D": oneDayPrice,
|
||||||
"1W": oneWeekPrice,
|
"1W": oneWeekPrice,
|
||||||
@ -950,7 +936,8 @@
|
|||||||
<div class="flex flex-col items-center mr-4">
|
<div class="flex flex-col items-center mr-4">
|
||||||
<button
|
<button
|
||||||
on:click={() => changeData("1D")}
|
on:click={() => changeData("1D")}
|
||||||
class="text-sm font-medium text-gray-400 {displayData === '1D'
|
class="text-sm font-medium sm:hover:text-white text-gray-400 {displayData ===
|
||||||
|
'1D'
|
||||||
? 'text-white '
|
? 'text-white '
|
||||||
: 'bg-[#09090B]'}"
|
: 'bg-[#09090B]'}"
|
||||||
>
|
>
|
||||||
@ -965,7 +952,7 @@
|
|||||||
<div class="flex flex-col items-center mr-4">
|
<div class="flex flex-col items-center mr-4">
|
||||||
<button
|
<button
|
||||||
on:click={() => changeData("1W")}
|
on:click={() => changeData("1W")}
|
||||||
class="w-full text-sm font-medium text-gray-400 {displayData ===
|
class="w-full text-sm font-medium sm:hover:text-white text-gray-400 {displayData ===
|
||||||
'1W'
|
'1W'
|
||||||
? 'text-white '
|
? 'text-white '
|
||||||
: 'bg-[#09090B]'}"
|
: 'bg-[#09090B]'}"
|
||||||
@ -981,7 +968,7 @@
|
|||||||
<div class="flex flex-col items-center mr-4">
|
<div class="flex flex-col items-center mr-4">
|
||||||
<button
|
<button
|
||||||
on:click={() => changeData("1M")}
|
on:click={() => changeData("1M")}
|
||||||
class="text-sm font-medium text-gray-400 {displayData === '1M'
|
class="text-sm font-medium {displayData === '1M'
|
||||||
? 'text-white '
|
? 'text-white '
|
||||||
: 'bg-[#09090B]'}"
|
: 'bg-[#09090B]'}"
|
||||||
>
|
>
|
||||||
@ -996,7 +983,8 @@
|
|||||||
<div class="flex flex-col items-center mr-4">
|
<div class="flex flex-col items-center mr-4">
|
||||||
<button
|
<button
|
||||||
on:click={() => changeData("6M")}
|
on:click={() => changeData("6M")}
|
||||||
class="text-sm font-medium text-gray-400 {displayData === '6M'
|
class="text-sm font-medium sm:hover:text-white text-gray-400 {displayData ===
|
||||||
|
'6M'
|
||||||
? 'text-white '
|
? 'text-white '
|
||||||
: 'bg-[#09090B]'}"
|
: 'bg-[#09090B]'}"
|
||||||
>
|
>
|
||||||
@ -1011,7 +999,8 @@
|
|||||||
<div class="flex flex-col items-center mr-4">
|
<div class="flex flex-col items-center mr-4">
|
||||||
<button
|
<button
|
||||||
on:click={() => changeData("1Y")}
|
on:click={() => changeData("1Y")}
|
||||||
class="text-sm font-medium text-gray-400 {displayData === '1Y'
|
class="text-sm font-medium sm:hover:text-white text-gray-400 {displayData ===
|
||||||
|
'1Y'
|
||||||
? 'text-white '
|
? 'text-white '
|
||||||
: 'bg-[#09090B]'}"
|
: 'bg-[#09090B]'}"
|
||||||
>
|
>
|
||||||
@ -1027,7 +1016,8 @@
|
|||||||
<div class="flex flex-col items-center mr-4">
|
<div class="flex flex-col items-center mr-4">
|
||||||
<button
|
<button
|
||||||
on:click={() => changeData("MAX")}
|
on:click={() => changeData("MAX")}
|
||||||
class="text-sm font-medium text-gray-400 {displayData === 'MAX'
|
class="text-sm font-medium sm:hover:text-white text-gray-400 {displayData ===
|
||||||
|
'MAX'
|
||||||
? 'text-white '
|
? 'text-white '
|
||||||
: 'bg-[#09090B]'}"
|
: 'bg-[#09090B]'}"
|
||||||
>
|
>
|
||||||
@ -1040,40 +1030,9 @@
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<Button
|
|
||||||
on:click={changeChartType}
|
|
||||||
class="ml-auto border-gray-600 border bg-[#09090B] sm:hover:bg-[#27272A] ease-out flex flex-row justify-between items-center px-3 py-2 text-white rounded-lg truncate"
|
|
||||||
>
|
|
||||||
{#if displayChartType === "line"}
|
|
||||||
<svg
|
|
||||||
class="w-6 h-6"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
viewBox="0 0 24 24"
|
|
||||||
><path
|
|
||||||
fill="white"
|
|
||||||
d="M7 20v-2H5V6h2V4h2v2h2v12H9v2zm8 0v-5h-2V8h2V4h2v4h2v7h-2v5z"
|
|
||||||
/></svg
|
|
||||||
>
|
|
||||||
{:else}
|
|
||||||
<svg
|
|
||||||
class="w-6 h-6"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
viewBox="0 0 24 24"
|
|
||||||
><path
|
|
||||||
fill="none"
|
|
||||||
stroke="white"
|
|
||||||
stroke-linecap="round"
|
|
||||||
stroke-linejoin="round"
|
|
||||||
stroke-width="1.5"
|
|
||||||
d="M3 16.5L9 10l4 6l8-9.5"
|
|
||||||
/></svg
|
|
||||||
>
|
|
||||||
{/if}
|
|
||||||
</Button>
|
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
on:click={exportData}
|
on:click={exportData}
|
||||||
class="ml-2 border-gray-600 border bg-[#09090B] sm:hover:bg-[#27272A] ease-out flex flex-row justify-between items-center px-3 py-2 text-white rounded-lg truncate"
|
class="ml-auto border-gray-600 border bg-[#09090B] sm:hover:bg-[#27272A] ease-out flex flex-row justify-between items-center px-3 py-2 text-white rounded-lg truncate"
|
||||||
>
|
>
|
||||||
<span class="truncate text-white">Export</span>
|
<span class="truncate text-white">Export</span>
|
||||||
</Button>
|
</Button>
|
||||||
@ -1084,7 +1043,7 @@
|
|||||||
<!-- Start Graph -->
|
<!-- Start Graph -->
|
||||||
|
|
||||||
{#if output !== null}
|
{#if output !== null}
|
||||||
<div class="w-full sm:pl-7 ml-auto max-w-5xl mb-10 mt-5">
|
<div class="w-full sm:pl-7 ml-auto max-w-5xl mb-10 sm:mt-10">
|
||||||
{#if dataMapping[displayData]?.length === 0}
|
{#if dataMapping[displayData]?.length === 0}
|
||||||
<div
|
<div
|
||||||
class="mt-20 flex h-[240px] justify-center items-center mb-20 m-auto"
|
class="mt-20 flex h-[240px] justify-center items-center mb-20 m-auto"
|
||||||
@ -1112,179 +1071,125 @@
|
|||||||
on:crosshairMove={handleCrosshairMove}
|
on:crosshairMove={handleCrosshairMove}
|
||||||
>
|
>
|
||||||
{#if displayData === "1D"}
|
{#if displayData === "1D"}
|
||||||
{#if displayChartType === "line"}
|
<AreaSeries
|
||||||
<AreaSeries
|
data={oneDayPrice?.map(({ time, close }) => ({
|
||||||
data={oneDayPrice?.map(({ time, close }) => ({
|
time,
|
||||||
time,
|
value: close,
|
||||||
value: close,
|
}))}
|
||||||
}))}
|
lineWidth={1.5}
|
||||||
lineWidth={1.5}
|
priceScaleId="right"
|
||||||
priceScaleId="right"
|
lineColor={colorChange}
|
||||||
lineColor={colorChange}
|
topColor={topColorChange}
|
||||||
topColor={topColorChange}
|
bottomColor={bottomColorChange}
|
||||||
bottomColor={bottomColorChange}
|
ref={handleSeriesReference}
|
||||||
ref={handleSeriesReference}
|
priceLineVisible={false}
|
||||||
priceLineVisible={false}
|
>
|
||||||
lastPriceAnimation={1}
|
<PriceLine
|
||||||
>
|
price={oneDayPrice?.at(0)?.close}
|
||||||
<PriceLine
|
lineWidth={1}
|
||||||
price={oneDayPrice?.at(0)?.close}
|
color="#fff"
|
||||||
lineWidth={1}
|
/>
|
||||||
color="#fff"
|
</AreaSeries>
|
||||||
/>
|
|
||||||
</AreaSeries>
|
|
||||||
{:else}
|
|
||||||
<CandlestickSeries
|
|
||||||
data={oneDayPrice}
|
|
||||||
ref={handleSeriesReference}
|
|
||||||
></CandlestickSeries>
|
|
||||||
{/if}
|
|
||||||
{:else if displayData === "1W"}
|
{:else if displayData === "1W"}
|
||||||
{#if displayChartType === "line"}
|
<AreaSeries
|
||||||
<AreaSeries
|
data={oneWeekPrice?.map(({ time, close }) => ({
|
||||||
data={oneWeekPrice?.map(({ time, close }) => ({
|
time,
|
||||||
time,
|
value: close,
|
||||||
value: close,
|
}))}
|
||||||
}))}
|
lineWidth={1.5}
|
||||||
lineWidth={1.5}
|
priceScaleId="right"
|
||||||
priceScaleId="right"
|
lineColor={colorChange}
|
||||||
lineColor={colorChange}
|
topColor={topColorChange}
|
||||||
topColor={topColorChange}
|
bottomColor={bottomColorChange}
|
||||||
bottomColor={bottomColorChange}
|
ref={handleSeriesReference}
|
||||||
ref={handleSeriesReference}
|
priceLineVisible={false}
|
||||||
priceLineVisible={false}
|
>
|
||||||
lastPriceAnimation={1}
|
<PriceLine
|
||||||
>
|
price={oneWeekPrice?.at(0)?.close}
|
||||||
<PriceLine
|
lineWidth={1}
|
||||||
price={oneWeekPrice?.at(0)?.close}
|
color="#fff"
|
||||||
lineWidth={1}
|
/>
|
||||||
color="#fff"
|
</AreaSeries>
|
||||||
/>
|
|
||||||
</AreaSeries>
|
|
||||||
{:else}
|
|
||||||
<CandlestickSeries
|
|
||||||
data={oneWeekPrice}
|
|
||||||
ref={handleSeriesReference}
|
|
||||||
></CandlestickSeries>
|
|
||||||
{/if}
|
|
||||||
{:else if displayData === "1M"}
|
{:else if displayData === "1M"}
|
||||||
{#if displayChartType === "line"}
|
<AreaSeries
|
||||||
<AreaSeries
|
data={oneMonthPrice?.map(({ time, close }) => ({
|
||||||
data={oneMonthPrice?.map(({ time, close }) => ({
|
time: time,
|
||||||
time: time,
|
value: close,
|
||||||
value: close,
|
}))}
|
||||||
}))}
|
lineWidth={1.5}
|
||||||
lineWidth={1.5}
|
priceScaleId="right"
|
||||||
priceScaleId="right"
|
lineColor={colorChange}
|
||||||
lineColor={colorChange}
|
topColor={topColorChange}
|
||||||
topColor={topColorChange}
|
bottomColor={bottomColorChange}
|
||||||
bottomColor={bottomColorChange}
|
ref={handleSeriesReference}
|
||||||
ref={handleSeriesReference}
|
priceLineVisible={false}
|
||||||
priceLineVisible={false}
|
>
|
||||||
lastPriceAnimation={1}
|
<PriceLine
|
||||||
>
|
price={oneMonthPrice?.at(0)?.close}
|
||||||
<PriceLine
|
lineWidth={1}
|
||||||
price={oneMonthPrice?.at(0)?.close}
|
color="#fff"
|
||||||
lineWidth={1}
|
/>
|
||||||
color="#fff"
|
</AreaSeries>
|
||||||
/>
|
|
||||||
</AreaSeries>
|
|
||||||
{:else}
|
|
||||||
<CandlestickSeries
|
|
||||||
data={oneMonthPrice}
|
|
||||||
ref={handleSeriesReference}
|
|
||||||
></CandlestickSeries>
|
|
||||||
{/if}
|
|
||||||
{:else if displayData === "6M"}
|
{:else if displayData === "6M"}
|
||||||
{#if displayChartType === "line"}
|
<AreaSeries
|
||||||
<AreaSeries
|
data={sixMonthPrice?.map(({ time, close }) => ({
|
||||||
data={sixMonthPrice?.map(({ time, close }) => ({
|
time,
|
||||||
time,
|
value: close,
|
||||||
value: close,
|
}))}
|
||||||
}))}
|
lineWidth={1.5}
|
||||||
lineWidth={1.5}
|
priceScaleId="right"
|
||||||
priceScaleId="right"
|
lineColor={colorChange}
|
||||||
lineColor={colorChange}
|
topColor={topColorChange}
|
||||||
topColor={topColorChange}
|
bottomColor={bottomColorChange}
|
||||||
bottomColor={bottomColorChange}
|
ref={handleSeriesReference}
|
||||||
ref={handleSeriesReference}
|
priceLineVisible={false}
|
||||||
priceLineVisible={false}
|
>
|
||||||
lastPriceAnimation={1}
|
<PriceLine
|
||||||
>
|
price={sixMonthPrice?.at(0)?.close}
|
||||||
<PriceLine
|
lineWidth={1}
|
||||||
price={sixMonthPrice?.at(0)?.close}
|
color="#fff"
|
||||||
lineWidth={1}
|
/>
|
||||||
color="#fff"
|
</AreaSeries>
|
||||||
/>
|
|
||||||
</AreaSeries>
|
|
||||||
{:else}
|
|
||||||
<CandlestickSeries
|
|
||||||
data={sixMonthPrice}
|
|
||||||
ref={handleSeriesReference}
|
|
||||||
></CandlestickSeries>
|
|
||||||
{/if}
|
|
||||||
{:else if displayData === "1Y"}
|
{:else if displayData === "1Y"}
|
||||||
{#if displayChartType === "line"}
|
<AreaSeries
|
||||||
<AreaSeries
|
data={oneYearPrice?.map(({ time, close }) => ({
|
||||||
data={oneYearPrice?.map(({ time, close }) => ({
|
time,
|
||||||
time,
|
value: close,
|
||||||
value: close,
|
}))}
|
||||||
}))}
|
lineWidth={1.5}
|
||||||
lineWidth={1.5}
|
priceScaleId="right"
|
||||||
priceScaleId="right"
|
lineColor={colorChange}
|
||||||
lineColor={colorChange}
|
topColor={topColorChange}
|
||||||
topColor={topColorChange}
|
bottomColor={bottomColorChange}
|
||||||
bottomColor={bottomColorChange}
|
ref={handleSeriesReference}
|
||||||
ref={handleSeriesReference}
|
priceLineVisible={false}
|
||||||
priceLineVisible={false}
|
>
|
||||||
lastPriceAnimation={1}
|
<PriceLine
|
||||||
>
|
price={oneYearPrice?.at(0)?.close}
|
||||||
<PriceLine
|
lineWidth={1}
|
||||||
price={oneYearPrice?.at(0)?.close}
|
color="#fff"
|
||||||
lineWidth={1}
|
/>
|
||||||
color="#fff"
|
</AreaSeries>
|
||||||
/>
|
|
||||||
</AreaSeries>
|
|
||||||
{:else}
|
|
||||||
<CandlestickSeries
|
|
||||||
data={oneYearPrice}
|
|
||||||
ref={handleSeriesReference}
|
|
||||||
>
|
|
||||||
<PriceLine
|
|
||||||
price={oneYearPrice?.at(0)?.close}
|
|
||||||
lineWidth={1}
|
|
||||||
color="#fff"
|
|
||||||
/>
|
|
||||||
</CandlestickSeries>
|
|
||||||
{/if}
|
|
||||||
{:else if displayData === "MAX"}
|
{:else if displayData === "MAX"}
|
||||||
{#if displayChartType === "line"}
|
<AreaSeries
|
||||||
<AreaSeries
|
data={maxPrice?.map(({ time, close }) => ({
|
||||||
data={maxPrice?.map(({ time, close }) => ({
|
time,
|
||||||
time,
|
value: close,
|
||||||
value: close,
|
}))}
|
||||||
}))}
|
lineWidth={1.5}
|
||||||
lineWidth={1.5}
|
priceScaleId="right"
|
||||||
priceScaleId="right"
|
lineColor={colorChange}
|
||||||
lineColor={colorChange}
|
topColor={topColorChange}
|
||||||
topColor={topColorChange}
|
bottomColor={bottomColorChange}
|
||||||
bottomColor={bottomColorChange}
|
ref={handleSeriesReference}
|
||||||
ref={handleSeriesReference}
|
priceLineVisible={false}
|
||||||
priceLineVisible={false}
|
>
|
||||||
lastPriceAnimation={1}
|
<PriceLine
|
||||||
>
|
price={maxPrice?.at(0)?.close}
|
||||||
<PriceLine
|
lineWidth={1}
|
||||||
price={maxPrice?.at(0)?.close}
|
color="#fff"
|
||||||
lineWidth={1}
|
/>
|
||||||
color="#fff"
|
</AreaSeries>
|
||||||
/>
|
|
||||||
</AreaSeries>
|
|
||||||
{:else}
|
|
||||||
<CandlestickSeries
|
|
||||||
data={maxPrice}
|
|
||||||
ref={handleSeriesReference}
|
|
||||||
></CandlestickSeries>
|
|
||||||
{/if}
|
|
||||||
{/if}
|
{/if}
|
||||||
</Chart>
|
</Chart>
|
||||||
{/if}
|
{/if}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user