release: v0.1.1

This commit is contained in:
k
2024-06-24 05:14:52 +02:00
parent a1a576d088
commit e55b5195a9
41 changed files with 399 additions and 368 deletions

View File

@@ -1,30 +1,35 @@
import groupedKeysToPath from "/src/../../datasets/grouped_keys_to_url_path.json";
import { createResourceDataset } from "./resource";
export { averages } from "./consts/averages";
export function createDateDatasets({
setActiveResources,
groupedKeysToURLPath,
}: {
setActiveResources: Setter<Set<ResourceDataset<any, any>>>;
groupedKeysToURLPath: GroupedKeysToURLPath["date"];
}) {
type Key = keyof typeof groupedKeysToPath.date;
type Key = keyof typeof groupedKeysToURLPath;
type ResourceData = ReturnType<typeof createResourceDataset<"date">>;
const resourceDatasets = {} as Record<Exclude<Key, "ohlc">, ResourceData>;
type ResourceDatasets = Record<Exclude<Key, "ohlc">, ResourceData>;
Object.entries(groupedKeysToPath.date).forEach(([_key, path]) => {
for (const _key in groupedKeysToURLPath) {
const key = _key as Key;
if (key !== "ohlc") {
resourceDatasets[key] = createResourceDataset<"date">({
scale: "date",
path,
setActiveResources,
});
const path = groupedKeysToURLPath[key];
(groupedKeysToURLPath as any as ResourceDatasets)[key] =
createResourceDataset<"date">({
scale: "date",
path,
setActiveResources,
});
}
});
}
const resourceDatasets = groupedKeysToURLPath as any as ResourceDatasets;
const price = createResourceDataset<"date", OHLC>({
scale: "date",

View File

@@ -1,27 +1,33 @@
import groupedKeysToPath from "/src/../../datasets/grouped_keys_to_url_path.json";
import { createResourceDataset } from "./resource";
export function createHeightDatasets({
setActiveResources,
groupedKeysToURLPath,
}: {
setActiveResources: Setter<Set<ResourceDataset<any, any>>>;
groupedKeysToURLPath: GroupedKeysToURLPath["height"];
}) {
type Key = keyof typeof groupedKeysToPath.height;
type Key = keyof typeof groupedKeysToURLPath;
type ResourceData = ReturnType<typeof createResourceDataset<"height">>;
const resourceDatasets = {} as Record<Exclude<Key, "ohlc">, ResourceData>;
type ResourceDatasets = Record<Exclude<Key, "ohlc">, ResourceData>;
Object.keys(groupedKeysToPath.height).forEach(([_key, path]) => {
for (const _key in groupedKeysToURLPath) {
const key = _key as Key;
if (key !== "ohlc") {
resourceDatasets[key] = createResourceDataset<"height">({
scale: "height",
path,
setActiveResources,
});
const path = groupedKeysToURLPath[key];
(groupedKeysToURLPath as any as ResourceDatasets)[key] =
createResourceDataset<"height">({
scale: "height",
path,
setActiveResources,
});
}
});
}
const resourceDatasets = groupedKeysToURLPath as any as ResourceDatasets;
const price = createResourceDataset<"height", OHLC>({
scale: "height",

View File

@@ -1,3 +1,5 @@
import groupedKeysToURLPath from "/src/../../datasets/grouped_keys_to_url_path.json";
import { createDateDatasets } from "./date";
import { createHeightDatasets } from "./height";
@@ -10,8 +12,18 @@ export function createDatasets({
}: {
setActiveResources: Setter<Set<ResourceDataset<any, any>>>;
}) {
const date = createDateDatasets({
setActiveResources,
groupedKeysToURLPath: groupedKeysToURLPath.date,
});
const height = createHeightDatasets({
setActiveResources,
groupedKeysToURLPath: groupedKeysToURLPath.height,
});
return {
date: createDateDatasets({ setActiveResources }),
height: createHeightDatasets({ setActiveResources }),
date,
height,
} satisfies Record<ResourceScale, any>;
}

View File

@@ -22,9 +22,10 @@ export function createResourceDataset<
setActiveResources: Setter<Set<ResourceDataset<any, any>>>;
}) {
const baseURL = `${
location.hostname === "localhost"
? "http://localhost:3110"
: "https://api.satonomics.xyz"
// location.hostname === "localhost"
// ? "http://localhost:3110"
// : "https://api.satonomics.xyz"
"https://api.satonomics.xyz"
}${path}`;
type Dataset = Scale extends "date"
@@ -36,8 +37,8 @@ export function createResourceDataset<
>;
const fetchedJSONs = new Array(
(new Date().getFullYear() - new Date("2009-01-01").getFullYear()) *
(scale === "date" ? 2 : 8),
(new Date().getFullYear() - new Date("2009-01-01").getFullYear() + 2) *
(scale === "date" ? 1 : 6),
)
.fill(null)
.map((): FetchedResult<Scale, Type> => {

View File

@@ -96,3 +96,6 @@ interface OHLC {
low: number;
close: number;
}
type GroupedKeysToURLPath =
typeof import("/src/../../datasets/grouped_keys_to_url_path.json");

View File

@@ -17,7 +17,7 @@ const debouncedUpdateURLParams = debounce((range: TimeRange | null) => {
writeURLParam(URL_PARAMS_RANGE_TO_KEY, String(range.to));
localStorage.setItem(LOCAL_STORAGE_RANGE_KEY, JSON.stringify(range));
}, 1000);
}, 500);
export function initTimeScale({
activeResources,
@@ -101,8 +101,6 @@ export function getInitialRange(): TimeRange {
export function setTimeScale(range: TimeRange | null) {
if (range) {
console.log(range);
setTimeout(() => {
chartState.chart?.timeScale().setVisibleRange(range);
}, 1);

View File

@@ -9,10 +9,8 @@ import { applyMultipleSeries, SeriesType } from "../templates/multiple";
export function createPresets({
scale,
datasets,
}: {
scale: ResourceScale;
datasets: Datasets;
}): PartialPresetFolder {
return {
name: "Addresses",
@@ -112,7 +110,6 @@ export function createPresets({
name: "By Size",
tree: addressCohortsBySize.map(({ key, name }) =>
createAddressPresetFolder({
datasets,
scale,
color: colors[key],
name,
@@ -125,7 +122,6 @@ export function createPresets({
name: "By Type",
tree: addressCohortsByType.map(({ key, name }) =>
createAddressPresetFolder({
datasets,
scale,
color: colors[key],
name,
@@ -138,13 +134,11 @@ export function createPresets({
}
function createAddressPresetFolder<Scale extends ResourceScale>({
datasets,
scale,
color,
name,
datasetKey,
}: {
datasets: Datasets;
scale: Scale;
name: string;
datasetKey: AddressCohortKey;
@@ -156,7 +150,6 @@ function createAddressPresetFolder<Scale extends ResourceScale>({
createAddressCountPreset({ scale, name, datasetKey, color }),
...createCohortPresetList({
title: name,
datasets,
scale,
name,
color,
@@ -170,7 +163,6 @@ function createAddressPresetFolder<Scale extends ResourceScale>({
tree: createCohortPresetList({
title: `${liquidity.name} ${name}`,
name: `${liquidity.name} ${name}`,
datasets,
scale,
color,
datasetKey: `${liquidity.key}_${datasetKey}`,

View File

@@ -3,13 +3,9 @@ import { applyMultipleSeries, SeriesType } from "../templates/multiple";
export function createPresets<Scale extends ResourceScale>({
scale,
datasets: _datasets,
}: {
scale: Scale;
datasets: Datasets;
}) {
const datasets = _datasets[scale];
return {
name: "Cointime Economics",
tree: [
@@ -29,27 +25,27 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Vaulted Price",
color: colors.vaultedness,
dataset: datasets.vaulted_price,
dataset: params.datasets[scale].vaulted_price,
},
{
title: "Active Price",
color: colors.liveliness,
dataset: datasets.active_price,
dataset: params.datasets[scale].active_price,
},
{
title: "True Market Mean",
color: colors.trueMarketMeanPrice,
dataset: datasets.true_market_mean,
dataset: params.datasets[scale].true_market_mean,
},
{
title: "Realized Price",
color: colors.bitcoin,
dataset: datasets.realized_price,
dataset: params.datasets[scale].realized_price,
},
{
title: "Cointime",
color: colors.cointimePrice,
dataset: datasets.cointime_price,
dataset: params.datasets[scale].cointime_price,
},
],
});
@@ -71,7 +67,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Active Price",
color: colors.liveliness,
dataset: datasets.active_price,
dataset: params.datasets[scale].active_price,
},
],
});
@@ -95,7 +91,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Vaulted Price",
color: colors.vaultedness,
dataset: datasets.vaulted_price,
dataset: params.datasets[scale].vaulted_price,
},
],
});
@@ -119,7 +115,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "True Market Mean",
color: colors.trueMarketMeanPrice,
dataset: datasets.true_market_mean,
dataset: params.datasets[scale].true_market_mean,
},
],
});
@@ -143,7 +139,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Cointime",
color: colors.cointimePrice,
dataset: datasets.cointime_price,
dataset: params.datasets[scale].cointime_price,
},
],
});
@@ -174,22 +170,22 @@ export function createPresets<Scale extends ResourceScale>({
title: "Market Cap",
color: colors.white,
dataset: datasets.market_cap,
dataset: params.datasets[scale].market_cap,
},
{
title: "Realized Cap",
color: colors.realizedCap,
dataset: datasets.realized_cap,
dataset: params.datasets[scale].realized_cap,
},
{
title: "Investor Cap",
color: colors.investorCap,
dataset: datasets.investor_cap,
dataset: params.datasets[scale].investor_cap,
},
{
title: "Thermo Cap",
color: colors.thermoCap,
dataset: datasets.thermo_cap,
dataset: params.datasets[scale].thermo_cap,
},
],
});
@@ -212,7 +208,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Thermo Cap",
color: colors.thermoCap,
dataset: datasets.thermo_cap,
dataset: params.datasets[scale].thermo_cap,
},
],
});
@@ -235,7 +231,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Investor Cap",
color: colors.investorCap,
dataset: datasets.investor_cap,
dataset: params.datasets[scale].investor_cap,
},
],
});
@@ -257,7 +253,8 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Ratio",
color: colors.bitcoin,
dataset: datasets.thermo_cap_to_investor_cap_ratio,
dataset:
params.datasets[scale].thermo_cap_to_investor_cap_ratio,
},
],
});
@@ -284,17 +281,17 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Coinblocks Created",
color: colors.coinblocksCreated,
dataset: datasets.coinblocks_created,
dataset: params.datasets[scale].coinblocks_created,
},
{
title: "Coinblocks Destroyed",
color: colors.coinblocksDestroyed,
dataset: datasets.coinblocks_destroyed,
dataset: params.datasets[scale].coinblocks_destroyed,
},
{
title: "Coinblocks Stored",
color: colors.coinblocksStored,
dataset: datasets.coinblocks_stored,
dataset: params.datasets[scale].coinblocks_stored,
},
],
});
@@ -316,7 +313,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Coinblocks Created",
color: colors.coinblocksCreated,
dataset: datasets.coinblocks_created,
dataset: params.datasets[scale].coinblocks_created,
},
],
});
@@ -338,7 +335,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Coinblocks Destroyed",
color: colors.coinblocksDestroyed,
dataset: datasets.coinblocks_destroyed,
dataset: params.datasets[scale].coinblocks_destroyed,
},
],
});
@@ -360,7 +357,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Coinblocks Stored",
color: colors.coinblocksStored,
dataset: datasets.coinblocks_stored,
dataset: params.datasets[scale].coinblocks_stored,
},
],
});
@@ -387,17 +384,20 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Cumulative Coinblocks Created",
color: colors.coinblocksCreated,
dataset: datasets.cumulative_coinblocks_created,
dataset:
params.datasets[scale].cumulative_coinblocks_created,
},
{
title: "Cumulative Coinblocks Destroyed",
color: colors.coinblocksDestroyed,
dataset: datasets.cumulative_coinblocks_destroyed,
dataset:
params.datasets[scale].cumulative_coinblocks_destroyed,
},
{
title: "Cumulative Coinblocks Stored",
color: colors.coinblocksStored,
dataset: datasets.cumulative_coinblocks_stored,
dataset:
params.datasets[scale].cumulative_coinblocks_stored,
},
],
});
@@ -419,7 +419,8 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Cumulative Coinblocks Created",
color: colors.coinblocksCreated,
dataset: datasets.cumulative_coinblocks_created,
dataset:
params.datasets[scale].cumulative_coinblocks_created,
},
],
});
@@ -441,7 +442,8 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Cumulative Coinblocks Destroyed",
color: colors.coinblocksDestroyed,
dataset: datasets.cumulative_coinblocks_destroyed,
dataset:
params.datasets[scale].cumulative_coinblocks_destroyed,
},
],
});
@@ -463,7 +465,8 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Cumulative Coinblocks Stored",
color: colors.coinblocksStored,
dataset: datasets.cumulative_coinblocks_stored,
dataset:
params.datasets[scale].cumulative_coinblocks_stored,
},
],
});
@@ -490,7 +493,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Liveliness",
color: colors.liveliness,
dataset: datasets.liveliness,
dataset: params.datasets[scale].liveliness,
},
],
});
@@ -512,7 +515,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Vaultedness",
color: colors.vaultedness,
dataset: datasets.vaultedness,
dataset: params.datasets[scale].vaultedness,
},
],
});
@@ -534,12 +537,12 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Liveliness",
color: colors.liveliness,
dataset: datasets.liveliness,
dataset: params.datasets[scale].liveliness,
},
{
title: "Vaultedness",
color: colors.vaultedness,
dataset: datasets.vaultedness,
dataset: params.datasets[scale].vaultedness,
},
],
});
@@ -561,7 +564,8 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Activity To Vaultedness Ratio",
color: colors.activityToVaultednessRatio,
dataset: datasets.activity_to_vaultedness_ratio,
dataset:
params.datasets[scale].activity_to_vaultedness_ratio,
},
],
});
@@ -583,12 +587,13 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Concurrent Liveliness 14d Median",
color: `${colors.liveliness}66`,
dataset: datasets.concurrent_liveliness_2w_median,
dataset:
params.datasets[scale].concurrent_liveliness_2w_median,
},
{
title: "Concurrent Liveliness",
color: colors.liveliness,
dataset: datasets.concurrent_liveliness,
dataset: params.datasets[scale].concurrent_liveliness,
},
],
});
@@ -611,13 +616,14 @@ export function createPresets<Scale extends ResourceScale>({
title: "Liveliness Incremental Change",
color: colors.darkLiveliness,
seriesType: SeriesType.Based,
dataset: datasets.liveliness_net_change,
dataset: params.datasets[scale].liveliness_net_change,
},
{
title: "Liveliness Incremental Change 14 Day Median",
color: colors.liveliness,
seriesType: SeriesType.Based,
dataset: datasets.liveliness_net_change_2w_median,
dataset:
params.datasets[scale].liveliness_net_change_2w_median,
},
],
});
@@ -644,7 +650,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Vaulted Supply",
color: colors.vaultedness,
dataset: datasets.vaulted_supply,
dataset: params.datasets[scale].vaulted_supply,
},
],
});
@@ -666,7 +672,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Active Supply",
color: colors.liveliness,
dataset: datasets.active_supply,
dataset: params.datasets[scale].active_supply,
},
],
});
@@ -688,17 +694,17 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Circulating Supply",
color: colors.coinblocksCreated,
dataset: datasets.supply,
dataset: params.datasets[scale].supply,
},
{
title: "Vaulted Supply",
color: colors.vaultedness,
dataset: datasets.vaulted_supply,
dataset: params.datasets[scale].vaulted_supply,
},
{
title: "Active Supply",
color: colors.liveliness,
dataset: datasets.active_supply,
dataset: params.datasets[scale].active_supply,
},
],
});
@@ -722,13 +728,13 @@ export function createPresets<Scale extends ResourceScale>({
// id: 'min-vaulted',
// title: 'Min Vaulted Supply',
// color: colors.vaultedness,
// dataset: params.datasets.dateToMinVaultedSupply,
// dataset: params.params.datasets[scale].dateToMinVaultedSupply,
// },
// {
// id: 'max-active',
// title: 'Max Active Supply',
// color: colors.liveliness,
// dataset: params.datasets.dateToMaxActiveSupply,
// dataset: params.params.datasets[scale].dateToMaxActiveSupply,
// },
// ],
// })
@@ -750,7 +756,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Vaulted Supply Net Change",
color: colors.vaultedness,
dataset: datasets.vaulted_supply,
dataset: params.datasets[scale].vaulted_supply,
},
],
});
@@ -772,7 +778,7 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Active Supply Net Change",
color: colors.liveliness,
dataset: datasets.active_supply_net_change,
dataset: params.datasets[scale].active_supply_net_change,
},
],
});
@@ -794,14 +800,15 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Active Supply Net Change",
color: `${colors.liveliness}80`,
dataset: datasets.active_supply_3m_net_change,
dataset: params.datasets[scale].active_supply_3m_net_change,
seriesType: SeriesType.Based,
},
{
title: "Vaulted Supply Net Change",
color: `${colors.vaultedPrice}80`,
seriesType: SeriesType.Based,
dataset: datasets.vaulted_supply_3m_net_change,
dataset:
params.datasets[scale].vaulted_supply_3m_net_change,
},
],
});
@@ -826,7 +833,7 @@ export function createPresets<Scale extends ResourceScale>({
// title: 'Vaulted Supply Annualized Net Change',
// color: colors.vaultedness,
// dataset:
// datasets.vaultedAnnualizedSupplyNetChange,
// params.datasets[scale].vaultedAnnualizedSupplyNetChange,
// },
// ],
// })
@@ -851,13 +858,13 @@ export function createPresets<Scale extends ResourceScale>({
// id: 'vaulting-rate',
// title: 'Vaulting Rate',
// color: colors.vaultedness,
// dataset: datasets.vaultingRate,
// dataset: params.datasets[scale].vaultingRate,
// },
// {
// id: 'nominal-inflation-rate',
// title: 'Nominal Inflation Rate',
// color: colors.orange,
// dataset: params.datasets.dateToYearlyInflationRate,
// dataset: params.params.datasets[scale].dateToYearlyInflationRate,
// },
// ],
// })
@@ -883,7 +890,7 @@ export function createPresets<Scale extends ResourceScale>({
// title: 'Change From Issuance',
// color: colors.emerald,
// dataset:
// params.datasets
// params.params.datasets[scale]
// [scale].activeSupplyChangeFromIssuance90dChange,
// },
// {
@@ -891,14 +898,14 @@ export function createPresets<Scale extends ResourceScale>({
// title: 'Change From Transactions',
// color: colors.rose,
// dataset:
// params.datasets
// params.params.datasets[scale]
// [scale].activeSupplyChangeFromTransactions90dChange,
// },
// // {
// // id: 'active',
// // title: 'Active Supply',
// // color: colors.liveliness,
// // dataset: datasets.activeSupply,
// // dataset: params.datasets[scale].activeSupply,
// // },
// ],
// })
@@ -921,17 +928,17 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Circulating Supply",
color: colors.coinblocksCreated,
dataset: datasets.supply,
dataset: params.datasets[scale].supply,
},
{
title: "Vaulted Supply",
color: colors.vaultedness,
dataset: datasets.vaulted_supply,
dataset: params.datasets[scale].vaulted_supply,
},
{
title: "Supply in profit",
color: colors.bitcoin,
dataset: datasets.supply_in_profit,
dataset: params.datasets[scale].supply_in_profit,
},
],
});
@@ -953,17 +960,17 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Circulating Supply",
color: colors.coinblocksCreated,
dataset: datasets.supply,
dataset: params.datasets[scale].supply,
},
{
title: "Active Supply",
color: colors.liveliness,
dataset: datasets.active_supply,
dataset: params.datasets[scale].active_supply,
},
{
title: "Supply in Loss",
color: colors.bitcoin,
dataset: datasets.supply_in_loss,
dataset: params.datasets[scale].supply_in_loss,
},
],
});
@@ -988,12 +995,14 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Cointime Adjusted",
color: colors.coinblocksCreated,
dataset: datasets.cointime_adjusted_yearly_inflation_rate,
dataset:
params.datasets[scale]
.cointime_adjusted_yearly_inflation_rate,
},
{
title: "Nominal",
color: colors.bitcoin,
dataset: datasets.yearly_inflation_rate,
dataset: params.datasets[scale].yearly_inflation_rate,
},
],
});
@@ -1016,12 +1025,12 @@ export function createPresets<Scale extends ResourceScale>({
{
title: "Cointime Adjusted",
color: colors.coinblocksCreated,
dataset: datasets.cointime_adjusted_velocity,
dataset: params.datasets[scale].cointime_adjusted_velocity,
},
{
title: "Nominal",
color: colors.bitcoin,
dataset: datasets.transaction_velocity,
dataset: params.datasets[scale].transaction_velocity,
},
],
});

View File

@@ -9,13 +9,7 @@ import { colors } from "../../utils/colors";
import { createCohortPresetFolder } from "../templates/cohort";
import { applyMultipleSeries } from "../templates/multiple";
export function createPresets({
scale,
datasets,
}: {
scale: ResourceScale;
datasets: Datasets;
}) {
export function createPresets({ scale }: { scale: ResourceScale }) {
return {
name: "Hodlers",
tree: [
@@ -62,7 +56,6 @@ export function createPresets({
},
...xthCohorts.map(({ key, name, legend }) =>
createCohortPresetFolder({
datasets,
scale,
color: colors[key],
name: legend,
@@ -74,7 +67,6 @@ export function createPresets({
name: "Up To X",
tree: upToCohorts.map(({ key, name }) =>
createCohortPresetFolder({
datasets,
scale,
color: colors[key],
name,
@@ -87,7 +79,6 @@ export function createPresets({
name: "From X To Y",
tree: fromXToYCohorts.map(({ key, name }) =>
createCohortPresetFolder({
datasets,
scale,
color: colors[key],
name,
@@ -100,7 +91,6 @@ export function createPresets({
name: "From X",
tree: fromXCohorts.map(({ key, name }) =>
createCohortPresetFolder({
datasets,
scale,
color: colors[key],
name,
@@ -113,7 +103,6 @@ export function createPresets({
name: "Years",
tree: yearCohorts.map(({ key, name }) =>
createCohortPresetFolder({
datasets,
scale,
color: colors[key],
name,

View File

@@ -19,7 +19,7 @@ export const LOCAL_STORAGE_HISTORY_KEY = "history";
export const LOCAL_STORAGE_SELECTED_KEY = "preset";
export const LOCAL_STORAGE_VISITED_KEY = "visited";
export function createPresets(datasets: Datasets): Presets {
export function createPresets(): Presets {
const partialTree = [
{
name: "Dashboards (Coming soon)",
@@ -31,21 +31,20 @@ export function createPresets(datasets: Datasets): Presets {
{
name: "By Date",
tree: [
createMarketPresets({ scale: "date", datasets }),
createMarketPresets({ scale: "date" }),
createBlocksPresets(),
createMinersPresets("date"),
createTransactionsPresets("date"),
...createCohortPresetList({
datasets,
scale: "date",
color: colors.bitcoin,
datasetKey: "",
name: "",
title: "",
}),
createHodlersPresets({ scale: "date", datasets }),
createAddressesPresets({ scale: "date", datasets }),
createCoinblocksPresets({ scale: "date", datasets }),
createHodlersPresets({ scale: "date" }),
createAddressesPresets({ scale: "date" }),
createCoinblocksPresets({ scale: "date" }),
],
} satisfies PartialPresetFolder,
{

View File

@@ -3,7 +3,7 @@ import { colors } from "/src/scripts/utils/colors";
import { applyMultipleSeries } from "../../templates/multiple";
export function createPresets(datasets: Datasets): PartialPresetFolder {
export function createPresets(): PartialPresetFolder {
const scale: ResourceScale = "date";
return {
@@ -28,7 +28,6 @@ export function createPresets(datasets: Datasets): PartialPresetFolder {
},
...averages.map(({ name, key }) =>
createPresetFolder({
datasets,
scale,
color: colors[`_${key}`],
name,
@@ -41,12 +40,10 @@ export function createPresets(datasets: Datasets): PartialPresetFolder {
function createPresetFolder({
scale,
datasets,
color,
name,
key,
}: {
datasets: Datasets;
scale: ResourceScale;
color: string;
name: string;
@@ -69,7 +66,7 @@ function createPresetFolder({
{
title: `SMA`,
color,
dataset: datasets.date[`price_${key}_sma`],
dataset: params.datasets.date[`price_${key}_sma`],
},
],
});

View File

@@ -4,13 +4,7 @@ import { createPresets as createAveragesPresets } from "./averages";
import { createPresets as createIndicatorsPresets } from "./indicators";
import { createPresets as createReturnsPresets } from "./returns";
export function createPresets({
scale,
datasets,
}: {
scale: ResourceScale;
datasets: Datasets;
}) {
export function createPresets({ scale }: { scale: ResourceScale }) {
return {
name: "Market",
tree: [
@@ -67,9 +61,9 @@ export function createPresets({
},
...(scale === "date"
? ([
createAveragesPresets(datasets),
createReturnsPresets(datasets),
createIndicatorsPresets(datasets),
createAveragesPresets(),
createReturnsPresets(),
createIndicatorsPresets(),
] satisfies PartialPresetTree)
: []),
],

View File

@@ -1,4 +1,4 @@
export function createPresets(datasets: Datasets) {
export function createPresets() {
return {
name: "Indicators",
tree: [],

View File

@@ -5,7 +5,7 @@ import {
import { applyMultipleSeries, SeriesType } from "../../templates/multiple";
export function createPresets(datasets: Datasets) {
export function createPresets() {
return {
name: "Returns",
tree: [
@@ -15,7 +15,6 @@ export function createPresets(datasets: Datasets) {
...totalReturns.map(({ name, key }) =>
createPreset({
scale: "date",
datasets,
name,
title: `${name} Total`,
key: `${key}_total`,
@@ -29,7 +28,6 @@ export function createPresets(datasets: Datasets) {
...compoundReturns.map(({ name, key }) =>
createPreset({
scale: "date",
datasets,
name,
title: `${name} Compound`,
key: `${key}_compound`,
@@ -43,13 +41,11 @@ export function createPresets(datasets: Datasets) {
function createPreset({
scale,
datasets,
name,
title,
key,
}: {
scale: ResourceScale;
datasets: Datasets;
name: string;
title: string;
key: `${TotalReturnKey}_total` | `${CompoundReturnKey}_compound`;
@@ -70,7 +66,7 @@ function createPreset({
{
title: `Return (%)`,
seriesType: SeriesType.Based,
dataset: datasets.date[`price_${key}_return`],
dataset: params.datasets.date[`price_${key}_return`],
},
],
});

View File

@@ -3,14 +3,12 @@ import { colors } from "../../utils/colors";
import { applyMultipleSeries, SeriesType } from "./multiple";
export function createCohortPresetFolder<Scale extends ResourceScale>({
datasets,
scale,
color,
name,
datasetKey,
title,
}: {
datasets: Datasets;
scale: Scale;
name: string;
datasetKey: AnyPossibleCohortKey;
@@ -21,7 +19,6 @@ export function createCohortPresetFolder<Scale extends ResourceScale>({
name,
tree: createCohortPresetList({
title,
datasets,
name,
scale,
color,
@@ -32,14 +29,12 @@ export function createCohortPresetFolder<Scale extends ResourceScale>({
export function createCohortPresetList<Scale extends ResourceScale>({
name,
datasets,
scale,
color,
datasetKey,
title,
}: {
name: string;
datasets: Datasets;
scale: Scale;
datasetKey: AnyPossibleCohortKey;
title: string;