@orderly.network/vaults 2.8.5 → 2.8.6-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -305,6 +305,7 @@ declare const useVaultCardScript: (vault: VaultInfo) => {
305
305
  };
306
306
  type VaultCardScript = ReturnType<typeof useVaultCardScript>;
307
307
 
308
+ declare const formatAllTimeReturn: (status: VaultStatus, vaultAge: number | null, lifetimeApy: number) => string;
308
309
  declare const VaultCard: FC<VaultCardScript>;
309
310
 
310
311
  declare const ORDERLY_ICON = "https://oss.orderly.network/static/symbol_logo/ORDER.png";
@@ -355,4 +356,4 @@ type LatestWithdrawWidgetProps = {
355
356
  };
356
357
  declare const LatestWithdrawWidget: FC<LatestWithdrawWidgetProps>;
357
358
 
358
- export { AllVaultsDesktop, AllVaultsWidget, LatestDepositWidget, type LatestDepositWidgetProps, LatestWithdrawWidget, type LatestWithdrawWidgetProps, ORDERLY_ICON, ORDERLY_VAULT_DESCRIPTION, ORDERLY_VAULT_TITLE, OperationType, RoleType, VaultCard, type VaultCardScript, VaultCardWidget, type VaultCardWidgetProps, VaultDepositAndWithdraw, type VaultDepositAndWithdrawProps, VaultDepositAndWithdrawWithDialogId, VaultDepositAndWithdrawWithSheetId, VaultDepositWidget, type VaultInfo, type VaultInfoParams, type VaultInfoResponse, type VaultLpInfo, type VaultLpInfoParams, type VaultLpInfoResponse, type VaultLpPerformance, type VaultLpPerformanceResponse, type VaultOperation, type VaultOperationMessage, type VaultOperationRequest, type VaultOverallInfo, type VaultOverallInfoParams, type VaultOverallInfoResponse, type VaultPerformanceParams, type VaultStatus, type VaultSupportedChain, type VaultTimeRange, VaultWithdrawWidget, type VaultWithdrawWidgetProps, VaultsHeaderDesktop, type VaultsHeaderScript, VaultsHeaderWidget, VaultsIntroductionWidget, VaultsList, VaultsPage, type VaultsPageConfig, type VaultsPageProps, type ViewMode, ViewModeToggle, getBrokerIconUrl, getVaultInfo, getVaultLpInfo, getVaultLpPerformance, getVaultOverallInfo, useVaultCardScript, useVaultInfoActions, useVaultInfoState, useVaultLpInfoActions, useVaultLpInfoArray, useVaultLpInfoById, useVaultLpInfoIds, useVaultLpInfoState, useVaultLpPerformanceActions, useVaultLpPerformanceArray, useVaultLpPerformanceById, useVaultLpPerformanceIds, useVaultLpPerformanceState, useVaultOverallInfoActions, useVaultOverallInfoState, useVaultsHeaderScript, useVaultsStore };
359
+ export { AllVaultsDesktop, AllVaultsWidget, LatestDepositWidget, type LatestDepositWidgetProps, LatestWithdrawWidget, type LatestWithdrawWidgetProps, ORDERLY_ICON, ORDERLY_VAULT_DESCRIPTION, ORDERLY_VAULT_TITLE, OperationType, RoleType, VaultCard, type VaultCardScript, VaultCardWidget, type VaultCardWidgetProps, VaultDepositAndWithdraw, type VaultDepositAndWithdrawProps, VaultDepositAndWithdrawWithDialogId, VaultDepositAndWithdrawWithSheetId, VaultDepositWidget, type VaultInfo, type VaultInfoParams, type VaultInfoResponse, type VaultLpInfo, type VaultLpInfoParams, type VaultLpInfoResponse, type VaultLpPerformance, type VaultLpPerformanceResponse, type VaultOperation, type VaultOperationMessage, type VaultOperationRequest, type VaultOverallInfo, type VaultOverallInfoParams, type VaultOverallInfoResponse, type VaultPerformanceParams, type VaultStatus, type VaultSupportedChain, type VaultTimeRange, VaultWithdrawWidget, type VaultWithdrawWidgetProps, VaultsHeaderDesktop, type VaultsHeaderScript, VaultsHeaderWidget, VaultsIntroductionWidget, VaultsList, VaultsPage, type VaultsPageConfig, type VaultsPageProps, type ViewMode, ViewModeToggle, formatAllTimeReturn, getBrokerIconUrl, getVaultInfo, getVaultLpInfo, getVaultLpPerformance, getVaultOverallInfo, useVaultCardScript, useVaultInfoActions, useVaultInfoState, useVaultLpInfoActions, useVaultLpInfoArray, useVaultLpInfoById, useVaultLpInfoIds, useVaultLpInfoState, useVaultLpPerformanceActions, useVaultLpPerformanceArray, useVaultLpPerformanceById, useVaultLpPerformanceIds, useVaultLpPerformanceState, useVaultOverallInfoActions, useVaultOverallInfoState, useVaultsHeaderScript, useVaultsStore };
package/dist/index.d.ts CHANGED
@@ -305,6 +305,7 @@ declare const useVaultCardScript: (vault: VaultInfo) => {
305
305
  };
306
306
  type VaultCardScript = ReturnType<typeof useVaultCardScript>;
307
307
 
308
+ declare const formatAllTimeReturn: (status: VaultStatus, vaultAge: number | null, lifetimeApy: number) => string;
308
309
  declare const VaultCard: FC<VaultCardScript>;
309
310
 
310
311
  declare const ORDERLY_ICON = "https://oss.orderly.network/static/symbol_logo/ORDER.png";
@@ -355,4 +356,4 @@ type LatestWithdrawWidgetProps = {
355
356
  };
356
357
  declare const LatestWithdrawWidget: FC<LatestWithdrawWidgetProps>;
357
358
 
358
- export { AllVaultsDesktop, AllVaultsWidget, LatestDepositWidget, type LatestDepositWidgetProps, LatestWithdrawWidget, type LatestWithdrawWidgetProps, ORDERLY_ICON, ORDERLY_VAULT_DESCRIPTION, ORDERLY_VAULT_TITLE, OperationType, RoleType, VaultCard, type VaultCardScript, VaultCardWidget, type VaultCardWidgetProps, VaultDepositAndWithdraw, type VaultDepositAndWithdrawProps, VaultDepositAndWithdrawWithDialogId, VaultDepositAndWithdrawWithSheetId, VaultDepositWidget, type VaultInfo, type VaultInfoParams, type VaultInfoResponse, type VaultLpInfo, type VaultLpInfoParams, type VaultLpInfoResponse, type VaultLpPerformance, type VaultLpPerformanceResponse, type VaultOperation, type VaultOperationMessage, type VaultOperationRequest, type VaultOverallInfo, type VaultOverallInfoParams, type VaultOverallInfoResponse, type VaultPerformanceParams, type VaultStatus, type VaultSupportedChain, type VaultTimeRange, VaultWithdrawWidget, type VaultWithdrawWidgetProps, VaultsHeaderDesktop, type VaultsHeaderScript, VaultsHeaderWidget, VaultsIntroductionWidget, VaultsList, VaultsPage, type VaultsPageConfig, type VaultsPageProps, type ViewMode, ViewModeToggle, getBrokerIconUrl, getVaultInfo, getVaultLpInfo, getVaultLpPerformance, getVaultOverallInfo, useVaultCardScript, useVaultInfoActions, useVaultInfoState, useVaultLpInfoActions, useVaultLpInfoArray, useVaultLpInfoById, useVaultLpInfoIds, useVaultLpInfoState, useVaultLpPerformanceActions, useVaultLpPerformanceArray, useVaultLpPerformanceById, useVaultLpPerformanceIds, useVaultLpPerformanceState, useVaultOverallInfoActions, useVaultOverallInfoState, useVaultsHeaderScript, useVaultsStore };
359
+ export { AllVaultsDesktop, AllVaultsWidget, LatestDepositWidget, type LatestDepositWidgetProps, LatestWithdrawWidget, type LatestWithdrawWidgetProps, ORDERLY_ICON, ORDERLY_VAULT_DESCRIPTION, ORDERLY_VAULT_TITLE, OperationType, RoleType, VaultCard, type VaultCardScript, VaultCardWidget, type VaultCardWidgetProps, VaultDepositAndWithdraw, type VaultDepositAndWithdrawProps, VaultDepositAndWithdrawWithDialogId, VaultDepositAndWithdrawWithSheetId, VaultDepositWidget, type VaultInfo, type VaultInfoParams, type VaultInfoResponse, type VaultLpInfo, type VaultLpInfoParams, type VaultLpInfoResponse, type VaultLpPerformance, type VaultLpPerformanceResponse, type VaultOperation, type VaultOperationMessage, type VaultOperationRequest, type VaultOverallInfo, type VaultOverallInfoParams, type VaultOverallInfoResponse, type VaultPerformanceParams, type VaultStatus, type VaultSupportedChain, type VaultTimeRange, VaultWithdrawWidget, type VaultWithdrawWidgetProps, VaultsHeaderDesktop, type VaultsHeaderScript, VaultsHeaderWidget, VaultsIntroductionWidget, VaultsList, VaultsPage, type VaultsPageConfig, type VaultsPageProps, type ViewMode, ViewModeToggle, formatAllTimeReturn, getBrokerIconUrl, getVaultInfo, getVaultLpInfo, getVaultLpPerformance, getVaultOverallInfo, useVaultCardScript, useVaultInfoActions, useVaultInfoState, useVaultLpInfoActions, useVaultLpInfoArray, useVaultLpInfoById, useVaultLpInfoIds, useVaultLpInfoState, useVaultLpPerformanceActions, useVaultLpPerformanceArray, useVaultLpPerformanceById, useVaultLpPerformanceIds, useVaultLpPerformanceState, useVaultOverallInfoActions, useVaultOverallInfoState, useVaultsHeaderScript, useVaultsStore };
package/dist/index.js CHANGED
@@ -2068,10 +2068,19 @@ var init_parseMarkdownLinks = __esm({
2068
2068
  };
2069
2069
  }
2070
2070
  });
2071
- exports.VaultCard = void 0; var VaultInfoItem, LpInfoItem, VaultCardOperation;
2071
+ exports.formatAllTimeReturn = void 0; exports.VaultCard = void 0; var VaultInfoItem, LpInfoItem, VaultCardOperation;
2072
2072
  var init_vaultCard_ui = __esm({
2073
2073
  "src/components/vault-card/vaultCard.ui.tsx"() {
2074
2074
  init_parseMarkdownLinks();
2075
+ exports.formatAllTimeReturn = (status, vaultAge, lifetimeApy) => {
2076
+ if (status === "pre_launch" || vaultAge !== null && vaultAge < 7) {
2077
+ return "--";
2078
+ }
2079
+ if (lifetimeApy > 100) {
2080
+ return ">10000%";
2081
+ }
2082
+ return new utils.Decimal(lifetimeApy).mul(100).toDecimalPlaces(2, utils.Decimal.ROUND_UP).toFixed(2) + "%";
2083
+ };
2075
2084
  exports.VaultCard = (props) => {
2076
2085
  const {
2077
2086
  title,
@@ -2088,6 +2097,14 @@ var init_vaultCard_ui = __esm({
2088
2097
  } = props;
2089
2098
  const { t } = i18n.useTranslation();
2090
2099
  const { isMobile } = ui.useScreen();
2100
+ const formattedAllTimeReturn = React.useMemo(
2101
+ () => exports.formatAllTimeReturn(
2102
+ vaultInfo.status,
2103
+ vaultInfo.vault_age,
2104
+ vaultInfo.lifetime_apy
2105
+ ),
2106
+ [vaultInfo.status, vaultInfo.vault_age, vaultInfo.lifetime_apy]
2107
+ );
2091
2108
  const getStatusTag = () => {
2092
2109
  const { status } = vaultInfo;
2093
2110
  if (status === "live") {
@@ -2205,14 +2222,14 @@ var init_vaultCard_ui = __esm({
2205
2222
  /* @__PURE__ */ jsxRuntime.jsx(
2206
2223
  VaultInfoItem,
2207
2224
  {
2208
- label: t("vaults.card.apy"),
2209
- value: vaultInfo.status === "pre_launch" || vaultInfo.vault_age !== null && vaultInfo.vault_age < 30 ? "--" : vaultInfo["30d_apy"] > 100 ? ">10000%" : (vaultInfo["30d_apy"] * 100).toFixed(2) + "%",
2225
+ label: t("vaults.card.allTimeReturn"),
2226
+ value: formattedAllTimeReturn,
2210
2227
  textProps: {
2211
2228
  color: "brand",
2212
2229
  type: "gradient"
2213
2230
  },
2214
- showTooltip: vaultInfo.status === "pre_launch" || vaultInfo.vault_age !== null && vaultInfo.vault_age < 30,
2215
- tooltipContent: "APY is not calculated for vaults that are less than 30 days old."
2231
+ showTooltip: vaultInfo.status === "pre_launch" || vaultInfo.vault_age !== null && vaultInfo.vault_age < 7,
2232
+ tooltipContent: t("vaults.card.allTimeReturnTooltip")
2216
2233
  }
2217
2234
  )
2218
2235
  ] }),
@@ -2371,13 +2388,14 @@ exports.VaultsList = void 0; var VaultListRow;
2371
2388
  var init_vaults_list = __esm({
2372
2389
  "src/components/all-vaults/vaults-list.tsx"() {
2373
2390
  init_vaultCard_script();
2391
+ init_vaultCard_ui();
2374
2392
  exports.VaultsList = ({ vaults }) => {
2375
2393
  const { t } = i18n.useTranslation();
2376
2394
  const [sortField, setSortField] = React.useState("apy");
2377
2395
  const [sortDirection, setSortDirection] = React.useState("desc");
2378
2396
  const shouldShowApyTooltip = React.useMemo(() => {
2379
2397
  return vaults.some(
2380
- (vault) => vault.status === "pre_launch" || vault.vault_age !== null && vault.vault_age < 30
2398
+ (vault) => vault.status === "pre_launch" || vault.vault_age !== null && vault.vault_age < 7
2381
2399
  );
2382
2400
  }, [vaults]);
2383
2401
  const handleSort = (field) => {
@@ -2398,8 +2416,8 @@ var init_vaults_list = __esm({
2398
2416
  bValue = b.tvl;
2399
2417
  break;
2400
2418
  case "apy":
2401
- aValue = a["30d_apy"];
2402
- bValue = b["30d_apy"];
2419
+ aValue = a.lifetime_apy;
2420
+ bValue = b.lifetime_apy;
2403
2421
  break;
2404
2422
  default:
2405
2423
  return 0;
@@ -2463,7 +2481,7 @@ var init_vaults_list = __esm({
2463
2481
  onClick: () => handleSort("apy"),
2464
2482
  className: "oui-flex oui-items-center oui-text-2xs oui-font-normal oui-text-base-contrast-54 hover:oui-text-base-contrast",
2465
2483
  children: [
2466
- t("vaults.card.apy"),
2484
+ t("vaults.card.allTimeReturn"),
2467
2485
  /* @__PURE__ */ jsxRuntime.jsx(SortIcon, { field: "apy" })
2468
2486
  ]
2469
2487
  }
@@ -2471,7 +2489,7 @@ var init_vaults_list = __esm({
2471
2489
  shouldShowApyTooltip && /* @__PURE__ */ jsxRuntime.jsx(
2472
2490
  ui.Tooltip,
2473
2491
  {
2474
- content: "APY is not calculated for vaults that are less than 30 days old.",
2492
+ content: t("vaults.card.allTimeReturnTooltip"),
2475
2493
  delayDuration: 100,
2476
2494
  children: /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
2477
2495
  ui.InfoCircleIcon,
@@ -2559,6 +2577,14 @@ var init_vaults_list = __esm({
2559
2577
  return null;
2560
2578
  };
2561
2579
  const statusTag = getStatusTag();
2580
+ const formattedAllTimeReturn = React.useMemo(
2581
+ () => exports.formatAllTimeReturn(
2582
+ vaultInfo.status,
2583
+ vaultInfo.vault_age,
2584
+ vaultInfo.lifetime_apy
2585
+ ),
2586
+ [vaultInfo.status, vaultInfo.vault_age, vaultInfo.lifetime_apy]
2587
+ );
2562
2588
  React.useMemo(() => {
2563
2589
  const chains = Array.isArray(vaultInfo?.supported_chains) ? vaultInfo.supported_chains : [];
2564
2590
  const ICON_SIZE = isMobile ? 18 : 20;
@@ -2633,7 +2659,7 @@ var init_vaults_list = __esm({
2633
2659
  children: vaultInfo.tvl
2634
2660
  }
2635
2661
  ) }),
2636
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "oui-relative oui-z-10", children: /* @__PURE__ */ jsxRuntime.jsx(ui.Text.gradient, { className: "oui-text-sm oui-font-semibold", color: "brand", children: vaultInfo.status === "pre_launch" || vaultInfo.vault_age !== null && vaultInfo.vault_age < 30 ? "--" : vaultInfo["30d_apy"] > 100 ? ">10000%" : `${(vaultInfo["30d_apy"] * 100).toFixed(2)}%` }) }),
2662
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "oui-relative oui-z-10", children: /* @__PURE__ */ jsxRuntime.jsx(ui.Text.gradient, { className: "oui-text-sm oui-font-semibold", color: "brand", children: formattedAllTimeReturn }) }),
2637
2663
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "oui-relative oui-z-10", children: /* @__PURE__ */ jsxRuntime.jsx(
2638
2664
  ui.Text.numeral,
2639
2665
  {