@ecency/wallets 1.4.17 → 1.4.19

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.
@@ -681,11 +681,31 @@ function getHiveAssetGeneralInfoQueryOptions(username) {
681
681
  );
682
682
  const marketTicker = await sdk.CONFIG.hiveClient.call("condenser_api", "get_ticker", []).catch(() => void 0);
683
683
  const marketPrice = Number.parseFloat(marketTicker?.latest ?? "");
684
+ if (!accountData) {
685
+ return {
686
+ name: "HIVE",
687
+ title: "Hive",
688
+ price: Number.isFinite(marketPrice) ? marketPrice : dynamicProps ? dynamicProps.base / dynamicProps.quote : 0,
689
+ accountBalance: 0
690
+ };
691
+ }
692
+ const liquidBalance = parseAsset(accountData.balance).amount;
693
+ const savingsBalance = parseAsset(accountData.savings_balance).amount;
684
694
  return {
685
695
  name: "HIVE",
686
696
  title: "Hive",
687
697
  price: Number.isFinite(marketPrice) ? marketPrice : dynamicProps ? dynamicProps.base / dynamicProps.quote : 0,
688
- accountBalance: accountData ? parseAsset(accountData.balance).amount : 0
698
+ accountBalance: liquidBalance + savingsBalance,
699
+ parts: [
700
+ {
701
+ name: "current",
702
+ balance: liquidBalance
703
+ },
704
+ {
705
+ name: "savings",
706
+ balance: savingsBalance
707
+ }
708
+ ]
689
709
  };
690
710
  }
691
711
  });
@@ -811,7 +831,7 @@ function getHbdAssetGeneralInfoQueryOptions(username) {
811
831
  apr: ((dynamicProps?.hbdInterestRate ?? 0) / 100).toFixed(3),
812
832
  parts: [
813
833
  {
814
- name: "account",
834
+ name: "current",
815
835
  balance: parseAsset(accountData.hbd_balance).amount
816
836
  },
817
837
  {
@@ -1187,6 +1207,36 @@ async function transferToSavingsHive(payload) {
1187
1207
  );
1188
1208
  }
1189
1209
  }
1210
+ async function transferFromSavingsHive(payload) {
1211
+ const requestId = payload.request_id ?? Date.now() >>> 0;
1212
+ const operationPayload = {
1213
+ from: payload.from,
1214
+ to: payload.to,
1215
+ amount: payload.amount,
1216
+ memo: payload.memo,
1217
+ request_id: requestId
1218
+ };
1219
+ if (payload.type === "key" && "key" in payload) {
1220
+ const { key } = payload;
1221
+ return sdk.CONFIG.hiveClient.broadcast.sendOperations(
1222
+ [["transfer_from_savings", operationPayload]],
1223
+ key
1224
+ );
1225
+ }
1226
+ if (payload.type === "keychain") {
1227
+ return sdk.Keychain.broadcast(
1228
+ payload.from,
1229
+ [["transfer_from_savings", operationPayload]],
1230
+ "Active"
1231
+ );
1232
+ }
1233
+ return hs__default.default.sendOperation(
1234
+ ["transfer_from_savings", operationPayload],
1235
+ { callback: `https://ecency.com/@${payload.from}/wallet` },
1236
+ () => {
1237
+ }
1238
+ );
1239
+ }
1190
1240
  async function powerUpHive(payload) {
1191
1241
  if (payload.type === "key" && "key" in payload) {
1192
1242
  const { key, type, ...params } = payload;
@@ -1325,15 +1375,60 @@ function useClaimRewards(username, onSuccess) {
1325
1375
  }
1326
1376
  );
1327
1377
  }
1378
+ async function claimInterestHive(payload) {
1379
+ const requestId = payload.request_id ?? Date.now() >>> 0;
1380
+ const baseOperation = {
1381
+ from: payload.from,
1382
+ to: payload.to,
1383
+ amount: payload.amount,
1384
+ memo: payload.memo,
1385
+ request_id: requestId
1386
+ };
1387
+ const cancelOperation = {
1388
+ from: payload.from,
1389
+ request_id: requestId
1390
+ };
1391
+ if (payload.type === "key" && "key" in payload) {
1392
+ const { key } = payload;
1393
+ return sdk.CONFIG.hiveClient.broadcast.sendOperations(
1394
+ [
1395
+ ["transfer_from_savings", baseOperation],
1396
+ ["cancel_transfer_from_savings", cancelOperation]
1397
+ ],
1398
+ key
1399
+ );
1400
+ }
1401
+ if (payload.type === "keychain") {
1402
+ return sdk.Keychain.broadcast(
1403
+ payload.from,
1404
+ [
1405
+ ["transfer_from_savings", baseOperation],
1406
+ ["cancel_transfer_from_savings", cancelOperation]
1407
+ ],
1408
+ "Active"
1409
+ );
1410
+ }
1411
+ return hs__default.default.sendOperations(
1412
+ [
1413
+ ["transfer_from_savings", baseOperation],
1414
+ ["cancel_transfer_from_savings", cancelOperation]
1415
+ ],
1416
+ { callback: `https://ecency.com/@${payload.from}/wallet` },
1417
+ () => {
1418
+ }
1419
+ );
1420
+ }
1328
1421
 
1329
1422
  // src/modules/assets/types/asset-operation.ts
1330
1423
  var AssetOperation = /* @__PURE__ */ ((AssetOperation2) => {
1331
1424
  AssetOperation2["Transfer"] = "transfer";
1332
1425
  AssetOperation2["TransferToSavings"] = "transfer-saving";
1426
+ AssetOperation2["WithdrawFromSavings"] = "withdraw-saving";
1333
1427
  AssetOperation2["Delegate"] = "delegate";
1334
1428
  AssetOperation2["PowerUp"] = "power-up";
1335
1429
  AssetOperation2["PowerDown"] = "power-down";
1336
- AssetOperation2["WithdrawRoutes"] = "withdraw-saving";
1430
+ AssetOperation2["WithdrawRoutes"] = "withdraw-routes";
1431
+ AssetOperation2["ClaimInterest"] = "claim-interest";
1337
1432
  AssetOperation2["Swap"] = "swap";
1338
1433
  AssetOperation2["Gift"] = "gift";
1339
1434
  AssetOperation2["Promote"] = "promote";
@@ -2291,7 +2386,7 @@ function getPointsAssetTransactionsQueryOptions(username, type) {
2291
2386
  }
2292
2387
  );
2293
2388
  const data = await response.json();
2294
- return data.map(({ created, type: type2, amount, id }) => ({
2389
+ return data.map(({ created, type: type2, amount, id, sender, receiver, memo }) => ({
2295
2390
  created: new Date(created),
2296
2391
  type: type2,
2297
2392
  results: [
@@ -2300,7 +2395,10 @@ function getPointsAssetTransactionsQueryOptions(username, type) {
2300
2395
  asset: "POINTS"
2301
2396
  }
2302
2397
  ],
2303
- id
2398
+ id,
2399
+ from: sender ?? void 0,
2400
+ to: receiver ?? void 0,
2401
+ memo: memo ?? void 0
2304
2402
  }));
2305
2403
  }
2306
2404
  });
@@ -2986,26 +3084,50 @@ function getTokenOperationsQueryOptions(token, username, isForOwner = false) {
2986
3084
  return reactQuery.queryOptions({
2987
3085
  queryKey: ["wallets", "token-operations", token, username, isForOwner],
2988
3086
  queryFn: async () => {
3087
+ const queryClient = sdk.getQueryClient();
3088
+ const ensureAssetInfo = async () => {
3089
+ if (!isForOwner || !username) {
3090
+ return void 0;
3091
+ }
3092
+ return await queryClient.ensureQueryData(
3093
+ getAccountWalletAssetInfoQueryOptions(username, token)
3094
+ );
3095
+ };
2989
3096
  switch (token) {
2990
- case "HIVE" /* Hive */:
3097
+ case "HIVE" /* Hive */: {
3098
+ const assetInfo = await ensureAssetInfo();
3099
+ const savingsBalance = assetInfo?.parts?.find(
3100
+ (part) => part.name === "savings"
3101
+ )?.balance;
2991
3102
  return [
2992
3103
  "transfer" /* Transfer */,
2993
3104
  ...isForOwner ? [
3105
+ ...savingsBalance && savingsBalance > 0 ? ["withdraw-saving" /* WithdrawFromSavings */] : [],
2994
3106
  "transfer-saving" /* TransferToSavings */,
2995
3107
  "power-up" /* PowerUp */,
2996
3108
  "swap" /* Swap */
2997
3109
  ] : []
2998
3110
  ];
3111
+ }
2999
3112
  case "HP" /* HivePower */:
3000
3113
  return [
3001
3114
  "delegate" /* Delegate */,
3002
- ...isForOwner ? ["power-down" /* PowerDown */, "withdraw-saving" /* WithdrawRoutes */] : ["power-up" /* PowerUp */]
3115
+ ...isForOwner ? ["power-down" /* PowerDown */, "withdraw-routes" /* WithdrawRoutes */] : ["power-up" /* PowerUp */]
3003
3116
  ];
3004
- case "HBD" /* HiveDollar */:
3117
+ case "HBD" /* HiveDollar */: {
3118
+ const assetInfo = await ensureAssetInfo();
3119
+ const savingsBalance = assetInfo?.parts?.find(
3120
+ (part) => part.name === "savings"
3121
+ )?.balance;
3005
3122
  return [
3006
3123
  "transfer" /* Transfer */,
3007
- ...isForOwner ? ["transfer-saving" /* TransferToSavings */, "swap" /* Swap */] : []
3124
+ ...isForOwner ? [
3125
+ ...savingsBalance && savingsBalance > 0 ? ["withdraw-saving" /* WithdrawFromSavings */] : [],
3126
+ "transfer-saving" /* TransferToSavings */,
3127
+ "swap" /* Swap */
3128
+ ] : []
3008
3129
  ];
3130
+ }
3009
3131
  case "POINTS" /* Points */:
3010
3132
  return [
3011
3133
  "gift" /* Gift */,
@@ -3039,7 +3161,6 @@ function getTokenOperationsQueryOptions(token, username, isForOwner = false) {
3039
3161
  if (!username) {
3040
3162
  return ["transfer" /* Transfer */];
3041
3163
  }
3042
- const queryClient = sdk.getQueryClient();
3043
3164
  const balancesListQuery = getHiveEngineTokensBalancesQueryOptions(username);
3044
3165
  const balances = await queryClient.ensureQueryData(balancesListQuery);
3045
3166
  const tokensQuery = getHiveEngineTokensMetadataQueryOptions(
@@ -3406,16 +3527,19 @@ var operationToFunctionMap = {
3406
3527
  HIVE: {
3407
3528
  ["transfer" /* Transfer */]: transferHive,
3408
3529
  ["transfer-saving" /* TransferToSavings */]: transferToSavingsHive,
3530
+ ["withdraw-saving" /* WithdrawFromSavings */]: transferFromSavingsHive,
3409
3531
  ["power-up" /* PowerUp */]: powerUpHive
3410
3532
  },
3411
3533
  HBD: {
3412
3534
  ["transfer" /* Transfer */]: transferHive,
3413
- ["transfer-saving" /* TransferToSavings */]: transferToSavingsHive
3535
+ ["transfer-saving" /* TransferToSavings */]: transferToSavingsHive,
3536
+ ["withdraw-saving" /* WithdrawFromSavings */]: transferFromSavingsHive,
3537
+ ["claim-interest" /* ClaimInterest */]: claimInterestHive
3414
3538
  },
3415
3539
  HP: {
3416
3540
  ["power-down" /* PowerDown */]: powerDownHive,
3417
3541
  ["delegate" /* Delegate */]: delegateHive,
3418
- ["withdraw-saving" /* WithdrawRoutes */]: withdrawVestingRouteHive
3542
+ ["withdraw-routes" /* WithdrawRoutes */]: withdrawVestingRouteHive
3419
3543
  },
3420
3544
  POINTS: {
3421
3545
  ["gift" /* Gift */]: transferPoint
@@ -3493,6 +3617,7 @@ exports.buildPsbt = buildPsbt;
3493
3617
  exports.buildSolTx = buildSolTx;
3494
3618
  exports.buildTonTx = buildTonTx;
3495
3619
  exports.buildTronTx = buildTronTx;
3620
+ exports.claimInterestHive = claimInterestHive;
3496
3621
  exports.decryptMemoWithAccounts = decryptMemoWithAccounts;
3497
3622
  exports.decryptMemoWithKeys = decryptMemoWithKeys;
3498
3623
  exports.delay = delay;
@@ -3550,6 +3675,7 @@ exports.signTx = signTx;
3550
3675
  exports.signTxAndBroadcast = signTxAndBroadcast;
3551
3676
  exports.stakeEngineToken = stakeEngineToken;
3552
3677
  exports.transferEngineToken = transferEngineToken;
3678
+ exports.transferFromSavingsHive = transferFromSavingsHive;
3553
3679
  exports.transferHive = transferHive;
3554
3680
  exports.transferLarynx = transferLarynx;
3555
3681
  exports.transferPoint = transferPoint;