@settlemint/dalp-cli 3.0.7-main.28619722466 → 3.0.7-main.28622819856

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.
Files changed (2) hide show
  1. package/dist/dalp.js +111 -4
  2. package/package.json +1 -1
package/dist/dalp.js CHANGED
@@ -133895,6 +133895,92 @@ var AssumableParticipantsV2ListInputSchema = AssumableParticipantsCollectionInpu
133895
133895
  }
133896
133896
  });
133897
133897
  var AssumableParticipantsV2ListOutputSchema = createPaginatedResponse(AssumableParticipantSchema);
133898
+ var HoldingWalletTypeSchema = exports_external.enum(["eoa", "smart"]).meta({
133899
+ description: "Account type holding this balance: `smart` (smart account) or `eoa` (key account)."
133900
+ });
133901
+ var HoldingTransferVerdictSchema = exports_external.enum(["transferable", "restricted"]).meta({
133902
+ description: "Transfer verdict evaluated against the holding participant's identity, independent of the viewer. `restricted` gates the Transfer action."
133903
+ });
133904
+ var HoldingAssetClassSchema = exports_external.object({
133905
+ id: exports_external.string().meta({ description: "Asset class definition id.", examples: ["cls_equity"] }),
133906
+ slug: exports_external.string().meta({ description: "Asset class slug used for grouping.", examples: ["equity", "cash"] }),
133907
+ name: exports_external.string().meta({ description: "Human-readable asset class name.", examples: ["Equity", "Cash"] })
133908
+ }).meta({ description: "Asset class the token belongs to." });
133909
+ var HoldingTokenSchema = exports_external.object({
133910
+ id: ethereumAddress.meta({
133911
+ description: "The token contract address.",
133912
+ examples: ["0x71C7656EC7ab88b098defB751B7401B5f6d8976F"]
133913
+ }),
133914
+ name: exports_external.string().meta({ description: "The token name.", examples: ["Acme Series A"] }),
133915
+ symbol: assetSymbol().meta({ description: "The token symbol.", examples: ["ACME", "USDC"] }),
133916
+ type: assetType().or(exports_external.string().min(1)).meta({
133917
+ description: "Asset type — known system types or custom template slugs. Drives the asset detail route.",
133918
+ examples: ["equity", "bond", "custom-deposit"]
133919
+ }),
133920
+ isExternal: exports_external.boolean().meta({
133921
+ description: "True when the token is registered through the ExternalTokenRegistry rather than deployed by a system factory.",
133922
+ examples: [false, true]
133923
+ }),
133924
+ decimals: decimals().meta({ description: "The number of decimal places.", examples: [18, 6] })
133925
+ });
133926
+ var ParticipantHoldingV2ItemSchema = exports_external.object({
133927
+ id: exports_external.string().meta({
133928
+ description: "Stable row identifier — the token address and wallet address joined.",
133929
+ examples: ["0x71c7…976f:0x8ba1…ba72"]
133930
+ }),
133931
+ token: HoldingTokenSchema.meta({ description: "The token details.", examples: [] }),
133932
+ assetClass: HoldingAssetClassSchema.nullable().meta({
133933
+ description: "The token's asset class. Null for external tokens (no template) — rendered under External tokens.",
133934
+ examples: [null]
133935
+ }),
133936
+ walletAddress: ethereumAddress.meta({
133937
+ description: "The participant wallet address that holds this balance.",
133938
+ examples: ["0x71C7656EC7ab88b098defB751B7401B5f6d8976F"]
133939
+ }),
133940
+ walletType: HoldingWalletTypeSchema,
133941
+ balance: bigDecimal().meta({ description: "The total balance amount (scaled by decimals).", examples: ["250"] }),
133942
+ frozen: bigDecimal().meta({ description: "The frozen balance amount.", examples: ["0", "50"] }),
133943
+ available: bigDecimal().meta({
133944
+ description: "The available balance amount (total minus frozen; zero when the whole address is frozen).",
133945
+ examples: ["250", "200"]
133946
+ }),
133947
+ valueInBaseCurrency: bigDecimal().nullable().meta({
133948
+ description: "Available balance multiplied by the token's resolved base-currency price. Null when no FX/price path is available.",
133949
+ examples: ["5.00", null]
133950
+ }),
133951
+ priceInBaseCurrencyReliable: exports_external.boolean().meta({
133952
+ description: "Whether the FX chain used to populate the base-currency price was fully reliable. False when no price is available or a hop fell back to a stale rate.",
133953
+ examples: [true, false]
133954
+ }),
133955
+ transferVerdict: HoldingTransferVerdictSchema,
133956
+ restrictionReason: exports_external.string().nullable().meta({
133957
+ description: "Reason a row is restricted (e.g. `frozen`, `identity pending`). Null for transferable rows; the UI renders a generic reason when a restricted row carries no specific reason.",
133958
+ examples: ["frozen", "identity pending", null]
133959
+ })
133960
+ });
133961
+ var ParticipantHoldingsParamsSchema = exports_external.object({
133962
+ participantId: exports_external.string().min(1).meta({
133963
+ description: "Identifier of the participant whose holdings are being listed."
133964
+ })
133965
+ });
133966
+ var PARTICIPANT_HOLDINGS_COLLECTION_FIELDS = {
133967
+ tokenAddress: addressField(),
133968
+ tokenName: textField(),
133969
+ tokenSymbol: textField(),
133970
+ walletAddress: addressField(),
133971
+ walletType: enumField(["eoa", "smart"], { sortable: false }),
133972
+ balance: bigintField({ filterable: false })
133973
+ };
133974
+ var ParticipantHoldingsV2ListInputSchema = createCollectionInputSchema(PARTICIPANT_HOLDINGS_COLLECTION_FIELDS, {
133975
+ defaultSort: "-balance",
133976
+ globalSearch: true
133977
+ });
133978
+ var ParticipantHoldingsV2ListOutputSchema = createPaginatedResponse(ParticipantHoldingV2ItemSchema, {
133979
+ balancesAsOf: timestamp().nullable().meta({
133980
+ description: "The most recent indexed `updatedAt` across the returned holdings — the freshness stamp shown on the tab. Null when the participant holds nothing.",
133981
+ examples: ["2026-06-24T14:32:00.000Z", null]
133982
+ })
133983
+ });
133898
133984
  var ParticipantAddressPurposeSchema = exports_external.enum(["transfer", "identity", "participant"]);
133899
133985
  var ParticipantKindSchema = exports_external.enum([
133900
133986
  "person",
@@ -133989,6 +134075,13 @@ var activityStats = v2Contract.route({
133989
134075
  successDescription: "Activity statistics retrieved successfully.",
133990
134076
  tags: [V2_TAG.participants]
133991
134077
  }).input(v2Input.paramsQuery(ParticipantActivityParamsSchema, ActivityStatsInputSchema.omit({ accountAddress: true }))).output(createSingleResponse(ActivityStatsOutputSchema));
134078
+ var holdings = v2Contract.route({
134079
+ method: "GET",
134080
+ path: "/participants/{participantId}/holdings",
134081
+ description: "List a participant's real indexed holdings (one row per token × wallet) with asset class, available/frozen balances, base-currency value, a per-row transfer verdict, and a `balancesAsOf` freshness stamp. Powers the participant detail Holdings tab.",
134082
+ successDescription: "Paginated array of participant holdings with asset class, balances, value, and transfer verdict; `meta.balancesAsOf` carries the freshness stamp.",
134083
+ tags: [V2_TAG.participants]
134084
+ }).input(v2Input.paramsQuery(ParticipantHoldingsParamsSchema, ParticipantHoldingsV2ListInputSchema)).output(ParticipantHoldingsV2ListOutputSchema);
133992
134085
  var assumableList = v2Contract.route({
133993
134086
  method: "GET",
133994
134087
  path: "/participants/assumable",
@@ -134001,6 +134094,7 @@ var participantsV2Contract = {
134001
134094
  assumableList,
134002
134095
  addressKinds,
134003
134096
  smartWalletRead,
134097
+ holdings,
134004
134098
  activityList,
134005
134099
  activityStats,
134006
134100
  complianceEligibility: complianceEligibilityV2Contract
@@ -140561,7 +140655,7 @@ var events2 = v2Contract.route({
140561
140655
  examples: ["0x71C7656EC7ab88b098defB751B7401B5f6d8976F"]
140562
140656
  })
140563
140657
  }), TokenEventsV2InputSchema)).output(TokenEventsV2OutputSchema);
140564
- var holdings = v2Contract.route({
140658
+ var holdings2 = v2Contract.route({
140565
140659
  method: "GET",
140566
140660
  path: "/tokens/{tokenAddress}/holdings",
140567
140661
  description: "List every asset the specified token holds a balance in (its treasury). Supports JSON:API pagination, sorting, filtering, and faceted counts.",
@@ -140808,7 +140902,7 @@ var tokenV2ReadsContract = {
140808
140902
  holders,
140809
140903
  actions,
140810
140904
  events: events2,
140811
- holdings,
140905
+ holdings: holdings2,
140812
140906
  compliance,
140813
140907
  conversionFeatureProbe,
140814
140908
  aumFeeAccruedEstimate,
@@ -143354,7 +143448,7 @@ function normalizeDalpBaseUrl(url2) {
143354
143448
  }
143355
143449
  var package_default = {
143356
143450
  name: "@settlemint/dalp-sdk",
143357
- version: "3.0.7-main.28619722466",
143451
+ version: "3.0.7-main.28622819856",
143358
143452
  private: false,
143359
143453
  description: "Fully typed SDK for the DALP tokenization platform API",
143360
143454
  homepage: "https://settlemint.com",
@@ -144605,7 +144699,7 @@ var failedStateSet = new Set(FAILED_TRANSACTION_STATES);
144605
144699
  // package.json
144606
144700
  var package_default2 = {
144607
144701
  name: "@settlemint/dalp-cli",
144608
- version: "3.0.7-main.28619722466",
144702
+ version: "3.0.7-main.28622819856",
144609
144703
  private: false,
144610
144704
  description: "CLI for the Digital Asset Lifecycle Platform — manage tokens, identities, compliance, and more from the command line.",
144611
144705
  homepage: "https://settlemint.com",
@@ -145648,6 +145742,19 @@ participantsCommand.command("activity-stats", {
145648
145742
  });
145649
145743
  }
145650
145744
  });
145745
+ participantsCommand.command("holdings", {
145746
+ description: "List a participant's indexed holdings (token × wallet) with asset class, value, and transfer verdict",
145747
+ args: exports_external.object({ participantId: exports_external.string().describe("Participant ID") }),
145748
+ options: paginationOptionsSchema.extend({
145749
+ walletType: exports_external.enum(["eoa", "smart"]).optional().describe("Filter by account type (eoa = key account, smart)")
145750
+ }),
145751
+ run(c) {
145752
+ return c.var.orpc.participants.holdings({
145753
+ params: { participantId: c.args.participantId },
145754
+ query: toCanonicalQuery(c.options, c.options.walletType ? { walletType: c.options.walletType } : undefined)
145755
+ });
145756
+ }
145757
+ });
145651
145758
  participantsCommand.command("compliance-eligibility", {
145652
145759
  description: "Evaluate a participant's global compliance eligibility verdict",
145653
145760
  args: exports_external.object({ participantId: exports_external.string().describe("Participant ID") }),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@settlemint/dalp-cli",
3
- "version": "3.0.7-main.28619722466",
3
+ "version": "3.0.7-main.28622819856",
4
4
  "private": false,
5
5
  "description": "CLI for the Digital Asset Lifecycle Platform — manage tokens, identities, compliance, and more from the command line.",
6
6
  "homepage": "https://settlemint.com",