@strkfarm/sdk 2.0.0-staging.53 → 2.0.0-staging.56

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.
@@ -116682,13 +116682,19 @@ spurious results.`);
116682
116682
  `Redeem any time to receive your remaining ${main} plus accumulated ${secondary}.`,
116683
116683
  `On expiry, entire ${main} token would have been swapped into ${secondary}, unless due to unfavourable market conditions.`
116684
116684
  ];
116685
+ const parentTitle = secondary.replace("x", "");
116686
+ const variantIntro = {
116687
+ title: `${parentTitle} YOLO vault variant`,
116688
+ description: "Each variant runs until a different expiry date. TVA schedules and execution windows are configured per vault."
116689
+ };
116685
116690
  return {
116686
- title: `${secondary.replace("x", "")} YOLO (${input.expiryDate})`,
116691
+ title: `${parentTitle} YOLO (${input.expiryDate})`,
116687
116692
  description,
116688
116693
  vaultTypeDescription: vaultTypeDescription2,
116689
116694
  faqs: faqs3,
116690
116695
  investmentSteps: investmentSteps2,
116691
- parentTitle: `${secondary.replace("x", "")} YOLO`
116696
+ parentTitle: `${parentTitle} YOLO`,
116697
+ variantIntro
116692
116698
  };
116693
116699
  };
116694
116700
  var usdc = Global.getDefaultTokens().find((t) => t.symbol === "USDC");
@@ -116738,7 +116744,6 @@ spurious results.`);
116738
116744
  ]
116739
116745
  };
116740
116746
  var wbtc_parent = "wbtc-yolo";
116741
- var xstrk_parent = "xstrk-yolo";
116742
116747
  var yoloVaultsConfig = [
116743
116748
  {
116744
116749
  address: ContractAddr.from("0x018ccdff25a642e211f86ace35ba282ebdf342330319ead98cae37258bc9cce1"),
@@ -116747,53 +116752,57 @@ spurious results.`);
116747
116752
  startDate: "03-MAR-2026",
116748
116753
  expiryDate: "31-DEC-2026",
116749
116754
  id: `btc-yolo-31-dec-2026`,
116755
+ priority: 100,
116750
116756
  ...vaultCommonProperties,
116751
116757
  parent_id: wbtc_parent
116752
- },
116753
- {
116754
- address: ContractAddr.from("0x3381380c6cca17c2a20e1167a362d5b939e392311cbcdf2016f9c7c7a23a801"),
116755
- mainToken: vesuPrimeUSDC,
116756
- secondaryToken: xWBTC,
116757
- startDate: "03-APR-2026",
116758
- expiryDate: "31-MAY-2026",
116759
- id: `vusdc-xwbct-yolo-31-may-2026`,
116760
- ...vaultCommonProperties,
116761
- parent_id: wbtc_parent
116762
- },
116763
- {
116764
- address: ContractAddr.from("0x60c8466549a8e51eed0e8c38243fdb57d173c96cfdd4375b49ad1e338ff893"),
116765
- mainToken: vesuPrimeUSDC,
116766
- secondaryToken: xSTRK,
116767
- startDate: "03-APR-2026",
116768
- expiryDate: "31-MAR-2027",
116769
- id: `xstrk-yolo-31-mar-2027`,
116770
- ...vaultCommonProperties,
116771
- spendingLevels: [
116772
- { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
116773
- { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
116774
- { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
116775
- { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
116776
- { maxPrice: 0.025, spendPercent: 500 }
116777
- ],
116778
- parent_id: xstrk_parent
116779
- },
116780
- {
116781
- address: ContractAddr.from("0x62499970196772c18ccf1da09910ece11d85d5df3e8f6d6e41b4d158fcb8e79"),
116782
- mainToken: vesuPrimeUSDC,
116783
- secondaryToken: xSTRK,
116784
- startDate: "03-APR-2026",
116785
- expiryDate: "30-JUN-2026",
116786
- id: `xstrk-yolo-30-jun-2026`,
116787
- ...vaultCommonProperties,
116788
- spendingLevels: [
116789
- { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
116790
- { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
116791
- { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
116792
- { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
116793
- { maxPrice: 0.025, spendPercent: 500 }
116794
- ],
116795
- parent_id: xstrk_parent
116796
116758
  }
116759
+ // {
116760
+ // address: ContractAddr.from("0x3381380c6cca17c2a20e1167a362d5b939e392311cbcdf2016f9c7c7a23a801"),
116761
+ // mainToken: vesuPrimeUSDC,
116762
+ // secondaryToken: xWBTC,
116763
+ // startDate: "03-APR-2026",
116764
+ // expiryDate: "31-MAY-2026",
116765
+ // id: `vusdc-xwbct-yolo-31-may-2026`,
116766
+ // priority: 100,
116767
+ // ...vaultCommonProperties,
116768
+ // parent_id: wbtc_parent
116769
+ // },
116770
+ // {
116771
+ // address: ContractAddr.from("0x60c8466549a8e51eed0e8c38243fdb57d173c96cfdd4375b49ad1e338ff893"),
116772
+ // mainToken: vesuPrimeUSDC,
116773
+ // secondaryToken: xSTRK,
116774
+ // startDate: "03-APR-2026",
116775
+ // expiryDate: "31-MAR-2027",
116776
+ // id: `xstrk-yolo-31-mar-2027`,
116777
+ // priority: 50,
116778
+ // ...vaultCommonProperties,
116779
+ // spendingLevels: [
116780
+ // { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
116781
+ // { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
116782
+ // { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
116783
+ // { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
116784
+ // { maxPrice: 0.025, spendPercent: 500 },
116785
+ // ],
116786
+ // parent_id: xstrk_parent
116787
+ // },
116788
+ // {
116789
+ // address: ContractAddr.from("0x62499970196772c18ccf1da09910ece11d85d5df3e8f6d6e41b4d158fcb8e79"),
116790
+ // mainToken: vesuPrimeUSDC,
116791
+ // secondaryToken: xSTRK,
116792
+ // startDate: "03-APR-2026",
116793
+ // expiryDate: "30-JUN-2026",
116794
+ // id: `xstrk-yolo-30-jun-2026`,
116795
+ // priority: 50,
116796
+ // ...vaultCommonProperties,
116797
+ // spendingLevels: [
116798
+ // { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
116799
+ // { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
116800
+ // { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
116801
+ // { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
116802
+ // { maxPrice: 0.025, spendPercent: 500 },
116803
+ // ],
116804
+ // parent_id: xstrk_parent
116805
+ // }
116797
116806
  ];
116798
116807
  var yoloRiskFactors = [];
116799
116808
  var YoloVaultStrategies = yoloVaultsConfig.map((yoloConfig) => {
@@ -116804,6 +116813,8 @@ spurious results.`);
116804
116813
  name: yoloCopy.title,
116805
116814
  parentName: yoloCopy.parentTitle,
116806
116815
  parentId: yoloConfig.parent_id,
116816
+ priority: yoloConfig.priority,
116817
+ variantIntro: yoloCopy.variantIntro,
116807
116818
  description: yoloCopy.description,
116808
116819
  address: yoloConfig.address,
116809
116820
  vaultType: {
@@ -116860,7 +116871,7 @@ spurious results.`);
116860
116871
  } : {}
116861
116872
  },
116862
116873
  faqs: yoloCopy.faqs,
116863
- contractDetails: [],
116874
+ contractDetails: [{ name: "Vault", address: yoloConfig.address }],
116864
116875
  investmentSteps: yoloCopy.investmentSteps,
116865
116876
  settings: {
116866
116877
  liveStatus: "Hot & New \u{1F525}" /* HOT */,
@@ -29281,13 +29281,19 @@ var getYoloVaultCopy = (input) => {
29281
29281
  `Redeem any time to receive your remaining ${main} plus accumulated ${secondary}.`,
29282
29282
  `On expiry, entire ${main} token would have been swapped into ${secondary}, unless due to unfavourable market conditions.`
29283
29283
  ];
29284
+ const parentTitle = secondary.replace("x", "");
29285
+ const variantIntro = {
29286
+ title: `${parentTitle} YOLO vault variant`,
29287
+ description: "Each variant runs until a different expiry date. TVA schedules and execution windows are configured per vault."
29288
+ };
29284
29289
  return {
29285
- title: `${secondary.replace("x", "")} YOLO (${input.expiryDate})`,
29290
+ title: `${parentTitle} YOLO (${input.expiryDate})`,
29286
29291
  description,
29287
29292
  vaultTypeDescription: vaultTypeDescription2,
29288
29293
  faqs: faqs3,
29289
29294
  investmentSteps: investmentSteps2,
29290
- parentTitle: `${secondary.replace("x", "")} YOLO`
29295
+ parentTitle: `${parentTitle} YOLO`,
29296
+ variantIntro
29291
29297
  };
29292
29298
  };
29293
29299
  var usdc = Global.getDefaultTokens().find((t) => t.symbol === "USDC");
@@ -29337,7 +29343,6 @@ var vaultCommonProperties = {
29337
29343
  ]
29338
29344
  };
29339
29345
  var wbtc_parent = "wbtc-yolo";
29340
- var xstrk_parent = "xstrk-yolo";
29341
29346
  var yoloVaultsConfig = [
29342
29347
  {
29343
29348
  address: ContractAddr.from("0x018ccdff25a642e211f86ace35ba282ebdf342330319ead98cae37258bc9cce1"),
@@ -29346,53 +29351,57 @@ var yoloVaultsConfig = [
29346
29351
  startDate: "03-MAR-2026",
29347
29352
  expiryDate: "31-DEC-2026",
29348
29353
  id: `btc-yolo-31-dec-2026`,
29354
+ priority: 100,
29349
29355
  ...vaultCommonProperties,
29350
29356
  parent_id: wbtc_parent
29351
- },
29352
- {
29353
- address: ContractAddr.from("0x3381380c6cca17c2a20e1167a362d5b939e392311cbcdf2016f9c7c7a23a801"),
29354
- mainToken: vesuPrimeUSDC,
29355
- secondaryToken: xWBTC,
29356
- startDate: "03-APR-2026",
29357
- expiryDate: "31-MAY-2026",
29358
- id: `vusdc-xwbct-yolo-31-may-2026`,
29359
- ...vaultCommonProperties,
29360
- parent_id: wbtc_parent
29361
- },
29362
- {
29363
- address: ContractAddr.from("0x60c8466549a8e51eed0e8c38243fdb57d173c96cfdd4375b49ad1e338ff893"),
29364
- mainToken: vesuPrimeUSDC,
29365
- secondaryToken: xSTRK,
29366
- startDate: "03-APR-2026",
29367
- expiryDate: "31-MAR-2027",
29368
- id: `xstrk-yolo-31-mar-2027`,
29369
- ...vaultCommonProperties,
29370
- spendingLevels: [
29371
- { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
29372
- { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
29373
- { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
29374
- { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
29375
- { maxPrice: 0.025, spendPercent: 500 }
29376
- ],
29377
- parent_id: xstrk_parent
29378
- },
29379
- {
29380
- address: ContractAddr.from("0x62499970196772c18ccf1da09910ece11d85d5df3e8f6d6e41b4d158fcb8e79"),
29381
- mainToken: vesuPrimeUSDC,
29382
- secondaryToken: xSTRK,
29383
- startDate: "03-APR-2026",
29384
- expiryDate: "30-JUN-2026",
29385
- id: `xstrk-yolo-30-jun-2026`,
29386
- ...vaultCommonProperties,
29387
- spendingLevels: [
29388
- { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
29389
- { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
29390
- { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
29391
- { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
29392
- { maxPrice: 0.025, spendPercent: 500 }
29393
- ],
29394
- parent_id: xstrk_parent
29395
29357
  }
29358
+ // {
29359
+ // address: ContractAddr.from("0x3381380c6cca17c2a20e1167a362d5b939e392311cbcdf2016f9c7c7a23a801"),
29360
+ // mainToken: vesuPrimeUSDC,
29361
+ // secondaryToken: xWBTC,
29362
+ // startDate: "03-APR-2026",
29363
+ // expiryDate: "31-MAY-2026",
29364
+ // id: `vusdc-xwbct-yolo-31-may-2026`,
29365
+ // priority: 100,
29366
+ // ...vaultCommonProperties,
29367
+ // parent_id: wbtc_parent
29368
+ // },
29369
+ // {
29370
+ // address: ContractAddr.from("0x60c8466549a8e51eed0e8c38243fdb57d173c96cfdd4375b49ad1e338ff893"),
29371
+ // mainToken: vesuPrimeUSDC,
29372
+ // secondaryToken: xSTRK,
29373
+ // startDate: "03-APR-2026",
29374
+ // expiryDate: "31-MAR-2027",
29375
+ // id: `xstrk-yolo-31-mar-2027`,
29376
+ // priority: 50,
29377
+ // ...vaultCommonProperties,
29378
+ // spendingLevels: [
29379
+ // { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
29380
+ // { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
29381
+ // { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
29382
+ // { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
29383
+ // { maxPrice: 0.025, spendPercent: 500 },
29384
+ // ],
29385
+ // parent_id: xstrk_parent
29386
+ // },
29387
+ // {
29388
+ // address: ContractAddr.from("0x62499970196772c18ccf1da09910ece11d85d5df3e8f6d6e41b4d158fcb8e79"),
29389
+ // mainToken: vesuPrimeUSDC,
29390
+ // secondaryToken: xSTRK,
29391
+ // startDate: "03-APR-2026",
29392
+ // expiryDate: "30-JUN-2026",
29393
+ // id: `xstrk-yolo-30-jun-2026`,
29394
+ // priority: 50,
29395
+ // ...vaultCommonProperties,
29396
+ // spendingLevels: [
29397
+ // { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
29398
+ // { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
29399
+ // { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
29400
+ // { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
29401
+ // { maxPrice: 0.025, spendPercent: 500 },
29402
+ // ],
29403
+ // parent_id: xstrk_parent
29404
+ // }
29396
29405
  ];
29397
29406
  var yoloRiskFactors = [];
29398
29407
  var YoloVaultStrategies = yoloVaultsConfig.map((yoloConfig) => {
@@ -29403,6 +29412,8 @@ var YoloVaultStrategies = yoloVaultsConfig.map((yoloConfig) => {
29403
29412
  name: yoloCopy.title,
29404
29413
  parentName: yoloCopy.parentTitle,
29405
29414
  parentId: yoloConfig.parent_id,
29415
+ priority: yoloConfig.priority,
29416
+ variantIntro: yoloCopy.variantIntro,
29406
29417
  description: yoloCopy.description,
29407
29418
  address: yoloConfig.address,
29408
29419
  vaultType: {
@@ -29459,7 +29470,7 @@ var YoloVaultStrategies = yoloVaultsConfig.map((yoloConfig) => {
29459
29470
  } : {}
29460
29471
  },
29461
29472
  faqs: yoloCopy.faqs,
29462
- contractDetails: [],
29473
+ contractDetails: [{ name: "Vault", address: yoloConfig.address }],
29463
29474
  investmentSteps: yoloCopy.investmentSteps,
29464
29475
  settings: {
29465
29476
  liveStatus: "Hot & New \u{1F525}" /* HOT */,
package/dist/index.d.ts CHANGED
@@ -232,6 +232,19 @@ interface IStrategyMetadata<T> {
232
232
  id: string;
233
233
  name: string;
234
234
  description: string | React.ReactNode;
235
+ /**
236
+ * Optional UI sort priority. Higher shows earlier.
237
+ * Intended for pinning flagship parent vaults (e.g. BTC above STRK).
238
+ */
239
+ priority?: number;
240
+ /**
241
+ * Optional UI config for the variant intro popup (strategy page).
242
+ * Should be identical across strategies that share the same `parentId`.
243
+ */
244
+ variantIntro?: {
245
+ title: string;
246
+ description: string;
247
+ };
235
248
  address: ContractAddr;
236
249
  launchBlock: number;
237
250
  type: "ERC4626" | "ERC721" | "Other";
package/dist/index.js CHANGED
@@ -29421,13 +29421,19 @@ var getYoloVaultCopy = (input) => {
29421
29421
  `Redeem any time to receive your remaining ${main} plus accumulated ${secondary}.`,
29422
29422
  `On expiry, entire ${main} token would have been swapped into ${secondary}, unless due to unfavourable market conditions.`
29423
29423
  ];
29424
+ const parentTitle = secondary.replace("x", "");
29425
+ const variantIntro = {
29426
+ title: `${parentTitle} YOLO vault variant`,
29427
+ description: "Each variant runs until a different expiry date. TVA schedules and execution windows are configured per vault."
29428
+ };
29424
29429
  return {
29425
- title: `${secondary.replace("x", "")} YOLO (${input.expiryDate})`,
29430
+ title: `${parentTitle} YOLO (${input.expiryDate})`,
29426
29431
  description,
29427
29432
  vaultTypeDescription: vaultTypeDescription2,
29428
29433
  faqs: faqs3,
29429
29434
  investmentSteps: investmentSteps2,
29430
- parentTitle: `${secondary.replace("x", "")} YOLO`
29435
+ parentTitle: `${parentTitle} YOLO`,
29436
+ variantIntro
29431
29437
  };
29432
29438
  };
29433
29439
  var usdc = Global.getDefaultTokens().find((t) => t.symbol === "USDC");
@@ -29477,7 +29483,6 @@ var vaultCommonProperties = {
29477
29483
  ]
29478
29484
  };
29479
29485
  var wbtc_parent = "wbtc-yolo";
29480
- var xstrk_parent = "xstrk-yolo";
29481
29486
  var yoloVaultsConfig = [
29482
29487
  {
29483
29488
  address: ContractAddr.from("0x018ccdff25a642e211f86ace35ba282ebdf342330319ead98cae37258bc9cce1"),
@@ -29486,53 +29491,57 @@ var yoloVaultsConfig = [
29486
29491
  startDate: "03-MAR-2026",
29487
29492
  expiryDate: "31-DEC-2026",
29488
29493
  id: `btc-yolo-31-dec-2026`,
29494
+ priority: 100,
29489
29495
  ...vaultCommonProperties,
29490
29496
  parent_id: wbtc_parent
29491
- },
29492
- {
29493
- address: ContractAddr.from("0x3381380c6cca17c2a20e1167a362d5b939e392311cbcdf2016f9c7c7a23a801"),
29494
- mainToken: vesuPrimeUSDC,
29495
- secondaryToken: xWBTC,
29496
- startDate: "03-APR-2026",
29497
- expiryDate: "31-MAY-2026",
29498
- id: `vusdc-xwbct-yolo-31-may-2026`,
29499
- ...vaultCommonProperties,
29500
- parent_id: wbtc_parent
29501
- },
29502
- {
29503
- address: ContractAddr.from("0x60c8466549a8e51eed0e8c38243fdb57d173c96cfdd4375b49ad1e338ff893"),
29504
- mainToken: vesuPrimeUSDC,
29505
- secondaryToken: xSTRK,
29506
- startDate: "03-APR-2026",
29507
- expiryDate: "31-MAR-2027",
29508
- id: `xstrk-yolo-31-mar-2027`,
29509
- ...vaultCommonProperties,
29510
- spendingLevels: [
29511
- { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
29512
- { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
29513
- { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
29514
- { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
29515
- { maxPrice: 0.025, spendPercent: 500 }
29516
- ],
29517
- parent_id: xstrk_parent
29518
- },
29519
- {
29520
- address: ContractAddr.from("0x62499970196772c18ccf1da09910ece11d85d5df3e8f6d6e41b4d158fcb8e79"),
29521
- mainToken: vesuPrimeUSDC,
29522
- secondaryToken: xSTRK,
29523
- startDate: "03-APR-2026",
29524
- expiryDate: "30-JUN-2026",
29525
- id: `xstrk-yolo-30-jun-2026`,
29526
- ...vaultCommonProperties,
29527
- spendingLevels: [
29528
- { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
29529
- { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
29530
- { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
29531
- { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
29532
- { maxPrice: 0.025, spendPercent: 500 }
29533
- ],
29534
- parent_id: xstrk_parent
29535
29497
  }
29498
+ // {
29499
+ // address: ContractAddr.from("0x3381380c6cca17c2a20e1167a362d5b939e392311cbcdf2016f9c7c7a23a801"),
29500
+ // mainToken: vesuPrimeUSDC,
29501
+ // secondaryToken: xWBTC,
29502
+ // startDate: "03-APR-2026",
29503
+ // expiryDate: "31-MAY-2026",
29504
+ // id: `vusdc-xwbct-yolo-31-may-2026`,
29505
+ // priority: 100,
29506
+ // ...vaultCommonProperties,
29507
+ // parent_id: wbtc_parent
29508
+ // },
29509
+ // {
29510
+ // address: ContractAddr.from("0x60c8466549a8e51eed0e8c38243fdb57d173c96cfdd4375b49ad1e338ff893"),
29511
+ // mainToken: vesuPrimeUSDC,
29512
+ // secondaryToken: xSTRK,
29513
+ // startDate: "03-APR-2026",
29514
+ // expiryDate: "31-MAR-2027",
29515
+ // id: `xstrk-yolo-31-mar-2027`,
29516
+ // priority: 50,
29517
+ // ...vaultCommonProperties,
29518
+ // spendingLevels: [
29519
+ // { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
29520
+ // { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
29521
+ // { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
29522
+ // { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
29523
+ // { maxPrice: 0.025, spendPercent: 500 },
29524
+ // ],
29525
+ // parent_id: xstrk_parent
29526
+ // },
29527
+ // {
29528
+ // address: ContractAddr.from("0x62499970196772c18ccf1da09910ece11d85d5df3e8f6d6e41b4d158fcb8e79"),
29529
+ // mainToken: vesuPrimeUSDC,
29530
+ // secondaryToken: xSTRK,
29531
+ // startDate: "03-APR-2026",
29532
+ // expiryDate: "30-JUN-2026",
29533
+ // id: `xstrk-yolo-30-jun-2026`,
29534
+ // priority: 50,
29535
+ // ...vaultCommonProperties,
29536
+ // spendingLevels: [
29537
+ // { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
29538
+ // { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
29539
+ // { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
29540
+ // { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
29541
+ // { maxPrice: 0.025, spendPercent: 500 },
29542
+ // ],
29543
+ // parent_id: xstrk_parent
29544
+ // }
29536
29545
  ];
29537
29546
  var yoloRiskFactors = [];
29538
29547
  var YoloVaultStrategies = yoloVaultsConfig.map((yoloConfig) => {
@@ -29543,6 +29552,8 @@ var YoloVaultStrategies = yoloVaultsConfig.map((yoloConfig) => {
29543
29552
  name: yoloCopy.title,
29544
29553
  parentName: yoloCopy.parentTitle,
29545
29554
  parentId: yoloConfig.parent_id,
29555
+ priority: yoloConfig.priority,
29556
+ variantIntro: yoloCopy.variantIntro,
29546
29557
  description: yoloCopy.description,
29547
29558
  address: yoloConfig.address,
29548
29559
  vaultType: {
@@ -29599,7 +29610,7 @@ var YoloVaultStrategies = yoloVaultsConfig.map((yoloConfig) => {
29599
29610
  } : {}
29600
29611
  },
29601
29612
  faqs: yoloCopy.faqs,
29602
- contractDetails: [],
29613
+ contractDetails: [{ name: "Vault", address: yoloConfig.address }],
29603
29614
  investmentSteps: yoloCopy.investmentSteps,
29604
29615
  settings: {
29605
29616
  liveStatus: "Hot & New \u{1F525}" /* HOT */,
package/dist/index.mjs CHANGED
@@ -29286,13 +29286,19 @@ var getYoloVaultCopy = (input) => {
29286
29286
  `Redeem any time to receive your remaining ${main} plus accumulated ${secondary}.`,
29287
29287
  `On expiry, entire ${main} token would have been swapped into ${secondary}, unless due to unfavourable market conditions.`
29288
29288
  ];
29289
+ const parentTitle = secondary.replace("x", "");
29290
+ const variantIntro = {
29291
+ title: `${parentTitle} YOLO vault variant`,
29292
+ description: "Each variant runs until a different expiry date. TVA schedules and execution windows are configured per vault."
29293
+ };
29289
29294
  return {
29290
- title: `${secondary.replace("x", "")} YOLO (${input.expiryDate})`,
29295
+ title: `${parentTitle} YOLO (${input.expiryDate})`,
29291
29296
  description,
29292
29297
  vaultTypeDescription: vaultTypeDescription2,
29293
29298
  faqs: faqs3,
29294
29299
  investmentSteps: investmentSteps2,
29295
- parentTitle: `${secondary.replace("x", "")} YOLO`
29300
+ parentTitle: `${parentTitle} YOLO`,
29301
+ variantIntro
29296
29302
  };
29297
29303
  };
29298
29304
  var usdc = Global.getDefaultTokens().find((t) => t.symbol === "USDC");
@@ -29342,7 +29348,6 @@ var vaultCommonProperties = {
29342
29348
  ]
29343
29349
  };
29344
29350
  var wbtc_parent = "wbtc-yolo";
29345
- var xstrk_parent = "xstrk-yolo";
29346
29351
  var yoloVaultsConfig = [
29347
29352
  {
29348
29353
  address: ContractAddr.from("0x018ccdff25a642e211f86ace35ba282ebdf342330319ead98cae37258bc9cce1"),
@@ -29351,53 +29356,57 @@ var yoloVaultsConfig = [
29351
29356
  startDate: "03-MAR-2026",
29352
29357
  expiryDate: "31-DEC-2026",
29353
29358
  id: `btc-yolo-31-dec-2026`,
29359
+ priority: 100,
29354
29360
  ...vaultCommonProperties,
29355
29361
  parent_id: wbtc_parent
29356
- },
29357
- {
29358
- address: ContractAddr.from("0x3381380c6cca17c2a20e1167a362d5b939e392311cbcdf2016f9c7c7a23a801"),
29359
- mainToken: vesuPrimeUSDC,
29360
- secondaryToken: xWBTC,
29361
- startDate: "03-APR-2026",
29362
- expiryDate: "31-MAY-2026",
29363
- id: `vusdc-xwbct-yolo-31-may-2026`,
29364
- ...vaultCommonProperties,
29365
- parent_id: wbtc_parent
29366
- },
29367
- {
29368
- address: ContractAddr.from("0x60c8466549a8e51eed0e8c38243fdb57d173c96cfdd4375b49ad1e338ff893"),
29369
- mainToken: vesuPrimeUSDC,
29370
- secondaryToken: xSTRK,
29371
- startDate: "03-APR-2026",
29372
- expiryDate: "31-MAR-2027",
29373
- id: `xstrk-yolo-31-mar-2027`,
29374
- ...vaultCommonProperties,
29375
- spendingLevels: [
29376
- { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
29377
- { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
29378
- { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
29379
- { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
29380
- { maxPrice: 0.025, spendPercent: 500 }
29381
- ],
29382
- parent_id: xstrk_parent
29383
- },
29384
- {
29385
- address: ContractAddr.from("0x62499970196772c18ccf1da09910ece11d85d5df3e8f6d6e41b4d158fcb8e79"),
29386
- mainToken: vesuPrimeUSDC,
29387
- secondaryToken: xSTRK,
29388
- startDate: "03-APR-2026",
29389
- expiryDate: "30-JUN-2026",
29390
- id: `xstrk-yolo-30-jun-2026`,
29391
- ...vaultCommonProperties,
29392
- spendingLevels: [
29393
- { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
29394
- { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
29395
- { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
29396
- { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
29397
- { maxPrice: 0.025, spendPercent: 500 }
29398
- ],
29399
- parent_id: xstrk_parent
29400
29362
  }
29363
+ // {
29364
+ // address: ContractAddr.from("0x3381380c6cca17c2a20e1167a362d5b939e392311cbcdf2016f9c7c7a23a801"),
29365
+ // mainToken: vesuPrimeUSDC,
29366
+ // secondaryToken: xWBTC,
29367
+ // startDate: "03-APR-2026",
29368
+ // expiryDate: "31-MAY-2026",
29369
+ // id: `vusdc-xwbct-yolo-31-may-2026`,
29370
+ // priority: 100,
29371
+ // ...vaultCommonProperties,
29372
+ // parent_id: wbtc_parent
29373
+ // },
29374
+ // {
29375
+ // address: ContractAddr.from("0x60c8466549a8e51eed0e8c38243fdb57d173c96cfdd4375b49ad1e338ff893"),
29376
+ // mainToken: vesuPrimeUSDC,
29377
+ // secondaryToken: xSTRK,
29378
+ // startDate: "03-APR-2026",
29379
+ // expiryDate: "31-MAR-2027",
29380
+ // id: `xstrk-yolo-31-mar-2027`,
29381
+ // priority: 50,
29382
+ // ...vaultCommonProperties,
29383
+ // spendingLevels: [
29384
+ // { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
29385
+ // { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
29386
+ // { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
29387
+ // { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
29388
+ // { maxPrice: 0.025, spendPercent: 500 },
29389
+ // ],
29390
+ // parent_id: xstrk_parent
29391
+ // },
29392
+ // {
29393
+ // address: ContractAddr.from("0x62499970196772c18ccf1da09910ece11d85d5df3e8f6d6e41b4d158fcb8e79"),
29394
+ // mainToken: vesuPrimeUSDC,
29395
+ // secondaryToken: xSTRK,
29396
+ // startDate: "03-APR-2026",
29397
+ // expiryDate: "30-JUN-2026",
29398
+ // id: `xstrk-yolo-30-jun-2026`,
29399
+ // priority: 50,
29400
+ // ...vaultCommonProperties,
29401
+ // spendingLevels: [
29402
+ // { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
29403
+ // { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
29404
+ // { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
29405
+ // { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
29406
+ // { maxPrice: 0.025, spendPercent: 500 },
29407
+ // ],
29408
+ // parent_id: xstrk_parent
29409
+ // }
29401
29410
  ];
29402
29411
  var yoloRiskFactors = [];
29403
29412
  var YoloVaultStrategies = yoloVaultsConfig.map((yoloConfig) => {
@@ -29408,6 +29417,8 @@ var YoloVaultStrategies = yoloVaultsConfig.map((yoloConfig) => {
29408
29417
  name: yoloCopy.title,
29409
29418
  parentName: yoloCopy.parentTitle,
29410
29419
  parentId: yoloConfig.parent_id,
29420
+ priority: yoloConfig.priority,
29421
+ variantIntro: yoloCopy.variantIntro,
29411
29422
  description: yoloCopy.description,
29412
29423
  address: yoloConfig.address,
29413
29424
  vaultType: {
@@ -29464,7 +29475,7 @@ var YoloVaultStrategies = yoloVaultsConfig.map((yoloConfig) => {
29464
29475
  } : {}
29465
29476
  },
29466
29477
  faqs: yoloCopy.faqs,
29467
- contractDetails: [],
29478
+ contractDetails: [{ name: "Vault", address: yoloConfig.address }],
29468
29479
  investmentSteps: yoloCopy.investmentSteps,
29469
29480
  settings: {
29470
29481
  liveStatus: "Hot & New \u{1F525}" /* HOT */,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@strkfarm/sdk",
3
- "version": "2.0.0-staging.53",
3
+ "version": "2.0.0-staging.56",
4
4
  "description": "STRKFarm TS SDK (Meant for our internal use, but feel free to use it)",
5
5
  "typings": "dist/index.d.ts",
6
6
  "types": "dist/index.d.ts",
@@ -183,6 +183,19 @@ export interface IStrategyMetadata<T> {
183
183
  id: string;
184
184
  name: string;
185
185
  description: string | React.ReactNode;
186
+ /**
187
+ * Optional UI sort priority. Higher shows earlier.
188
+ * Intended for pinning flagship parent vaults (e.g. BTC above STRK).
189
+ */
190
+ priority?: number;
191
+ /**
192
+ * Optional UI config for the variant intro popup (strategy page).
193
+ * Should be identical across strategies that share the same `parentId`.
194
+ */
195
+ variantIntro?: {
196
+ title: string;
197
+ description: string;
198
+ };
186
199
  address: ContractAddr;
187
200
  launchBlock: number;
188
201
  type: "ERC4626" | "ERC721" | "Other";
@@ -67,6 +67,8 @@ interface YoloVaultStrategyConfig extends YoloVaultSettings {
67
67
  id: string;
68
68
  address: ContractAddr;
69
69
  parent_id: string;
70
+ /** Higher shows earlier in UI. */
71
+ priority?: number;
70
72
  }
71
73
 
72
74
  export interface UserYoloInfo {
@@ -826,13 +828,21 @@ const getYoloVaultCopy = (input: YoloVaultSettings) => {
826
828
  `On expiry, entire ${main} token would have been swapped into ${secondary}, unless due to unfavourable market conditions.`
827
829
  ];
828
830
 
831
+ const parentTitle = secondary.replace('x', '');
832
+ const variantIntro = {
833
+ title: `${parentTitle} YOLO vault variant`,
834
+ description:
835
+ "Each variant runs until a different expiry date. TVA schedules and execution windows are configured per vault.",
836
+ };
837
+
829
838
  return {
830
- title: `${secondary.replace('x', '')} YOLO (${input.expiryDate})`,
839
+ title: `${parentTitle} YOLO (${input.expiryDate})`,
831
840
  description,
832
841
  vaultTypeDescription,
833
842
  faqs,
834
843
  investmentSteps,
835
- parentTitle: `${secondary.replace('x', '')} YOLO`
844
+ parentTitle: `${parentTitle} YOLO`,
845
+ variantIntro,
836
846
  };
837
847
  };
838
848
 
@@ -908,53 +918,57 @@ const yoloVaultsConfig:YoloVaultStrategyConfig[] = [
908
918
  startDate: "03-MAR-2026",
909
919
  expiryDate: "31-DEC-2026",
910
920
  id: `btc-yolo-31-dec-2026`,
921
+ priority: 100,
911
922
  ...vaultCommonProperties,
912
923
  parent_id: wbtc_parent,
913
924
  },
914
- {
915
- address: ContractAddr.from("0x3381380c6cca17c2a20e1167a362d5b939e392311cbcdf2016f9c7c7a23a801"),
916
- mainToken: vesuPrimeUSDC,
917
- secondaryToken: xWBTC,
918
- startDate: "03-APR-2026",
919
- expiryDate: "31-MAY-2026",
920
- id: `vusdc-xwbct-yolo-31-may-2026`,
921
- ...vaultCommonProperties,
922
- parent_id: wbtc_parent
923
- },
924
- {
925
- address: ContractAddr.from("0x60c8466549a8e51eed0e8c38243fdb57d173c96cfdd4375b49ad1e338ff893"),
926
- mainToken: vesuPrimeUSDC,
927
- secondaryToken: xSTRK,
928
- startDate: "03-APR-2026",
929
- expiryDate: "31-MAR-2027",
930
- id: `xstrk-yolo-31-mar-2027`,
931
- ...vaultCommonProperties,
932
- spendingLevels: [
933
- { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
934
- { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
935
- { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
936
- { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
937
- { maxPrice: 0.025, spendPercent: 500 },
938
- ],
939
- parent_id: xstrk_parent
940
- },
941
- {
942
- address: ContractAddr.from("0x62499970196772c18ccf1da09910ece11d85d5df3e8f6d6e41b4d158fcb8e79"),
943
- mainToken: vesuPrimeUSDC,
944
- secondaryToken: xSTRK,
945
- startDate: "03-APR-2026",
946
- expiryDate: "30-JUN-2026",
947
- id: `xstrk-yolo-30-jun-2026`,
948
- ...vaultCommonProperties,
949
- spendingLevels: [
950
- { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
951
- { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
952
- { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
953
- { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
954
- { maxPrice: 0.025, spendPercent: 500 },
955
- ],
956
- parent_id: xstrk_parent
957
- }
925
+ // {
926
+ // address: ContractAddr.from("0x3381380c6cca17c2a20e1167a362d5b939e392311cbcdf2016f9c7c7a23a801"),
927
+ // mainToken: vesuPrimeUSDC,
928
+ // secondaryToken: xWBTC,
929
+ // startDate: "03-APR-2026",
930
+ // expiryDate: "31-MAY-2026",
931
+ // id: `vusdc-xwbct-yolo-31-may-2026`,
932
+ // priority: 100,
933
+ // ...vaultCommonProperties,
934
+ // parent_id: wbtc_parent
935
+ // },
936
+ // {
937
+ // address: ContractAddr.from("0x60c8466549a8e51eed0e8c38243fdb57d173c96cfdd4375b49ad1e338ff893"),
938
+ // mainToken: vesuPrimeUSDC,
939
+ // secondaryToken: xSTRK,
940
+ // startDate: "03-APR-2026",
941
+ // expiryDate: "31-MAR-2027",
942
+ // id: `xstrk-yolo-31-mar-2027`,
943
+ // priority: 50,
944
+ // ...vaultCommonProperties,
945
+ // spendingLevels: [
946
+ // { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
947
+ // { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
948
+ // { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
949
+ // { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
950
+ // { maxPrice: 0.025, spendPercent: 500 },
951
+ // ],
952
+ // parent_id: xstrk_parent
953
+ // },
954
+ // {
955
+ // address: ContractAddr.from("0x62499970196772c18ccf1da09910ece11d85d5df3e8f6d6e41b4d158fcb8e79"),
956
+ // mainToken: vesuPrimeUSDC,
957
+ // secondaryToken: xSTRK,
958
+ // startDate: "03-APR-2026",
959
+ // expiryDate: "30-JUN-2026",
960
+ // id: `xstrk-yolo-30-jun-2026`,
961
+ // priority: 50,
962
+ // ...vaultCommonProperties,
963
+ // spendingLevels: [
964
+ // { minPrice: 0.07, maxPrice: 0.1, spendPercent: 50 },
965
+ // { minPrice: 0.06, maxPrice: 0.07, spendPercent: 70 },
966
+ // { minPrice: 0.04, maxPrice: 0.06, spendPercent: 100 },
967
+ // { minPrice: 0.025, maxPrice: 0.04, spendPercent: 250 },
968
+ // { maxPrice: 0.025, spendPercent: 500 },
969
+ // ],
970
+ // parent_id: xstrk_parent
971
+ // }
958
972
  ]
959
973
 
960
974
  // Risk factors intentionally left unrated for this strategy for now.
@@ -969,6 +983,8 @@ export const YoloVaultStrategies: IStrategyMetadata<YoloVaultSettings>[] = yoloV
969
983
  name: yoloCopy.title,
970
984
  parentName: yoloCopy.parentTitle,
971
985
  parentId: yoloConfig.parent_id,
986
+ priority: yoloConfig.priority,
987
+ variantIntro: yoloCopy.variantIntro,
972
988
  description: yoloCopy.description,
973
989
  address: yoloConfig.address,
974
990
  vaultType: {
@@ -1027,7 +1043,7 @@ export const YoloVaultStrategies: IStrategyMetadata<YoloVaultSettings>[] = yoloV
1027
1043
  : {}),
1028
1044
  },
1029
1045
  faqs: yoloCopy.faqs,
1030
- contractDetails: [],
1046
+ contractDetails: [{name: "Vault", address: yoloConfig.address}],
1031
1047
  investmentSteps: yoloCopy.investmentSteps,
1032
1048
  settings: {
1033
1049
  liveStatus: StrategyLiveStatus.HOT,